/* NossaFatura 4.3.3 — Enterprise authentication experience */
html.nf-auth-html,html.nf-auth-html body{width:100%;height:100%;margin:0}
body.nf-auth-body{background:#06172d!important;overflow:hidden!important}
.nf-auth-enterprise{height:100dvh!important;min-height:0!important;grid-template-columns:minmax(520px,1.08fr) minmax(500px,.92fr);overflow:hidden;background:#06172d}
.nf-auth-enterprise .nf-auth-story,.nf-auth-enterprise .nf-auth-access{height:100dvh;min-height:0;overflow:hidden}
.nf-auth-enterprise .nf-auth-story{padding:clamp(34px,5.4vh,68px) clamp(44px,6vw,96px);background:radial-gradient(circle at 18% 15%,rgba(35,225,211,.16),transparent 31%),linear-gradient(135deg,rgba(4,20,40,.98),rgba(6,59,77,.90) 58%,rgba(5,30,52,.98));position:relative}
.nf-auth-enterprise .nf-auth-story:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 90%);pointer-events:none}
.nf-auth-enterprise .nf-auth-story-inner{position:relative;z-index:1;max-width:720px;height:100%;display:flex;flex-direction:column;justify-content:center;gap:clamp(18px,2.5vh,30px)}
.nf-auth-brandbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.nf-auth-brandbar .nf-auth-logo{width:min(280px,60%);max-height:88px;object-fit:contain;object-position:left center}.nf-auth-product-badge{border:1px solid rgba(95,248,232,.35);background:rgba(9,46,64,.65);padding:8px 10px;color:#7cf6e9;font-size:9px;font-weight:900;letter-spacing:.18em}
.nf-auth-story-copy{display:grid;gap:14px}.nf-auth-enterprise .nf-auth-kicker{font-size:9px;letter-spacing:.21em}.nf-auth-enterprise .nf-auth-story h1{font-size:clamp(40px,4.15vw,68px);max-width:700px}.nf-auth-enterprise .nf-auth-story p{font-size:13px;line-height:1.75;max-width:650px;color:#bed4e1}
.nf-auth-enterprise .nf-auth-capabilities{border-color:rgba(175,225,237,.18)}.nf-auth-enterprise .nf-auth-capabilities>span{padding:14px 15px;background:rgba(4,27,47,.46);border-color:rgba(175,225,237,.18)}
.nf-auth-security-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(175,225,237,.16);background:rgba(2,20,35,.34)}.nf-auth-security-strip>span{display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto auto;column-gap:8px;padding:11px 12px;border-right:1px solid rgba(175,225,237,.14)}.nf-auth-security-strip>span:last-child{border-right:0}.nf-auth-security-strip .ico{grid-row:1/3;color:#61e9dd;width:16px}.nf-auth-security-strip b{font-size:9px;color:#f3fbff}.nf-auth-security-strip small{font-size:8px;color:#8eabbc}
.nf-auth-enterprise .nf-auth-access{padding:0;background:#f3f7fb;display:grid;grid-template-rows:auto 1fr auto;backdrop-filter:none}html[data-theme="dark"] .nf-auth-enterprise .nf-auth-access{background:#071a2d}
.nf-auth-access-topbar{height:68px;padding:0 clamp(26px,4vw,58px);border-bottom:1px solid #d9e5ee;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(255,255,255,.8);backdrop-filter:blur(18px)}html[data-theme="dark"] .nf-auth-access-topbar{background:rgba(8,29,49,.88);border-color:#1f3e57}
.nf-auth-workspace-id{display:flex;align-items:center;gap:10px}.nf-auth-status-dot{width:8px;height:8px;border-radius:50%;background:#13b8a9;box-shadow:0 0 0 5px rgba(19,184,169,.10)}.nf-auth-workspace-id b,.nf-auth-workspace-id small{display:block}.nf-auth-workspace-id b{font-size:10px;color:#17334b}.nf-auth-workspace-id small{font-size:8px;color:#7890a3;margin-top:2px}html[data-theme="dark"] .nf-auth-workspace-id b{color:#e9f5fb}
.nf-auth-access-tools{display:flex;align-items:center;gap:9px}.nf-auth-env-badge{font-size:8px;font-weight:900;letter-spacing:.12em;padding:7px 9px;background:#fff4d6;color:#8b6300;border:1px solid #efdaa4}html[data-theme="dark"] .nf-auth-env-badge{background:#392f16;color:#ffe7a0;border-color:#5d4b1b}
.nf-auth-enterprise .nf-auth-theme{position:static;height:34px;border:1px solid #cad9e5;background:#fff;color:#24435d;box-shadow:none;backdrop-filter:none}.nf-auth-enterprise .nf-auth-theme .ico{width:15px}html[data-theme="dark"] .nf-auth-enterprise .nf-auth-theme{background:#0c2943;color:#e5f2fa;border-color:#294a64}
.nf-auth-enterprise .nf-auth-access-inner{width:min(100% - 52px,600px);max-width:600px;margin:auto;display:flex;flex-direction:column;justify-content:center;min-height:0;padding:20px 0}
.nf-auth-enterprise.is-wide .nf-auth-access-inner{width:min(100% - 52px,940px);max-width:940px}
.nf-auth-context-line{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px}.nf-auth-context-line>span{font-size:8px;font-weight:900;letter-spacing:.16em;color:#078e86;text-transform:uppercase}.nf-auth-context-line small{font-size:8px;color:#8296a7}
.nf-auth-enterprise .nf-auth-panel-card{gap:17px;padding:clamp(22px,3vh,34px)!important;background:#fff!important;border:1px solid #d6e3ed!important;box-shadow:0 18px 50px rgba(20,48,73,.10)!important}html[data-theme="dark"] .nf-auth-enterprise .nf-auth-panel-card{background:#0a2239!important;border-color:#25455f!important;box-shadow:0 24px 60px rgba(0,0,0,.24)!important}
.nf-auth-enterprise .nf-auth-panel-head{padding-bottom:16px}.nf-auth-enterprise .nf-auth-panel-head h2{font-size:clamp(24px,2.2vw,31px)}.nf-auth-enterprise .nf-auth-panel-icon{width:44px;height:44px}
.nf-auth-enterprise .nf-auth-form{gap:13px}.nf-auth-enterprise .nf-auth-form input,.nf-auth-enterprise .nf-auth-form select{height:46px!important}.nf-auth-enterprise .nf-auth-form .password-wrap button{height:46px}.nf-auth-enterprise .nf-btn.full{min-height:44px}
.nf-auth-enterprise-note{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:11px 13px;border:1px solid #dce7ef;background:#edf5f8;color:#5c7385;font-size:8px;line-height:1.55}.nf-auth-enterprise-note .ico{color:#078e86;width:15px;flex:0 0 auto}html[data-theme="dark"] .nf-auth-enterprise-note{background:#0b2942;border-color:#284962;color:#91aabd}
.nf-auth-enterprise .nf-auth-footer{padding:0 clamp(26px,4vw,58px) 18px;margin:0}.nf-auth-enterprise .nf-auth-footer .syntrix-footer{border-top:1px solid #dce6ee;padding-top:12px!important}html[data-theme="dark"] .nf-auth-enterprise .nf-auth-footer .syntrix-footer{border-color:#203d55}
.nf-auth-enterprise .nf-lock-methods{gap:12px}

@media(max-height:820px) and (min-width:1101px){
  .nf-auth-enterprise .nf-auth-story{padding-top:28px;padding-bottom:28px}.nf-auth-enterprise .nf-auth-story-inner{gap:16px}.nf-auth-enterprise .nf-auth-story h1{font-size:clamp(36px,3.6vw,56px)}.nf-auth-enterprise .nf-auth-story p{font-size:11px}.nf-auth-enterprise .nf-auth-capabilities>span{padding:10px 12px}.nf-auth-security-strip>span{padding:8px 10px}.nf-auth-access-topbar{height:58px}.nf-auth-enterprise .nf-auth-panel-card{padding:20px 24px!important;gap:13px}.nf-auth-enterprise .nf-auth-panel-head{padding-bottom:12px}.nf-auth-enterprise .nf-auth-panel-head h2{font-size:25px}.nf-auth-enterprise .nf-auth-form{gap:10px}.nf-auth-enterprise-note{margin-top:9px;padding:8px 11px}
}
@media(max-height:680px) and (min-width:1101px){.nf-auth-enterprise .nf-auth-capabilities{display:none}.nf-auth-enterprise .nf-auth-story-copy p{display:none}.nf-auth-security-strip{margin-top:3px}}
@media(max-width:1100px){
  body.nf-auth-body{overflow:auto!important}.nf-auth-enterprise,.nf-auth-enterprise.is-wide{height:auto!important;min-height:100dvh!important;grid-template-columns:1fr;overflow:visible}.nf-auth-enterprise .nf-auth-story,.nf-auth-enterprise .nf-auth-access{height:auto;overflow:visible}.nf-auth-enterprise .nf-auth-story{min-height:auto;padding:36px 7vw 30px}.nf-auth-enterprise .nf-auth-story-inner{height:auto;gap:14px}.nf-auth-enterprise .nf-auth-story-copy h1{font-size:40px}.nf-auth-security-strip{display:none}.nf-auth-enterprise .nf-auth-access{min-height:58dvh}.nf-auth-enterprise .nf-auth-access-inner{width:min(100% - 40px,700px);padding:34px 0}.nf-auth-access-topbar{position:sticky;top:0;z-index:15}
}
@media(max-width:720px){
  .nf-auth-enterprise .nf-auth-story{padding:20px}.nf-auth-brandbar .nf-auth-logo{width:190px}.nf-auth-product-badge{display:none}.nf-auth-enterprise .nf-auth-story-copy,.nf-auth-enterprise .nf-auth-capabilities{display:none}.nf-auth-access-topbar{height:58px;padding:0 18px}.nf-auth-workspace-id small{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nf-auth-enterprise .nf-auth-theme span{display:none}.nf-auth-enterprise .nf-auth-access-inner{width:calc(100% - 28px);padding:22px 0}.nf-auth-context-line small{display:none}.nf-auth-enterprise .nf-auth-panel-card{padding:20px!important}.nf-auth-enterprise .nf-auth-footer{padding:0 18px 16px}
}
/* Supersede legacy 4.3.1 auth viewport compaction rules. */
@media(min-width:1101px){.nf-auth-enterprise .nf-auth-access{padding:0!important}.nf-auth-enterprise .nf-auth-story-inner,.nf-auth-enterprise .nf-auth-access-inner{transform:none!important}.nf-auth-enterprise .nf-auth-access-inner{width:min(100% - 52px,600px)!important}.nf-auth-enterprise.is-wide .nf-auth-access-inner{width:min(100% - 52px,940px)!important}}
@media(min-width:1101px){.nf-auth-enterprise .nf-auth-access-inner{max-height:calc(100dvh - 108px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#b9ccd9 transparent;padding-right:2px}.nf-auth-enterprise .nf-auth-access-inner::-webkit-scrollbar{width:5px}.nf-auth-enterprise .nf-auth-access-inner::-webkit-scrollbar-thumb{background:#b9ccd9}}


/* =========================================================
   SYNTRIX-NF-WIZARD-4.4.0-HF1
   Wizard empresarial NF-Soft
   ========================================================= */

/*
 * Apenas o passo ativo pode ocupar espaço.
 * O JS já gere a classe .active.
 */
body[data-auth-route="register"] .auth-wizard-card .wizard-step-panel,
body[data-auth-route="activate"] .auth-wizard-card .wizard-step-panel {
    display: none !important;
    min-width: 0;
}

body[data-auth-route="register"] .auth-wizard-card .wizard-step-panel.active,
body[data-auth-route="activate"] .auth-wizard-card .wizard-step-panel.active {
    display: block !important;
}


/*
 * Os inputs globais têm width:100% e min-height:42px.
 * Checkboxes não podem herdar esse contrato.
 */
body[data-auth-route="register"] .auth-wizard-card .check-row,
body[data-auth-route="activate"] .auth-wizard-card .check-row {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    line-height: 1.45;
    font-weight: 650;
    cursor: pointer;
}

body[data-auth-route="register"] .auth-wizard-card .check-row input[type="checkbox"],
body[data-auth-route="activate"] .auth-wizard-card .check-row input[type="checkbox"] {
    appearance: auto;
    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    padding: 0 !important;
    margin: 2px 0 0 !important;
    flex: 0 0 18px;
    border-radius: 0 !important;
    accent-color: var(--nf-primary);
}


/*
 * Num wizard alto, justify-content:center dentro de um
 * contentor scrollável pode tornar o topo inacessível.
 */
@media (min-width: 1101px) {
    body[data-auth-route="register"] .nf-auth-enterprise .nf-auth-access-inner,
    body[data-auth-route="activate"] .nf-auth-enterprise .nf-auth-access-inner {
        justify-content: flex-start !important;
        align-content: flex-start;
        scroll-padding-top: 8px;
    }
}


/*
 * Mantém o passo suficientemente compacto no desktop.
 */
body[data-auth-route="register"] .auth-register-form,
body[data-auth-route="activate"] .auth-register-form {
    min-width: 0;
}

body[data-auth-route="register"] .auth-wizard-card .wizard-actions,
body[data-auth-route="activate"] .auth-wizard-card .wizard-actions {
    margin-top: 16px;
}

