/* /Layout/HomeLayout.razor.rz.scp.css */
/*body {
    margin: 0;
    padding: 0;
    background-color: black;
    color: white;
    font-family: Arial, sans-serif;
}

.container {
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: space-between;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 10px;
}

    .header h1 {
        margin: 0;
    }

.link {
    color: orange;
    text-decoration: none;
    font-size: 16px;
    margin-left: auto;*/ /* Adiciona margem automática à esquerda para empurrar o link para a direita */
/*}

.main-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}

.footer {
    text-align: center;
    padding: 10px 0;
}*/



/**, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    height: 100%;
    background-color: #000;
    color: white;
    font-family: Arial, sans-serif;
}

.container {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;*/ /* dvh = dynamic viewport height, respeita teclado mobile */
/*}*/

/* ── CABEÇALHO FIXO ── */
/*.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 16px;
    background-color: #000;
}

.link {
    color: orange;
    text-decoration: none;
    font-size: 16px;
}*/

/* ── CONTEÚDO CENTRAL ── */
/*.main-content {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;*/
    /* compensa o espaço do header e footer fixos */
    /*padding-top: 52px;
    padding-bottom: 48px;
}*/

/* ── RODAPÉ FIXO ── */
/*.footer {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    text-align: center;
    padding: 10px 0;
    background-color: #000;
}

    .footer p {
        margin: 0;
        font-size: small;
    }*/



*[b-pzdn73n48k], *[b-pzdn73n48k]::before, *[b-pzdn73n48k]::after {
    box-sizing: border-box;
}

.container[b-pzdn73n48k] {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    background-color: #000;
    color: white;
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}

/* ── CABEÇALHO FIXO ── */
.header[b-pzdn73n48k] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 16px;
    background-color: #000;
}

.link[b-pzdn73n48k] {
    color: orange;
    text-decoration: none;
    font-size: 16px;
}

/* ── CONTEÚDO CENTRAL ── */
.main-content[b-pzdn73n48k] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 52px;
    padding-bottom: 48px;
}

/* ── RODAPÉ FIXO ── */
.footer[b-pzdn73n48k] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    text-align: center;
    padding: 10px 0;
    background-color: #000;
}

    .footer p[b-pzdn73n48k] {
        margin: 0;
        font-size: small;
    }
/* /Layout/LoginLayout.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   LoginLayout.razor.css  (scoped)
   Favus™ — Layout da tela de Login / Onboarding

   Estrutura espelhada do Jathaí (que funciona em mobile):
   header (flex-shrink:0) · main (flex:1 1 auto, overflow-y:auto) · footer (flex-shrink:0)
   ════════════════════════════════════════════════════════════════════════ */

*[b-pixrv0vooy], *[b-pixrv0vooy]::before, *[b-pixrv0vooy]::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.container[b-pixrv0vooy] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
}

/* ── Header: fixo, nunca encolhe ── */
.header[b-pixrv0vooy] {
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 10px 20px;
    background-color: #000;
    height: 120px;
    width: 100%;
    font-family: Tahoma, sans-serif;
}

    .header img[b-pixrv0vooy] {
        margin-right: auto;
    }

.logo-img[b-pixrv0vooy] {
    height: 120px;
    width: auto;
}

.link[b-pixrv0vooy] {
    color: #ff8c00;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    margin-left: 20px;
    transition: all .2s ease;
}

    .link:hover[b-pixrv0vooy] {
        color: #fff;
        text-decoration: underline;
    }

/* ── Main: ocupa o espaço restante e rola internamente ── */
.main-content[b-pixrv0vooy] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    overflow-y: auto;
    overflow-x: hidden;
    background-color: #111318;  /* ← único delta em relação ao Jathaí */
    color: #F0F2F5;
}

/* ── Footer: fixo, nunca encolhe, sempre visível ── */
.footer[b-pixrv0vooy] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    height: 80px;
    color: #4A5260;             /* ← tom do Favus */
    font-size: 12px;
    font-weight: 300;
    font-family: monospace;
}

/* ── Responsividade ── */
@media (max-width: 768px) {
    .header[b-pixrv0vooy] {
        padding: 10px 15px;
    }

    .link[b-pixrv0vooy] {
        font-size: 14px;
        margin-left: 15px;
    }
}

@media (max-width: 480px) {
    .header[b-pixrv0vooy] {
        padding: 8px 12px;
    }

    .link[b-pixrv0vooy] {
        font-size: 13px;
        margin-left: 12px;
    }

    .footer[b-pixrv0vooy] {
        font-size: 10px;
        height: 60px;
        padding: 0 10px;
    }
}
/* /Layout/LogoffLayout.razor.rz.scp.css */
*[b-nshy7x2nk3], *[b-nshy7x2nk3]::before, *[b-nshy7x2nk3]::after {
    box-sizing: border-box;
}

html[b-nshy7x2nk3], body[b-nshy7x2nk3] {
    margin: 0;
    padding: 0;
    height: 100%;
    background-color: #000;
    color: white;
    font-family: Arial, sans-serif;
}

.container[b-nshy7x2nk3] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
}

/* ── CABEÇALHO FIXO ── */
.header[b-nshy7x2nk3] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 16px;
    background-color: #000;
}

.link[b-nshy7x2nk3] {
    color: orange;
    text-decoration: none;
    font-size: 16px;
}

/* ── CONTEÚDO CENTRAL ── */
.main-content[b-nshy7x2nk3] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 52px;
    padding-bottom: 48px;
}

/* ── RODAPÉ FIXO ── */
.footer[b-nshy7x2nk3] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    text-align: center;
    padding: 10px 0;
    background-color: #000;
}

    .footer p[b-nshy7x2nk3] {
        margin: 0;
        font-size: small;
    }
/* /Layout/MainLayout.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   MainLayout.razor.css  (scoped)
   Favus™ — Layout principal (pós-login)

   Estrutura flex: header (fixo) · main (rola) · footer (fixo)
   O footer é sempre visível — nunca entra na área de scroll.

   IMPORTANTE: .main-content usa overflow: hidden aqui.
   O scroll real acontece dentro do .shell-body (Shell.razor.css).
   ════════════════════════════════════════════════════════════════════════ */

*[b-3did3nxf61], *[b-3did3nxf61]::before, *[b-3did3nxf61]::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* ── Container: coluna de altura fixa — nada vaza ── */
.container[b-3did3nxf61] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
}

/* ── Header: altura fixa, nunca comprime ── */
.header[b-3did3nxf61] {
    flex-shrink: 0; /* ← nunca encolhe */
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 10px 20px;
    background-color: #000;
    max-height: 128px;
    font-family: Tahoma, sans-serif;
}

.logo-img[b-3did3nxf61] {
    height: 120px;
    width: auto;
    margin-right: auto;
}

.header-links[b-3did3nxf61] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.header-sep[b-3did3nxf61] {
    color: #2E3440;
    font-size: 14px;
}

.link[b-3did3nxf61] {
    color: #ff8c00;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    font-family: monospace;
    transition: color .2s ease;
}

    .link:hover[b-3did3nxf61] {
        color: #fff;
        text-decoration: underline;
    }

/* ── Main: pega o espaço restante — scroll delegado ao Shell.razor ── */
.main-content[b-3did3nxf61] {
    flex: 1 1 auto; /* ← ocupa só o que sobra entre header e footer */
    min-height: 0; /* essencial para flex não vazar */
    display: flex;
    flex-direction: column;
    overflow: hidden; /* scroll acontece dentro do shell-body */
    background-color: #111318;
    color: #F0F2F5;
}

/* ── Footer: altura fixa, sempre visível ── */
.footer[b-3did3nxf61] {
    flex-shrink: 0; /* ← nunca encolhe nem some */
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    min-height: 64px;
    color: #4A5260;
    font-size: 12px;
    font-weight: 300;
    font-family: monospace;
}

/* ── Responsividade ── */
@media (max-width: 768px) {
    .header[b-3did3nxf61] {
        padding: 10px 15px;
    }

    .header-links[b-3did3nxf61] {
        gap: 12px;
    }
}

@media (max-width: 480px) {
    .header[b-3did3nxf61] {
        padding: 8px 12px;
    }

    .link[b-3did3nxf61] {
        font-size: 13px;
    }

    .header-sep[b-3did3nxf61] {
        font-size: 12px;
    }

    .footer[b-3did3nxf61] {
        font-size: 10px;
        min-height: 64px;
        padding: 0 10px;
    }
}
/* /Pages/Config.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   Config.razor.css  (scoped)
   Favus™ — Painel administrativo
   ════════════════════════════════════════════════════════════════════════ */

/* ── Root ── */
.cfg-root[b-413m181oaj] {
    background: #111318;
    min-height: 100%;
    padding-bottom: 24px;
}

/* ── Header sticky ── */
.cfg-header[b-413m181oaj] {
    position: sticky;
    top: 0;
    z-index: 50;
    background: #1C2028;
    border-bottom: 1px solid #2E3440;
    padding: 13px 16px 10px;
    display: flex;
    align-items: center;
    gap: 11px;
}

.cfg-hex[b-413m181oaj] {
    flex-shrink: 0;
}

.cfg-header-info[b-413m181oaj] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cfg-titulo[b-413m181oaj] {
    color: #F0F2F5;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
}

.cfg-subtitulo[b-413m181oaj] {
    color: #7A8494;
    font-size: 10px;
    font-family: monospace;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

/* Badge ✓ Salvo */
.badge-salvo[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    font-family: monospace;
    padding: 3px 9px;
    border-radius: 5px;
    background: #102A10;
    color: #4CAF50;
    border: 1px solid #205A20;
    flex-shrink: 0;
    animation: fadeIn-b-413m181oaj .2s ease;
}

/* ── Corpo ── */
.cfg-body[b-413m181oaj] {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Loading ── */
.cfg-loading[b-413m181oaj] {
    display: flex;
    justify-content: center;
    gap: 6px;
    padding: 48px 0;
}

.ld[b-413m181oaj] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2E3440;
    animation: dotP-b-413m181oaj 1.2s ease-in-out infinite;
}

    .ld:nth-child(2)[b-413m181oaj] {
        animation-delay: .2s;
    }

    .ld:nth-child(3)[b-413m181oaj] {
        animation-delay: .4s;
    }

@keyframes dotP-b-413m181oaj {
    0%,80%,100% {
        opacity: .3;
        transform: scale(.8);
    }

    40% {
        opacity: 1;
        transform: scale(1);
    }
}

/* ── Blocos ── */
.bloco[b-413m181oaj] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.bloco-title[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    color: #7A8494;
    font-family: monospace;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.bloco-desc[b-413m181oaj] {
    font-size: 11px;
    color: #7A8494;
    font-family: monospace;
    line-height: 1.6;
    margin-top: -2px;
}

.sep[b-413m181oaj] {
    border: none;
    border-top: 1px solid #2E3440;
}

/* ── Bloco 1: Segmento ── */
.seg-card[b-413m181oaj] {
    background: #1C2028;
    border: 1px solid #2E3440;
    border-radius: 10px;
    padding: 13px 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.seg-lbl[b-413m181oaj] {
    font-size: 9px;
    color: #7A8494;
    font-family: monospace;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 3px;
}

.seg-nome[b-413m181oaj] {
    color: #F0F2F5;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Georgia', serif;
}

.btn-trocar[b-413m181oaj] {
    background: transparent;
    border: 1px solid #2E3440;
    border-radius: 6px;
    padding: 6px 12px;
    cursor: pointer;
    color: #ff8c00;
    font-size: 10px;
    font-family: monospace;
    font-weight: 700;
    letter-spacing: .5px;
    white-space: nowrap;
    transition: opacity .2s;
}

    .btn-trocar:hover[b-413m181oaj] {
        opacity: .7;
    }

/* ── Bloco 2: Prazo padrão ── */
.prazos-grid[b-413m181oaj] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.pb[b-413m181oaj] {
    background: #222730;
    border: 1.5px solid #2E3440;
    border-radius: 7px;
    padding: 6px 13px;
    cursor: pointer;
    color: #7A8494;
    font-size: 11px;
    font-family: monospace;
    font-weight: 400;
    transition: all .15s;
    min-width: 44px;
    text-align: center;
}

    .pb:hover[b-413m181oaj] {
        border-color: #ff8c00;
        color: #ff8c00;
    }

/* CORREÇÃO 1: botão ativo — peso 700 + ✓ inline via Razor *@
.pb-ativo { font-weight: 700; }   /* cor via inline style */

.prazo-preview[b-413m181oaj] {
    color: #7A8494;
    font-size: 11px;
    font-family: monospace;
    font-style: italic;
}

/* ── Bloco 3: Formulário de política ── */
.form-card[b-413m181oaj] {
    background: #222730;
    border: 1.5px solid #2E3440;
    border-radius: 10px;
    padding: 13px;
    display: flex;
    flex-direction: column;
    gap: 11px;
    transition: border-color .2s, background .2s;
}

    .form-card.form-editando[b-413m181oaj] {
        background: #0d1a0d;
        border-color: #ff8c00;
    }

.form-hdr[b-413m181oaj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.form-hdr-lbl[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    color: #7A8494;
    font-family: monospace;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    transition: color .2s;
}

.btn-cancel[b-413m181oaj] {
    background: transparent;
    border: none;
    color: #4A5260;
    font-size: 9px;
    font-family: monospace;
    cursor: pointer;
    text-decoration: underline;
    padding: 0;
}

/* ── Campos base ── */
.fg[b-413m181oaj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fl[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    color: #7A8494;
    letter-spacing: 1.8px;
    font-family: monospace;
    text-transform: uppercase;
}

.inp[b-413m181oaj] {
    width: 100%;
    background: #111318;
    border: 1.5px solid #2E3440;
    border-radius: 8px;
    padding: 10px 12px;
    color: #F0F2F5;
    font-size: 13px;
    font-family: 'Georgia', serif;
    outline: none;
    box-sizing: border-box;
    transition: border-color .2s;
    appearance: none;
}

    .inp[b-413m181oaj]::placeholder {
        color: #4A5260;
        font-style: italic;
    }

    .inp:focus[b-413m181oaj] {
        border-color: #ff8c00;
    }

.inp-mono[b-413m181oaj] {
    font-family: monospace !important;
    letter-spacing: .8px;
}

.inp-readonly[b-413m181oaj] {
    opacity: .6;
    cursor: not-allowed;
}

.g2[b-413m181oaj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

/* ── Toggle bloqueio manual ── */
.toggle-row[b-413m181oaj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 8px;
    padding: 10px 12px;
    gap: 12px;
}

.toggle-info[b-413m181oaj] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.toggle-lbl[b-413m181oaj] {
    color: #B8BEC8;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Georgia', serif;
}

.toggle-hint[b-413m181oaj] {
    color: #7A8494;
    font-size: 10px;
    font-family: monospace;
}

/* Switch pill */
.sw[b-413m181oaj] {
    position: relative;
    width: 44px;
    height: 24px;
    border-radius: 12px;
    cursor: pointer;
    border: none;
    transition: background .25s, border-color .25s;
    flex-shrink: 0;
    padding: 0;
}

.sw-off[b-413m181oaj] {
    background: #2E3440;
}

.sw-on[b-413m181oaj] {
    background: #5A1A1A;
    border: 1.5px solid #E05050;
}

.sw-knob[b-413m181oaj] {
    position: absolute;
    top: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    transition: all .25s;
}

.sw-off .sw-knob[b-413m181oaj] {
    background: #4A5260;
    left: 3px;
}

.sw-on .sw-knob[b-413m181oaj] {
    background: #E05050;
    left: 21px;
}

/* ── Botão salvar política ── */
.btn-salvar[b-413m181oaj] {
    width: 100%;
    padding: 11px;
    border-radius: 8px;
    border: none;
    background: #ff8c00;
    color: #000;
    font-size: 12px;
    font-weight: 700;
    font-family: monospace;
    letter-spacing: .5px;
    cursor: pointer;
    transition: opacity .2s;
}

    .btn-salvar:hover:not(:disabled)[b-413m181oaj] {
        opacity: .88;
    }

.btn-salvar-dis[b-413m181oaj] {
    opacity: .35;
    cursor: not-allowed;
}

/* ── Lista de clientes ── */
.cli-vazio[b-413m181oaj] {
    color: #4A5260;
    font-size: 11px;
    font-family: monospace;
    text-align: center;
    padding: 16px 0;
}

.cli-card[b-413m181oaj] {
    background: #1C2028;
    border: 1.5px solid #2E3440;
    border-radius: 10px;
    padding: 12px 13px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    animation: fadeSlide-b-413m181oaj .2s ease;
}

    .cli-card.cli-bloq[b-413m181oaj] {
        border-color: #5A2020;
        background: #1a1010;
    }

.cli-cnpj[b-413m181oaj] {
    color: #B8BEC8;
    font-size: 12px;
    font-family: monospace;
    letter-spacing: .5px;
}

.cli-badges[b-413m181oaj] {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    align-items: center;
}

.bdg[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    font-family: monospace;
    padding: 2px 7px;
    border-radius: 4px;
    border: 1px solid;
    white-space: nowrap;
}

/* cores via inline style para accent dinâmico */
.bdg-org[b-413m181oaj] {
    color: #D4A030;
    background: #D4A03022;
    border-color: #D4A03066;
}

.bdg-red[b-413m181oaj] {
    color: #E05050;
    background: #E0505022;
    border-color: #E0505066;
}

.bdg-grn[b-413m181oaj] {
    color: #4CAF50;
    background: #4CAF5022;
    border-color: #4CAF5066;
}

/* Barra de progresso */
.prog-row[b-413m181oaj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.prog-lbl[b-413m181oaj] {
    color: #7A8494;
    font-size: 9px;
    font-family: monospace;
    white-space: nowrap;
    min-width: 0;
}

.prog-track[b-413m181oaj] {
    flex: 1;
    height: 5px;
    background: #2E3440;
    border-radius: 3px;
    overflow: hidden;
}

.prog-fill[b-413m181oaj] {
    height: 100%;
    border-radius: 3px;
    transition: width .4s ease;
}

.prog-pct[b-413m181oaj] {
    color: #7A8494;
    font-size: 9px;
    font-family: monospace;
    min-width: 28px;
    text-align: right;
}

/* Ações do card */
.cli-actions[b-413m181oaj] {
    display: flex;
    gap: 6px;
    align-items: center;
    flex-wrap: wrap;
}

.spacer[b-413m181oaj] {
    flex: 1;
}

.btn-desbloq[b-413m181oaj] {
    background: #102A10;
    border: 1px solid #205A20;
    border-radius: 5px;
    padding: 5px 10px;
    cursor: pointer;
    color: #4CAF50;
    font-size: 9px;
    font-family: monospace;
    font-weight: 700;
    transition: opacity .2s;
}

    .btn-desbloq:hover[b-413m181oaj] {
        opacity: .8;
    }

.btn-editar[b-413m181oaj] {
    background: transparent;
    border: 1px solid #2E3440;
    border-radius: 5px;
    padding: 5px 10px;
    cursor: pointer;
    color: #7A8494;
    font-size: 9px;
    font-family: monospace;
    transition: all .15s;
}

    .btn-editar:hover[b-413m181oaj] {
        border-color: #ff8c00;
        color: #ff8c00;
    }

.btn-remover[b-413m181oaj] {
    background: transparent;
    border: 1px solid #2E3440;
    border-radius: 5px;
    padding: 5px 10px;
    cursor: pointer;
    color: #E05050;
    font-size: 9px;
    font-family: monospace;
    transition: border-color .15s;
}

    .btn-remover:hover[b-413m181oaj] {
        border-color: #E05050;
    }

/* ── Bloco 4: Apagar ── */
.btn-apagar[b-413m181oaj] {
    width: 100%;
    padding: 12px;
    border-radius: 9px;
    border: 1px solid #5A2020;
    background: #2A1010;
    cursor: pointer;
    color: #E05050;
    font-size: 12px;
    font-family: monospace;
    font-weight: 700;
    letter-spacing: .5px;
    transition: opacity .2s;
}

    .btn-apagar:hover[b-413m181oaj] {
        opacity: .8;
    }

/* ── Animações ── */
@keyframes fadeIn-b-413m181oaj {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeSlide-b-413m181oaj {
    from {
        opacity: 0;
        transform: translateY(4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ════════════════════════════════════════════════════════════════════════
   Config.razor.css  —  ACRÉSCIMOS para modo IsReadOnly
   Adicionar ao final do Config.razor.css existente.
   O restante do arquivo permanece intacto.
   ════════════════════════════════════════════════════════════════════════ */

/* ── Badge "👁 Consulta" no header ── */
.badge-readonly[b-413m181oaj] {
    font-size: 9px;
    font-weight: 700;
    font-family: monospace;
    padding: 3px 9px;
    border-radius: 5px;
    background: #1a1f2a;
    color: #7A8494;
    border: 1px solid #2E3440;
    flex-shrink: 0;
    letter-spacing: .5px;
}

/* ── Banner informativo de somente leitura ── */
.readonly-banner[b-413m181oaj] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #0e1a2a;
    border: 1px solid #1e3a5a;
    border-left: 3px solid #378ADD;
    border-radius: 0 8px 8px 0;
    padding: 10px 13px;
    font-size: 11px;
    color: #7A8494;
    font-family: monospace;
    line-height: 1.6;
}

    .readonly-banner strong[b-413m181oaj] {
        color: #B8BEC8;
    }

.readonly-icon[b-413m181oaj] {
    color: #378ADD;
    font-size: 13px;
    flex-shrink: 0;
    margin-top: 1px;
}

/* ── Prazo padrão como informação (somente leitura) ── */
.prazo-info-card[b-413m181oaj] {
    background: #1C2028;
    border: 1px solid #2E3440;
    border-radius: 9px;
    padding: 13px 16px;
    display: flex;
    align-items: baseline;
    gap: 12px;
}

.prazo-info-valor[b-413m181oaj] {
    color: #ff8c00;
    font-size: 22px;
    font-weight: 700;
    font-family: monospace;
    letter-spacing: -.5px;
}

.prazo-info-desc[b-413m181oaj] {
    color: #7A8494;
    font-size: 11px;
    font-family: monospace;
    font-style: italic;
}
/* /Pages/Dashboard.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   Dashboard.razor.css  (scoped)
   Favus™ — Tela de entrada

   IMPORTANTE: CSS scoped não vaza entre componentes no Blazor.
   A navbar precisa ser redefinida aqui — não herda Shell.razor.css.

   Tokens: BG #111318 · Card #1C2028 · Borda #2E3440 · Acento #ff8c00
   ════════════════════════════════════════════════════════════════════════ */

/* ── Reset base ──────────────────────────────────────────────────────── */
*[b-5iqnhu40zr], *[b-5iqnhu40zr]::before, *[b-5iqnhu40zr]::after {
    box-sizing: border-box;
}

/* ══════════════════════════════════════════════════════════════════════
   ESTRUTURA DE LAYOUT  (replica Shell.razor.css — scoped aqui)
   ══════════════════════════════════════════════════════════════════════ */

.shell-root[b-5iqnhu40zr] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    background: #111318;
}

.shell-body[b-5iqnhu40zr] {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

.shell-inner[b-5iqnhu40zr] {
    max-width: 960px;
    margin: 0 auto;
    width: 100%;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.shell-card[b-5iqnhu40zr] {
    background: #1C2028;
    border-radius: 16px;
    border: 1px solid #2E3440;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3);
    overflow: hidden;
}

/* ── Loading dots ────────────────────────────────────────────────────── */
.shell-loading[b-5iqnhu40zr] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    height: 100%;
    min-height: 200px;
}

.loading-dot[b-5iqnhu40zr] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2E3440;
    animation: dotPulse-b-5iqnhu40zr 1.2s ease-in-out infinite;
}

    .loading-dot:nth-child(2)[b-5iqnhu40zr] {
        animation-delay: .2s;
    }

    .loading-dot:nth-child(3)[b-5iqnhu40zr] {
        animation-delay: .4s;
    }

@keyframes dotPulse-b-5iqnhu40zr {
    0%, 80%, 100% {
        opacity: .3;
        transform: scale(.8);
    }

    40% {
        opacity: 1;
        transform: scale(1);
    }
}

/* ══════════════════════════════════════════════════════════════════════
   NAVBAR  (scoped aqui — não herda do Shell)
   ══════════════════════════════════════════════════════════════════════ */

.shell-navbar[b-5iqnhu40zr] {
    display: flex;
    background: #1C2028;
    border-radius: 16px;
    border: 1px solid #2E3440;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3);
    height: 56px;
    z-index: 100;
}

.nb[b-5iqnhu40zr] {
    flex: 1;
    background: transparent;
    border: none;
    padding: 10px 4px 8px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    color: #4A5260;
    transition: color .15s;
    -webkit-tap-highlight-color: transparent;
}

    .nb:hover[b-5iqnhu40zr] {
        color: #7A8494;
    }

.nb-icon[b-5iqnhu40zr] {
    font-size: 16px;
    line-height: 1;
}

.nb-label[b-5iqnhu40zr] {
    font-size: 9px;
    font-family: monospace;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 700;
    white-space: nowrap;
}

/* ══════════════════════════════════════════════════════════════════════
   CONTEÚDO DO DASHBOARD
   ══════════════════════════════════════════════════════════════════════ */

/* ── Root ────────────────────────────────────────────────────────────── */
.dash-root[b-5iqnhu40zr] {
    background: transparent;
    min-height: 100%;
    padding-bottom: 1rem;
    font-family: 'Georgia', 'Times New Roman', serif;
}

.dash-inner[b-5iqnhu40zr] {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* ── Greeting card ───────────────────────────────────────────────────── */
.dash-greeting[b-5iqnhu40zr] {
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 14px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    animation: dashFadeUp-b-5iqnhu40zr .4s ease both;
}

.dash-hello[b-5iqnhu40zr] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #F0F2F5;
    margin: 0 0 4px;
    letter-spacing: -.3px;
    font-family: 'Georgia', serif;
}

.dash-sub[b-5iqnhu40zr] {
    font-size: .72rem;
    color: #7A8494;
    margin: 0;
    font-family: monospace;
    letter-spacing: .5px;
}

/* ── KPI grid (2 × 2) ────────────────────────────────────────────────── */
.dash-kpi-row[b-5iqnhu40zr] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    animation: dashFadeUp-b-5iqnhu40zr .4s .05s ease both;
}

.kpi-tile[b-5iqnhu40zr] {
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 12px;
    padding: 14px 14px 12px;
    transition: border-color .2s;
}

    .kpi-tile:hover[b-5iqnhu40zr] {
        border-color: #3E4A5E;
    }

.kpi-tile-highlight[b-5iqnhu40zr] {
    border-color: #3a2a10;
}

.kpi-tile-danger[b-5iqnhu40zr] {
    background: #1a0e0e;
    border-color: #5c1c1c !important;
}

.kpi-label[b-5iqnhu40zr] {
    font-size: .6rem;
    font-weight: 700;
    color: #4A5260;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-family: monospace;
    margin-bottom: 4px;
}

.kpi-value[b-5iqnhu40zr] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.5px;
    margin-bottom: 3px;
}

.kpi-sub[b-5iqnhu40zr] {
    font-size: .62rem;
    color: #7A8494;
    font-family: monospace;
}

.kpi-sub-ellipsis[b-5iqnhu40zr] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Cores de valor ──────────────────────────────────────────────────── */
.kv-accent[b-5iqnhu40zr] {
    color: #ff8c00;
}

.kv-amber[b-5iqnhu40zr] {
    color: #d4a030;
}

.kv-green[b-5iqnhu40zr] {
    color: #4caf50;
}

.kv-danger[b-5iqnhu40zr] {
    color: #e53935;
}

.kv-muted[b-5iqnhu40zr] {
    color: #4A5260;
}

/* ── Card (gráfico) ──────────────────────────────────────────────────── */
.dash-card[b-5iqnhu40zr] {
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 14px;
    padding: 16px 18px;
    animation: dashFadeUp-b-5iqnhu40zr .4s .1s ease both;
}

.dash-card-header[b-5iqnhu40zr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.dash-card-title[b-5iqnhu40zr] {
    font-size: .78rem;
    font-weight: 700;
    color: #B8BEC8;
    font-family: monospace;
    text-transform: uppercase;
    letter-spacing: .8px;
}

.dash-card-sub[b-5iqnhu40zr] {
    font-size: .6rem;
    color: #4A5260;
    font-family: monospace;
    margin-top: 2px;
}

.chart-wrap[b-5iqnhu40zr] {
    position: relative;
    width: 100%;
    height: 160px;
}

/* ── CTA banner ──────────────────────────────────────────────────────── */
.dash-cta[b-5iqnhu40zr] {
    background: #ff8c00;
    border-radius: 12px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: background .2s, transform .15s;
    animation: dashFadeUp-b-5iqnhu40zr .4s .15s ease both;
}

    .dash-cta:hover[b-5iqnhu40zr] {
        background: #e67e00;
        transform: translateY(-1px);
    }

    .dash-cta:active[b-5iqnhu40zr] {
        transform: translateY(0);
    }

.cta-left[b-5iqnhu40zr] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.cta-icon[b-5iqnhu40zr] {
    font-size: 1.5rem;
    color: #fff;
    line-height: 1;
}

.cta-text[b-5iqnhu40zr] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cta-title[b-5iqnhu40zr] {
    font-size: .92rem;
    font-weight: 700;
    color: #fff;
}

.cta-sub[b-5iqnhu40zr] {
    font-size: .68rem;
    color: rgba(255,255,255,.75);
    font-family: monospace;
    letter-spacing: .3px;
}

.cta-arrow[b-5iqnhu40zr] {
    font-size: 1.4rem;
    font-weight: 700;
    color: #fff;
}

/* ── Section row ─────────────────────────────────────────────────────── */
.dash-section-row[b-5iqnhu40zr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 2px;
}

.dash-section-label[b-5iqnhu40zr] {
    font-size: .6rem;
    font-weight: 700;
    color: #4A5260;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-family: monospace;
}

.dash-link[b-5iqnhu40zr] {
    font-size: .62rem;
    font-weight: 700;
    color: #ff8c00;
    background: none;
    border: none;
    cursor: pointer;
    font-family: monospace;
    padding: 0;
    transition: opacity .2s;
}

    .dash-link:hover[b-5iqnhu40zr] {
        opacity: .75;
        text-decoration: underline;
    }

/* ── Empty state ─────────────────────────────────────────────────────── */
.dash-empty[b-5iqnhu40zr] {
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 12px;
    text-align: center;
    padding: 32px 20px;
}

.dash-empty-icon[b-5iqnhu40zr] {
    font-size: 2rem;
    display: block;
    margin-bottom: 10px;
    opacity: .3;
}

.dash-empty p[b-5iqnhu40zr] {
    font-size: .82rem;
    color: #7A8494;
    margin: 0 0 4px;
}

.dash-empty small[b-5iqnhu40zr] {
    font-size: .68rem;
    color: #4A5260;
    font-family: monospace;
}

/* ── Lista de itens ──────────────────────────────────────────────────── */
.dash-list[b-5iqnhu40zr] {
    background: #111318;
    border: 1px solid #2E3440;
    border-radius: 12px;
    overflow: hidden;
    animation: dashFadeUp-b-5iqnhu40zr .4s .2s ease both;
}

.dash-item[b-5iqnhu40zr] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid #1e2430;
    transition: background .15s;
}

    .dash-item:last-child[b-5iqnhu40zr] {
        border-bottom: none;
    }

    .dash-item:hover[b-5iqnhu40zr] {
        background: #16191f;
    }

.item-avatar[b-5iqnhu40zr] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #2E3440;
    color: #ff8c00;
    font-size: .72rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: monospace;
}

.item-avatar-adm[b-5iqnhu40zr] {
    color: #4caf50;
}

.item-info[b-5iqnhu40zr] {
    flex: 1;
    min-width: 0;
}

.item-nome[b-5iqnhu40zr] {
    font-size: .82rem;
    font-weight: 600;
    color: #F0F2F5;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-meta[b-5iqnhu40zr] {
    font-size: .62rem;
    color: #7A8494;
    font-family: monospace;
    margin-top: 2px;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

.item-tag-pill[b-5iqnhu40zr] {
    background: #2E3440;
    color: #ff8c00;
    border-radius: 4px;
    padding: 1px 5px;
    font-size: .55rem;
    font-weight: 700;
    letter-spacing: .5px;
}

.item-valor[b-5iqnhu40zr] {
    font-size: .85rem;
    font-weight: 700;
    color: #F0F2F5;
    font-family: monospace;
    flex-shrink: 0;
}

/* ── Barra de devedor (admin) ────────────────────────────────────────── */
.devedor-bar-bg[b-5iqnhu40zr] {
    background: #2E3440;
    border-radius: 3px;
    height: 4px;
    margin-top: 5px;
    overflow: hidden;
}

.devedor-bar-fill[b-5iqnhu40zr] {
    height: 4px;
    border-radius: 3px;
    transition: width .4s ease;
}

.bar-danger[b-5iqnhu40zr] {
    background: #e53935;
}

.bar-warn[b-5iqnhu40zr] {
    background: #d4a030;
}

/* ── Rodapé ──────────────────────────────────────────────────────────── */
.dash-footer[b-5iqnhu40zr] {
    text-align: center;
    font-size: .55rem;
    color: #2E3440;
    letter-spacing: 2px;
    font-family: monospace;
    margin-top: 8px;
    padding-bottom: 4px;
}

/* ── Animação de entrada ─────────────────────────────────────────────── */
@keyframes dashFadeUp-b-5iqnhu40zr {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ── Responsividade ──────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .dash-inner[b-5iqnhu40zr] {
        padding: 1rem;
        gap: 12px;
    }

    .shell-inner[b-5iqnhu40zr] {
        padding: 1rem;
    }

    .dash-hello[b-5iqnhu40zr] {
        font-size: 1.15rem;
    }

    .kpi-value[b-5iqnhu40zr] {
        font-size: 1.35rem;
    }

    .chart-wrap[b-5iqnhu40zr] {
        height: 140px;
    }
}

@media (max-width: 400px) {
    .dash-kpi-row[b-5iqnhu40zr] {
        grid-template-columns: 1fr;
    }

    .dash-greeting[b-5iqnhu40zr] {
        padding: 14px 16px;
    }
}
/* /Pages/Home.razor.rz.scp.css */
/* Imagem do splash centralizada e responsiva */
.splash-logo[b-ide8m81u3z] {
    width: 360px;
    height: 360px;
    max-width: 80vw; /* não ultrapassa 80% da tela em celulares pequenos */
    max-height: 80vh; /* mantém proporção quadrada */
    object-fit: contain;
    display: block;
}
/* /Pages/Login.razor.rz.scp.css */
/* ============================================================
   Favus™ — Login
   Login.razor.css  (scoped)

   ATENÇÃO: Removidos os resets globais de html/body/#app com !important.
   O controle de altura e overflow é responsabilidade do LoginLayout.razor.css.
   Aqui ficam apenas os estilos do card e seus elementos internos.
   ============================================================ */

/* ── Página: centraliza o card horizontalmente, começa do topo ── */
.login-page[b-gk58z239kp] {
    width: 100%;
    min-height: 100%;
    background-color: #111318;
    padding: 2rem;
    display: flex;
    align-items: flex-start; /* topo — mesmo comportamento dos demais cards */
    justify-content: center;
    font-family: 'Georgia', serif;
    box-sizing: border-box;
}

/* ── Card principal (960px) ── */
.login-card[b-gk58z239kp] {
    width: 100%;
    max-width: 960px;
    background: #1C2028;
    border-radius: 16px;
    border: 1px solid #2E3440;
    padding: 3rem;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3);
    box-sizing: border-box;
}

/* ── Cabeçalho do card ── */
.login-card-eyebrow[b-gk58z239kp] {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    color: #ff8c00;
    text-transform: uppercase;
    margin-bottom: .4rem;
    font-family: monospace;
}

.login-card-title[b-gk58z239kp] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #F0F2F5;
    margin: 0 0 .35rem;
    font-family: 'Georgia', serif;
}

.login-badge[b-gk58z239kp] {
    display: inline-block;
    background: #ff8c00;
    color: #fff;
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 2px 6px;
    border-radius: 4px;
    vertical-align: middle;
    margin-left: 4px;
    font-family: monospace;
}

.login-card-sub[b-gk58z239kp] {
    font-size: .82rem;
    color: #7A8494;
    line-height: 1.65;
    margin: 0;
    font-family: 'Georgia', serif;
}

.login-divider[b-gk58z239kp] {
    border: none;
    border-top: 1px solid #2E3440;
    margin: 1.5rem 0;
}

/* ── Toggle Usuário / Administrador ── */
.user-type-selector[b-gk58z239kp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    background-color: #222730;
    border-radius: 8px;
    border: 1px solid #2E3440;
    gap: .75rem;
}

.selector-label[b-gk58z239kp] {
    font-size: .68rem;
    color: #7A8494;
    letter-spacing: .4px;
    font-family: monospace;
}

.toggle-container[b-gk58z239kp] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.toggle-text[b-gk58z239kp] {
    font-size: .82rem;
    font-weight: 700;
    color: #4A5260;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: color .3s ease;
    min-width: 110px;
    justify-content: center;
    font-family: monospace;
}

    .toggle-text.active[b-gk58z239kp] {
        color: #ff8c00;
    }

.toggle-role-icon[b-gk58z239kp] {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #2E3440;
    border: 1px solid #4A5260;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .65rem;
    font-style: normal;
    color: #7A8494;
}

    .toggle-role-icon.active[b-gk58z239kp] {
        background: #ff8c00;
        border-color: #ff8c00;
        color: #fff;
    }

/* ── Toggle Switch ── */
.toggle-switch[b-gk58z239kp] {
    position: relative;
    width: 48px;
    height: 26px;
    background-color: #2E3440;
    border-radius: 13px;
    cursor: pointer;
    transition: background-color .3s ease;
    flex-shrink: 0;
}

    .toggle-switch.active[b-gk58z239kp] {
        background-color: #ff8c00;
    }

.toggle-slider[b-gk58z239kp] {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
    background-color: #F0F2F5;
    border-radius: 50%;
    transition: transform .3s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
}

.toggle-switch.active .toggle-slider[b-gk58z239kp] {
    transform: translateX(22px);
}

/* ── Campos ── */
.field-group[b-gk58z239kp] {
    margin-bottom: 1rem;
    width: 100%;
    display: block;
}

.field-label[b-gk58z239kp] {
    display: block;
    font-size: .68rem;
    font-weight: 700;
    color: #7A8494;
    margin-bottom: .35rem;
    letter-spacing: .4px;
    font-family: monospace;
}

.field-input-wrap[b-gk58z239kp] {
    position: relative;
    width: 100%;
    display: block;
}

.field-icon[b-gk58z239kp] {
    position: absolute;
    left: .875rem;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #4A5260;
    z-index: 1;
}

[b-gk58z239kp] .field-input {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: .7rem .875rem .7rem 2.4rem !important;
    border: 1.5px solid #2E3440 !important;
    border-radius: 10px !important;
    font-size: .85rem !important;
    font-family: 'Georgia', serif !important;
    background: #222730 !important;
    color: #F0F2F5 !important;
    outline: none !important;
    transition: border-color .2s, background .2s;
    display: block;
}

    [b-gk58z239kp] .field-input::placeholder {
        color: #4A5260 !important;
    }

    [b-gk58z239kp] .field-input:focus {
        border-color: #ff8c00 !important;
        background: #111318 !important;
        box-shadow: 0 0 0 3px rgba(255, 140, 0, .15) !important;
        outline: none !important;
    }

    [b-gk58z239kp] .field-input.valid,
    [b-gk58z239kp] .field-input.invalid,
    [b-gk58z239kp] .field-input.modified,
    [b-gk58z239kp] .field-input.valid.modified,
    [b-gk58z239kp] .field-input.invalid.modified {
        background-color: #222730 !important;
        border: 1.5px solid #2E3440 !important;
        box-shadow: none !important;
        outline: none !important;
        background-image: none !important;
    }

        [b-gk58z239kp] .field-input.valid:focus,
        [b-gk58z239kp] .field-input.invalid:focus,
        [b-gk58z239kp] .field-input.modified:focus {
            border-color: #ff8c00 !important;
            background: #111318 !important;
            box-shadow: 0 0 0 3px rgba(255, 140, 0, .15) !important;
            outline: none !important;
            background-image: none !important;
        }

[b-gk58z239kp] .validation-message {
    color: #E05050;
    font-size: .72rem;
    margin-top: .25rem;
    font-family: monospace;
}

/* ── Esqueceu a senha ── */
.forgot-link[b-gk58z239kp] {
    display: block;
    text-align: right;
    font-size: .68rem;
    color: #ff8c00;
    font-weight: 700;
    margin-top: .4rem;
    cursor: pointer;
    text-decoration: none;
    transition: opacity .2s;
    font-family: monospace;
}

    .forgot-link:hover[b-gk58z239kp] {
        opacity: .75;
    }

/* ── Banner de erro ── */
.error-banner[b-gk58z239kp] {
    background: #2A1010;
    border: 1px solid #5A2020;
    border-left: 4px solid #E05050;
    border-radius: 8px;
    padding: .75rem 1rem;
    font-size: .75rem;
    color: #E05050;
    margin-bottom: .75rem;
    font-family: monospace;
}

/* ── Espaçador ── */
.spacer[b-gk58z239kp] {
    min-height: 1rem;
}

/* ── Botão Acessar ── */
.btn-acessar[b-gk58z239kp] {
    width: 100%;
    padding: .85rem;
    border-radius: 10px;
    border: none;
    background-color: #ff8c00;
    color: #fff;
    font-weight: 700;
    font-size: .95rem;
    cursor: pointer;
    font-family: monospace;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: opacity .2s, transform .15s;
}

    .btn-acessar:hover:not(:disabled)[b-gk58z239kp] {
        opacity: .9;
        transform: translateY(-1px);
    }

    .btn-acessar:disabled[b-gk58z239kp] {
        opacity: .6;
        cursor: not-allowed;
    }

/* ── Termos ── */
.login-terms[b-gk58z239kp] {
    text-align: center;
    margin-top: 1.25rem;
    font-size: .65rem;
    color: #4A5260;
    line-height: 1.6;
    font-family: monospace;
}

.terms-link[b-gk58z239kp] {
    color: #ff8c00;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

/* ── Responsividade ── */
@media (max-width: 768px) {
    .login-card[b-gk58z239kp] {
        padding: 2rem;
    }

    .toggle-text[b-gk58z239kp] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .login-card[b-gk58z239kp] {
        padding: 1.5rem 1rem;
        border-radius: 12px;
    }

    .toggle-container[b-gk58z239kp] {
        flex-direction: column;
        gap: 10px;
    }
}
/* /Pages/Logoff.razor.rz.scp.css */
.logoff-logo[b-ri838hq0ad] {
    width: 256px;
    height: 100px;
    max-width: 80vw;
    object-fit: contain;
    display: block;
}
/* /Pages/Onboarding.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   Onboarding.razor.css  (scoped)
   Favus™ — Escolha de segmento
   ════════════════════════════════════════════════════════════════════════ */

/* ── Root: centraliza verticalmente dentro do main-content ── */
.ob-root[b-ycp7e3o4h5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 40px 20px 64px;
    min-height: 100%;
    background: #111318;
}

/* ── Logo hexagonal Favus ── */
.ob-logo[b-ycp7e3o4h5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 32px;
    animation: fadeUp-b-ycp7e3o4h5 .5s ease both;
}

.ob-logo-nome[b-ycp7e3o4h5] {
    color: #F0F2F5;
    font-size: 28px;
    font-weight: 700;
    font-family: 'Georgia', serif;
    letter-spacing: -.5px;
}

.ob-logo-sub[b-ycp7e3o4h5] {
    color: #4A5260;
    font-size: 9px;
    font-family: monospace;
    letter-spacing: 3px;
    text-transform: uppercase;
}

/* ── Título ── */
.ob-titulo-wrap[b-ycp7e3o4h5] {
    text-align: center;
    max-width: 320px;
    margin-bottom: 28px;
    animation: fadeUp-b-ycp7e3o4h5 .5s ease .1s both;
}

.ob-titulo[b-ycp7e3o4h5] {
    color: #F0F2F5;
    font-size: 18px;
    font-weight: 600;
    font-family: 'Georgia', serif;
    line-height: 1.5;
    margin: 0 0 10px;
}

.ob-subtitulo[b-ycp7e3o4h5] {
    color: #7A8494;
    font-size: 12px;
    font-family: monospace;
    line-height: 1.8;
    margin: 0;
}

/* ── Lista de cards ── */
.ob-lista[b-ycp7e3o4h5] {
    width: 100%;
    max-width: 960px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    animation: fadeUp-b-ycp7e3o4h5 .5s ease .15s both;
}

/* ── Card de segmento ── */
.seg-card[b-ycp7e3o4h5] {
    width: 100%;
    background: #1C2028;
    border: 1.5px solid #2E3440;
    border-radius: 12px;
    padding: 15px 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: border-color .2s, background .2s, transform .1s;
    text-align: left;
    -webkit-tap-highlight-color: transparent;
}

    .seg-card:hover:not(:disabled)[b-ycp7e3o4h5] {
        border-color: #ff8c0055;
        background: #1e2430;
    }

    .seg-card:active:not(:disabled)[b-ycp7e3o4h5] {
        transform: scale(.99);
    }

    .seg-card:disabled[b-ycp7e3o4h5] {
        cursor: not-allowed;
        opacity: .7;
    }

    /* Card selecionado */
    .seg-card.seg-chosen[b-ycp7e3o4h5] {
        border-color: #ff8c00;
        background: #1e2430;
        animation: pulseCard-b-ycp7e3o4h5 .3s ease;
    }

/* ── Ícone ── */
.seg-icon-wrap[b-ycp7e3o4h5] {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #222730;
    border: 1.5px solid #2E3440;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: border-color .2s, background .2s;
}

.seg-card:hover:not(:disabled) .seg-icon-wrap[b-ycp7e3o4h5] {
    border-color: #ff8c0044;
    background: #ff8c0011;
}

.seg-card.seg-chosen .seg-icon-wrap[b-ycp7e3o4h5] {
    background: #ff8c0022;
    border-color: #ff8c0077;
}

/* ── Texto do card ── */
.seg-info[b-ycp7e3o4h5] {
    flex: 1;
    min-width: 0;
}

.seg-nome[b-ycp7e3o4h5] {
    color: #F0F2F5;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Georgia', serif;
    margin-bottom: 3px;
    transition: color .2s;
}

.seg-card:hover:not(:disabled) .seg-nome[b-ycp7e3o4h5],
.seg-card.seg-chosen .seg-nome[b-ycp7e3o4h5] {
    color: #fff;
}

.seg-meta[b-ycp7e3o4h5] {
    color: #4A5260;
    font-size: 10px;
    font-family: monospace;
    letter-spacing: .3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Chevron ── */
.seg-chevron[b-ycp7e3o4h5] {
    color: #2E3440;
    font-size: 22px;
    flex-shrink: 0;
    line-height: 1;
    transition: color .2s, transform .2s;
}

.seg-card:hover:not(:disabled) .seg-chevron[b-ycp7e3o4h5] {
    color: #ff8c0088;
    transform: translateX(2px);
}

.seg-card.seg-chosen .seg-chevron[b-ycp7e3o4h5] {
    color: #ff8c00;
}

/* ── Erro ── */
.ob-erro[b-ycp7e3o4h5] {
    margin-top: 16px;
    background: #2A1010;
    border: 1px solid #5A2020;
    border-radius: 8px;
    padding: 10px 16px;
    color: #E05050;
    font-size: 11px;
    font-family: monospace;
    text-align: center;
    max-width: 460px;
    width: 100%;
    animation: fadeUp-b-ycp7e3o4h5 .2s ease;
}

/* ── Animações ── */
@keyframes fadeUp-b-ycp7e3o4h5 {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulseCard-b-ycp7e3o4h5 {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.01);
    }

    100% {
        transform: scale(1);
    }
}

/* ── Responsividade ── */
@media (max-width: 480px) {
    .ob-root[b-ycp7e3o4h5] {
        padding: 32px 16px 48px;
    }

    .ob-titulo[b-ycp7e3o4h5] {
        font-size: 16px;
    }

    .seg-card[b-ycp7e3o4h5] {
        padding: 13px 14px;
    }
}
/* /Pages/Orders.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════
   Orders.razor.css  —  CSS escopado (Blazor scoped isolation)
   Design system: Favus™ · Alveos™
   ════════════════════════════════════════════════════════════════════════════ */

/* ── Variáveis locais (espelham app.css — redundância intencional p/ isolamento) */
:root[b-cddjqwgk0g] {
    --bg: #111318;
    --card: #1C2028;
    --card2: #222730;
    --line: #2E3440;
    --t1: #F0F2F5;
    --t2: #B8BEC8;
    --t3: #7A8494;
    --t4: #4A5260;
    --accent: #ff8c00;
    --red: #E05050;
    --red-bg: #2A1010;
    --red-br: #5A2020;
    --green: #4CAF50;
    --grn-bg: #102A10;
    --grn-br: #205A20;
    --orange: #D4881A;
}

/* ── Root ───────────────────────────────────────────────────────────────── */
.orders-root[b-cddjqwgk0g] {
    background: var(--bg);
    min-height: 100vh;
    padding-bottom: 80px; /* espaço para NavBar */
}

/* ── Header sticky ──────────────────────────────────────────────────────── */
.orders-header[b-cddjqwgk0g] {
    position: sticky;
    top: 0;
    z-index: 50;
    background: var(--card);
    border-bottom: 1px solid var(--line);
    padding: 16px 16px 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.orders-header-info[b-cddjqwgk0g] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.orders-titulo[b-cddjqwgk0g] {
    color: var(--t1);
    font-size: 16px;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
}

.orders-subtitulo[b-cddjqwgk0g] {
    color: var(--t3);
    font-size: 10px;
    font-family: monospace;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.orders-total[b-cddjqwgk0g] {
    color: var(--accent);
    font-family: monospace;
    font-size: 14px;
    font-weight: 700;
}

/* ── Controles: busca + filtros ─────────────────────────────────────────── */
.orders-controles[b-cddjqwgk0g] {
    padding: 14px 16px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.orders-busca[b-cddjqwgk0g] {
    background: var(--card2);
    border: 1.5px solid var(--line);
    border-radius: 8px;
    padding: 11px 14px;
    color: var(--t1);
    font-size: 13px;
    font-family: monospace;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s;
}

    .orders-busca[b-cddjqwgk0g]::placeholder {
        color: var(--t4);
    }

    .orders-busca:focus[b-cddjqwgk0g] {
        border-color: var(--accent);
    }

    /* Limpa o X nativo do Safari/Chrome no input[type=search] */
    .orders-busca[b-cddjqwgk0g]::-webkit-search-cancel-button {
        display: none;
    }

.orders-filtros[b-cddjqwgk0g] {
    display: flex;
    gap: 6px;
}

.filtro-btn[b-cddjqwgk0g] {
    background: var(--card2);
    border: 1px solid var(--line);
    border-radius: 6px;
    padding: 5px 13px;
    cursor: pointer;
    color: var(--t3);
    font-size: 10px;
    font-family: monospace;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: 400;
    transition: all 0.15s;
}

    .filtro-btn:hover[b-cddjqwgk0g] {
        color: var(--t2);
        border-color: var(--t4);
    }

/* .filtro-ativo recebe inline style com accent do segmento */
.filtro-ativo[b-cddjqwgk0g] {
    font-weight: 700;
}

/* ── Corpo ──────────────────────────────────────────────────────────────── */
.orders-corpo[b-cddjqwgk0g] {
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* ── Loading dots ───────────────────────────────────────────────────────── */
.orders-loading[b-cddjqwgk0g] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    padding: 48px 0;
}

.loading-dot[b-cddjqwgk0g] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--t4);
    animation: dotPulse-b-cddjqwgk0g 1.2s ease-in-out infinite;
}

    .loading-dot:nth-child(2)[b-cddjqwgk0g] {
        animation-delay: 0.2s;
    }

    .loading-dot:nth-child(3)[b-cddjqwgk0g] {
        animation-delay: 0.4s;
    }

@keyframes dotPulse-b-cddjqwgk0g {
    0%, 80%, 100% {
        opacity: 0.3;
        transform: scale(0.8);
    }

    40% {
        opacity: 1;
        transform: scale(1);
    }
}

/* ── Estado vazio ───────────────────────────────────────────────────────── */
.orders-vazio[b-cddjqwgk0g] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 64px 20px;
    gap: 8px;
    color: var(--t4);
    font-size: 13px;
    font-family: monospace;
    text-align: center;
    line-height: 1.8;
}

    .orders-vazio p[b-cddjqwgk0g] {
        margin: 0;
    }

.vazio-icone[b-cddjqwgk0g] {
    font-size: 36px;
    opacity: 0.25;
    margin-bottom: 6px;
}

.sem-resultado[b-cddjqwgk0g] {
    color: var(--t4);
    font-family: monospace;
    font-size: 12px;
    text-align: center;
    padding: 32px 0;
}

/* ── Card de grupo (CNPJ) ───────────────────────────────────────────────── */
.grupo-card[b-cddjqwgk0g] {
    background: var(--card);
    border: 1.5px solid var(--line);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color 0.2s;
    animation: fadeSlide-b-cddjqwgk0g 0.25s ease;
}

    .grupo-card.grupo-expandido[b-cddjqwgk0g] {
        border-color: color-mix(in srgb, var(--accent) 40%, transparent);
    }

    .grupo-card.grupo-bloqueado[b-cddjqwgk0g] {
        border-color: var(--red-br);
    }

.grupo-header-btn[b-cddjqwgk0g] {
    width: 100%;
    background: transparent;
    border: none;
    padding: 14px 16px;
    cursor: pointer;
    text-align: left;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.grupo-info[b-cddjqwgk0g] {
    flex: 1;
    min-width: 0;
}

.grupo-razao-row[b-cddjqwgk0g] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 5px;
    flex-wrap: wrap;
}

.grupo-razao[b-cddjqwgk0g] {
    color: var(--t1);
    font-size: 14px;
    font-weight: 600;
    font-family: 'Georgia', serif;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

    .grupo-razao.grupo-razao-bloqueada[b-cddjqwgk0g] {
        color: var(--red);
    }

.grupo-cnpj[b-cddjqwgk0g] {
    color: var(--t4);
    font-size: 11px;
    font-family: monospace;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.grupo-resumo[b-cddjqwgk0g] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: baseline;
}

.grupo-valor-pend[b-cddjqwgk0g] {
    font-family: monospace;
    font-size: 15px;
    font-weight: 700;
}

    .grupo-valor-pend.valor-bloqueado[b-cddjqwgk0g] {
        color: var(--red);
    }

.grupo-abertos[b-cddjqwgk0g] {
    color: var(--t4);
    font-family: monospace;
    font-size: 11px;
}

/* Chevron animado */
.grupo-chevron[b-cddjqwgk0g] {
    color: var(--t4);
    font-size: 20px;
    margin-top: 2px;
    display: inline-block;
    transform: rotate(0deg);
    transition: transform 0.2s ease;
    flex-shrink: 0;
    line-height: 1;
}

    .grupo-chevron.chevron-aberto[b-cddjqwgk0g] {
        transform: rotate(90deg);
    }

/* ── Itens dentro do grupo ──────────────────────────────────────────────── */
.grupo-itens[b-cddjqwgk0g] {
    border-top: 1px solid var(--line);
    animation: fadeSlide-b-cddjqwgk0g 0.2s ease;
}

.pedido-item[b-cddjqwgk0g] {
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    background: transparent;
    transition: background 0.15s;
}

    .pedido-item.pedido-sep[b-cddjqwgk0g] {
        border-bottom: 1px solid var(--line);
    }

    .pedido-item.item-vencido[b-cddjqwgk0g] {
        background: var(--red-bg);
    }

    .pedido-item.item-pago[b-cddjqwgk0g] {
        background: var(--bg);
    }

/* linha 1 */
.pedido-linha-1[b-cddjqwgk0g] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.pedido-meta[b-cddjqwgk0g] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    flex: 1;
    min-width: 0;
}

.pedido-operacao[b-cddjqwgk0g] {
    color: var(--t1);
    font-size: 13px;
    font-weight: 600;
    font-family: 'Georgia', serif;
}

    .pedido-operacao.texto-muted[b-cddjqwgk0g] {
        color: var(--t4);
    }

.pedido-referencia[b-cddjqwgk0g] {
    color: var(--t4);
    font-size: 11px;
    font-family: monospace;
}

/* valor do pedido */
.pedido-valor[b-cddjqwgk0g] {
    font-family: monospace;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

    .pedido-valor.valor-pendente[b-cddjqwgk0g] {
        color: var(--accent);
    }

    .pedido-valor.valor-vencido[b-cddjqwgk0g] {
        color: var(--red);
    }

    .pedido-valor.valor-pago[b-cddjqwgk0g] {
        color: var(--t4);
    }

/* linha 2 */
.pedido-linha-2[b-cddjqwgk0g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.pedido-venc[b-cddjqwgk0g] {
    color: var(--t3);
    font-family: monospace;
    font-size: 11px;
}

    .pedido-venc.venc-atrasado[b-cddjqwgk0g] {
        color: var(--red);
    }

    .pedido-venc.texto-muted[b-cddjqwgk0g] {
        color: var(--t4);
    }

/* observação */
.pedido-obs[b-cddjqwgk0g] {
    color: var(--t4);
    font-size: 11px;
    font-family: monospace;
    line-height: 1.5;
    margin-top: 2px;
}

/* ── Botão Pago ✓ ───────────────────────────────────────────────────────── */
.btn-pago[b-cddjqwgk0g] {
    background: var(--grn-bg);
    border: 1px solid var(--grn-br);
    border-radius: 7px;
    padding: 6px 12px;
    cursor: pointer;
    color: var(--green);
    font-size: 11px;
    font-family: monospace;
    font-weight: 700;
    flex-shrink: 0;
    transition: opacity 0.15s, transform 0.1s;
}

    .btn-pago:hover:not(:disabled)[b-cddjqwgk0g] {
        opacity: 0.85;
        transform: scale(1.03);
    }

    .btn-pago:active:not(:disabled)[b-cddjqwgk0g] {
        transform: scale(0.97);
    }

    .btn-pago.btn-pago-loading[b-cddjqwgk0g],
    .btn-pago:disabled[b-cddjqwgk0g] {
        opacity: 0.5;
        cursor: not-allowed;
    }

/* ── Rodapé do grupo ────────────────────────────────────────────────────── */
.grupo-rodape[b-cddjqwgk0g] {
    padding: 10px 16px;
    background: var(--bg);
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid var(--line);
}

    .grupo-rodape span:first-child[b-cddjqwgk0g] {
        color: var(--t4);
        font-size: 10px;
        font-family: monospace;
        letter-spacing: 1px;
    }

    .grupo-rodape span:last-child[b-cddjqwgk0g] {
        color: var(--t3);
        font-family: monospace;
        font-size: 12px;
    }

/* ── Animações ──────────────────────────────────────────────────────────── */
@keyframes fadeSlide-b-cddjqwgk0g {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Pages/Register.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   Register.razor.css  (scoped)
   Favus™ — Formulário de registro de operação
   ════════════════════════════════════════════════════════════════════════ */

/* ── Root ── */
.reg-root[b-9tsrjye4zn] {
    background: #111318;
    min-height: 100%;
    padding-bottom: 24px;
}

/* ── Header sticky ── */
.reg-header[b-9tsrjye4zn] {
    position: sticky;
    top: 0;
    z-index: 50;
    background: #1C2028;
    border-bottom: 1px solid #2E3440;
    padding: 14px 16px 11px;
    display: flex;
    align-items: center;
    gap: 11px;
}

.reg-hex[b-9tsrjye4zn] {
    flex-shrink: 0;
    display: block;
}

.reg-header-info[b-9tsrjye4zn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.reg-titulo[b-9tsrjye4zn] {
    color: #F0F2F5;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
}

.reg-subtitulo[b-9tsrjye4zn] {
    color: #7A8494;
    font-size: 10px;
    font-family: monospace;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.reg-os-num[b-9tsrjye4zn] {
    color: #4A5260;
    font-family: monospace;
    font-size: 11px;
    font-weight: 700;
    flex-shrink: 0;
}

/* ── Formulário ── */
.reg-form[b-9tsrjye4zn] {
    padding: 16px 16px 8px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* ── Grupos de campo ── */
.field-group[b-9tsrjye4zn] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.field-label-row[b-9tsrjye4zn] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.field-label[b-9tsrjye4zn] {
    font-size: 10px;
    font-weight: 700;
    color: #7A8494;
    letter-spacing: 1.8px;
    font-family: monospace;
    text-transform: uppercase;
}

.field-req[b-9tsrjye4zn] {
    margin-left: 3px;
}

.field-hint[b-9tsrjye4zn] {
    font-size: 10px;
    color: #7A8494;
    font-family: monospace;
}

/* ── Input base ── */
.field-wrap[b-9tsrjye4zn] {
    position: relative;
    display: block;
}

.field-input[b-9tsrjye4zn] {
    width: 100%;
    background: #222730;
    border: 1.5px solid #2E3440;
    border-radius: 10px;
    padding: 12px 14px;
    color: #F0F2F5;
    font-size: 14px;
    font-family: 'Georgia', serif;
    outline: none;
    box-sizing: border-box;
    transition: border-color .2s, background .2s;
    appearance: none;
}

    .field-input[b-9tsrjye4zn]::placeholder {
        color: #4A5260;
        font-style: italic;
    }

    .field-input:focus[b-9tsrjye4zn] {
        border-color: #ff8c00;
        background: #1a1f28;
    }

    .field-input.field-readonly[b-9tsrjye4zn] {
        color: #B8BEC8;
        padding-right: 38px;
    }

.field-lock[b-9tsrjye4zn] {
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    color: #ff8c00;
    font-size: 16px;
    pointer-events: none;
}

/* Select ── */
.field-select[b-9tsrjye4zn] {
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234A5260' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 36px;
}

/* Grid 2 colunas ── */
.field-grid-2[b-9tsrjye4zn] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

/* Valor ── */
.field-valor[b-9tsrjye4zn] {
    font-size: 22px !important;
    font-weight: 700 !important;
    text-align: right;
    letter-spacing: -0.5px;
    font-family: monospace !important;
    color: #F0F2F5;
}

/* Textarea ── */
.field-textarea[b-9tsrjye4zn] {
    resize: vertical;
    min-height: 58px;
    line-height: 1.6;
}

/* ── Indicador de CNPJ ── */
.cnpj-indicator[b-9tsrjye4zn] {
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    font-family: monospace;
    font-size: 14px;
    pointer-events: none;
    line-height: 1;
}

.ind-idle[b-9tsrjye4zn] {
    color: #4A5260;
}

.ind-loading[b-9tsrjye4zn] {
    color: #7A8494;
    letter-spacing: 2px;
}

.ind-found[b-9tsrjye4zn] {
    color: #4CAF50;
    font-weight: 700;
}

.ind-error[b-9tsrjye4zn] {
    color: #E05050;
    font-weight: 700;
}

/* ── Cards de info ── */
.info-card[b-9tsrjye4zn] {
    border-radius: 9px;
    padding: 12px 14px;
    border: 1px solid #2E3440;
    animation: fadeSlide 0.2s ease;
}

/* Card prazo */
.info-prazo[b-9tsrjye4zn] {
    background: #1C2028;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.prazo-label[b-9tsrjye4zn] {
    font-size: 9px;
    font-family: monospace;
    letter-spacing: 1.5px;
    color: #7A8494;
    text-transform: uppercase;
}

.prazo-badge[b-9tsrjye4zn] {
    font-size: 10px;
    font-family: monospace;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    border: 1px solid;
}

.prazo-excecao[b-9tsrjye4zn] {
    font-size: 9px;
    font-family: monospace;
    color: #D4881A;
    background: #D4881A22;
    border: 1px solid #D4881A66;
    padding: 2px 6px;
    border-radius: 4px;
}

.prazo-venc[b-9tsrjye4zn] {
    font-size: 11px;
    font-family: monospace;
    color: #7A8494;
    margin-left: auto;
}

/* Card bloqueio */
.info-bloqueio[b-9tsrjye4zn] {
    background: #2A1010;
    border-color: #5A2020;
}

.bloq-titulo[b-9tsrjye4zn] {
    color: #E05050;
    font-size: 12px;
    font-weight: 700;
    font-family: monospace;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.bloq-linha[b-9tsrjye4zn] {
    color: #E05050;
    font-size: 11px;
    font-family: monospace;
    line-height: 1.8;
    opacity: 0.85;
}

.bloq-hint[b-9tsrjye4zn] {
    color: #7A8494;
    font-size: 10px;
    font-family: monospace;
    margin-top: 8px;
    font-style: italic;
}

/* Card Receita Federal */
.info-receita[b-9tsrjye4zn] {
    background: #1C2028;
}

.info-receita-erro[b-9tsrjye4zn] {
    background: #1C2028;
    border-color: #4A5260;
}

.receita-loading[b-9tsrjye4zn] {
    color: #7A8494;
    font-size: 11px;
    font-family: monospace;
    font-style: italic;
}

.receita-row[b-9tsrjye4zn] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.receita-nomes[b-9tsrjye4zn] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.receita-fantasia[b-9tsrjye4zn] {
    color: #F0F2F5;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Georgia', serif;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.receita-razao[b-9tsrjye4zn] {
    color: #B8BEC8;
    font-size: 11px;
    font-family: monospace;
}

.receita-cidade[b-9tsrjye4zn] {
    color: #7A8494;
    font-size: 10px;
    font-family: monospace;
    letter-spacing: 0.3px;
}

.receita-sit[b-9tsrjye4zn] {
    font-size: 9px;
    font-weight: 700;
    font-family: monospace;
    padding: 2px 7px;
    border-radius: 4px;
    flex-shrink: 0;
}

.sit-ativa[b-9tsrjye4zn] {
    background: #102A10;
    color: #4CAF50;
    border: 1px solid #205A20;
}

.sit-inativa[b-9tsrjye4zn] {
    background: #2A1010;
    color: #E05050;
    border: 1px solid #5A2020;
}

.receita-erro[b-9tsrjye4zn] {
    color: #7A8494;
    font-size: 11px;
    font-family: monospace;
    font-style: italic;
}

.btn-corrigir[b-9tsrjye4zn] {
    background: transparent;
    border: none;
    color: #ff8c00;
    font-size: 10px;
    font-family: monospace;
    font-weight: 700;
    cursor: pointer;
    padding: 0;
    margin-top: 8px;
    display: block;
    text-decoration: underline;
    transition: opacity .2s;
}

    .btn-corrigir:hover[b-9tsrjye4zn] {
        opacity: .7;
    }

/* ── Separador ── */
.reg-sep[b-9tsrjye4zn] {
    border: none;
    border-top: 1px solid #2E3440;
}

/* ── Botão Registrar ── */
.btn-registrar[b-9tsrjye4zn] {
    width: 100%;
    padding: 16px;
    border-radius: 10px;
    border: 1.5px solid transparent;
    font-size: 14px;
    font-weight: 700;
    font-family: monospace;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.25s;
}

.btn-disabled[b-9tsrjye4zn] {
    background: #222730;
    border-color: #2E3440;
    color: #4A5260;
    cursor: not-allowed;
}

/* .btn-valid recebe inline style com accent color */
.btn-valid[b-9tsrjye4zn] {
    color: #000;
    cursor: pointer;
}

    .btn-valid:hover:not(:disabled)[b-9tsrjye4zn] {
        opacity: .9;
        transform: translateY(-1px);
    }

    .btn-valid:active:not(:disabled)[b-9tsrjye4zn] {
        transform: translateY(0);
    }

.btn-saved[b-9tsrjye4zn] {
    background: #102A10 !important;
    border-color: #205A20 !important;
    color: #4CAF50 !important;
    cursor: default;
    animation: pulse 0.4s ease;
}

/* ── Avisos ── */
.reg-aviso[b-9tsrjye4zn] {
    text-align: center;
    color: #4A5260;
    font-size: 11px;
    font-family: monospace;
    line-height: 1.6;
    margin-top: -6px;
}

.reg-erro[b-9tsrjye4zn] {
    background: #2A1010;
    border: 1px solid #5A2020;
    border-radius: 8px;
    padding: 10px 14px;
    color: #E05050;
    font-size: 11px;
    font-family: monospace;
    text-align: center;
}

/* ── Animações ── */
@@keyframes fadeSlide {
    from[b-9tsrjye4zn] {
        opacity: 0;
        transform: translateY(5px);
    }

    to[b-9tsrjye4zn] {
        opacity: 1;
        transform: translateY(0);
    }
}

@@keyframes pulse {
    0%[b-9tsrjye4zn] {
        transform: scale(1);
    }

    50%[b-9tsrjye4zn] {
        transform: scale(1.02);
    }

    100%[b-9tsrjye4zn] {
        transform: scale(1);
    }
}
/* /Pages/Shell.razor.rz.scp.css */
/* ════════════════════════════════════════════════════════════════════════
   Shell.razor.css  (scoped)
   Favus™ — Container principal

   IMPORTANTE: Para que o layout flex funcione corretamente,
   o .main-content do MainLayout.razor.css deve usar overflow: hidden
   (não overflow-y: auto). A rolagem acontece dentro do .shell-body.
   ════════════════════════════════════════════════════════════════════════ */

/* ── Root: coluna que preenche 100% do main-content ── */
.shell-root[b-0b69a9b27g] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0; /* essencial para flex filho não vazar */
    background: #111318;
}

/* ── Área de conteúdo: única região que rola ── */
.shell-body[b-0b69a9b27g] {
    flex: 1 1 0;
    min-height: 0; /* idem — sem isso o flex não comprime */
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

/* ── Centralizador (espelha o max-width do login-card) ── */
.shell-inner[b-0b69a9b27g] {
    max-width: 960px;
    margin: 0 auto;
    width: 100%;
    padding: 1.5rem; /* respiro em todos os lados, igual ao login-page */
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ── Card operacional — espelha o login-card ── */
.shell-card[b-0b69a9b27g] {
    background: #1C2028;
    border-radius: 16px;
    border: 1px solid #2E3440;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3);
    overflow: hidden;
}

/* ── NavBar flutuante — card independente abaixo do shell-card ── */
.shell-navbar[b-0b69a9b27g] {
    display: flex;
    background: #1C2028;
    border-radius: 16px;
    border: 1px solid #2E3440;
    box-shadow: 0 4px 24px rgba(0, 0, 0, .3);
    height: 56px;
    z-index: 100;
}


/* ── Botão de tab ── */
.nb[b-0b69a9b27g] {
    flex: 1;
    background: transparent;
    border: none;
    padding: 10px 4px 8px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    color: #4A5260;
    transition: color 0.15s;
    -webkit-tap-highlight-color: transparent;
}

    .nb:hover[b-0b69a9b27g] {
        color: #7A8494;
    }

.nb-on[b-0b69a9b27g] {
    font-weight: 700;
}
/* cor via inline style (varia por segmento) */

.nb-icon[b-0b69a9b27g] {
    font-size: 16px;
    line-height: 1;
}

.nb-label[b-0b69a9b27g] {
    font-size: 9px;
    font-family: monospace;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: inherit;
    white-space: nowrap;
}

/* ── Loading (3 pontos animados) ── */
.shell-loading[b-0b69a9b27g] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    height: 100%;
    min-height: 200px;
}

.loading-dot[b-0b69a9b27g] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #2E3440;
    animation: shellDotPulse-b-0b69a9b27g 1.2s ease-in-out infinite;
}

    .loading-dot:nth-child(2)[b-0b69a9b27g] {
        animation-delay: 0.2s;
    }

    .loading-dot:nth-child(3)[b-0b69a9b27g] {
        animation-delay: 0.4s;
    }

@keyframes shellDotPulse-b-0b69a9b27g {
    0%, 80%, 100% {
        opacity: 0.3;
        transform: scale(0.8);
    }

    40% {
        opacity: 1;
        transform: scale(1);
    }
}
/* /Shared/PwaInstallButton.razor.rz.scp.css */
.btn-pwa-install[b-wb75xzggnh] {
    background-color: #ff8c00;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    padding: 0.5rem 1.2rem;
    font-family: Verdana, Geneva, Tahoma, sans-serif;
    font-size: 0.9rem;
    font-weight: bold;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

    .btn-pwa-install:hover[b-wb75xzggnh] {
        opacity: 0.85;
    }
/* /Shared/UpdateValidator.razor.rz.scp.css */
.update-alert[b-a0c6quo00m] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    background: #FF8C00; /* Cor do Jathaí */
    color: white;
    padding: 15px;
    border-radius: 8px;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    gap: 10px;
}
