/* Novo visual da Neosis (04/11/2026): azul profundo, branco e rosa, janelas de vidro e botões em cápsula.
   Vem depois de plataforma.css e php.css e reveste as mesmas classes; o que é novo leva o prefixo n-.
   Tamanhos em rem, para o ajuste de letra (A- / A+) continuar valendo. */
@font-face{font-family:"Mona Sans";src:url("../fonts/mona-sans.woff2") format("woff2");font-weight:300 600;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url("../fonts/hanken-grotesk.woff2") format("woff2");font-weight:400 600;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("../fonts/geist-mono.woff2") format("woff2");font-weight:400 500;font-display:swap}

:root{
  --f-titulo:"Mona Sans","Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-texto:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-dado:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --e-suave:cubic-bezier(.22,1,.36,1); --e-expo:cubic-bezier(.16,1,.3,1);

  --n0:#0a1450; --n1:#0f1c66; --n2:#17267f; --n-tx:#f5f7ff; --n-sub:rgba(228,234,255,.82); --n-fino:rgba(255,255,255,.14); --n-medio:rgba(255,255,255,.28);
  --fio:176,196,255; --faisca:255,92,168; --rosa-fundo:rgba(207,38,121,.86);

  --bg:#eef1fb; --surface:#fff; --surface-2:#f1f3fb; --surface-3:#e3e7f6; --text:#0b1444; --muted:#505a84; --line:rgba(11,20,68,.12); --line-2:rgba(11,20,68,.24);
  --brand:#14237a; --brand-2:#1f33a8; --brand-3:#0a1450; --brand-soft:rgba(31,51,168,.1); --noite:#0a1450;
  --verde:#0f7f4d; --verde-soft:rgba(15,127,77,.11); --verde-vivo:#16a067; --amarelo:#8f5c06; --amarelo-soft:rgba(214,138,0,.15); --vermelho:#b42318; --vermelho-soft:rgba(180,35,24,.1);
  --cinza:#505a84; --cinza-soft:rgba(11,20,68,.06); --laranja:#b0451a; --laranja-soft:rgba(176,69,26,.12);
  --ajuda:#cf2679; --ajuda-2:#e0348a; --ajuda-tx:#fff; --dest:#e8378f; --destx:#b81f6c; --de-s:rgba(232,55,143,.12);
  --radius:20px; --radius-sm:12px; --shadow:0 0 0 1px rgba(11,20,68,.05),0 18px 44px rgba(20,35,122,.12); --shadow-2:0 2px 4px rgba(11,20,68,.08),0 26px 60px rgba(20,35,122,.2);
  --foco:0 0 0 2px var(--surface),0 0 0 4px var(--brand-2);

  --g-serie:#3346d3; --g-trilho:rgba(51,70,211,.12); --f1:#93a3f2; --f2:#5f73e6; --f3:#2f43c9; --f-ok:#16a067; --f-neutro:#c6cbe0;
  --c1:#3346d3; --c2:#0b9a88; --c3:#8a4fdf; --c4:#d68a00; --c5:#e8378f; --erro:#b42318;

  --v-fundo:rgba(255,255,255,.66); --v-forte:rgba(246,248,255,.82); --v-sobre:rgba(255,255,255,.86); --v-janela:rgba(255,255,255,.95); --v-solido:#fff; --v-campo:rgba(255,255,255,.6);
  --v-blur:26px; --v-sat:175%; --v-luz:rgba(255,255,255,.8); --v-borda:.9; --v-brilho:rgba(255,255,255,.5);
  --p1:rgba(122,141,240,.6); --p2:rgba(255,120,185,.42); --p3:rgba(90,170,255,.42); --p4:rgba(150,120,255,.3);
}
@media (prefers-color-scheme:dark){:root:not([data-contraste="alto"]){
  --bg:#070d33; --surface:#0f1a55; --surface-2:#141f60; --surface-3:#1c2970; --text:#eef1ff; --muted:#aab3dc; --line:rgba(255,255,255,.12); --line-2:rgba(255,255,255,.26);
  --brand:#b9c6ff; --brand-2:#a9bbff; --brand-3:#dfe6ff; --brand-soft:rgba(169,187,255,.14); --noite:#05093a;
  --verde:#4fd197; --verde-soft:rgba(79,209,151,.14); --amarelo:#f3bf5a; --amarelo-soft:rgba(243,191,90,.14); --vermelho:#ff8a7c; --vermelho-soft:rgba(255,138,124,.14);
  --cinza:#aab3dc; --cinza-soft:rgba(255,255,255,.08); --laranja:#ffab7c; --laranja-soft:rgba(255,171,124,.14); --dest:#ff6fb2; --destx:#ff9acb; --de-s:rgba(255,111,178,.16);
  --shadow:0 20px 50px rgba(2,5,30,.38); --shadow-2:0 26px 60px rgba(2,5,30,.5);
  --g-serie:#8fa3ff; --g-trilho:rgba(143,163,255,.17); --f1:#4e60cc; --f2:#7a8df0; --f3:#b0bcff; --f-ok:#4fd197; --f-neutro:#39437f;
  --c1:#7288f5; --c2:#1fa896; --c3:#a06fe8; --c4:#b88600; --c5:#e84f97; --erro:#ff8a7c;
  --v-fundo:rgba(255,255,255,.075); --v-forte:rgba(15,26,85,.72); --v-sobre:rgba(255,255,255,.09); --v-janela:rgba(10,18,70,.66); --v-solido:#0f1a55; --v-campo:rgba(255,255,255,.07);
  --v-luz:rgba(255,255,255,.16); --v-borda:.44; --v-brilho:rgba(255,255,255,.13);
  --p1:rgba(84,104,245,.5); --p2:rgba(232,55,143,.3); --p3:rgba(60,130,240,.32); --p4:rgba(130,90,240,.26);
}}
html[data-contraste="alto"]{
  --bg:#fff; --surface:#fff; --surface-2:#fff; --surface-3:#f2f2f2; --text:#000; --muted:#1a1a1a; --line:#000; --line-2:#000; --brand:#002060; --brand-2:#002060; --brand-3:#00154a; --brand-soft:#e8eeff;
  --verde:#005a2e; --verde-soft:#e6f6ec; --amarelo:#5a3a00; --amarelo-soft:#fff2c8; --vermelho:#8a0000; --vermelho-soft:#ffe8e8; --cinza:#000; --cinza-soft:#f2f2f2; --ajuda:#7a0045; --ajuda-2:#7a0045; --dest:#a0005a; --destx:#7a0045; --de-s:#ffe6f2;
  --shadow:none; --shadow-2:none; --g-serie:#002a9c; --f1:#6d7fe0; --f2:#2f43c9; --f3:#0a1450; --f-ok:#005a2e; --f-neutro:#888; --erro:#8a0000; --c4:#7a4e00;
  --v-fundo:#fff; --v-forte:#fff; --v-sobre:#fff; --v-janela:#fff; --v-campo:#fff; --v-luz:transparent; --v-borda:0; --v-brilho:transparent; --v-blur:0px;
}

/* ---------- base */
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--text);font-family:var(--f-texto);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
h1,h2,.h-sec,.pe-titulo,.tut-grande{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.03em;line-height:1.08}
h1{font-size:clamp(1.75rem,3.3vw,2.5rem)}
h2,.h-sec{font-size:clamp(1.3rem,2.2vw,1.6rem)}
h3{font-weight:500;letter-spacing:-.008em}
b,strong{font-weight:500}
a{color:var(--brand-2)}
.wrap{max-width:1180px;padding-left:max(clamp(16px,3vw,32px),env(safe-area-inset-left,0px));padding-right:max(clamp(16px,3vw,32px),env(safe-area-inset-right,0px))}
.wrap.estreito{max-width:640px}
.eyebrow{text-transform:none;letter-spacing:-.003em;font-size:.8125rem;font-weight:500;color:var(--muted)}
.mini{font-size:.8125rem}
.k{font-family:var(--f-dado);font-size:.86em;letter-spacing:-.02em;background:var(--cinza-soft)}
:focus-visible{border-radius:8px}
.n-parede{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(48vmax 48vmax at 10% 20%,var(--p1),transparent 70%),radial-gradient(42vmax 42vmax at 90% 28%,var(--p2),transparent 70%),radial-gradient(52vmax 42vmax at 72% 96%,var(--p3),transparent 72%),radial-gradient(40vmax 40vmax at 16% 88%,var(--p4),transparent 70%)}
html[data-contraste="alto"] .n-parede{display:none}

/* ---------- janelas de vidro */
.card,.kpi,.vazio,.tbl,.escolha,.doc-i,.item,.termos-bloco,.lista-fila,.tut-faixa,.tut-card,.un-card,.doc-card,.cx-link{background:var(--v-fundo);-webkit-backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));border:0;border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px 1px var(--v-luz)}
.card{position:relative}
.card::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;padding:1.2px;background:linear-gradient(180deg,rgba(255,255,255,var(--v-borda)) 0%,rgba(255,255,255,calc(var(--v-borda)*.34)) 20%,transparent 42%,transparent 60%,rgba(255,255,255,calc(var(--v-borda)*.34)) 80%,rgba(255,255,255,calc(var(--v-borda)*.85)) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.card::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;background:radial-gradient(18.75rem circle at var(--sx,50%) var(--sy,0%),var(--v-brilho),transparent 72%);opacity:0;transition:opacity .5s var(--e-suave)}
.card:hover::after{opacity:1}
.passo,.lateral-in,.status-env{background:var(--v-sobre)}
.status-env{background:var(--brand-soft)}
.modal,.help-modal,.drawer{background:var(--v-forte);-webkit-backdrop-filter:blur(44px) saturate(180%);backdrop-filter:blur(44px) saturate(180%);border-radius:26px;box-shadow:var(--shadow-2),inset 0 1px 1px var(--v-luz)}
.drawer{border-radius:0}
.modal-h,.drawer-h{background:transparent;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
dialog::backdrop,.ov{background:rgba(5,10,40,.48);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.toast{border-radius:999px;background:rgba(10,20,80,.72);-webkit-backdrop-filter:blur(20px) saturate(170%);backdrop-filter:blur(20px) saturate(170%);box-shadow:inset 0 1px 1px rgba(255,255,255,.22),0 14px 34px rgba(5,10,40,.36)}

/* ---------- topo */
.topo{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--n0) 76%,transparent);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);border-bottom:1px solid var(--n-fino);color:var(--n-tx)}
html[data-contraste="alto"] .topo{background:#002060}
.topo{--k:255,92,168}
.topo .wrap{max-width:1400px}
.topo-in{display:flex;flex-wrap:nowrap;align-items:center;gap:6px 14px;padding-top:9px;padding-bottom:9px}
.marca{gap:9px;min-width:0}
.marca .n-logo-n{width:1.15rem;height:1.19rem;margin:0;flex:none;color:var(--n-tx)}
.n-logo-n{filter:drop-shadow(0 0 5px rgba(var(--k),.6))}
.marca-tx{display:block;min-width:0}
.marca-tx b{white-space:nowrap}
.marca-tx b{font-size:.92rem;font-weight:500;letter-spacing:-.012em}
.marca-tx span{font-size:.78rem;opacity:.82}
.nav{order:2;flex:1 1 auto;min-width:0;background:none;border:0;overflow-x:auto;scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav-in{display:flex;align-items:center;gap:2px;padding:0;max-width:none;margin:0}
.nav-a{gap:6px;padding:6px 12px;border-radius:999px;font-weight:450;font-size:.875rem;opacity:.86;color:#fff;transition:background-color .25s var(--e-suave),opacity .25s}
.nav-a:hover{background:rgba(255,255,255,.1);opacity:1}
.nav-a.on{background:rgba(255,255,255,.14);color:#fff;font-weight:500;opacity:1}
.nav-a svg{width:15px;height:15px}
.nav-user{gap:6px}
.nav-nome{font-size:.8125rem;opacity:.86}
.topo-dir{order:3;display:flex;align-items:center;gap:8px;min-width:0}
.nav-user{display:flex;align-items:center;gap:6px;min-width:0;margin-left:2px}
.nav-user>svg{width:15px;height:15px;flex:none;opacity:.8}
.nav-nome{max-width:13rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topo-logo{order:4;display:inline-grid;place-items:center;flex:none;height:2.6rem;min-width:2.6rem;max-width:8.5rem;padding:.2rem .45rem;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(5,10,40,.28),inset 0 0 0 1px rgba(11,20,68,.1)}
.topo-logo.claro{background:#0a1450;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.topo-logo img{display:block;width:auto;height:2.2rem;max-width:100%;object-fit:contain}
.topo-sigla{font-size:.84rem;font-weight:500;letter-spacing:.02em;color:#0a1450}
.a11y{background:none;gap:1px;padding:0;border-radius:999px}
.a11y button{min-width:1.9rem;height:1.9rem;border-radius:50%;font-size:.8rem;font-weight:500;opacity:.86;transition:background-color .2s,opacity .2s}
.a11y button:hover{background:rgba(255,255,255,.12);opacity:1}
.a11y button[aria-pressed="true"]{background:#fff;color:var(--n0);opacity:1}
.aviso-demo{background:var(--n1);color:var(--n-sub);border:0;font-size:.8125rem}
.aviso-demo b{color:var(--n-tx)}
.aviso-demo svg{width:15px;height:15px;flex:none;margin-top:2px}
.aviso-demo .wrap,.aviso-saas .wrap{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:8px;padding-top:6px;padding-bottom:6px}
.conteudo{padding-top:24px}
.conteudo:has(>.n-faixa){padding-top:0}
.rodape{background:transparent;color:var(--muted);border-top:1px solid var(--line)}
.rodape .mini{color:var(--muted)}
@media (max-width:1520px){.marca-tx span{display:none}.topo-gestao .marca-tx span{display:block}}
@media (max-width:1400px){.nav-nome{max-width:8rem}}
@media (max-width:1280px){.nav-a svg{display:none}.nav-a{padding-inline:.6rem}}
@media (max-width:1120px){.nav-nome,.nav-user>svg{display:none}}
@media (max-width:980px){.topo-in{flex-wrap:wrap}.marca{flex:1 1 0}.nav{order:5;flex:1 1 100%}.nav-a svg{display:inline}.nav-nome,.nav-user>svg{display:inline}}
@media (max-width:760px){.topo{position:relative;top:auto}.topo-gestao .marca-tx span{display:none}.topo-logo{order:2}.topo-dir{order:3;flex:1 1 100%;justify-content:space-between}.nav-nome{max-width:36vw}}

/* ---------- botões: pequenos, sem exagero; no celular a área de toque continua com 44 px */
.btn{position:relative;gap:7px;min-height:2.25rem;padding:.3rem .9rem;border:1px solid transparent;border-radius:999px;background:var(--v-campo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line);font-weight:500;font-size:.875rem;letter-spacing:-.008em;line-height:1.15;transition:background-color .25s var(--e-suave),box-shadow .3s var(--e-suave),transform .2s var(--e-suave),opacity .25s}
.btn:hover{background:var(--v-fundo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line-2)}
.btn:active{transform:scale(.98)}
.btn svg{width:15px;height:15px}
@media (pointer:coarse){.btn:not(.upload)::after{content:"";position:absolute;left:-2px;right:-2px;top:50%;height:44px;transform:translateY(-50%)}}
.btn-sm{min-height:1.875rem;padding:.2rem .7rem;font-size:.8125rem;border-radius:999px}
.btn-lg{min-height:2.5rem;padding:.35rem 1.05rem;font-size:.9rem}
.btn-xl{min-height:2.75rem;font-size:.95rem}
.btn-pri{background:var(--brand);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 1px 2px rgba(11,20,68,.2)}
.btn-pri:hover{background:color-mix(in srgb,var(--brand) 84%,var(--dest));box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 0 4px var(--brand-soft)}
@media (prefers-color-scheme:dark){:root:not([data-contraste="alto"]) .btn-pri,:root:not([data-contraste="alto"]) .btn-pri:hover{color:#0a1450}}
.btn-ok{background:var(--verde-vivo);color:#fff}
.btn-ok:hover{background:var(--verde-vivo);filter:brightness(.94)}
.btn-perigo{color:var(--vermelho);background:transparent;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--vermelho) 40%,transparent)}
.btn-perigo:hover{background:var(--vermelho-soft);box-shadow:inset 0 0 0 1px var(--vermelho)}
.btn-claro{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 1px 1px rgba(255,255,255,.22),inset 0 0 0 1px rgba(255,255,255,.14)}
.btn-claro{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.btn-claro:hover{background:rgba(255,255,255,.18)}
.n-btn-branco{background:#fff;color:#0a1450;box-shadow:0 1px 2px rgba(0,0,0,.3)}
.n-btn-branco:hover{background:#e9eefb;box-shadow:0 0 0 4px rgba(var(--fio),.22)}
.btn-ic{width:2.25rem;height:2.25rem;border:0;border-radius:50%;background:var(--v-campo);box-shadow:inset 0 0 0 1px var(--line)}
.help-btn{position:relative;font-family:var(--f-titulo);font-weight:500;transition:box-shadow .2s var(--e-suave),border-color .2s var(--e-suave),color .2s var(--e-suave),background .2s var(--e-suave)}
.help-btn:hover{transform:none}.help-btn:active{transform:scale(.96)}
.help-sm,.help-md{background:transparent;color:var(--brand-2);border:1px solid color-mix(in srgb,var(--brand-2) 34%,transparent);box-shadow:none}
.help-sm{width:1.3rem;height:1.3rem;font-size:.72rem}.help-md{width:1.55rem;height:1.55rem;font-size:.8rem}
.help-sm .help-q,.help-md .help-q{font-size:1em}
.help-sm:hover,.help-md:hover,.help-sm:focus-visible,.help-md:focus-visible{background:transparent;color:var(--destx);border-color:var(--dest);box-shadow:0 0 0 1px var(--dest),0 0 12px rgba(232,55,143,.5)}
@media (pointer:coarse){.help-sm::after,.help-md::after{content:"";position:absolute;inset:-.7rem}}
.help-lg{min-height:2.25rem;padding:.2rem .85rem .2rem .3rem;font-size:.84rem;background:var(--v-sobre);color:var(--brand);border:1px solid var(--line-2);box-shadow:none}
.help-lg .help-q{width:1.55rem;height:1.55rem;background:var(--brand-soft);color:var(--brand-2);font-size:.82rem;animation:none!important}
.help-lg:hover,.help-lg:focus-visible{background:var(--v-sobre);color:var(--destx);border-color:var(--dest);box-shadow:0 0 0 1px var(--dest),0 0 16px rgba(232,55,143,.4)}
.help-lg:hover .help-q{background:var(--de-s);color:var(--destx)}
.n-faixa .help-lg{background:rgba(255,255,255,.08);color:var(--n-tx);border-color:var(--n-medio)}
.n-faixa .help-lg .help-q{background:rgba(255,255,255,.16);color:#fff}
.n-faixa .help-lg:hover,.n-faixa .help-lg:focus-visible{background:rgba(255,255,255,.12);color:#fff;border-color:#ff5fb0;box-shadow:0 0 0 1px #ff5fb0,0 0 18px rgba(255,95,176,.55)}
.help-badge{background:var(--de-s);color:var(--destx);font-weight:500;font-size:.72rem;padding:.2rem .6rem .2rem .5rem;letter-spacing:0}
.q-inline{background:transparent;color:var(--brand-2);border:1px solid color-mix(in srgb,var(--brand-2) 34%,transparent);font-weight:500}
.dot-amarelo{background:var(--c4)}
.cx-link{background:var(--brand-soft);color:var(--brand-2);box-shadow:none}
.cx-link:hover{background:var(--brand-soft);color:var(--text)}
.prox-ano{border-color:var(--c4)}
.fx-no.on{box-shadow:0 0 0 4px var(--de-s)}
.pf-grid{max-width:none}
.bloco{margin:1.75rem 0}
.n-anel.zero .n-a-v{display:none}
.link-btn{font-weight:500}

/* ---------- campos */
.f-l label,.f-lt{font-weight:500;font-size:.875rem}
.f input,.f select,.f textarea,.in-tab,.dc-val input{border:1px solid var(--line);background:var(--v-campo);border-radius:12px;box-shadow:inset 0 1px 2px rgba(11,20,68,.05);transition:border-color .25s var(--e-suave),box-shadow .25s var(--e-suave)}
.f input,.f select{min-height:2.75rem}
.f input:hover,.f select:hover,.f textarea:hover{border-color:var(--line-2)}
.f input:focus,.f select:focus,.f textarea:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px var(--brand-soft)}
.f select option,.filtros select option{color:#0b1444;background:#fff}
.busca,.filtros select{min-height:2.25rem;border:1px solid var(--line);border-radius:999px;background-color:var(--v-campo);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.875rem}
.busca input{height:2.1rem;font-size:.875rem}
.busca svg{width:15px;height:15px}

/* ---------- blocos comuns */
.pill{gap:5px;font-weight:500;font-size:.78rem;padding:.14rem .6rem}
.pill-rosa{background:var(--de-s);color:var(--destx)}
.pe-pct{align-items:center;gap:.25rem}
.pe-pct span{font-weight:400}
.n-por-ver{padding:.8rem 1rem}
.n-por-ver summary{cursor:pointer;margin-bottom:0;list-style:none}
.n-por-ver summary::-webkit-details-marker{display:none}
.n-por-ver[open] summary{margin-bottom:.75rem}
.n-por-ver .n-bh{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:.6rem 1.2rem}
.n-col-on{background:var(--dest)!important}
.callout{border:0;border-radius:14px;box-shadow:inset 0 0 0 1px var(--line);font-size:.9375rem}
.callout.azul,.callout.verde,.callout.amarelo,.callout.vermelho{box-shadow:none}
.tbl{overflow-x:auto}
.tbl th{background:transparent;font-weight:500}
.tbl td,.tbl th{border-bottom-color:var(--line)}
.vazio{border:0}
.abas{position:relative;gap:2px;padding:3px;border-radius:999px;background:var(--v-campo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line)}
.abas a{padding:.4rem .6rem;border-radius:999px;font-size:.8125rem;font-weight:500;color:var(--muted);transition:color .25s,background-color .25s}
.abas a:hover{color:var(--text)}
.abas a.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--line),0 2px 6px rgba(11,20,68,.12)}
.abas button{border-radius:999px;font-weight:500}
.stepper button,.stepper a{border:0;background:var(--v-campo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line);font-weight:500;font-size:.875rem;color:var(--muted)}
.stepper button.on,.stepper a.on{background:var(--de-s);color:var(--destx);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--dest) 44%,transparent)}
.stepper button.on .st-n,.stepper a.on .st-n{background:var(--dest);color:#fff}
.st-n{width:1.75rem;height:1.75rem}
.barra{height:.5rem;background:var(--g-trilho)}
.barra span{background:var(--g-serie)}
.barra-din span{background:var(--f-ok)}
.total-bar{border:0;border-radius:18px}
.total-bar b{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.025em}
.doc-card{gap:8px}
.dc-ok,.dc-semdata,.dc-vence,.dc-vencido{border:0}
.dc-vencido{box-shadow:var(--shadow),inset 0 0 0 1.5px color-mix(in srgb,var(--vermelho) 44%,transparent)}
.dc-vence,.dc-semdata{box-shadow:var(--shadow),inset 0 0 0 1.5px color-mix(in srgb,var(--c4) 50%,transparent)}
.cont-i{border:0;border-radius:14px}
.cont-n{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.03em}
.cont-t{font-weight:500}
.cont-i.st-bloqueio,.cont-i.st-alerta,.cont-i.st-ok{border:0}
.sem-msg{font-weight:500}
.sem-r{border-left:0}
.pe-c{border:0;border-radius:14px}
.pe-c b{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.03em}
.pe-r{font-weight:500}
.pe-d b{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.025em;font-size:1.25rem}
.pe-d span{font-weight:400}
.pe-marcos li{border-left:0;padding-left:0;gap:5px}
.pe-marcos li b{font-weight:500}
.ec-valor b,.pub-valor{font-family:var(--f-titulo);font-weight:400;letter-spacing:-.032em;color:var(--text)}
.perfil{border:0;background:var(--v-campo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line);border-radius:16px;padding:.7rem;transition:box-shadow .25s,background-color .25s}
.perfil:hover{background:var(--v-fundo);box-shadow:inset 0 0 0 1px var(--line-2)}
.perfil b{font-weight:500}
.perfil .mini{line-height:1.3}
.perfil-ic{width:2.25rem;height:2.25rem}

/* a linha do andamento: ícone de cada etapa, feitas em azul e a atual em rosa */
.linha-t li::before{height:1px;top:.95rem;background:var(--line-2)}
.lt-b{width:1.9rem;height:1.9rem;border-width:1px;border-color:var(--line-2);background:var(--surface)}
.lt-feito .lt-b{background:var(--g-serie);border-color:var(--g-serie);color:var(--surface)}
.lt-feito::before,.lt-agora::before{background:var(--g-serie) !important}
.lt-agora .lt-b{background:var(--dest);border-color:var(--dest);color:#fff;box-shadow:0 0 0 4px var(--de-s)}
.lt-agora .lt-t{font-weight:500}
.lt-t{font-size:.72rem}

/* ---------- fila */
.kpis{gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr))}
.kpi{border:0;padding:.9rem 1rem;gap:2px}
.kpi-n{font-family:var(--f-titulo);font-weight:400;font-size:clamp(1.7rem,2.6vw,2.1rem);letter-spacing:-.035em}
.kpi-t{font-size:.8125rem;line-height:1.3}
.kpi.n-rosa{background:var(--rosa-fundo);color:#fff}
.kpi.n-rosa .kpi-t{color:rgba(255,255,255,.92)}
.etapas-chips{gap:5px}
.chip-et{border:0;background:var(--v-campo);box-shadow:inset 0 0 0 1px var(--line);padding:.28rem .7rem;font-size:.8125rem;font-weight:450;text-decoration:none;color:var(--text)}
.chip-et b{background:var(--cinza-soft);font-weight:500}
.chip-et.on{background:var(--de-s);color:var(--destx);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--dest) 44%,transparent)}
.lista-fila{gap:0;overflow:hidden}
.fila-i{grid-template-columns:auto minmax(0,1.6fr) auto minmax(0,1.1fr) 7.5rem;gap:6px 14px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:.65rem .9rem;text-decoration:none;color:var(--text);transition:background-color .25s var(--e-suave)}
.fila-i:last-child{border-bottom:0}
.fila-i:hover{background:var(--cinza-soft)}
.fila-i.plat{border-left:0}
.fi-a b{font-weight:500;letter-spacing:-.01em}
.fi-v{font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.fi-e{justify-content:flex-start;align-items:center;gap:4px 6px;font-size:.84rem}
.fi-o{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.fi-d{font-size:.78rem;color:var(--muted)}
.fi-d.atr{color:var(--amarelo);font-weight:500}
@media (max-width:860px){.fila-i{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"i a v" "i e e" "i s s";padding-block:.75rem}.fila-i>.n-ic{grid-area:i;align-self:start}.fi-a{grid-area:a}.fi-v{grid-area:v}.fi-e{grid-area:e}.fi-o{grid-area:s;flex-direction:row;align-items:center;gap:10px}}
.cards-pub{grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.pub{gap:8px}
.pub-valor{font-size:1.6rem;line-height:1.05}
.pub-etapa{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--muted)}
.pub-etapa .n-se{flex:1;max-width:none}

/* ---------- início e transparência */
.n-faixa{position:relative;isolation:isolate;background:var(--n0);color:var(--n-tx);overflow:hidden}
.n-faixa-fios{position:absolute;left:0;right:0;bottom:0;height:44%;z-index:-1;opacity:.85}
.n-faixa-fios canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.n-faixa-in{padding-top:clamp(1.9rem,5.5vh,3.5rem);padding-bottom:clamp(7rem,17vh,10rem)}
.n-faixa .eyebrow{color:var(--n-sub)}
.n-faixa h1{margin-top:.4rem;font-size:clamp(2.1rem,5vw,3.9rem);line-height:1.02;letter-spacing:-.036em;color:var(--n-tx)}
.n-faixa-s{margin-top:.9rem;max-width:52ch;font-size:clamp(.97rem,1.3vw,1.125rem);color:var(--n-sub);text-wrap:balance}
.n-faixa-ac{display:flex;flex-wrap:wrap;gap:8px;margin-top:1.25rem}
.ln{display:block;overflow:hidden;padding:.05em .04em .13em;margin:0 -.04em -.13em}
.ln-mi{display:block;will-change:transform}
.n-sobe{position:relative;z-index:2;margin-top:clamp(-6.75rem,-13vh,-5.25rem)}
.n-sobe .card{background:var(--v-sobre)}
.n-sobe .card.n-rosa{background:var(--rosa-fundo)}
.n-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.n-s3{grid-column:span 3}.n-s4{grid-column:span 4}.n-s5{grid-column:span 5}.n-s6{grid-column:span 6}.n-s7{grid-column:span 7}.n-s8{grid-column:span 8}.n-s12{grid-column:span 12}
.n-graficos{margin:.8rem 0 1rem}
.n-bento>.card{padding:1rem;min-width:0}
.n-rosa{background:var(--rosa-fundo);color:#fff;--text:#fff;--muted:rgba(255,255,255,.9);--line:rgba(255,255,255,.22);--g-trilho:rgba(255,255,255,.26);--v-luz:rgba(255,255,255,.34)}
.n-rosa .n-ic{background:rgba(255,255,255,.2);color:#fff}
.n-cab{display:flex;align-items:center;gap:9px;margin-bottom:.75rem;min-width:0}
.n-cab h2,.n-cab h3{margin:0;font-family:var(--f-texto);font-size:.875rem;font-weight:500;letter-spacing:-.008em;line-height:1.25}
.n-cab small{margin-left:auto;font-size:.78rem;color:var(--muted);white-space:nowrap}
.n-ic{display:grid;place-items:center;width:1.75rem;height:1.75rem;flex:none;border-radius:9px;background:var(--brand-soft);color:var(--brand-2)}
.n-ic svg{width:1rem;height:1rem}
.n-ic-g{width:2.5rem;height:2.5rem;border-radius:12px}.n-ic-g svg{width:1.3rem;height:1.3rem}
.n-ic-r{background:var(--de-s);color:var(--destx)}.n-ic-ok{background:var(--verde-soft);color:var(--verde)}.n-ic-at{background:var(--amarelo-soft);color:var(--amarelo)}.n-ic-er{background:var(--vermelho-soft);color:var(--vermelho)}
.n-fig{display:block;font-family:var(--f-titulo);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1.05;letter-spacing:-.035em}
.n-fig-s{display:block;margin-top:.2rem;font-size:.84rem;line-height:1.3;color:var(--muted)}
.cf-neutro{--c:var(--f-neutro)}.cf1{--c:var(--f1)}.cf2{--c:var(--f2)}.cf3{--c:var(--f3)}.cc3{--c:var(--c3)}.cc4{--c:var(--c4)}.cerro{--c:var(--erro)}.cf-ok{--c:var(--f-ok)}
.n-emp{display:flex;gap:2px;height:.75rem;margin-top:.85rem;transform-origin:0 50%}
.n-emp i{display:block;min-width:3px;height:100%;background:var(--c)}
.n-emp i:first-child{border-radius:4px 0 0 4px}.n-emp i:last-child{border-radius:0 4px 4px 0}
.n-leg{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin:.7rem 0 0;padding:0;list-style:none;font-size:.78rem;line-height:1.25;color:var(--muted)}
.n-leg li{display:inline-flex;align-items:center;gap:6px}
.n-leg i{width:.56rem;height:.56rem;border-radius:3px;background:var(--c);flex:none}
.n-leg b{font-weight:500;color:var(--text);font-variant-numeric:tabular-nums}
.n-bh{display:flex;flex-direction:column;gap:.6rem}
.n-bh-l{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .6rem;text-decoration:none;color:inherit}
.n-bh-t{font-size:.8125rem;line-height:1.25;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .2s}
.n-bh-v{font-size:.8125rem;font-weight:500;line-height:1.25;font-variant-numeric:tabular-nums}
.n-bh-b{grid-column:1/-1;display:block;height:.5rem;border-radius:4px;background:var(--g-trilho);overflow:hidden}
.n-bh-b i{display:block;height:100%;border-radius:0 4px 4px 0;background:var(--g-serie);transform-origin:0 50%}
a.n-bh-l:hover .n-bh-t{color:var(--text)}
.n-bh-l.on .n-bh-b i{background:var(--dest)}
.n-bh-l.on .n-bh-t{color:var(--text);font-weight:500}
.n-cols{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));align-items:end;gap:4px;container-type:inline-size}
.n-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;min-width:0;border-radius:8px;text-decoration:none;color:inherit;transition:background-color .25s var(--e-suave)}
a.n-col:hover{background:var(--cinza-soft)}
.n-col-n{font-size:.8125rem;font-weight:500;line-height:1;font-variant-numeric:tabular-nums}
.n-col-b{display:block;width:min(1.5rem,62%);min-height:3px;border-radius:4px 4px 0 0;background:var(--g-serie);transform-origin:50% 100%}
.n-col.on .n-col-b{background:var(--dest)}
.n-col-p{display:flex;flex-direction:column;align-items:center;gap:3px;width:100%;padding-top:6px;border-top:1px solid var(--line-2);color:var(--muted)}
.n-col-p span{font-size:.72rem;line-height:1.1;white-space:nowrap}
.n-col.on .n-col-p,a.n-col:hover .n-col-p{color:var(--text)}
@container (max-width:470px){.n-col-p span{display:none}}
.n-anel{position:relative;display:grid;place-items:center;width:var(--t,4.5rem);height:var(--t,4.5rem);flex:none}
.n-anel svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.n-anel circle{fill:none;stroke-width:3.2;stroke-linecap:round}
.n-a-t{stroke:var(--g-trilho)}.n-a-v{stroke:var(--dest)}
.n-anel.ok .n-a-v{stroke:var(--f-ok)}
.n-anel b{position:relative;font-family:var(--f-titulo);font-weight:400;font-size:calc(var(--t,4.5rem)*.27);letter-spacing:-.03em}
.n-med{display:block;height:.4rem;border-radius:3px;background:var(--g-trilho);overflow:hidden}
.n-med i{display:block;height:100%;border-radius:0 3px 3px 0;background:var(--g-serie);transform-origin:0 50%}
.n-med i.ok{background:var(--f-ok)}.n-med i.at{background:var(--c4)}.n-med i.er{background:var(--erro)}.n-med i.ro{background:var(--dest)}
.n-se{display:flex;gap:2px;width:100%;max-width:9.5rem}
.n-se i{flex:1;height:.375rem;border-radius:2px;background:var(--g-trilho)}
.n-se i.f{background:var(--f2)}.n-se i.a{background:var(--dest)}.n-se.lib i{background:var(--f-ok)}
.n-gr{display:grid;grid-template-columns:repeat(auto-fill,minmax(.8rem,1rem));gap:4px;margin:.5rem 0}
.n-gr i{display:block;aspect-ratio:1;border-radius:4px;background:var(--c,var(--g-trilho))}
.n-linha{display:block;width:100%;height:auto;overflow:visible}
.n-linha text{font:400 10px var(--f-texto);fill:var(--muted)}
.n-linha .gg{stroke:var(--line);stroke-width:1}
.n-linha .gl{fill:none;stroke:var(--g-serie);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.n-linha .ga{fill:var(--g-serie);opacity:.1}
.n-linha .gp{fill:var(--dest);stroke:var(--surface);stroke-width:2}
.n-linha .xh{stroke:var(--line-2);stroke-width:1;opacity:0}
.n-linha .hit{fill:transparent}
.n-linha g:hover .xh{opacity:1}
.n-dg{position:fixed;z-index:90;left:0;top:0;max-width:15rem;padding:.5rem .75rem;border-radius:12px;background:rgba(10,20,80,.72);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);color:#fff;font-size:.78rem;line-height:1.3;box-shadow:inset 0 1px 1px rgba(255,255,255,.22),inset 0 0 0 1px rgba(255,255,255,.14),0 12px 30px rgba(5,10,40,.32);pointer-events:none;opacity:0;transition:opacity .18s var(--e-suave)}
.n-dg.on{opacity:1}
.n-dg b{display:block;font-weight:500;font-variant-numeric:tabular-nums}
.n-dg span{color:rgba(255,255,255,.84)}
.escolhas{gap:12px}
.escolha{gap:.7rem;padding:1.1rem;transition:transform .55s var(--e-expo),box-shadow .4s var(--e-suave)}
.escolha:hover{transform:translateY(-4px) scale(1.012);box-shadow:var(--shadow-2),inset 0 1px 1px var(--v-luz)}
.escolha-ic{width:2.5rem;height:2.5rem;border-radius:12px}
.escolha-ic svg{width:1.3rem;height:1.3rem}
.escolha-cab{display:flex;align-items:center;gap:.7rem}
.escolha-t{font-family:var(--f-titulo);font-weight:400;font-size:1.35rem;letter-spacing:-.026em;line-height:1.08}
.escolha-d{font-size:.9rem;line-height:1.35}
.escolha-cta{font-weight:500;font-size:.875rem}
.escolha-v{margin-top:auto;min-height:3.5rem;display:flex;flex-direction:column;justify-content:flex-end}
.n-minipasso{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.n-minipasso span{display:flex;flex-direction:column;align-items:center;gap:4px;padding:.5rem .1rem .4rem;border-radius:9px;background:var(--cinza-soft);font-size:.7rem;line-height:1.1;color:var(--muted);min-width:0}
.n-minipasso svg{width:1rem;height:1rem}
.n-minicols{display:flex;align-items:flex-end;gap:3px;height:3.5rem}
.n-minicols i{flex:1;border-radius:3px 3px 0 0;background:var(--g-serie);min-height:3px;transform-origin:50% 100%}
.n-passos{position:relative;display:flex;justify-content:space-between;gap:4px;margin-top:.4rem}
.n-passos::before{content:"";position:absolute;left:1.5rem;right:1.5rem;top:1.5rem;height:2px;border-radius:2px;background:var(--g-trilho)}
.n-passos::after{content:"";position:absolute;left:1.5rem;top:1.5rem;height:2px;border-radius:2px;width:calc((100% - 3rem)*var(--p,0));background:var(--dest);transition:width .9s var(--e-expo)}
.n-passo{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1 1 0;min-width:0;padding:0;border:0;background:none;font:inherit;color:var(--muted);cursor:pointer;text-align:center}
.n-passo>span:first-child{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--brand-2);transition:background-color .45s var(--e-suave),color .45s,transform .6s var(--e-expo),box-shadow .45s}
.n-passo svg{width:1.3rem;height:1.3rem}
.n-passo small{font-size:.78rem;line-height:1.2;max-width:12ch}
.n-passo.foi>span:first-child{background:var(--g-serie);color:var(--surface);box-shadow:none}
.n-passo.on>span:first-child{background:var(--dest);color:#fff;transform:scale(1.1);box-shadow:0 8px 22px color-mix(in srgb,var(--dest) 34%,transparent)}
.n-passo.on small{color:var(--text);font-weight:500}
.n-passo-d{margin-top:.9rem;min-height:1.5em;font-size:clamp(.97rem,1.4vw,1.125rem);line-height:1.35;text-align:center}
.tres-i{color:var(--brand-2)}
.tut-faixa{padding:1rem 1.1rem;margin-top:0;border:0}
.tf-ic{width:2.5rem;height:2.5rem;border-radius:12px;background:var(--de-s);color:var(--destx)}
.tf-ic svg{width:1.3rem;height:1.3rem}
.tf-tx b{font-size:1rem}
.tut-card:hover,.un-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2),inset 0 1px 1px var(--v-luz)}
.tut-card,.un-card{border:0;transition:transform .5s var(--e-expo),box-shadow .4s var(--e-suave)}
@media (max-width:980px){.n-s3,.n-s4,.n-s5,.n-s6,.n-s7,.n-s8{grid-column:span 12}.n-s3.n-meio{grid-column:span 6}}
@media (max-width:640px){.n-col-p span{display:none}.n-passo small{display:none}.n-passo>span:first-child{width:2.4rem;height:2.4rem}.n-passos::before,.n-passos::after{left:1.2rem;top:1.2rem}.n-passos::before{right:1.2rem}.n-passos::after{width:calc((100% - 2.4rem)*var(--p,0))}}

/* ---------- login: uma estrutura só; a cor, o texto e a cena mudam por perfil */
.tela-entrar .conteudo{padding:0;min-height:0}
.entrar{--k:255,92,168;--kfio:176,196,255;--kb:#0a1450;--kb2:#16237a;--kbtn:#cf2679;--ktx:#b81f6c;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);min-height:100vh;min-height:100svh;background:radial-gradient(90% 70% at 22% 100%,var(--kb2),transparent 72%),var(--kb);transition:background-color .7s var(--e-suave)}
.entrar[data-p="servidor"]{--k:57,214,230;--kfio:150,225,240;--kb:#052a4a;--kb2:#0a4a6e;--kbtn:#0a7d8c;--ktx:#0a6876}
.entrar[data-p="gestor"]{--k:255,194,77;--kfio:255,222,165;--kb:#1b1442;--kb2:#33246e;--kbtn:#9a6100;--ktx:#845200}
@media (prefers-color-scheme:dark){:root:not([data-contraste="alto"]) .entrar{--ktx:rgb(var(--k))}}
.entrar-fios{position:fixed;left:0;right:0;bottom:0;height:58vh;z-index:-1;--fio:var(--kfio);--faisca:var(--k)}
.entrar-fios canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.entrar-esq{--g-serie:rgb(var(--kfio));--dest:rgb(var(--k));--destx:rgb(var(--k));--de-s:rgba(var(--k),.2);--g-trilho:rgba(255,255,255,.16);--text:var(--n-tx);--muted:var(--n-sub);--line:var(--n-fino);--line-2:var(--n-medio);--cinza-soft:rgba(255,255,255,.08);--f-ok:#4fd197;--c4:#f0b63f;--erro:#ff8a7c;--verde:#4fd197;--amarelo:#f3bf5a;--vermelho:#ff8a7c;--verde-soft:rgba(79,209,151,.15);--brand-soft:rgba(169,187,255,.15);--brand-2:#a9bbff;--surface:#0f1a55;position:sticky;top:0;display:flex;flex-direction:column;gap:clamp(.9rem,2.4vh,1.6rem);height:100vh;height:100svh;min-width:0;padding:clamp(1.1rem,3vh,1.9rem) clamp(1.25rem,3.4vw,3.25rem) clamp(.9rem,2.6vh,1.6rem);color:var(--n-tx);overflow:hidden}
.entrar-topo{display:flex;align-items:center;justify-content:space-between;gap:12px}
.n-logo{display:inline-block;white-space:nowrap;line-height:1;font-family:var(--f-titulo);font-size:1.3125rem;font-weight:500;letter-spacing:-.025em;--faisca:var(--k);color:var(--n-tx)}
.n-logo-n{display:inline-block;width:.7em;height:.72em;margin-right:.06em;vertical-align:baseline;overflow:visible;filter:drop-shadow(0 0 5px rgba(var(--k),.6))}
.n-logo-n path{fill:none;stroke:currentColor;stroke-width:8.8;stroke-linecap:round}
.n-logo-n .n-d{stroke:rgb(var(--k))}
.n-chip{display:inline-flex;align-items:center;gap:5px;height:1.5rem;padding:0 .56rem;border-radius:99px;font-size:.78rem;font-weight:500;white-space:nowrap;background:var(--cinza-soft);color:var(--muted)}
.n-chip svg{width:.8rem;height:.8rem}
.entrar-topo .n-chip{background:rgba(var(--k),.18);color:rgb(var(--k));box-shadow:inset 0 0 0 1px rgba(var(--k),.34);transition:background-color .5s,color .5s}
.entrar-cena{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;gap:clamp(.9rem,2.4vh,1.6rem)}
.entrar-meio{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;min-height:0}
.entrar-meio h2{font-family:var(--f-titulo);font-weight:400;font-size:clamp(2rem,4.1vw,3.6rem);line-height:1.03;letter-spacing:-.036em;color:var(--n-tx)}
.entrar-sub{margin-top:.9rem;max-width:40ch;font-size:clamp(.97rem,1.25vw,1.125rem);line-height:1.4;color:var(--n-sub);text-wrap:balance}
.entrar-fila{margin-left:calc(clamp(1.25rem,3.4vw,3.25rem)*-1);margin-right:calc(clamp(1.25rem,3.4vw,3.25rem)*-1);overflow:hidden}
.fila-in{display:flex;width:max-content;padding-block:4px;animation:n-fila 54s linear infinite}
.entrar-fila:hover .fila-in{animation-play-state:paused}
@keyframes n-fila{to{transform:translateX(-50%)}}
.fc.card{flex:none;width:14rem;min-height:7.6rem;margin-right:12px;padding:.8rem;--v-blur:20px;--v-sat:160%;background:rgba(255,255,255,.11);--v-luz:rgba(255,255,255,.2);--v-borda:.44;box-shadow:0 14px 34px rgba(2,5,30,.3),inset 0 1px 1px var(--v-luz);display:flex;flex-direction:column;gap:.5rem;font-size:.8125rem;line-height:1.25;color:var(--n-tx)}
.fc .n-cab{margin-bottom:0}
.fc .n-fig{font-size:1.7rem}
.fc small{font-size:.75rem;color:var(--n-sub)}
.fc .n-linha-al{display:flex;gap:8px;align-items:flex-start;padding:.2rem 0;font-size:.78rem}
.fc .n-linha-al svg{width:.9rem;height:.9rem;color:rgb(var(--k));flex:none;margin-top:1px}
.entrar-rodape{position:relative;margin:0;font-size:.78rem;color:var(--n-tx);text-shadow:0 1px 8px rgba(0,0,0,.7)}
.entrar-dir{position:relative;z-index:2;display:flex;min-width:0;padding:14px;padding-left:0}
.entrar-form{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 28px);min-height:calc(100svh - 28px);padding:clamp(1.4rem,4vh,2.75rem) clamp(1.1rem,3vw,2.75rem);border-radius:28px;background:var(--v-janela);-webkit-backdrop-filter:blur(34px) saturate(170%);backdrop-filter:blur(34px) saturate(170%);box-shadow:0 30px 70px rgba(2,5,30,.4),inset 0 1px 1px var(--v-luz);color:var(--text)}
.ef{width:100%;max-width:25rem;display:flex;flex-direction:column;gap:.9rem}
.ef-topo{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.ef-gestao{display:inline-flex;align-items:center;gap:5px;margin-right:auto;font-size:.8125rem;font-weight:500;color:var(--muted)}
.ef-topo .a11y button{color:var(--muted)}
.ef-topo .a11y button:hover{background:var(--cinza-soft);color:var(--text)}
.ef-topo .a11y button[aria-pressed="true"]{background:var(--brand);color:#fff}
.ef-pe{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .9rem;margin-top:.4rem;font-size:.78rem;color:var(--muted)}
.ef-pe a{color:inherit;text-decoration:none}
.ef-pe a:hover{color:var(--text);text-decoration:underline}
.entrar-form .aviso-demo,.entrar-form .aviso-saas{border-radius:14px;background:var(--amarelo-soft);color:var(--text);border:0}
.entrar-form .aviso-demo b{color:var(--text)}
.entrar-form .wrap{max-width:none;padding:0;margin:0;width:100%}
.entrar-form .aviso-demo .wrap,.entrar-form .aviso-saas .wrap{padding:.5rem .7rem;flex-wrap:nowrap}
.entrar-form .card.login,.entrar-form .card{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;padding:0;margin:0;border-radius:0}
.entrar-form .card::before,.entrar-form .card::after{display:none}
.login-h{align-items:flex-start;gap:.75rem;margin-bottom:.9rem}
.login-h h1{font-size:clamp(1.5rem,2.3vw,1.9rem);letter-spacing:-.03em;line-height:1.08;margin:0}
.login-h p{margin:.25rem 0 0;font-size:.875rem;line-height:1.35}
.login-ic,.login-ic.verde{width:2.6rem;height:2.6rem;border-radius:12px;background:rgba(var(--k),.16);color:var(--ktx);transition:background-color .5s,color .5s}
.login-ic svg{width:1.35rem;height:1.35rem}
.entrar .abas{margin-bottom:.9rem}
.entrar .abas a{padding:.4rem .3rem}
.entrar .pilha{gap:.75rem}
.entrar .login-srv{max-width:none}
.entrar .btn-pri{background:var(--kbtn);color:#fff;min-height:2.75rem;font-size:.9375rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 8px 22px rgba(var(--k),.28);transition:background-color .5s,box-shadow .3s var(--e-suave),transform .2s var(--e-suave)}
.entrar .btn-pri:hover{background:var(--kbtn);box-shadow:inset 0 1px 0 rgba(255,255,255,.26),0 0 0 4px rgba(var(--k),.24),0 10px 26px rgba(var(--k),.34)}
.entrar a:not(.btn){color:var(--ktx)}
.entrar .f input:focus,.entrar .f select:focus,.entrar .f textarea:focus{border-color:var(--kbtn);box-shadow:0 0 0 3px rgba(var(--k),.26)}
.entrar .perfis{grid-template-columns:minmax(0,1fr);gap:6px}
.entrar .perfis form,.entrar .perfil{width:100%}
.entrar .h-sub{margin:1rem 0 .5rem;font-family:var(--f-texto);font-size:.875rem;font-weight:500;letter-spacing:0}
.entrar .perfil-ic{background:rgba(var(--k),.16);color:var(--ktx)}
.senha-c{position:relative;display:block}
.senha-c input{padding-right:2.75rem}
.olhar{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);width:2rem;height:2rem;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:none;color:var(--muted);cursor:pointer;transition:background-color .2s,color .2s}
.olhar:hover,.olhar[aria-pressed="true"]{background:var(--cinza-soft);color:var(--text)}
.n-seg{position:relative;display:flex;margin-bottom:.9rem;padding:3px;border-radius:999px;background:var(--v-campo);box-shadow:inset 0 1px 1px var(--v-luz),inset 0 0 0 1px var(--line)}
.n-seg-i{position:absolute;top:3px;bottom:3px;left:0;width:var(--w,0);transform:translateX(var(--x,0));border-radius:999px;background:var(--kbtn,var(--brand));box-shadow:0 3px 10px rgba(var(--k,31,51,168),.34);transition:transform .55s var(--e-expo),width .55s var(--e-expo),background-color .5s}
.n-seg button{position:relative;z-index:1;flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:1.9rem;padding:0 .5rem;border:0;border-radius:999px;background:none;font-size:.84rem;font-weight:450;color:var(--muted);white-space:nowrap;cursor:pointer;transition:color .25s var(--e-suave)}
.n-seg button svg{width:.9rem;height:.9rem}
.n-seg button[aria-pressed="true"]{color:#fff;font-weight:500}
@media (max-width:980px){
  .entrar{grid-template-columns:minmax(0,1fr)}
  .entrar-fios{position:absolute;top:0;bottom:auto;height:21rem;-webkit-mask:linear-gradient(transparent,#000 40%,#000 70%,transparent);mask:linear-gradient(transparent,#000 40%,#000 70%,transparent)}
  .entrar-esq{position:relative;height:auto;padding-bottom:.6rem;gap:.8rem}
  .entrar-meio{padding-block:1rem .4rem}
  .entrar-fila,.entrar-rodape{display:none}
  .entrar-dir{padding:0 10px 10px}
  .entrar-form{min-height:0;border-radius:24px}
}

.paper-logo{text-align:center;margin-bottom:1rem}
.paper-logo img{height:3.2rem;width:auto;display:inline-block;vertical-align:middle}
.paper-logo .placa{display:inline-block;padding:.3rem .65rem;border-radius:8px;background:#0a1450;-webkit-print-color-adjust:exact;print-color-adjust:exact}

/* ---------- janela de ajuda: figura à esquerda, explicação à direita (a mesma estrutura das telas de entrada) */
@property --hj-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
dialog.help-dlg{max-width:min(920px,94vw)}
dialog.help-dlg::backdrop{background:rgba(6,10,44,.58);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
dialog .help-modal{display:flex;padding:0;width:100%;max-height:min(88vh,44rem);overflow:hidden;border-radius:24px}
.hj-palco{flex:0 0 42%;margin:0;display:flex;flex-direction:column;justify-content:center;gap:1.1rem;padding:2.2rem 2rem;color:var(--n-tx);background:radial-gradient(90% 70% at 15% 0,rgba(90,110,255,.34),transparent 70%),radial-gradient(70% 55% at 100% 100%,rgba(232,55,143,.2),transparent 70%),var(--n0);min-width:0}
.hj-palco figcaption{display:flex;align-items:baseline;gap:.55rem;font-size:.86rem;line-height:1.4;color:var(--n-sub);padding-inline:.2rem}
.hj-palco figcaption i{flex:none;width:.45rem;height:.45rem;border-radius:50%;background:#ff5fb0;box-shadow:0 0 10px #ff5fb0;transform:translateY(-.08rem)}
.hj-texto{flex:1;min-width:0;overflow:auto;padding:1.2rem 1.6rem 1.3rem;overscroll-behavior:contain}
.hj-texto .help-top{margin-bottom:.5rem}
.hj-texto h2{font-size:1.45rem;margin:0 0 .45rem}
.hj-texto h2:focus,.hj-texto h2:focus-visible{outline:0;box-shadow:none}
.hj-lead{margin:0 0 .9rem;font-size:1rem;line-height:1.5;color:var(--text)}
.help-sec{margin:.9rem 0}.help-sec h3{font-family:var(--f-texto);font-size:.74rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--muted);margin-bottom:.3rem}
.help-sec p{font-size:.92rem;line-height:1.5}
.help-passos{position:relative}
.help-passos li{padding:.25rem 0 .55rem 2.05rem;min-height:0;font-size:.92rem;line-height:1.45}
.help-passos li::before{width:1.4rem;height:1.4rem;top:.22rem;background:var(--brand-soft);color:var(--brand-2);font:500 .72rem/1.4rem var(--f-titulo);text-align:center;display:block}
.help-passos li:not(:last-child)::after{content:"";position:absolute;left:.69rem;top:1.7rem;bottom:-.1rem;width:1px;background:var(--line-2)}
.help-opcoes li{background:var(--v-sobre);border-color:var(--line);border-radius:14px}
.help-opcoes li b{font-weight:600;font-size:.9rem}.help-opcoes li span{font-size:.84rem}
.hj-dica{display:flex;gap:.55rem;align-items:flex-start;margin:.9rem 0;padding:.65rem .8rem;border-radius:14px;background:var(--brand-soft);font-size:.88rem;line-height:1.45}
.hj-dica svg{flex:none;margin-top:.12rem;color:var(--brand-2)}
.help-base{font-size:.76rem;margin-top:.8rem}
.help-foot{gap:.5rem;margin-top:1rem;position:sticky;bottom:-1.3rem;padding-block:.6rem .2rem}

.hj-papel{position:relative;background:#fff;color:#0b1444;border-radius:14px;box-shadow:0 18px 44px rgba(3,6,40,.5);animation:hj-papel .6s var(--e-expo) both}
.hj-pilha{position:relative}
.hj-pilha::before,.hj-pilha::after{content:"";position:absolute;inset:.1rem;border-radius:14px;background:rgba(255,255,255,.2);transform:rotate(3deg) translateY(.35rem)}
.hj-pilha::after{background:rgba(255,255,255,.1);transform:rotate(6deg) translateY(.6rem)}
.hj-pilha .hj-papel{z-index:1}
.hj-cab{display:flex;flex-direction:column;gap:.05rem;padding:.7rem 1rem;border-radius:14px 14px 0 0;background:var(--hj-c,#14237a);color:#fff}
.hj-cab b{font:500 .8rem/1.25 var(--f-titulo);letter-spacing:.015em}.hj-cab small{font-size:.68rem;opacity:.82}
.hj-azul{--hj-c:#14237a}.hj-verde{--hj-c:#0f7f4d}.hj-laranja{--hj-c:#a8501a}.hj-cinza{--hj-c:#505a84}
.hj-linhas{padding:.35rem 0 .7rem}
.hj-l{position:relative;display:flex;flex-direction:column;gap:.05rem;padding:.42rem 1rem;border-bottom:1px solid rgba(11,20,68,.08);animation:hj-apaga .5s .75s ease forwards}
.hj-l:last-child{border-bottom:0}
.hj-l small{font-size:.68rem;color:#505a84}.hj-l b{display:flex;align-items:center;gap:.4rem;font-weight:600;font-size:.84rem;line-height:1.3}
.hj-st{flex:none;width:.5rem;height:.5rem;border-radius:50%}
.hj-st-ok{background:#16a067}.hj-st-falta{background:#8d94b3}.hj-st-at{background:#d68a00}.hj-st-erro{background:#c9281c}
/* a linha importante sai do papel: maior, por cima, com um feixe de luz correndo pelo contorno */
.hj-l.on{z-index:2;margin-inline:-.6rem;padding-inline:1.15rem;border:0;border-radius:12px;background:#fff;animation:hj-salta .6s .7s var(--e-expo) both;box-shadow:0 0 0 1.5px #ff3d9f,0 0 16px rgba(255,61,159,.75),0 0 44px rgba(255,61,159,.35),0 12px 26px rgba(3,6,40,.4)}
.hj-l.on::after{content:"";position:absolute;inset:-2px;border-radius:14px;padding:2px;background:conic-gradient(from var(--hj-ang),transparent 0 62%,#ffb3dc 78%,#fff 84%,#ffb3dc 90%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:hj-feixe 3.2s 1.2s linear infinite;pointer-events:none}
.hj-selo{position:absolute;right:.8rem;bottom:.8rem;z-index:1;padding:.1rem .45rem;border:1.5px solid var(--hj-c);border-radius:5px;color:var(--hj-c);font:600 .66rem/1.5 var(--f-titulo);transform:rotate(-10deg);background:rgba(255,255,255,.86)}
@keyframes hj-papel{from{opacity:0;transform:translateY(.8rem)}}
@keyframes hj-apaga{to{opacity:.55}}
@keyframes hj-salta{0%{transform:none;box-shadow:0 0 0 0 rgba(255,61,159,0)}100%{transform:scale(1.05)}}
@keyframes hj-feixe{to{--hj-ang:360deg}}
.hj-l.on,.hj-l.on *{opacity:1}

.hj-fluxo{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;position:relative}
.hj-fluxo li{position:relative;display:flex;align-items:center;gap:.65rem;font-size:.86rem;line-height:1.25;color:var(--n-sub);animation:hj-et-tx .4s calc(var(--i)*.4s + .2s) ease both}
.hj-et-ic{position:relative;flex:none;width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);color:#dfe5ff;box-shadow:inset 0 0 0 1px var(--n-fino)}
.hj-fluxo li:not(:last-child) .hj-et-ic::before{content:"";position:absolute;left:50%;top:100%;width:1px;height:.55rem;background:var(--n-medio)}
.hj-et-ic::after{content:"";position:absolute;inset:0;border-radius:50%;opacity:0;box-shadow:0 0 0 1.5px #ff3d9f,0 0 16px rgba(255,61,159,.85);animation:hj-et-luz .8s calc(var(--i)*.4s + .2s) ease}
.hj-fluxo li:last-child{color:#fff;font-weight:500}
.hj-fluxo li:last-child .hj-et-ic{background:rgba(255,61,159,.2);color:#fff}
.hj-fluxo li:last-child .hj-et-ic::after{animation-fill-mode:forwards;animation-name:hj-et-fica}
@keyframes hj-et-tx{from{opacity:.25;transform:translateX(-.25rem)}}
@keyframes hj-et-luz{0%{opacity:0}35%{opacity:1}100%{opacity:0}}
@keyframes hj-et-fica{0%{opacity:0}100%{opacity:1}}

/* ao fechar a ajuda, o campo de onde ela veio acende por um instante, para a pessoa voltar direto ao ponto */
.n-alvo{position:relative;border-radius:12px;animation:n-alvo 1.9s var(--e-suave)}
@keyframes n-alvo{0%,70%{box-shadow:0 0 0 1.5px #ff3d9f,0 0 18px rgba(255,61,159,.6)}100%{box-shadow:0 0 0 0 rgba(255,61,159,0)}}

@media (max-width:760px){
  dialog.help-dlg{max-width:100vw;width:100%;margin:auto 0 0}
  dialog .help-modal{display:block;overflow:auto;max-height:90dvh;border-radius:24px 24px 0 0}
  .hj-palco{padding:1.4rem 1.6rem 1.1rem}
  .hj-texto{overflow:visible}
  .hj-l{padding-block:.32rem}
  .help-foot{position:sticky;bottom:0;background:var(--v-janela);margin-inline:-1.6rem;padding:.6rem 1.6rem .8rem}
}
@media (prefers-reduced-motion:reduce){
  .hj-papel,.hj-l,.hj-l.on,.hj-l.on::after,.hj-fluxo li,.hj-et-ic::after{animation:none}
  .hj-l:not(.on){opacity:.55}.hj-l.on{transform:scale(1.05)}
  .hj-fluxo li:last-child .hj-et-ic::after{opacity:1}
  .n-alvo{animation:none;box-shadow:0 0 0 2px #ff3d9f}
}
html[data-contraste="alto"] .hj-palco{background:#000}
html[data-contraste="alto"] .hj-l.on{box-shadow:0 0 0 3px #ffd400}
html[data-contraste="alto"] .hj-l.on::after{display:none}
@media print{.hj-palco{display:none}}

/* ---------- aulas: a tela real, com a opção certa em neon, e a narração */
.au-faixa .n-faixa-in{padding-block:clamp(2.2rem,5vw,3.4rem) clamp(4.4rem,8vw,6.4rem)}
.n-faixa .btn-pri,.n-faixa .btn-pri:hover{background:#fff;color:#0a1450}
.n-faixa .btn-pri:hover{box-shadow:0 0 0 1.5px #ff5fb0,0 0 20px rgba(255,95,176,.6)}
.au-faixa h1{font-size:clamp(1.9rem,4.4vw,3rem)}
.au-resumo{font-size:.84rem;color:var(--n-sub);align-self:center}
.au-resumo [data-aulas-feitas]::before{content:" · "}
.au-pagina{padding-bottom:2.5rem}
.au-trilho{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:.6rem;margin:1.4rem 0 1.6rem}
.au-trilho::before{content:"";position:absolute;left:1.6rem;right:12%;top:1.55rem;height:1px;background:var(--line-2);z-index:-1}
.au-trilho a{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.55rem .6rem;border-radius:14px;color:var(--text);text-decoration:none;transition:background .2s var(--e-suave)}
.au-trilho a:hover{background:var(--v-sobre)}
.au-trilho .n-ic{margin-bottom:.3rem;background:var(--v-solido);box-shadow:0 0 0 1px var(--line)}
.au-trilho b{font:500 .92rem/1.2 var(--f-titulo)}.au-trilho small{font-size:.76rem;color:var(--muted)}
.au-grandes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:.7rem;margin-bottom:1rem}
.au-grande{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;border-radius:18px;background:var(--v-fundo);-webkit-backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));box-shadow:var(--shadow);color:var(--text);text-decoration:none;transition:box-shadow .25s var(--e-suave)}
.au-grande>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:.1rem;min-width:0}
.au-grande b{font:500 .98rem/1.25 var(--f-titulo)}.au-grande small{font-size:.8rem;color:var(--muted);line-height:1.35}
.au-grande:hover{box-shadow:0 0 0 1.5px var(--dest),0 0 18px rgba(232,55,143,.28)}
.au-fase{margin:1.6rem 0;scroll-margin-top:5rem}.au-fase .h-sec{margin-bottom:.7rem}
.au-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:.9rem}
.au-card{position:relative;display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--v-fundo);-webkit-backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));box-shadow:var(--shadow);color:var(--text);text-decoration:none;transition:box-shadow .25s var(--e-suave),transform .4s var(--e-expo)}
.au-card:hover,.au-card:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 1.5px #ff3d9f,0 0 22px rgba(255,61,159,.35),var(--shadow)}
.au-img{position:relative;display:block;aspect-ratio:16/10;background:var(--n0);overflow:hidden}
.au-img img{width:100%;height:100%;object-fit:cover;display:block;opacity:.9;transition:transform .7s var(--e-expo),opacity .3s}
.au-card:hover .au-img img{transform:scale(1.04);opacity:1}
.au-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(6,10,44,.62))}
.au-play{position:absolute;left:.7rem;bottom:.7rem;z-index:1;width:2.1rem;height:2.1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(10,20,80,.7);box-shadow:0 0 0 1px rgba(255,255,255,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.au-dur{position:absolute;right:.7rem;bottom:.85rem;z-index:1;font:500 .74rem var(--f-dado);color:#fff}
.au-visto{position:absolute;left:.6rem;top:.6rem;z-index:1;display:none;align-items:center;gap:.25rem;padding:.12rem .5rem .12rem .35rem;border-radius:99px;background:#0f7f4d;color:#fff;font-size:.72rem}
.au-card.visto .au-visto{display:inline-flex}
.au-tx{display:flex;flex-direction:column;gap:.2rem;padding:.8rem .95rem .95rem}
.au-tx small{font-size:.74rem;color:var(--muted)}.au-tx b{font:500 1.02rem/1.25 var(--f-titulo);letter-spacing:-.01em}
.au-tx>span{font-size:.84rem;line-height:1.4;color:var(--muted)}
.au-ano{margin-top:1.4rem}
@media (min-width:760px){#fase-comeco .au-grade{grid-template-columns:minmax(0,1fr)}#fase-comeco .au-card{flex-direction:row;align-items:center}#fase-comeco .au-img{flex:0 0 38%}#fase-comeco .au-tx{padding:1.2rem 1.6rem}#fase-comeco .au-tx b{font-size:1.4rem}#fase-comeco .au-tx>span{font-size:.95rem}}

.tut-pagina{display:grid;grid-template-columns:13.5rem minmax(0,1fr);gap:1.6rem;align-items:start;padding-block:1.4rem 2.6rem}
.tut-menu{position:sticky;top:5rem;background:var(--v-fundo);-webkit-backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));backdrop-filter:blur(var(--v-blur)) saturate(var(--v-sat));box-shadow:var(--shadow);border:0;border-radius:18px;padding:.8rem .6rem;font-size:.86rem;max-height:calc(100vh - 6rem);overflow:auto}
.tut-voltar{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem .5rem;font-size:.8rem;color:var(--muted);text-decoration:none}
.tut-voltar:hover{color:var(--text)}
.tm-fase{display:block;padding:.65rem .5rem .25rem;font-size:.72rem;font-weight:600;color:var(--muted)}
.tut-menu ol{list-style:none;margin:0;padding:0}
.tut-menu a[data-aula]{display:flex;align-items:center;gap:.5rem;padding:.34rem .5rem;border-radius:10px;color:var(--text);text-decoration:none;font-weight:400;line-height:1.25;background:transparent;border:0}
.tut-menu a[data-aula]:hover{background:var(--brand-soft)}
.tm-n{flex:none;width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font:500 .68rem var(--f-titulo);background:var(--brand-soft);color:var(--brand-2)}
.tut-menu a.visto .tm-n{background:var(--verde-soft);color:var(--verde)}
.tut-menu a.on{background:var(--de-s)!important;color:var(--destx);font-weight:500}
.tut-menu a.on .tm-n{background:var(--dest);color:#fff}
.tut-conteudo{min-width:0;display:flex;flex-direction:column;gap:1rem}
.tut-cab{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:0}
.tut-cab>div{flex:1 1 20rem;min-width:0}
.tut-cab h1{font-size:clamp(1.5rem,3vw,2.15rem);margin:.15rem 0 .25rem}
.tut-cab p{margin:0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:44rem}
.tut-cab-ic,.tut-n{display:none}
.tut-sec{padding:1.15rem 1.25rem;margin:0}
.tut-sec-h{align-items:center;gap:.65rem;margin-bottom:.8rem}
.tut-sec-h h2{font-size:1.12rem;margin:0}.tut-sec-h p{margin:.05rem 0 0;font-size:.84rem}
.tut-sec-ic{width:2rem;height:2rem;border-radius:10px;background:var(--brand-soft);color:var(--brand-2);display:flex;align-items:center;justify-content:center;flex:none}
.tut-sec-ic svg{width:1rem;height:1rem}
.tut-dicas-box{display:flex;gap:.6rem;align-items:flex-start;padding:.7rem .9rem;border-radius:14px;background:var(--brand-soft);font-size:.88rem;line-height:1.45}
.tut-dicas-box svg{flex:none;margin-top:.1rem;color:var(--brand-2)}
.tut-dicas{margin:0;padding:0;list-style:none;display:grid;gap:.3rem}
.tut-nav{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-top:.4rem}

.player{--pl-r:20px;display:block;background:transparent;border:0;box-shadow:none;padding:0;margin:0;overflow:visible;position:relative}
.pl-palco{position:relative;aspect-ratio:16/10;border-radius:var(--pl-r) var(--pl-r) 0 0;overflow:hidden;background:var(--n0);isolation:isolate;container-type:inline-size;outline:0}
.pl-cenas{position:absolute;inset:0;cursor:pointer}
.pl-cena{position:absolute;inset:0;display:block;width:auto;max-width:none;margin:0;padding:0;text-align:left;gap:0;animation:pl-entra .4s ease both}
.pl-cena.sai{animation:pl-sai .4s ease both}
.pl-quadro{position:absolute;inset:0;transform-origin:0 0;animation:pl-zoom 1.3s .2s var(--e-expo) both}
.pl-quadro img{display:block;width:100%;height:100%;object-fit:cover}
.pl-alvo{position:absolute;border-radius:10px;box-shadow:0 0 0 2px #ff3d9f,0 0 14px rgba(255,61,159,.9),0 0 40px rgba(255,61,159,.4),0 0 0 200vmax rgba(6,10,44,.42);animation:pl-alvo .55s .25s var(--e-expo) both;pointer-events:none}
.pl-alvo::after{content:"";position:absolute;inset:-2px;border-radius:12px;padding:2px;background:conic-gradient(from var(--hj-ang),transparent 0 62%,#ffb3dc 78%,#fff 84%,#ffb3dc 90%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:hj-feixe 3s .8s linear infinite}
@keyframes pl-entra{from{opacity:0}}
@keyframes pl-sai{to{opacity:0}}
@keyframes pl-zoom{from{transform:none}to{transform:translate(var(--tx,0),var(--ty,0)) scale(var(--z,1))}}
@keyframes pl-alvo{from{opacity:0;transform:scale(1.05)}}
.pl-cartao{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2.6cqw;padding:9cqw;color:#fff;background:radial-gradient(70% 70% at 15% 10%,rgba(90,110,255,.34),transparent 70%),radial-gradient(60% 55% at 100% 100%,rgba(232,55,143,.22),transparent 70%),var(--n0)}
.pl-cartao-ic{width:9cqw;height:9cqw;min-width:2.6rem;min-height:2.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);box-shadow:0 0 0 1.5px #ff3d9f,0 0 18px rgba(255,61,159,.65);animation:pl-entra .5s .15s both}
.pl-cartao b{font:400 clamp(1.3rem,5.6cqw,3.2rem)/1.08 var(--f-titulo);letter-spacing:-.03em;max-width:24ch;animation:hj-papel .7s .2s var(--e-expo) both}
.pl-cartao>span:last-child:not(.pl-cartao-ic){font-size:clamp(.92rem,2.4cqw,1.35rem);color:var(--n-sub);max-width:36ch;animation:hj-papel .7s .35s var(--e-expo) both}
.pl-capa{position:absolute;inset:0;z-index:3;width:100%;border:0;padding:0;cursor:pointer;background:var(--n0);color:#fff;display:block;text-align:left}
.pl-capa img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32;transition:opacity .4s,transform .9s var(--e-expo)}
.pl-capa::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 70% at 15% 10%,rgba(90,110,255,.3),transparent 70%),linear-gradient(180deg,transparent 30%,rgba(6,10,44,.75))}
.pl-capa-tx{position:absolute;z-index:1;left:6cqw;right:6cqw;bottom:6cqw;display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}
.pl-capa b{font:400 clamp(1.25rem,4.4cqw,2.6rem)/1.08 var(--f-titulo);letter-spacing:-.03em}
.pl-capa small{font-size:clamp(.8rem,1.7cqw,.98rem);color:var(--n-sub)}
.pl-grande{color:#fff;width:clamp(3rem,8cqw,4.4rem);height:clamp(3rem,8cqw,4.4rem);margin-bottom:.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);box-shadow:0 0 0 1.5px #ff3d9f,0 0 20px rgba(255,61,159,.7);transition:box-shadow .25s,background .25s}
.pl-grande svg{margin-left:.15rem}
.pl-capa:hover img{opacity:.48;transform:scale(1.02)}
.pl-capa:hover .pl-grande,.pl-capa:focus-visible .pl-grande{background:rgba(255,61,159,.28);box-shadow:0 0 0 2px #ff6fb8,0 0 34px rgba(255,61,159,.95)}
.pl-fim{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;text-align:center;color:#fff;background:rgba(6,10,44,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pl-fim[hidden],.pl-capa[hidden],.pl-legenda[hidden]{display:none}
.pl-fim b{font:400 clamp(1.3rem,4cqw,2.2rem)/1.1 var(--f-titulo);letter-spacing:-.03em}
.pl-fim-ac{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}
.pl-fim .btn-claro{background:rgba(255,255,255,.1);color:#fff;border-color:var(--n-medio)}
.pl-visor{position:relative}
.pl-legenda{position:absolute;left:50%;transform:translateX(-50%);bottom:.85rem;width:max-content;max-width:min(88%,44rem);margin:0;padding:.42rem .85rem;border-radius:12px;background:rgba(6,10,44,.88);color:#fff;font-size:clamp(.86rem,1.5vw,1.02rem);line-height:1.35;text-align:center;z-index:2;pointer-events:none;box-shadow:0 8px 22px rgba(3,6,40,.4)}
.pl-ctrl{display:flex;align-items:center;gap:.4rem;padding:.4rem .55rem;background:var(--n0);color:#fff;border-radius:0 0 var(--pl-r) var(--pl-r);border:0;margin:0}
.pl-b{flex:none;width:2.1rem;height:2.1rem;border:0;border-radius:50%;background:transparent;color:#dfe5ff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:500 .76rem var(--f-dado);transition:background .2s,color .2s}
.pl-b:hover{background:rgba(255,255,255,.12);color:#fff}
.pl-b.on{color:#ff8cc6;background:transparent}
.pl-b.on:hover{background:rgba(255,255,255,.12)}
.pl-tocar{color:#fff;background:rgba(255,255,255,.12)}
.pl-txt{width:auto;min-width:2.1rem;padding-inline:.35rem;border-radius:99px}
.pl-tempo{flex:none;font:400 .76rem var(--f-dado);color:var(--n-sub);min-width:5.4rem}
.pl-barra{position:relative;flex:1;height:1.4rem;cursor:pointer;background:transparent;border-radius:0;overflow:visible}
.pl-barra::before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;border-radius:9px;background:rgba(255,255,255,.2)}
.pl-cheio{position:absolute;left:0;top:50%;height:4px;margin-top:-2px;border-radius:9px;background:#ff3d9f;box-shadow:0 0 10px rgba(255,61,159,.8);transition:none}
.pl-marca{position:absolute;top:50%;width:2px;height:8px;margin-top:-4px;background:var(--n0);border-radius:1px}
.player:fullscreen{display:flex;flex-direction:column;background:#000;--pl-r:0px}
.player:fullscreen .pl-visor{flex:1;display:flex;min-height:0}
.player:fullscreen .pl-palco{flex:1;aspect-ratio:auto;min-height:0}
.player:fullscreen .pl-caps,.player:fullscreen .pl-roteiro{display:none}
.player:fullscreen .pl-quadro img{object-fit:contain}
.pl-caps{list-style:none;margin:.65rem 0 0;padding:.1rem .1rem .5rem;display:flex;gap:.55rem;overflow-x:auto;scrollbar-width:thin;position:relative}
.pl-caps li{flex:0 0 8.6rem}
.pl-caps button{display:flex;flex-direction:column;width:100%;gap:.2rem;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;border-radius:10px}
.pl-cap-img{display:block;aspect-ratio:16/10;border-radius:10px;overflow:hidden;background:var(--n1);box-shadow:0 0 0 1px var(--line);transition:box-shadow .2s}
.pl-cap-img img{width:100%;height:100%;object-fit:cover;display:block}
.pl-cap-ic{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#dfe5ff}
.pl-caps b{font-weight:500;font-size:.78rem;line-height:1.2}
.pl-caps small{font:400 .68rem var(--f-dado);color:var(--muted)}
.pl-caps button:hover .pl-cap-img{box-shadow:0 0 0 1.5px var(--brand-2)}
.pl-caps button.on .pl-cap-img{box-shadow:0 0 0 2px #ff3d9f,0 0 12px rgba(255,61,159,.55)}
.pl-caps button.on b{color:var(--destx)}
.pl-roteiro{margin:.25rem 0 0;padding:0;border:0;background:transparent;font-size:.88rem}
.pl-roteiro summary{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;color:var(--brand-2);font-weight:500;padding:.25rem .1rem}
.pl-roteiro ol{list-style:none;margin:.5rem 0;padding:0;display:grid;gap:.5rem}
.pl-roteiro li{padding:0;border:0;background:transparent}
.pl-roteiro li b{display:block;font-weight:600;font-size:.84rem}.pl-roteiro li p{margin:.05rem 0 0;font-size:.88rem;line-height:1.45}
@media (max-width:980px){
  .tut-pagina{grid-template-columns:minmax(0,1fr);gap:.9rem;padding-top:.9rem}
  .tut-menu{position:static;max-height:none;padding:.5rem;display:flex;align-items:center;gap:.3rem;overflow-x:auto;scrollbar-width:none}
  .tut-menu .tm-fase{display:none}.tut-menu ol{display:contents}.tut-menu li{flex:none}
  .tut-voltar{flex:none;padding:.3rem .5rem}
  .tut-menu a[data-aula]{white-space:nowrap}
}
@media (max-width:640px){
  .au-trilho{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.au-trilho::before{display:none}
  .player{--pl-r:16px}
  .pl-legenda{position:static;transform:none;width:auto;max-width:none;background:var(--n0);border-radius:0;box-shadow:none;padding:.5rem .8rem .2rem;text-align:left;font-size:.92rem}
  .pl-tempo{min-width:0;font-size:.7rem}
  .pl-b{width:2.3rem;height:2.3rem}
  .pl-palco:has(+ .pl-legenda:not([hidden])){border-radius:var(--pl-r) var(--pl-r) 0 0}
  .tut-sec{padding:1rem}
  .pl-caps li{flex-basis:7.4rem}
}
@media (min-width:641px){.leg-cima .pl-legenda{bottom:auto;top:.85rem}}
@media (prefers-reduced-motion:reduce){.pl-cena,.pl-quadro,.pl-alvo,.pl-alvo::after,.pl-cartao b,.pl-cartao>span,.pl-cartao-ic{animation:none}.pl-quadro{transform:none}.au-card:hover{transform:none}}
html[data-contraste="alto"] .pl-alvo{box-shadow:0 0 0 4px #ffd400,0 0 0 200vmax rgba(0,0,0,.45)}
html[data-contraste="alto"] .pl-alvo::after{display:none}
.lei-porque{background:var(--brand-soft);border:0;border-radius:12px;color:var(--text)}
@media print{.player{display:none}}

/* ---------- quem não pode ou não quer transparência */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.card,.kpi,.vazio,.tbl,.escolha,.doc-i,.item,.termos-bloco,.lista-fila,.tut-faixa,.tut-card,.un-card,.doc-card,.modal,.help-modal,.drawer,.entrar-form{background:var(--v-solido)}.topo{background:var(--n0)}}
@media (prefers-reduced-transparency:reduce){.card,.kpi,.vazio,.tbl,.escolha,.doc-i,.item,.termos-bloco,.lista-fila,.tut-faixa,.tut-card,.un-card,.doc-card,.modal,.help-modal,.drawer,.entrar-form{background:var(--v-solido);-webkit-backdrop-filter:none;backdrop-filter:none}.topo{background:var(--n0)}}
html[data-contraste="alto"] .card,html[data-contraste="alto"] .kpi,html[data-contraste="alto"] .lista-fila,html[data-contraste="alto"] .entrar-form,html[data-contraste="alto"] .escolha{box-shadow:0 0 0 1px #000;-webkit-backdrop-filter:none;backdrop-filter:none}
html[data-contraste="alto"] .card::before,html[data-contraste="alto"] .card::after{display:none}
html[data-contraste="alto"] .n-rosa,html[data-contraste="alto"] .kpi.n-rosa{background:#7a0045}
@media (max-width:640px){:root{--v-blur:16px}}
@media (prefers-reduced-motion:reduce){.fila-in{animation:none}.entrar-fila{overflow-x:auto}.n-passo>span:first-child,.n-passos::after{transition:none}}
@media print{.n-parede,.topo,.rodape,.n-dg{display:none!important}.card,.kpi,.tbl{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}}
