/* /Components/Account/Pages/ConfirmEmail.razor.rz.scp.css */
/* ===== ConfirmEmail ===== */
.cfm-panel[b-7wssq2dn86] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 18px;
    border-radius: 12px;
    margin-bottom: 14px;
}

.cfm-panel-icon[b-7wssq2dn86] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

    .cfm-panel-icon svg[b-7wssq2dn86] {
        width: 20px;
        height: 20px;
    }

.cfm-panel-content[b-7wssq2dn86] {
    flex: 1;
}

.cfm-panel-title[b-7wssq2dn86] {
    margin: 0 0 4px;
    font-size: 1rem;
    font-weight: 700;
}

.cfm-panel-text[b-7wssq2dn86] {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.55;
    word-break: break-word;
}

/* Painel de sucesso (e-mail confirmado) */
.cfm-panel-ok[b-7wssq2dn86] {
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: #0f4224;
}

    .cfm-panel-ok .cfm-panel-icon[b-7wssq2dn86] {
        background: rgba(56, 142, 60, 0.14);
        color: #388e3c;
    }

/* Painel de aviso / erro */
.cfm-panel-warn[b-7wssq2dn86] {
    background: #fdf3e7;
    border: 1px solid #f0dfd3;
    color: #b45309;
}

    .cfm-panel-warn .cfm-panel-icon[b-7wssq2dn86] {
        background: rgba(180, 83, 9, 0.1);
        color: #b45309;
    }

/* Bloco de dica quando algo deu errado */
.cfm-help[b-7wssq2dn86] {
    padding: 12px 16px;
    border-radius: 10px;
    background: #f8fbf8;
    border: 1px solid #e2ede4;
    color: #3a4a3f;
    margin-bottom: 14px;
}

.cfm-help-title[b-7wssq2dn86] {
    margin: 0 0 2px;
    font-size: 0.9rem;
    font-weight: 700;
}

.cfm-help-text[b-7wssq2dn86] {
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.5;
}

/* Botão principal */
.cfm-cta-btn[b-7wssq2dn86] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 4px;
    padding: 11px 24px;
    border-radius: 999px;
    background: linear-gradient(135deg, #0c3d1c, #388e3c);
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.25);
}

    .cfm-cta-btn:hover[b-7wssq2dn86] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
        color: #ffffff;
        filter: brightness(1.1);
    }
/* /Components/Account/Pages/RegisterConfirmation.razor.rz.scp.css */
/* ===== RegisterConfirmation ===== */
.regc-panel[b-ac07f37rf1] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 18px;
    border-radius: 12px;
    margin-bottom: 14px;
}

.regc-panel-icon[b-ac07f37rf1] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

    .regc-panel-icon svg[b-ac07f37rf1] {
        width: 20px;
        height: 20px;
    }

.regc-panel-content[b-ac07f37rf1] {
    flex: 1;
}

.regc-panel-title[b-ac07f37rf1] {
    margin: 0 0 4px;
    font-size: 1rem;
    font-weight: 700;
}

.regc-panel-text[b-ac07f37rf1] {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.55;
    word-break: break-word;
}

.regc-email[b-ac07f37rf1] {
    color: #0c3d1c;
    word-break: break-all;
}

/* Painel de sucesso (e-mail enviado) */
.regc-panel-ok[b-ac07f37rf1] {
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: #0f4224;
}

    .regc-panel-ok .regc-panel-icon[b-ac07f37rf1] {
        background: rgba(56, 142, 60, 0.14);
        color: #388e3c;
    }

/* Painel de dica */
.regc-panel-tip[b-ac07f37rf1] {
    background: #f8fbf8;
    border: 1px solid #e2ede4;
    color: #3a4a3f;
}

    .regc-panel-tip .regc-panel-icon[b-ac07f37rf1] {
        background: rgba(56, 142, 60, 0.08);
        color: #849787;
    }

/* Painel de aviso / mensagem */
.regc-panel-warn[b-ac07f37rf1] {
    background: #fdf3e7;
    border: 1px solid #f0dfd3;
    color: #b45309;
}

    .regc-panel-warn .regc-panel-icon[b-ac07f37rf1] {
        background: rgba(180, 83, 9, 0.1);
        color: #b45309;
    }

/* Botão de reenvio */
.regc-resend-btn[b-ac07f37rf1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 11px 24px;
    border-radius: 999px;
    background: linear-gradient(135deg, #0c3d1c, #388e3c);
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.25);
}

    .regc-resend-btn:hover[b-ac07f37rf1] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
        color: #ffffff;
    }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
main.app-main[b-731cdm9se5] {
    flex: 1;
    min-height: calc(100vh - 3.5rem - 3rem);
    background-color: #f1f8f2;
}

article.content[b-731cdm9se5] {
    max-width: 1400px;
    margin: 0 auto;
}

@media (min-width: 641px) {
    article.content[b-731cdm9se5] {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}

.app-footer[b-731cdm9se5] {
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg, #0c3d1c, #1b5e20);
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.85rem;
    letter-spacing: 0.02em;
}

#blazor-error-ui[b-731cdm9se5] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-731cdm9se5] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.topbar[b-oyvczydcss] {
    position: sticky;
    top: 0;
    z-index: 100;
    height: 3.5rem;
    background: linear-gradient(90deg, #0c3d1c 0%, #155e28 60%, #2e7d32 100%);
    box-shadow: 0 2px 10px rgba(12, 61, 28, 0.35);
}

.topbar-inner[b-oyvczydcss] {
    max-width: 1400px;
    margin: 0 auto;
    height: 3.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0 1rem;
}

/* ===== Brand ===== */

.topbar-brand[b-oyvczydcss] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #fff;
    text-decoration: none;
    font-size: 1.15rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.topbar-brand .brand-logo[b-oyvczydcss] {
    height: 2rem;
    width: 2rem;
    filter: drop-shadow(0 1px 3px rgba(12, 61, 28, 0.45));
}

.topbar-brand b[b-oyvczydcss] {
    color: #a5d6a7;
    font-weight: 800;
}

/* ===== Toggler (mobile) ===== */

.navbar-toggler[b-oyvczydcss] {
    appearance: none;
    cursor: pointer;
    width: 2.6rem;
    height: 2.2rem;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 0.4rem;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.7%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.5rem rgba(255, 255, 255, 0.08);
}

.navbar-toggler:checked[b-oyvczydcss] {
    background-color: rgba(255, 255, 255, 0.22);
}

/* ===== Container colapsável ===== */

.nav-scrollable[b-oyvczydcss] {
    display: none;
    flex: 1;
    align-items: center;
    justify-content: space-between;
}

/* ===== Links ===== */

.nav-links[b-oyvczydcss] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.nav-links[b-oyvczydcss]  .nav-link {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 0.8rem;
    border-radius: 0.5rem;
    color: rgba(255, 255, 255, 0.78);
    background: none;
    border: none;
    font-size: 0.9rem;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.nav-links[b-oyvczydcss]  .menu-icon {
    font-size: 1rem;
    line-height: 1;
}

.nav-links[b-oyvczydcss]  button.nav-link {
    cursor: pointer;
    width: auto;
}

/* ===== Itens ===== */

.nav-item[b-oyvczydcss]  .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.nav-item[b-oyvczydcss]  a.active {
    background-color: #388e3c;
    color: #fff;
    box-shadow: 0 2px 8px rgba(46, 125, 50, 0.45);
}

/* ===== Submenus (Ferramentas / CAT) ===== */

.nav-sub-group[b-oyvczydcss] {
    position: relative;
}

/* Checkbox invisível que controla o submenu (NavMenu é SSR estático,
   sem interatividade — mesmo padrão do toggler mobile) */
.nav-sub-check[b-oyvczydcss] {
    appearance: none;
    position: absolute;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
    opacity: 0;
    pointer-events: none;
}

.nav-sub-group[b-oyvczydcss]  .nav-sub-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    cursor: pointer;
    user-select: none;
}

.nav-sub-group[b-oyvczydcss]  .nav-sub-toggle .chevron {
    font-size: 0.65rem;
    margin-left: 0.15rem;
    transition: transform 0.2s ease;
    opacity: 0.8;
}

.nav-sub-check:checked ~ .nav-sub-toggle .chevron[b-oyvczydcss] {
    transform: rotate(180deg);
}

.nav-item[b-oyvczydcss]  .nav-sub-toggle.sub-active {
    background-color: #388e3c;
    color: #fff;
    box-shadow: 0 2px 8px rgba(46, 125, 50, 0.45);
}

.nav-sub-menu[b-oyvczydcss] {
    display: none;
    position: absolute;
    top: calc(100% + 0.45rem);
    left: 0;
    min-width: 13rem;
    padding: 0.35rem;
    border-radius: 0.6rem;
    background: linear-gradient(180deg, #0f4a22, #0c3d1c);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 10px 24px rgba(12, 61, 28, 0.55);
    z-index: 110;
}

.nav-sub-check:checked ~ .nav-sub-menu[b-oyvczydcss] {
    display: block;
}

.nav-sub-menu[b-oyvczydcss]  .nav-sub-link {
    display: flex;
    width: 100%;
    border-radius: 0.4rem;
    font-size: 0.85rem;
    padding: 0.5rem 0.7rem;
    white-space: nowrap;
}

.nav-sub-menu[b-oyvczydcss]  .nav-sub-link:hover {
    background-color: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.nav-sub-menu[b-oyvczydcss]  a.active {
    background-color: #388e3c;
    color: #fff;
}

/* Setinha do dropdown no desktop */
.nav-sub-menu[b-oyvczydcss]::before {
    content: "";
    position: absolute;
    top: -5px;
    left: 1.6rem;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    background: #0f4a22;
    border-left: 1px solid rgba(255, 255, 255, 0.12);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

/* ===== Ações (direita) ===== */

.nav-actions[b-oyvczydcss] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.nav-actions .lang-form[b-oyvczydcss] {
    display: inline-flex;
}

.nav-actions .lang-select[b-oyvczydcss] {
    max-width: 11rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #fff;
    font-size: 0.85rem;
    font-family: inherit;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.nav-actions .lang-select:hover[b-oyvczydcss] {
    background: rgba(255, 255, 255, 0.16);
}

.nav-actions .lang-select option[b-oyvczydcss],
.nav-actions .lang-select optgroup[b-oyvczydcss] {
    color: #1f2937;
    background: #fff;
}

.nav-actions[b-oyvczydcss]  .user-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #fff;
    font-size: 0.85rem;
    text-decoration: none;
    max-width: 220px;
}

.nav-actions[b-oyvczydcss]  .user-chip .user-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-actions[b-oyvczydcss]  .user-chip:hover {
    background: rgba(255, 255, 255, 0.16);
}

.nav-actions[b-oyvczydcss]  .btn-logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 0.5rem;
    border: 1px solid rgba(255, 255, 255, 0.15);
    background: rgba(255, 255, 255, 0.08);
    color: #fca5a5;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.nav-actions[b-oyvczydcss]  .btn-logout:hover {
    background: rgba(220, 38, 38, 0.35);
    color: #fff;
}

/* ===== Desktop: navbar horizontal ===== */

@media (min-width: 993px) {
    .navbar-toggler[b-oyvczydcss] {
        display: none;
    }

    .nav-scrollable[b-oyvczydcss] {
        display: flex;
    }
}

/* ===== Mobile: dropdown vertical ===== */

@media (max-width: 992px) {
    .navbar-toggler[b-oyvczydcss] {
        margin-left: auto;
    }

    .navbar-toggler:checked ~ .nav-scrollable[b-oyvczydcss] {
        position: absolute;
        top: 3.5rem;
        left: 0;
        right: 0;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.25rem;
        padding: 0.75rem 1rem 1rem 1rem;
        background: linear-gradient(180deg, #0c3d1c, #0f4a22);
        box-shadow: 0 10px 20px rgba(12, 61, 28, 0.45);
    }

    .nav-scrollable .nav-links[b-oyvczydcss] {
        flex-direction: column;
        align-items: stretch;
    }

    .nav-item[b-oyvczydcss]  .nav-link {
        width: 100%;
        padding: 0.6rem 0.8rem;
    }

    /* ===== Submenu CAT (mobile: lista estática indentada) ===== */

    .nav-sub-group[b-oyvczydcss]  .nav-sub-toggle {
        width: 100%;
        justify-content: flex-start;
    }

    .nav-sub-group[b-oyvczydcss]  .nav-sub-toggle .chevron {
        margin-left: auto;
    }

    .nav-sub-menu[b-oyvczydcss] {
        position: static;
        min-width: 0;
        width: 100%;
        padding: 0.15rem 0 0.15rem 1.9rem;
        background: transparent;
        border: none;
        box-shadow: none;
    }

    .nav-sub-menu[b-oyvczydcss]::before {
        display: none;
    }

    .nav-sub-menu[b-oyvczydcss]  .nav-sub-link {
        padding: 0.55rem 0.7rem;
    }

    .nav-scrollable .nav-actions[b-oyvczydcss] {
        display: flex;
        flex-wrap: wrap;
        gap: 0.4rem;
        padding-top: 0.5rem;
        border-top: 1px solid rgba(255, 255, 255, 0.12);
    }
}

/* ===== Mobile: menu fechado ===== */

@media (max-width: 992px) {
    .navbar-toggler:not(:checked) ~ .nav-scrollable[b-oyvczydcss] {
        display: none;
    }
}
/* /Components/Pages/Admin/AdminDashboard.razor.rz.scp.css */
/* ===== AdminDashboard — tema verde ===== */
.adm-page[b-zhjwb2gbzd] {
    --adm-forest: #0c3d1c;
    --adm-primary: #388e3c;
    --adm-primary-light: #4caf50;
    --adm-sky-soft: #a5d6a7;
    --adm-bg-soft: #f8fbf8;
    --adm-card-bg: #ffffff;
    --adm-text: #3a4a3f;
    --adm-muted: #849787;
    --adm-border: #e2ede4;
    --adm-danger: #b45309;
    --adm-danger-bg: #fdf3e7;
    --adm-radius: 14px;

    max-width: 100%;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Feedback ===== */
.adm-alert-error[b-zhjwb2gbzd],
.adm-alert-ok[b-zhjwb2gbzd] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-bottom: 16px;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    word-break: break-word;
}

    .adm-alert-error svg[b-zhjwb2gbzd],
    .adm-alert-ok svg[b-zhjwb2gbzd] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }

.adm-alert-error[b-zhjwb2gbzd] {
    background: var(--adm-danger-bg);
    border: 1px solid #f0dfd3;
    color: var(--adm-danger);
}

.adm-alert-ok[b-zhjwb2gbzd] {
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: var(--adm-forest);
}

.adm-alert-close[b-zhjwb2gbzd] {
    margin-left: auto;
    border: none;
    background: transparent;
    color: inherit;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    padding: 0 4px;
    opacity: 0.7;
    transition: opacity 0.15s ease;
}

    .adm-alert-close:hover[b-zhjwb2gbzd] {
        opacity: 1;
    }

/* ===== Botão desconectar ===== */
.adm-kick-btn[b-zhjwb2gbzd] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid #f0dfd3;
    background: var(--adm-danger-bg);
    color: var(--adm-danger);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 5px 14px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

    .adm-kick-btn svg[b-zhjwb2gbzd] {
        width: 12px;
        height: 12px;
    }

    .adm-kick-btn:hover[b-zhjwb2gbzd] {
        background: var(--adm-danger);
        border-color: var(--adm-danger);
        color: #ffffff;
    }

.adm-self-kick[b-zhjwb2gbzd] {
    color: var(--adm-muted);
    font-size: 0.85rem;
}

/* ===== Header ===== */
.adm-page-header[b-zhjwb2gbzd] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.adm-page-icon[b-zhjwb2gbzd] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--adm-forest), var(--adm-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .adm-page-icon svg[b-zhjwb2gbzd] {
        width: 26px;
        height: 26px;
    }

.adm-page-title[b-zhjwb2gbzd] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--adm-forest);
    line-height: 1.2;
}

.adm-page-subtitle[b-zhjwb2gbzd] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--adm-muted);
}

/* ===== Toolbar ===== */
.adm-toolbar[b-zhjwb2gbzd] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.adm-count-chip[b-zhjwb2gbzd] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--adm-forest);
    background: var(--adm-bg-soft);
    border: 1px solid var(--adm-border);
    border-radius: 999px;
    padding: 6px 14px;
}

.adm-count-dot[b-zhjwb2gbzd] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--adm-primary);
    animation: adm-pulse-b-zhjwb2gbzd 1.5s ease-in-out infinite;
}

.adm-refresh-btn[b-zhjwb2gbzd] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 18px;
    border: 1px solid var(--adm-border);
    border-radius: 999px;
    background: var(--adm-bg-soft);
    color: var(--adm-primary);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

    .adm-refresh-btn svg[b-zhjwb2gbzd] {
        width: 13px;
        height: 13px;
    }

    .adm-refresh-btn:hover[b-zhjwb2gbzd] {
        background: var(--adm-primary);
        border-color: var(--adm-primary);
        color: #ffffff;
    }

    .adm-refresh-btn:active[b-zhjwb2gbzd] {
        transform: translateY(0);
    }

/* ===== Dica ===== */
.adm-tip[b-zhjwb2gbzd] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    margin-bottom: 16px;
    border-radius: 10px;
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: var(--adm-forest);
    font-size: 0.85rem;
}

    .adm-tip svg[b-zhjwb2gbzd] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
        margin-top: 1px;
    }

/* ===== Estado vazio ===== */
.adm-empty[b-zhjwb2gbzd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 48px 16px;
    border: 1px dashed var(--adm-border);
    border-radius: var(--adm-radius);
    background: var(--adm-bg-soft);
    color: var(--adm-muted);
    font-size: 0.9rem;
    text-align: center;
}

    .adm-empty svg[b-zhjwb2gbzd] {
        width: 38px;
        height: 38px;
        opacity: 0.6;
    }

/* ===== Card + Tabela ===== */
.adm-card[b-zhjwb2gbzd] {
    background: var(--adm-card-bg);
    border: 1px solid var(--adm-border);
    border-radius: var(--adm-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    overflow: hidden;
}

.adm-table-wrap[b-zhjwb2gbzd] {
    overflow-x: auto;
}

.adm-table[b-zhjwb2gbzd] {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

    .adm-table thead th[b-zhjwb2gbzd] {
        position: sticky;
        top: 0;
        background: var(--adm-bg-soft);
        color: var(--adm-forest);
        font-size: 0.72rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        padding: 12px 12px;
        border-bottom: 1px solid var(--adm-border);
        white-space: nowrap;
        text-align: center;
    }

    .adm-table thead th.adm-th-left[b-zhjwb2gbzd] {
        text-align: left;
    }

    .adm-table tbody td[b-zhjwb2gbzd] {
        padding: 12px;
        font-size: 0.85rem;
        color: var(--adm-text);
        border-bottom: 1px solid var(--adm-border);
        white-space: nowrap;
        text-align: center;
        vertical-align: middle;
    }

    .adm-table tbody td:first-child[b-zhjwb2gbzd],
    .adm-table tbody td:nth-child(2)[b-zhjwb2gbzd] {
        text-align: left;
    }

    .adm-table tbody tr:last-child td[b-zhjwb2gbzd] {
        border-bottom: none;
    }

    .adm-table tbody tr[b-zhjwb2gbzd] {
        transition: background 0.15s ease;
    }

        .adm-table tbody tr:hover[b-zhjwb2gbzd] {
            background: var(--adm-bg-soft);
        }

        .adm-table tbody tr.adm-inactive[b-zhjwb2gbzd] {
            background: #fafbfa;
        }

            .adm-table tbody tr.adm-inactive:hover[b-zhjwb2gbzd] {
                background: var(--adm-bg-soft);
            }

/* ===== Badges ===== */
.adm-auth-badge[b-zhjwb2gbzd],
.adm-anon-badge[b-zhjwb2gbzd] {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    border-radius: 999px;
    padding: 2px 10px;
    margin-right: 6px;
    letter-spacing: 0.03em;
    vertical-align: middle;
}

.adm-auth-badge[b-zhjwb2gbzd] {
    color: #ffffff;
    background: var(--adm-primary);
}

.adm-anon-badge[b-zhjwb2gbzd] {
    color: var(--adm-muted);
    background: #eef1ef;
    border: 1px solid var(--adm-border);
}

.adm-anon-id[b-zhjwb2gbzd] {
    margin-top: 3px;
    font-size: 0.72rem;
    font-family: Consolas, Monaco, "Courier New", monospace;
    color: var(--adm-muted);
    max-width: 190px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.adm-active-badge[b-zhjwb2gbzd] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--adm-forest);
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    border-radius: 999px;
    padding: 3px 12px;
}

.adm-pulse-dot[b-zhjwb2gbzd] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--adm-primary);
    animation: adm-pulse-b-zhjwb2gbzd 1.5s ease-in-out infinite;
}

.adm-idle-badge[b-zhjwb2gbzd] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    color: #a16207;
    background: #fdf8ec;
    border: 1px solid #f0e4c8;
    border-radius: 999px;
    padding: 3px 12px;
}

@keyframes adm-pulse-b-zhjwb2gbzd {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}

/* ===== Detalhes das células ===== */
.adm-device[b-zhjwb2gbzd] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-size: 0.78rem;
    min-width: 180px;
}

    .adm-device code[b-zhjwb2gbzd] {
        color: var(--adm-primary);
        background: var(--adm-bg-soft);
        padding: 0 4px;
        border-radius: 4px;
        font-size: 0.78rem;
    }

.adm-device-label[b-zhjwb2gbzd] {
    color: var(--adm-muted);
    margin-right: 4px;
}

    .adm-device-label code[b-zhjwb2gbzd] {
        margin-right: 0;
    }

.adm-page-path[b-zhjwb2gbzd] {
    color: var(--adm-primary) !important;
    background: var(--adm-bg-soft);
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 0.78rem;
    font-weight: 600;
    white-space: nowrap;
}

.adm-time-cell[b-zhjwb2gbzd] {
    font-variant-numeric: tabular-nums;
    color: var(--adm-muted);
    font-size: 0.8rem !important;
}
/* /Components/Pages/Admin/AdminUsers.razor.rz.scp.css */
/* ===== AdminUsers — tema verde ===== */
.au-page[b-js4ejmzarn] {
    --au-forest: #0c3d1c;
    --au-primary: #388e3c;
    --au-primary-light: #4caf50;
    --au-sky-soft: #a5d6a7;
    --au-bg-soft: #f8fbf8;
    --au-card-bg: #ffffff;
    --au-text: #3a4a3f;
    --au-muted: #849787;
    --au-border: #e2ede4;
    --au-danger: #b45309;
    --au-danger-bg: #fdf3e7;
    --au-radius: 14px;

    max-width: 100%;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Header ===== */
.au-page-header[b-js4ejmzarn] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.au-page-icon[b-js4ejmzarn] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--au-forest), var(--au-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .au-page-icon svg[b-js4ejmzarn] {
        width: 26px;
        height: 26px;
    }

.au-page-title[b-js4ejmzarn] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--au-forest);
    line-height: 1.2;
}

.au-page-subtitle[b-js4ejmzarn] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--au-muted);
}

/* ===== Toolbar ===== */
.au-toolbar[b-js4ejmzarn] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.au-stat-chip[b-js4ejmzarn] {
    display: inline-flex;
    align-items: center;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--au-forest);
    background: var(--au-bg-soft);
    border: 1px solid var(--au-border);
    border-radius: 999px;
    padding: 6px 14px;
    font-variant-numeric: tabular-nums;
}

.au-stat-ok[b-js4ejmzarn] {
    color: var(--au-primary);
}

.au-stat-warn[b-js4ejmzarn] {
    color: #a16207;
    background: #fdf8ec;
    border-color: #f0e4c8;
}

.au-refresh-btn[b-js4ejmzarn] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 18px;
    border: 1px solid var(--au-border);
    border-radius: 999px;
    background: var(--au-bg-soft);
    color: var(--au-primary);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: auto;
}

    .au-refresh-btn svg[b-js4ejmzarn] {
        width: 13px;
        height: 13px;
    }

    .au-refresh-btn:hover[b-js4ejmzarn] {
        background: var(--au-primary);
        border-color: var(--au-primary);
        color: #ffffff;
    }

/* ===== Dica ===== */
.au-tip[b-js4ejmzarn] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    margin-bottom: 16px;
    border-radius: 10px;
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: var(--au-forest);
    font-size: 0.85rem;
}

    .au-tip svg[b-js4ejmzarn] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
        margin-top: 1px;
    }

/* ===== Alerta de mensagem ===== */
.au-alert-error[b-js4ejmzarn],
.au-alert-ok[b-js4ejmzarn] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-bottom: 16px;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    word-break: break-word;
}

    .au-alert-error svg[b-js4ejmzarn],
    .au-alert-ok svg[b-js4ejmzarn] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }

.au-alert-error[b-js4ejmzarn] {
    background: var(--au-danger-bg);
    border: 1px solid #f0dfd3;
    color: var(--au-danger);
}

.au-alert-ok[b-js4ejmzarn] {
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: var(--au-forest);
}

.au-alert-msg[b-js4ejmzarn] {
    flex: 1;
}

.au-alert-close[b-js4ejmzarn] {
    border: none;
    background: transparent;
    color: inherit;
    font-size: 1.1rem;
    line-height: 1;
    cursor: pointer;
    padding: 0 4px;
    opacity: 0.7;
    transition: opacity 0.15s ease;
}

    .au-alert-close:hover[b-js4ejmzarn] {
        opacity: 1;
    }

/* ===== Loading / Estado vazio ===== */
.au-loading[b-js4ejmzarn] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 16px;
    color: var(--au-muted);
    font-size: 0.9rem;
}

.au-empty[b-js4ejmzarn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 48px 16px;
    border: 1px dashed var(--au-border);
    border-radius: var(--au-radius);
    background: var(--au-bg-soft);
    color: var(--au-muted);
    font-size: 0.9rem;
    text-align: center;
}

    .au-empty svg[b-js4ejmzarn] {
        width: 38px;
        height: 38px;
        opacity: 0.6;
    }

/* ===== Filtro ===== */
.au-filter[b-js4ejmzarn] {
    position: relative;
    max-width: 360px;
    margin-bottom: 16px;
}

    .au-filter svg[b-js4ejmzarn] {
        position: absolute;
        left: 12px;
        top: 50%;
        transform: translateY(-50%);
        width: 15px;
        height: 15px;
        color: var(--au-muted);
        pointer-events: none;
    }

.au-filter-input[b-js4ejmzarn] {
    width: 100%;
    border: 1px solid var(--au-border) !important;
    border-radius: 999px !important;
    padding: 8px 14px 8px 36px !important;
    color: var(--au-text) !important;
    font-size: 0.88rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .au-filter-input:focus[b-js4ejmzarn] {
        border-color: var(--au-primary) !important;
        box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18) !important;
        outline: none !important;
    }

/* ===== Card + Tabela ===== */
.au-card[b-js4ejmzarn] {
    background: var(--au-card-bg);
    border: 1px solid var(--au-border);
    border-radius: var(--au-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    overflow: hidden;
}

.au-table-wrap[b-js4ejmzarn] {
    overflow-x: auto;
}

.au-table[b-js4ejmzarn] {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

    .au-table thead th[b-js4ejmzarn] {
        position: sticky;
        top: 0;
        background: var(--au-bg-soft);
        color: var(--au-forest);
        font-size: 0.72rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        padding: 12px 12px;
        border-bottom: 1px solid var(--au-border);
        white-space: nowrap;
        text-align: center;
    }

    .au-table thead th.au-th-left[b-js4ejmzarn] {
        text-align: left;
    }

    .au-table tbody td[b-js4ejmzarn] {
        padding: 12px;
        font-size: 0.87rem;
        color: var(--au-text);
        border-bottom: 1px solid var(--au-border);
        text-align: center;
        vertical-align: middle;
    }

    .au-table tbody td:first-child[b-js4ejmzarn],
    .au-table tbody td:nth-child(2)[b-js4ejmzarn] {
        text-align: left;
    }

    .au-table tbody tr:last-child td[b-js4ejmzarn] {
        border-bottom: none;
    }

    .au-table tbody tr[b-js4ejmzarn] {
        transition: background 0.15s ease;
    }

        .au-table tbody tr:hover[b-js4ejmzarn] {
            background: var(--au-bg-soft);
        }

/* ===== Células ===== */
.au-email[b-js4ejmzarn] {
    color: var(--au-forest);
    word-break: break-all;
}

.au-user-id[b-js4ejmzarn] {
    margin-top: 2px;
    font-size: 0.74rem;
    font-family: Consolas, Monaco, "Courier New", monospace;
    color: var(--au-muted);
}

.au-status-cell[b-js4ejmzarn] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    align-items: center;
}

.au-badge[b-js4ejmzarn] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    border-radius: 999px;
    padding: 3px 12px;
    letter-spacing: 0.03em;
}

.au-badge-ok[b-js4ejmzarn] {
    color: #ffffff;
    background: var(--au-primary);
}

.au-badge-warn[b-js4ejmzarn] {
    color: #a16207;
    background: #fdf8ec;
    border: 1px solid #f0e4c8;
}

.au-badge-block[b-js4ejmzarn] {
    color: #ffffff;
    background: #c2620a;
    border: 1px solid #b4570a;
}

.au-role-badge[b-js4ejmzarn] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--au-primary);
    background: var(--au-bg-soft);
    border: 1px solid var(--au-border);
    border-radius: 999px;
    padding: 3px 12px;
    margin: 1px 2px 1px 0;
    letter-spacing: 0.03em;
}

.au-no-role[b-js4ejmzarn] {
    color: var(--au-muted);
}

/* ===== Ações ===== */
.au-self-btn[b-js4ejmzarn],
.au-delete-btn[b-js4ejmzarn],
.au-confirm-btn[b-js4ejmzarn],
.au-cancel-btn[b-js4ejmzarn] {
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 6px 16px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.au-self-btn[b-js4ejmzarn] {
    border: 1px dashed var(--au-border);
    background: var(--au-bg-soft);
    color: var(--au-muted);
    cursor: not-allowed;
}

.au-delete-btn[b-js4ejmzarn] {
    border: 1px solid #f0dfd3;
    background: var(--au-danger-bg);
    color: var(--au-danger);
}

    .au-delete-btn:hover:not(:disabled)[b-js4ejmzarn] {
        background: var(--au-danger);
        border-color: var(--au-danger);
        color: #ffffff;
    }

.au-confirm-row[b-js4ejmzarn] {
    display: flex;
    gap: 6px;
    justify-content: center;
}

.au-confirm-btn[b-js4ejmzarn] {
    border: none;
    background: linear-gradient(135deg, var(--au-forest), var(--au-primary));
    color: #ffffff;
}

    .au-confirm-btn:hover:not(:disabled)[b-js4ejmzarn] {
        opacity: 0.9;
    }

    .au-confirm-btn:disabled[b-js4ejmzarn],
    .au-cancel-btn:disabled[b-js4ejmzarn] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.au-cancel-btn[b-js4ejmzarn] {
    border: 1px solid var(--au-border);
    background: var(--au-bg-soft);
    color: var(--au-text);
}

    .au-cancel-btn:hover:not(:disabled)[b-js4ejmzarn] {
        background: var(--au-border);
    }
/* /Components/Pages/CAT/CatConfiguration.razor.rz.scp.css */
/* ===== CatConfiguration — tema verde ===== */
.cat-page[b-7k69wv9tgg] {
    --cat-forest: #0c3d1c;
    --cat-primary: #388e3c;
    --cat-primary-light: #4caf50;
    --cat-sky: #81c784;
    --cat-sky-soft: #a5d6a7;
    --cat-bg-soft: #f8fbf8;
    --cat-card-bg: #ffffff;
    --cat-text: #3a4a3f;
    --cat-muted: #849787;
    --cat-border: #e2ede4;
    --cat-danger: #b45309;
    --cat-danger-bg: #fdf3e7;
    --cat-radius: 14px;

    max-width: 100%;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Header ===== */
.cat-page-header[b-7k69wv9tgg] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.cat-page-icon[b-7k69wv9tgg] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--cat-forest), var(--cat-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .cat-page-icon svg[b-7k69wv9tgg] {
        width: 26px;
        height: 26px;
    }

.cat-page-title[b-7k69wv9tgg] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--cat-forest);
    line-height: 1.2;
}

.cat-page-subtitle[b-7k69wv9tgg] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--cat-muted);
}

/* ===== Toolbar ===== */
.cat-toolbar[b-7k69wv9tgg] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.cat-new-btn[b-7k69wv9tgg] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 22px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--cat-forest), var(--cat-primary));
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.22);
}

    .cat-new-btn svg[b-7k69wv9tgg] {
        width: 14px;
        height: 14px;
    }

    .cat-new-btn:hover[b-7k69wv9tgg] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }

    .cat-new-btn:active[b-7k69wv9tgg] {
        transform: translateY(0);
    }

.cat-count-chip[b-7k69wv9tgg] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--cat-primary);
    background: var(--cat-bg-soft);
    border: 1px solid var(--cat-border);
    border-radius: 999px;
    padding: 5px 12px;
}

/* ===== Estado vazio ===== */
.cat-empty[b-7k69wv9tgg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 48px 16px;
    border: 1px dashed var(--cat-border);
    border-radius: var(--cat-radius);
    background: var(--cat-bg-soft);
    color: var(--cat-muted);
    font-size: 0.9rem;
    text-align: center;
}

    .cat-empty svg[b-7k69wv9tgg] {
        width: 38px;
        height: 38px;
        opacity: 0.6;
    }

/* ===== Tabela ===== */
.cat-table-wrap[b-7k69wv9tgg] {
    background: var(--cat-card-bg);
    border: 1px solid var(--cat-border);
    border-radius: var(--cat-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    overflow-x: auto;
}

.cat-table[b-7k69wv9tgg] {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

    .cat-table thead th[b-7k69wv9tgg] {
        position: sticky;
        top: 0;
        background: var(--cat-bg-soft);
        color: var(--cat-forest);
        font-size: 0.72rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        padding: 12px 10px;
        border-bottom: 1px solid var(--cat-border);
        white-space: nowrap;
    }

    .cat-table tbody td[b-7k69wv9tgg] {
        padding: 12px 10px;
        font-size: 0.88rem;
        color: var(--cat-text);
        font-variant-numeric: tabular-nums;
        border-bottom: 1px solid var(--cat-border);
        white-space: nowrap;
        text-align: center;
    }

    .cat-table thead th[b-7k69wv9tgg] {
        text-align: center;
    }

    .cat-table tbody tr:last-child td[b-7k69wv9tgg] {
        border-bottom: none;
    }

    .cat-table tbody tr[b-7k69wv9tgg] {
        transition: background 0.15s ease;
    }

        .cat-table tbody tr:hover[b-7k69wv9tgg] {
            background: var(--cat-bg-soft);
        }

.cat-method-badge[b-7k69wv9tgg] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--cat-forest);
    background: var(--cat-sky-soft);
    border-radius: 999px;
    padding: 3px 10px;
    letter-spacing: 0.03em;
}

.cat-row-actions[b-7k69wv9tgg] {
    display: flex;
    gap: 6px;
    justify-content: center;
}

.cat-edit-btn[b-7k69wv9tgg],
.cat-delete-btn[b-7k69wv9tgg] {
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 12px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.cat-edit-btn[b-7k69wv9tgg] {
    border: 1px solid var(--cat-border);
    background: var(--cat-bg-soft);
    color: var(--cat-primary);
}

    .cat-edit-btn:hover[b-7k69wv9tgg] {
        background: var(--cat-primary);
        border-color: var(--cat-primary);
        color: #ffffff;
    }

.cat-delete-btn[b-7k69wv9tgg] {
    border: 1px solid #f0dfd3;
    background: var(--cat-danger-bg);
    color: var(--cat-danger);
}

    .cat-delete-btn:hover[b-7k69wv9tgg] {
        background: var(--cat-danger);
        border-color: var(--cat-danger);
        color: #ffffff;
    }

/* ===== Formulário ===== */
.cat-card[b-7k69wv9tgg] {
    background: var(--cat-card-bg);
    border: 1px solid var(--cat-border);
    border-radius: var(--cat-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    padding: 20px 22px 22px;
    margin-top: 20px;
}

.cat-card-title[b-7k69wv9tgg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--cat-border);
    font-size: 1rem;
    font-weight: 700;
    color: var(--cat-forest);
}

.cat-close-btn[b-7k69wv9tgg] {
    border: none;
    background: var(--cat-bg-soft);
    color: var(--cat-muted);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: 1.2rem;
    line-height: 1;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: auto;
}

    .cat-close-btn:hover[b-7k69wv9tgg] {
        background: var(--cat-primary-light);
        color: #ffffff;
    }

.cat-alert[b-7k69wv9tgg] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-bottom: 14px;
    border-radius: 10px;
    background: var(--cat-danger-bg);
    border: 1px solid #f0dfd3;
    color: var(--cat-danger);
    font-size: 0.85rem;
    font-weight: 600;
}

    .cat-alert svg[b-7k69wv9tgg] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }

.cat-form-grid[b-7k69wv9tgg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 2px 16px;
}

.cat-label[b-7k69wv9tgg] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--cat-text);
    margin-bottom: 4px;
}

.cat-input[b-7k69wv9tgg] {
    border: 1px solid var(--cat-border) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    color: var(--cat-text) !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .cat-input:focus[b-7k69wv9tgg] {
        border-color: var(--cat-primary) !important;
        box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18) !important;
        outline: none !important;
    }

.cat-form-actions[b-7k69wv9tgg] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--cat-border);
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.cat-save-btn[b-7k69wv9tgg] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 24px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--cat-forest), var(--cat-primary));
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.22);
}

    .cat-save-btn svg[b-7k69wv9tgg] {
        width: 14px;
        height: 14px;
    }

    .cat-save-btn:hover[b-7k69wv9tgg] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }

.cat-cancel-btn[b-7k69wv9tgg] {
    padding: 9px 24px;
    border: 1px solid var(--cat-border);
    border-radius: 999px;
    background: var(--cat-bg-soft);
    color: var(--cat-text);
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

    .cat-cancel-btn:hover[b-7k69wv9tgg] {
        background: var(--cat-border);
    }
/* /Components/Pages/CAT/CatPoolSelection.razor.rz.scp.css */
/* ===== CatPoolSelection — tema verde ===== */
.cps-page[b-e7z04jelnq] {
    --cps-forest: #0c3d1c;
    --cps-primary: #388e3c;
    --cps-primary-light: #4caf50;
    --cps-sky: #81c784;
    --cps-sky-soft: #a5d6a7;
    --cps-bg-soft: #f8fbf8;
    --cps-card-bg: #ffffff;
    --cps-text: #3a4a3f;
    --cps-muted: #849787;
    --cps-border: #e2ede4;
    --cps-danger: #b45309;
    --cps-danger-bg: #fdf3e7;
    --cps-radius: 14px;

    max-width: 100%;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Header ===== */
.cps-page-header[b-e7z04jelnq] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.cps-page-icon[b-e7z04jelnq] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--cps-forest), var(--cps-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .cps-page-icon svg[b-e7z04jelnq] {
        width: 26px;
        height: 26px;
    }

.cps-page-title[b-e7z04jelnq] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--cps-forest);
    line-height: 1.2;
}

.cps-page-subtitle[b-e7z04jelnq] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--cps-muted);
}

/* ===== Card ===== */
.cps-card[b-e7z04jelnq] {
    background: var(--cps-card-bg);
    border: 1px solid var(--cps-border);
    border-radius: var(--cps-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    padding: 20px 22px 22px;
    margin-bottom: 20px;
}

.cps-card-title[b-e7z04jelnq] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--cps-border);
    font-size: 1rem;
    font-weight: 700;
    color: var(--cps-forest);
}

    .cps-card-title[b-e7z04jelnq]::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--cps-primary);
    }

/* ===== Estado vazio ===== */
.cps-empty[b-e7z04jelnq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 16px;
    border: 1px dashed var(--cps-border);
    border-radius: 10px;
    background: var(--cps-bg-soft);
    color: var(--cps-muted);
    font-size: 0.9rem;
    text-align: center;
}

    .cps-empty svg[b-e7z04jelnq] {
        width: 36px;
        height: 36px;
        opacity: 0.6;
    }

/* ===== Tabela ===== */
.cps-table-wrap[b-e7z04jelnq] {
    overflow-x: auto;
}

.cps-table[b-e7z04jelnq] {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

    .cps-table thead th[b-e7z04jelnq] {
        position: sticky;
        top: 0;
        background: var(--cps-bg-soft);
        color: var(--cps-forest);
        font-size: 0.72rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        padding: 12px 10px;
        border-bottom: 1px solid var(--cps-border);
        white-space: nowrap;
        text-align: center;
    }

    .cps-table tbody td[b-e7z04jelnq] {
        padding: 12px 10px;
        font-size: 0.88rem;
        color: var(--cps-text);
        font-variant-numeric: tabular-nums;
        border-bottom: 1px solid var(--cps-border);
        white-space: nowrap;
        text-align: center;
    }

    .cps-table tbody td:first-child[b-e7z04jelnq] {
        text-align: left;
        font-weight: 600;
        color: var(--cps-forest);
    }

    .cps-table tbody tr:last-child td[b-e7z04jelnq] {
        border-bottom: none;
    }

    .cps-table tbody tr[b-e7z04jelnq] {
        transition: background 0.15s ease;
    }

        .cps-table tbody tr:hover[b-e7z04jelnq] {
            background: var(--cps-bg-soft);
        }

        .cps-table tbody tr.cps-selected[b-e7z04jelnq] {
            background: #eaf6ec;
        }

            .cps-table tbody tr.cps-selected:hover[b-e7z04jelnq] {
                background: #e0f1e4;
            }

            .cps-table tbody tr.cps-selected td[b-e7z04jelnq] {
                font-weight: 700;
                color: var(--cps-forest);
                border-bottom-color: #d3e9d8;
            }

.cps-row-actions[b-e7z04jelnq] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.cps-selected-badge[b-e7z04jelnq] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    color: #ffffff;
    background: var(--cps-primary);
    border-radius: 999px;
    padding: 3px 12px;
    letter-spacing: 0.03em;
}

.cps-delete-btn[b-e7z04jelnq] {
    border: 1px solid #f0dfd3;
    background: var(--cps-danger-bg);
    color: var(--cps-danger);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 12px;
    cursor: pointer;
    transition: all 0.15s ease;
}

    .cps-delete-btn:hover[b-e7z04jelnq] {
        background: var(--cps-danger);
        border-color: var(--cps-danger);
        color: #ffffff;
    }

/* ===== Ações ===== */
.cps-actions[b-e7z04jelnq] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.cps-start-btn[b-e7z04jelnq],
.cps-download-btn[b-e7z04jelnq] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 26px;
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.cps-start-btn[b-e7z04jelnq] {
    border: none;
    background: linear-gradient(135deg, var(--cps-forest), var(--cps-primary));
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.22);
}

.cps-download-btn[b-e7z04jelnq] {
    border: 1px solid var(--cps-border);
    background: var(--cps-bg-soft);
    color: var(--cps-primary);
}

    .cps-start-btn svg[b-e7z04jelnq],
    .cps-download-btn svg[b-e7z04jelnq] {
        width: 14px;
        height: 14px;
    }

    .cps-start-btn:hover:not(:disabled)[b-e7z04jelnq] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }

    .cps-download-btn:hover:not(:disabled)[b-e7z04jelnq] {
        background: var(--cps-primary);
        border-color: var(--cps-primary);
        color: #ffffff;
    }

    .cps-start-btn:active:not(:disabled)[b-e7z04jelnq],
    .cps-download-btn:active:not(:disabled)[b-e7z04jelnq] {
        transform: translateY(0);
    }

    .cps-start-btn:disabled[b-e7z04jelnq],
    .cps-download-btn:disabled[b-e7z04jelnq] {
        opacity: 0.45;
        cursor: not-allowed;
        box-shadow: none;
    }

/* ===== Alerta de erro ===== */
.cps-alert-error[b-e7z04jelnq] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 10px;
    background: var(--cps-danger-bg);
    border: 1px solid #f0dfd3;
    color: var(--cps-danger);
    font-size: 0.85rem;
    font-weight: 600;
    word-break: break-word;
}

    .cps-alert-error svg[b-e7z04jelnq] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }
/* /Components/Pages/CAT/CatPrep.razor.rz.scp.css */
/* ===== CatPrep — tema verde ===== */
.catp-page[b-je2nnte7j3] {
    --catp-forest: #0c3d1c;
    --catp-primary: #388e3c;
    --catp-primary-light: #4caf50;
    --catp-sky: #81c784;
    --catp-sky-soft: #a5d6a7;
    --catp-bg-soft: #f8fbf8;
    --catp-card-bg: #ffffff;
    --catp-text: #3a4a3f;
    --catp-muted: #849787;
    --catp-border: #e2ede4;
    --catp-danger: #b45309;
    --catp-danger-bg: #fdf3e7;
    --catp-radius: 14px;

    max-width: 100%;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Header ===== */
.catp-page-header[b-je2nnte7j3] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.catp-page-icon[b-je2nnte7j3] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--catp-forest), var(--catp-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .catp-page-icon svg[b-je2nnte7j3] {
        width: 26px;
        height: 26px;
    }

.catp-page-title[b-je2nnte7j3] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--catp-forest);
    line-height: 1.2;
}

.catp-page-subtitle[b-je2nnte7j3] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--catp-muted);
}

/* ===== Card ===== */
.catp-card[b-je2nnte7j3] {
    background: var(--catp-card-bg);
    border: 1px solid var(--catp-border);
    border-radius: var(--catp-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    padding: 20px 22px 22px;
    margin-bottom: 20px;
}

.catp-card-title[b-je2nnte7j3] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--catp-border);
    font-size: 1rem;
    font-weight: 700;
    color: var(--catp-forest);
}

    .catp-card-title[b-je2nnte7j3]::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--catp-primary);
    }

/* ===== Loading / estado vazio ===== */
.catp-empty[b-je2nnte7j3] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 16px;
    color: var(--catp-muted);
    font-size: 0.9rem;
}

/* ===== Tabela ===== */
.catp-table-wrap[b-je2nnte7j3] {
    overflow-x: auto;
}

.catp-table[b-je2nnte7j3] {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
}

    .catp-table thead th[b-je2nnte7j3] {
        position: sticky;
        top: 0;
        background: var(--catp-bg-soft);
        color: var(--catp-forest);
        font-size: 0.72rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        padding: 12px 10px;
        border-bottom: 1px solid var(--catp-border);
        white-space: nowrap;
        text-align: center;
    }

    .catp-table tbody td[b-je2nnte7j3] {
        padding: 12px 10px;
        font-size: 0.88rem;
        color: var(--catp-text);
        font-variant-numeric: tabular-nums;
        border-bottom: 1px solid var(--catp-border);
        white-space: nowrap;
        text-align: center;
    }

    .catp-table tbody tr:last-child td[b-je2nnte7j3] {
        border-bottom: none;
    }

    .catp-table tbody tr[b-je2nnte7j3] {
        transition: background 0.15s ease;
    }

        .catp-table tbody tr:hover[b-je2nnte7j3] {
            background: var(--catp-bg-soft);
        }

        .catp-table tbody tr.catp-selected[b-je2nnte7j3] {
            background: #eaf6ec;
        }

            .catp-table tbody tr.catp-selected:hover[b-je2nnte7j3] {
                background: #e0f1e4;
            }

            .catp-table tbody tr.catp-selected td[b-je2nnte7j3] {
                font-weight: 700;
                color: var(--catp-forest);
                border-bottom-color: #d3e9d8;
            }

.catp-method-badge[b-je2nnte7j3] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    color: var(--catp-forest);
    background: var(--catp-sky-soft);
    border-radius: 999px;
    padding: 3px 10px;
    letter-spacing: 0.03em;
}

.catp-selected-badge[b-je2nnte7j3] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    color: #ffffff;
    background: var(--catp-primary);
    border-radius: 999px;
    padding: 3px 12px;
    letter-spacing: 0.03em;
}

/* ===== Formulário ===== */
.catp-form-row[b-je2nnte7j3] {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}

    .catp-form-row > div[b-je2nnte7j3] {
        flex: 1 1 320px;
    }

.catp-label[b-je2nnte7j3] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--catp-text);
    margin-bottom: 4px;
}

.catp-input[b-je2nnte7j3] {
    border: 1px solid var(--catp-border) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    color: var(--catp-text) !important;
    width: 100%;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .catp-input:focus[b-je2nnte7j3] {
        border-color: var(--catp-primary) !important;
        box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18) !important;
        outline: none !important;
    }

    .catp-input:disabled[b-je2nnte7j3] {
        background: var(--catp-bg-soft) !important;
        opacity: 0.7;
    }

.catp-prep-btn[b-je2nnte7j3] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 26px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--catp-forest), var(--catp-primary));
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.22);
    white-space: nowrap;
}

    .catp-prep-btn svg[b-je2nnte7j3] {
        width: 14px;
        height: 14px;
        fill: none;
        stroke: currentColor;
        stroke-width: 2.2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .catp-prep-btn:hover:not(:disabled)[b-je2nnte7j3] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }

    .catp-prep-btn:active:not(:disabled)[b-je2nnte7j3] {
        transform: translateY(0);
    }

    .catp-prep-btn:disabled[b-je2nnte7j3] {
        opacity: 0.45;
        cursor: not-allowed;
        box-shadow: none;
    }

.catp-btn-spinner[b-je2nnte7j3] {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-top-color: #ffffff;
    border-radius: 50%;
    display: inline-block;
    animation: catp-spin-b-je2nnte7j3 0.7s linear infinite;
}

@keyframes catp-spin-b-je2nnte7j3 {
    to {
        transform: rotate(360deg);
    }
}

/* ===== Status do hub ===== */
.catp-hub-status[b-je2nnte7j3] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 600;
    border: 1px solid transparent;
}

    .catp-hub-status .catp-hub-dot[b-je2nnte7j3] {
        width: 7px;
        height: 7px;
        border-radius: 50%;
    }

.catp-hub-ok[b-je2nnte7j3] {
    background: var(--catp-bg-soft);
    border-color: var(--catp-border);
    color: var(--catp-primary);
}

    .catp-hub-ok .catp-hub-dot[b-je2nnte7j3] {
        background: var(--catp-primary);
    }

.catp-hub-wait[b-je2nnte7j3] {
    background: #fdf8ec;
    border-color: #f0e4c8;
    color: #a16207;
}

    .catp-hub-wait .catp-hub-dot[b-je2nnte7j3] {
        background: #d97706;
        animation: catp-pulse-b-je2nnte7j3 1.2s ease-in-out infinite;
    }

.catp-hub-off[b-je2nnte7j3] {
    background: var(--catp-danger-bg);
    border-color: #f0dfd3;
    color: var(--catp-danger);
}

    .catp-hub-off .catp-hub-dot[b-je2nnte7j3] {
        background: var(--catp-danger);
    }

@keyframes catp-pulse-b-je2nnte7j3 {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.35;
    }
}

/* ===== Alertas de status ===== */
.catp-alert-error[b-je2nnte7j3],
.catp-alert-info[b-je2nnte7j3] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-top: 14px;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    word-break: break-word;
}

    .catp-alert-error svg[b-je2nnte7j3],
    .catp-alert-info svg[b-je2nnte7j3] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
    }

.catp-alert-error[b-je2nnte7j3] {
    background: var(--catp-danger-bg);
    border: 1px solid #f0dfd3;
    color: var(--catp-danger);
}

.catp-alert-info[b-je2nnte7j3] {
    background: #eaf6ec;
    border: 1px solid #d3e9d8;
    color: var(--catp-forest);
}

/* ===== Pensando ===== */
.catp-thinking[b-je2nnte7j3] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
    padding: 8px 16px;
    border-radius: 999px;
    background: var(--catp-bg-soft);
    border: 1px solid var(--catp-border);
    color: var(--catp-forest);
    font-size: 0.82rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

    .catp-thinking .catp-btn-spinner[b-je2nnte7j3] {
        width: 13px;
        height: 13px;
        border-color: rgba(56, 142, 60, 0.3);
        border-top-color: var(--catp-primary);
    }
/* /Components/Pages/Main.razor.rz.scp.css */
/* =========================
   HOME — tons de verde
========================= */

.home-page[b-xndc1xy6hn] {
    margin: 0 -1rem;
}

/* ===== HERO ===== */

.hero[b-xndc1xy6hn] {
    background:
        radial-gradient(60rem 24rem at 85% -10%, rgba(129, 199, 132, 0.25), transparent 60%),
        radial-gradient(40rem 20rem at 5% 110%, rgba(46, 125, 50, 0.35), transparent 60%),
        linear-gradient(135deg, #0c3d1c 0%, #155e28 55%, #2e7d32 100%);
    color: #fff;
    padding: 4.5rem 1.5rem 3.5rem;
}

.hero-inner[b-xndc1xy6hn] {
    max-width: 1080px;
    margin: 0 auto;
    text-align: center;
}

.hero-badge[b-xndc1xy6hn] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(165, 214, 167, 0.4);
    color: #c8e6c9;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.hero-title[b-xndc1xy6hn] {
    margin: 1.25rem 0 0.75rem;
    font-size: clamp(2rem, 5vw, 3.25rem);
    font-weight: 800;
    line-height: 1.15;
}

.hero-highlight[b-xndc1xy6hn] {
    background: linear-gradient(90deg, #81c784, #a5d6a7);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-subtitle[b-xndc1xy6hn] {
    max-width: 640px;
    margin: 0 auto;
    font-size: 1.1rem;
    color: rgba(224, 242, 226, 0.85);
    line-height: 1.6;
}

.hero-cta[b-xndc1xy6hn] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 2rem;
}

.btn-hero[b-xndc1xy6hn] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.7rem 1.4rem;
    border-radius: 0.6rem;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.btn-hero:hover[b-xndc1xy6hn] {
    transform: translateY(-2px);
    text-decoration: none;
}

.btn-hero-primary[b-xndc1xy6hn] {
    background: #388e3c;
    color: #fff;
    box-shadow: 0 4px 14px rgba(46, 125, 50, 0.45);
}

.btn-hero-primary:hover[b-xndc1xy6hn] {
    background: #4caf50;
    color: #fff;
}

.btn-hero-ghost[b-xndc1xy6hn] {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.35);
    color: #fff;
}

.btn-hero-ghost:hover[b-xndc1xy6hn] {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
}

.hero-stats[b-xndc1xy6hn] {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.5rem;
    margin: 2.5rem 0 0;
    padding: 0;
}

.hero-stats li[b-xndc1xy6hn] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.hero-stats strong[b-xndc1xy6hn] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #a5d6a7;
}

.hero-stats span[b-xndc1xy6hn] {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(224, 242, 226, 0.7);
}

.hero-stats li + li[b-xndc1xy6hn] {
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    padding-left: 1.25rem;
}

/* ===== FEATURES ===== */

.features[b-xndc1xy6hn] {
    padding: 3.5rem 1.5rem;
}

.features-header[b-xndc1xy6hn] {
    text-align: center;
    margin-bottom: 2.25rem;
}

.features-header h2[b-xndc1xy6hn] {
    font-size: 1.75rem;
    font-weight: 800;
    color: #0c3d1c;
}

.features-header p[b-xndc1xy6hn] {
    color: #54635a;
    margin-top: 0.5rem;
}

.features-grid[b-xndc1xy6hn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(320px, 100%), 1fr));
    gap: 1.25rem;
    max-width: 1100px;
    margin: 0 auto;
}

.feature-card[b-xndc1xy6hn] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 1.5rem;
    border-radius: 0.9rem;
    background: #fff;
    border: 1px solid #d4e9d6;
    border-top: 4px solid #388e3c;
    box-shadow: 0 2px 8px rgba(12, 61, 28, 0.06);
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.feature-card:hover[b-xndc1xy6hn] {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(46, 125, 50, 0.16);
}

.feature-icon[b-xndc1xy6hn] {
    width: 3rem;
    height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.75rem;
    font-size: 1.4rem;
    color: #fff;
}

.icon-blue[b-xndc1xy6hn]   { background: linear-gradient(135deg, #388e3c, #2e7d32); }
.icon-indigo[b-xndc1xy6hn] { background: linear-gradient(135deg, #57a85c, #1b5e20); }
.icon-sky[b-xndc1xy6hn]    { background: linear-gradient(135deg, #66bb6a, #1b5e20); }
.icon-cyan[b-xndc1xy6hn]   { background: linear-gradient(135deg, #4db6ac, #00695c); }
.icon-violet[b-xndc1xy6hn] { background: linear-gradient(135deg, #9ccc65, #558b2f); }

.feature-card h3[b-xndc1xy6hn] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0c3d1c;
    margin: 0;
}

.feature-card p[b-xndc1xy6hn] {
    font-size: 0.92rem;
    line-height: 1.55;
    color: #54635a;
    margin: 0;
    flex: 1;
}

.feature-tag[b-xndc1xy6hn] {
    align-self: flex-start;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* ===== CTA FINAL ===== */

.home-cta[b-xndc1xy6hn] {
    margin: 0 1.5rem 3rem;
    padding: 2.75rem 1.5rem;
    border-radius: 1rem;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #0c3d1c 0%, #155e28 60%, #2e7d32 100%);
    box-shadow: 0 12px 30px rgba(12, 61, 28, 0.25);
}

.home-cta h2[b-xndc1xy6hn] {
    font-size: 1.6rem;
    font-weight: 800;
    margin: 0;
}

.home-cta p[b-xndc1xy6hn] {
    color: rgba(224, 242, 226, 0.85);
    margin: 0.5rem 0 1.5rem;
}

/* ===== RESPONSIVO ===== */

@media (max-width: 640px) {
    .hero[b-xndc1xy6hn] {
        padding: 3rem 1rem 2.5rem;
    }

    .hero-stats[b-xndc1xy6hn] {
        gap: 1rem 1.25rem;
    }

    .hero-stats li + li[b-xndc1xy6hn] {
        border-left: none;
        padding-left: 0;
    }

    .hero-badge[b-xndc1xy6hn] {
        font-size: 0.72rem;
    }

    .btn-hero[b-xndc1xy6hn] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Pages/Tools/ApiCaller.razor.rz.scp.css */
/* ===== ApiCaller — tema verde ===== */
.api-page[b-k37d0qf9dw] {
    --api-forest: #0c3d1c;
    --api-primary: #388e3c;
    --api-primary-light: #4caf50;
    --api-sky: #81c784;
    --api-sky-soft: #a5d6a7;
    --api-bg-soft: #f8fbf8;
    --api-card-bg: #ffffff;
    --api-text: #3a4a3f;
    --api-muted: #849787;
    --api-border: #e2ede4;
    --api-radius: 14px;

    max-width: 980px;
    margin: 0 auto;
    padding: 0 4px 32px;
}

/* ===== Header ===== */
.api-page-header[b-k37d0qf9dw] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.api-page-icon[b-k37d0qf9dw] {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--api-forest), var(--api-primary));
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(12, 61, 28, 0.25);
}

    .api-page-icon svg[b-k37d0qf9dw] {
        width: 26px;
        height: 26px;
    }

.api-page-title[b-k37d0qf9dw] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--api-forest);
    line-height: 1.2;
}

.api-page-subtitle[b-k37d0qf9dw] {
    margin: 2px 0 0;
    font-size: 0.9rem;
    color: var(--api-muted);
}

/* ===== Telemetria ===== */
.api-stats[b-k37d0qf9dw] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}

.api-stat[b-k37d0qf9dw] {
    background: var(--api-bg-soft);
    border: 1px solid var(--api-border);
    border-radius: var(--api-radius);
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.api-stat-label[b-k37d0qf9dw] {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--api-muted);
}

.api-stat-value[b-k37d0qf9dw] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--api-forest);
    font-variant-numeric: tabular-nums;
    word-break: break-all;
}

/* ===== Card ===== */
.api-card[b-k37d0qf9dw] {
    background: var(--api-card-bg);
    border: 1px solid var(--api-border);
    border-radius: var(--api-radius);
    box-shadow: 0 4px 20px rgba(12, 61, 28, 0.06);
    padding: 20px 22px 22px;
}

.api-card-title[b-k37d0qf9dw] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--api-border);
    font-size: 1rem;
    font-weight: 700;
    color: var(--api-forest);
}

    .api-card-title[b-k37d0qf9dw]::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--api-primary);
    }

/* ===== Inputs ===== */
.api-label[b-k37d0qf9dw] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--api-text);
    margin-bottom: 4px;
}

.api-input[b-k37d0qf9dw] {
    border: 1px solid var(--api-border) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    color: var(--api-text) !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .api-input:focus[b-k37d0qf9dw] {
        border-color: var(--api-primary) !important;
        box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18) !important;
        outline: none !important;
    }

.api-mono[b-k37d0qf9dw] {
    font-family: Consolas, Monaco, "Courier New", monospace;
    font-size: 0.85rem;
    background: var(--api-bg-soft) !important;
    line-height: 1.5;
}

.api-grid-2[b-k37d0qf9dw] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 0 14px;
}

/* ===== Resposta ===== */
.api-response-header[b-k37d0qf9dw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.api-response-header h5[b-k37d0qf9dw] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--api-forest);
}

.api-copy-btn[b-k37d0qf9dw] {
    border: 1px solid var(--api-border);
    background: var(--api-bg-soft);
    color: var(--api-primary);
    font-size: 0.78rem;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 999px;
    transition: all 0.15s ease;
}

    .api-copy-btn:hover[b-k37d0qf9dw] {
        background: var(--api-primary);
        color: #ffffff;
        border-color: var(--api-primary);
    }

.api-response-wrap[b-k37d0qf9dw] {
    min-height: 160px;
    display: flex;
}

.api-response-empty[b-k37d0qf9dw] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px 16px;
    border: 1px dashed var(--api-border);
    border-radius: 10px;
    background: var(--api-bg-soft);
    color: var(--api-muted);
    font-size: 0.85rem;
}

/* ===== Ação ===== */
.api-actions[b-k37d0qf9dw] {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--api-border);
    display: flex;
    justify-content: flex-end;
}

.api-call-btn[b-k37d0qf9dw] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 26px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--api-forest), var(--api-primary));
    color: #ffffff;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.22);
}

    .api-call-btn svg[b-k37d0qf9dw] {
        width: 14px;
        height: 14px;
    }

    .api-call-btn:hover:not(:disabled)[b-k37d0qf9dw] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }

    .api-call-btn:active:not(:disabled)[b-k37d0qf9dw] {
        transform: translateY(0);
    }

    .api-call-btn:disabled[b-k37d0qf9dw] {
        opacity: 0.45;
        cursor: not-allowed;
        box-shadow: none;
    }

/* ===== Loading overlay ===== */
.loading-overlay[b-k37d0qf9dw] {
    position: fixed;
    inset: 0;
    background: rgba(248, 251, 248, 0.8);
    backdrop-filter: blur(2px);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.loading-center[b-k37d0qf9dw] {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    color: var(--api-forest, #0c3d1c);
}
/* /Components/UserActivityTracker.razor.rz.scp.css */
/* ===== Modal de desconexão forçada ===== */
.kick-overlay[b-rz2qypl180] {
    position: fixed;
    inset: 0;
    z-index: 10000;
    background: rgba(12, 61, 28, 0.65);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.kick-modal[b-rz2qypl180] {
    background: #ffffff;
    border-radius: 16px;
    max-width: 420px;
    width: 100%;
    padding: 32px 28px 28px;
    text-align: center;
    box-shadow: 0 24px 60px rgba(12, 61, 28, 0.45);
    animation: kick-in-b-rz2qypl180 0.25s ease-out;
}

@keyframes kick-in-b-rz2qypl180 {
    from {
        opacity: 0;
        transform: translateY(14px) scale(0.97);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.kick-icon[b-rz2qypl180] {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fdf3e7;
    color: #b45309;
}

    .kick-icon svg[b-rz2qypl180] {
        width: 30px;
        height: 30px;
    }

.kick-title[b-rz2qypl180] {
    margin: 0 0 8px;
    font-size: 1.25rem;
    font-weight: 800;
    color: #0c3d1c;
}

.kick-message[b-rz2qypl180] {
    margin: 0 0 22px;
    font-size: 0.92rem;
    color: #5a6b5e;
    line-height: 1.5;
}

.kick-form[b-rz2qypl180] {
    margin: 0;
}

.kick-btn[b-rz2qypl180] {
    display: inline-block;
    width: 100%;
    padding: 11px 24px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #0c3d1c, #388e3c);
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(12, 61, 28, 0.25);
}

    .kick-btn:hover[b-rz2qypl180] {
        transform: translateY(-1px);
        box-shadow: 0 6px 18px rgba(12, 61, 28, 0.3);
    }
