/* Active English — sistema de design (claro e escuro). Sem estilos inline (CSP).
   Tipografia: Fraunces (títulos) + Inter (interface). Paleta: azul-marinho, azul real, coral e dourado. */
@font-face{font-family:"Inter";src:url(inter-latin.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";src:url(inter-latin-ext.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fraunces";src:url(fraunces-latin.woff2) format("woff2");font-weight:300 900;font-display:swap}

:root{
  --bg:#f6f5f1; --sup:#ffffff; --sup-2:#f4f3ef; --sup-3:#ebe9e2;
  --linha:#e6e3db; --linha-2:#d5d1c6;
  --texto:#0f1b33; --texto-2:#3a4560; --muted:#69718a; --fraco:#9ba1b2;
  --pri:#2f5bea; --pri-forte:#1d43c4; --pri-s:#eaeffe; --pri-texto:#ffffff;
  --marinho:#13254b; --marinho-2:#1b3263; --marinho-texto:#c9d3ea;
  --coral:#f0643c; --coral-s:#fde9e2; --dourado:#d99a1e; --dourado-s:#fbf1dc;
  --ok:#13845b; --ok-s:#e2f4ec; --aviso:#a85d06; --aviso-s:#fcf0dc; --erro:#cf363d; --erro-s:#fde8e8; --info:#2f5bea; --info-s:#eaeffe;
  --fogo:#ef6a2c; --xp:#d99a1e;
  --grad:linear-gradient(135deg,#2f5bea 0%,#4f74f5 100%);
  --grad-marinho:linear-gradient(135deg,#13254b 0%,#1e3a78 100%);
  --sombra-1:0 1px 2px rgba(15,27,51,.05);
  --sombra-2:0 1px 2px rgba(15,27,51,.04),0 6px 20px rgba(15,27,51,.06);
  --sombra-3:0 18px 50px rgba(15,27,51,.13);
  --r-s:8px; --r:12px; --r-l:16px; --r-xl:22px;
  --foco:0 0 0 3px rgba(47,91,234,.32);
  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --lateral:272px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{
    --bg:#0a1020; --sup:#111a2e; --sup-2:#16213a; --sup-3:#1d2a47;
    --linha:#22304f; --linha-2:#2e3e63;
    --texto:#eef1f8; --texto-2:#c3cadb; --muted:#8d96ae; --fraco:#5f6985;
    --pri:#7b98ff; --pri-forte:#a3b7ff; --pri-s:rgba(123,152,255,.14); --pri-texto:#0a1020;
    --marinho:#0c1428; --marinho-2:#16213d; --marinho-texto:#aeb9d4;
    --coral:#ff8159; --coral-s:rgba(255,129,89,.13); --dourado:#f0b84a; --dourado-s:rgba(240,184,74,.13);
    --ok:#45d39a; --ok-s:rgba(69,211,154,.12); --aviso:#f3b552; --aviso-s:rgba(243,181,82,.12); --erro:#ff6f74; --erro-s:rgba(255,111,116,.13); --info:#7b98ff; --info-s:rgba(123,152,255,.13);
    --fogo:#ff8a4c; --xp:#f0b84a;
    --grad:linear-gradient(135deg,#4f74f5 0%,#7b98ff 100%);
    --grad-marinho:linear-gradient(135deg,#111d3a 0%,#1c3266 100%);
    --sombra-1:0 1px 2px rgba(0,0,0,.35); --sombra-2:0 2px 8px rgba(0,0,0,.3); --sombra-3:0 18px 50px rgba(0,0,0,.45);
    --foco:0 0 0 3px rgba(123,152,255,.45);
    color-scheme:dark;
  }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--texto);font:16px/1.6 "Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}
a{color:var(--pri);text-underline-offset:3px}
a:hover{color:var(--pri-forte)}
h1,h2,h3{line-height:1.18;margin:0 0 .5em;color:var(--texto)}
h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.015em;font-variation-settings:"opsz" 72}
h1{font-size:clamp(1.75rem,3.2vw,2.35rem)}
h2{font-size:1.32rem}
h3{font-size:1.04rem;font-weight:700;letter-spacing:-.01em}
p{margin:0 0 1em}
img,svg{max-width:100%}
.ico{width:1.2em;height:1.2em;flex:none;vertical-align:-.22em}
:focus-visible{outline:none;box-shadow:var(--foco);border-radius:8px}
[hidden]{display:none!important}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pular{position:absolute;left:12px;top:-60px;z-index:100;background:var(--pri);color:#fff;padding:10px 16px;border-radius:var(--r-s);text-decoration:none}
.pular:focus{top:12px;color:#fff}
.muted{color:var(--muted)}
.pequeno{font-size:.88rem}
.centro{text-align:center}
.cresce{flex:1;min-width:0}
.lead{font-size:1.1rem;color:var(--texto-2);line-height:1.6}
.sobretitulo{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:.6em;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.gradiente-texto{color:var(--coral);font-style:italic}
kbd{font:600 .68rem/1 ui-monospace,monospace;border:1px solid var(--linha-2);border-bottom-width:2px;border-radius:5px;padding:2px 5px;margin-left:6px;opacity:.7;color:inherit}
@media (hover:none){kbd{display:none}}

/* ---------- Estrutura da aplicação ---------- */
.shell{display:grid;grid-template-columns:var(--lateral) minmax(0,1fr);min-height:100vh}
.lateral{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:2px;padding:18px 14px 16px;background:var(--marinho);color:var(--marinho-texto);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;z-index:50}
.lateral-topo{display:flex;align-items:center;justify-content:space-between;padding:0 6px 14px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--texto);font-weight:700;font-size:1.08rem;letter-spacing:-.01em;white-space:nowrap}
.marca .logo{width:34px;height:34px;flex:none}
.marca-nome{font-family:var(--serif);font-weight:600;font-size:1.15rem}
.marca-nome b{font-weight:600;color:var(--coral)}
.lateral .marca{color:#fff}
.lateral .logo rect{fill:#fff}
.lateral .logo path{stroke:#13254b}
.fechar-menu{display:none}
.lateral-perfil{display:flex;align-items:center;gap:11px;padding:11px;margin:0 0 6px;border-radius:var(--r);background:rgba(255,255,255,.06);text-decoration:none;color:#fff}
.lateral-perfil:hover{background:rgba(255,255,255,.1);color:#fff}
.lateral-perfil strong{display:block;font-size:.92rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lateral-perfil small{display:block;font-size:.76rem;color:var(--marinho-texto)}
.lateral-perfil .avatar{width:36px;height:36px;box-shadow:none}
.nav-titulo{font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(201,211,234,.55);padding:14px 12px 5px}
.nav{display:flex;flex-direction:column;gap:1px}
.nav a{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;color:var(--marinho-texto);text-decoration:none;font-weight:550;font-size:.92rem;position:relative;transition:background .15s,color .15s}
.nav a .ico{width:19px;height:19px;opacity:.85}
.nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.nav a[aria-current]{background:rgba(255,255,255,.12);color:#fff;font-weight:650}
.nav a[aria-current]::before{content:"";position:absolute;left:-14px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--coral)}
.nav a[aria-current] .ico{opacity:1;color:#fff}
.contador{margin-left:auto;background:var(--coral);color:#fff;font-size:.68rem;line-height:1;padding:4px 7px;border-radius:99px;font-weight:800}
.lateral-meta{margin-top:auto;border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:12px 14px;display:flex;gap:12px;align-items:center;margin-top:18px}
.lateral-meta strong{display:block;font-size:.88rem;color:#fff}
.lateral-meta span{font-size:.76rem}
.lateral .anel .anel-fundo{stroke:rgba(255,255,255,.12)}
.lateral .anel b{color:#fff;font-size:.72rem}
.principal{min-width:0;display:flex;flex-direction:column}
.barra-topo{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:12px 32px;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:saturate(1.5) blur(14px);-webkit-backdrop-filter:saturate(1.5) blur(14px);border-bottom:1px solid var(--linha)}
.barra-topo .marca{display:none}
.barra-titulo{margin:0;font-weight:650;color:var(--texto-2);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.abrir-menu{display:none}
.barra-direita{display:flex;align-items:center;gap:8px;margin-left:auto}
.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:99px;background:var(--sup);border:1px solid var(--linha);font-size:.86rem;font-weight:700;white-space:nowrap;color:var(--texto);text-decoration:none}
a.chip:hover{border-color:var(--linha-2);color:var(--texto)}
.chip-nivel{padding:3px}
.chip-fogo .ico{color:var(--fogo)}
.chip-xp .ico{color:var(--xp)}
.chip.apagado .ico{color:var(--fraco)}
.avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--coral);color:#fff;font-weight:700;font-size:.82rem;text-decoration:none;flex:none;letter-spacing:.02em}
.avatar:hover{color:#fff;filter:brightness(1.05)}
.conteudo{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:26px 32px 56px}
.conteudo:focus{outline:none}
.rodape{color:var(--muted);font-size:.84rem;text-align:center;padding:22px 20px 30px}
.rodape p{margin:0}
.tabbar{display:none}
.veu{display:none}
.btn-icone{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--texto-2);cursor:pointer;text-decoration:none;flex:none}
.btn-icone:hover{background:var(--sup-3);color:var(--texto)}
.lateral .btn-icone{color:#fff}
.lateral .btn-icone:hover{background:rgba(255,255,255,.1)}
.form-sair{margin:0}

@media (max-width:1020px){
  .shell{grid-template-columns:1fr}
  .lateral{position:fixed;inset:0 auto 0 0;width:min(86vw,320px);height:100%;transform:translateX(-102%);visibility:hidden;transition:transform .28s cubic-bezier(.2,.8,.2,1),visibility .28s;box-shadow:var(--sombra-3);padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(16px + env(safe-area-inset-bottom))}
  .menu-aberto .lateral{transform:none;visibility:visible}
  .menu-aberto{overflow:hidden}
  .veu{display:block;position:fixed;inset:0;background:rgba(8,14,30,.5);z-index:45;opacity:0;transition:opacity .25s;pointer-events:none}
  .veu[hidden]{display:block!important}
  .menu-aberto .veu{opacity:1;pointer-events:auto}
  .fechar-menu{display:inline-flex}
  .abrir-menu{display:inline-flex}
  .barra-topo{padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top));gap:6px}
  .barra-topo .marca{display:flex}
  .barra-titulo{display:none}
  .barra-topo .marca-nome{font-size:1.02rem}
  .barra-direita .avatar,.barra-direita .form-sair,.chip-nivel{display:none}
  .conteudo{padding:18px 16px 110px}
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:color-mix(in srgb,var(--sup) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--linha);padding:5px 4px calc(5px + env(safe-area-inset-bottom))}
  .tabbar a,.tabbar button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;color:var(--muted);text-decoration:none;font:650 .66rem/1.2 inherit;border:0;background:none;border-radius:12px;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .tabbar .ico{width:23px;height:23px}
  .tabbar a[aria-current]{color:var(--pri)}
  .tabbar a[aria-current]::before{content:"";position:absolute;top:-5px;left:30%;right:30%;height:3px;border-radius:0 0 3px 3px;background:var(--pri)}
  .tabbar .contador{position:absolute;top:1px;right:calc(50% - 22px);margin:0}
  .rodape{padding-bottom:100px}
}
@media (max-width:400px){.chip-xp .rotulo-xp{display:none}.chip{padding:5px 9px}.barra-topo .marca-nome{display:none}}

/* ---------- Cabeçalhos, secções e cartões ---------- */
.cabeca-pagina{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 26px}
.cabeca-pagina h1{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:.2em}
.cabeca-pagina p{margin:0;max-width:62ch}
.cabeca-pagina .acoes{flex:none}
.secao-cabeca{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:34px 0 14px;flex-wrap:wrap}
.secao-cabeca h2{margin:0}
.secao-cabeca a{font-weight:650;font-size:.9rem;text-decoration:none}
.migalhas{font-size:.9rem;margin-bottom:14px}
.migalhas a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-weight:600}
.cartao,.cartao-painel{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:24px;box-shadow:var(--sombra-1);margin-bottom:20px}
.cartao-painel h2{display:flex;align-items:center;gap:8px;font-size:1.18rem}
.cartao-painel h2 .ico{color:var(--muted)}
.duas-colunas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:20px;margin-bottom:20px}
.duas-colunas>*{margin-bottom:0}
.colunas-painel{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}
.colunas-painel>*>*:last-child{margin-bottom:0}
@media (max-width:1100px){.colunas-painel{grid-template-columns:1fr}}
.vazio{background:var(--sup);border:1.5px dashed var(--linha-2);border-radius:var(--r-l);padding:40px 24px;text-align:center;color:var(--muted)}
.vazio .ico{width:40px;height:40px;color:var(--fraco);margin-bottom:8px}
.etiqueta{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--sup-3);border-radius:6px;padding:3px 7px}

/* ---------- Botões e formulários ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;border:1px solid var(--linha-2);background:var(--sup);color:var(--texto);font:650 .94rem/1.2 inherit;text-decoration:none;cursor:pointer;transition:transform .08s,box-shadow .2s,background .2s,border-color .2s,filter .2s;-webkit-tap-highlight-color:transparent;white-space:nowrap}
.btn:hover{border-color:var(--texto-2);color:var(--texto)}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.btn.primario{background:var(--pri);border-color:var(--pri);color:var(--pri-texto);box-shadow:0 1px 0 rgba(255,255,255,.15) inset,0 4px 14px rgba(47,91,234,.25)}
.btn.primario:hover{background:var(--pri-forte);border-color:var(--pri-forte);color:var(--pri-texto)}
.btn.escuro{background:var(--marinho);border-color:var(--marinho);color:#fff}
.btn.escuro:hover{background:var(--marinho-2);color:#fff}
.btn.coral{background:var(--coral);border-color:var(--coral);color:#fff}
.btn.coral:hover{filter:brightness(1.06);color:#fff}
.btn.sucesso{background:var(--ok);border-color:var(--ok);color:#fff}
.btn.perigo{color:var(--erro);border-color:color-mix(in srgb,var(--erro) 45%,transparent)}
.btn.perigo:hover{background:var(--erro-s)}
.btn.fantasma{background:transparent;border-color:transparent}
.btn.fantasma:hover{background:var(--sup-3)}
.btn.grande{padding:14px 24px;font-size:1rem;border-radius:12px}
.btn.pequeno{padding:6px 12px;font-size:.84rem;border-radius:8px}
.btn.largo{width:100%}
.btn-link{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;font-size:.9rem;padding:8px}
.acoes{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.form{display:flex;flex-direction:column;gap:16px}
.campo{display:flex;flex-direction:column;gap:6px}
label{font-weight:600;font-size:.9rem}
input,select,textarea{font:inherit;color:var(--texto);background:var(--sup);border:1px solid var(--linha-2);border-radius:10px;padding:10px 13px;width:100%;min-height:44px;transition:border-color .15s,box-shadow .15s}
textarea{resize:vertical;line-height:1.6}
input::placeholder,textarea::placeholder{color:var(--fraco)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--pri);box-shadow:var(--foco)}
input[type=checkbox],input[type=radio]{width:19px;height:19px;min-height:0;accent-color:var(--pri);flex:none;margin:0}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:500}
.ajuda{color:var(--muted);font-size:.84rem}
.campo-oculto{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso{padding:12px 15px;border-radius:var(--r);margin-bottom:18px;border:1px solid transparent;display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.95rem}
.aviso>.ico{margin-top:2px}
.a-ok{background:var(--ok-s);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 20%,transparent)}
.a-erro{background:var(--erro-s);color:var(--erro);border-color:color-mix(in srgb,var(--erro) 20%,transparent)}
.a-info{background:var(--info-s);color:var(--info);border-color:color-mix(in srgb,var(--info) 18%,transparent)}
.aviso a{color:inherit;font-weight:700}
.selo{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:700;padding:3px 9px;border-radius:99px;white-space:nowrap}
.selo .ico{width:1em;height:1em}
.selo.ok{background:var(--ok-s);color:var(--ok)}
.selo.aviso{background:var(--aviso-s);color:var(--aviso)}
.selo.erro{background:var(--erro-s);color:var(--erro)}
.selo.neutro{background:var(--sup-3);color:var(--muted)}
.selo.pri{background:var(--pri-s);color:var(--pri)}
.pesquisa{position:relative;flex:1;min-width:200px}
.pesquisa .ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.pesquisa input{padding-left:40px}
.barra-filtros{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}
.barra-filtros select{width:auto;min-width:130px}

/* Níveis CEFR */
.nivel{display:inline-flex;align-items:center;justify-content:center;min-width:2.4em;padding:2px 8px;border-radius:7px;font-weight:750;font-size:.8rem;letter-spacing:.03em;color:#fff;vertical-align:middle;font-family:"Inter",sans-serif}
.nivel-a1{background:#1f9d6a}.nivel-a2{background:#0f8a8a}.nivel-b1{background:#2f5bea}.nivel-b2{background:#5b46d6}.nivel-c1{background:#b03a8c}.nivel-c2{background:#c8402c}
h1 .nivel{font-size:1rem;padding:4px 10px}

/* Barras e anéis de progresso (larguras por classe: CSP sem estilos inline) */
.barra{height:8px;background:var(--sup-3);border-radius:99px;overflow:hidden;margin-top:7px}
.barra i{display:block;height:100%;background:var(--pri);border-radius:99px;width:0;transition:width .5s cubic-bezier(.2,.8,.2,1)}
.p5{width:5%!important}.p10{width:10%!important}.p15{width:15%!important}.p20{width:20%!important}.p25{width:25%!important}.p30{width:30%!important}.p35{width:35%!important}.p40{width:40%!important}.p45{width:45%!important}.p50{width:50%!important}.p55{width:55%!important}.p60{width:60%!important}.p65{width:65%!important}.p70{width:70%!important}.p75{width:75%!important}.p80{width:80%!important}.p85{width:85%!important}.p90{width:90%!important}.p95{width:95%!important}.p100{width:100%!important}
.anel{position:relative;display:inline-grid;place-items:center;flex:none}
.anel svg{transform:rotate(-90deg)}
.anel .anel-fundo{stroke:var(--sup-3)}
.anel .anel-valor{stroke:url(#grad-anel);transition:stroke-dashoffset .8s cubic-bezier(.2,.8,.2,1)}
.anel b{position:absolute;font-size:.8rem;font-weight:750}

/* Cores de apoio (ícones e cartões) */
.cor-coral{--c:#f0643c}.cor-azul{--c:#2f5bea}.cor-violeta{--c:#6d4fd8}.cor-verde{--c:#13845b}.cor-dourado{--c:#c98a10}.cor-laranja{--c:#e2602a}.cor-rosa{--c:#c2417f}.cor-marinho{--c:#13254b}
@media (prefers-color-scheme:dark){.cor-coral{--c:#ff8159}.cor-azul{--c:#7b98ff}.cor-violeta{--c:#a28bff}.cor-verde{--c:#45d39a}.cor-dourado{--c:#f0b84a}.cor-laranja{--c:#ff9a5c}.cor-rosa{--c:#f07fb6}.cor-marinho{--c:#9fb4e8}}

/* ---------- Páginas públicas ---------- */
.publico{background:var(--bg)}
.topo-publico{position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--linha)}
.topo-publico .topo-in{max-width:1180px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:18px}
.nav-publica{display:flex;align-items:center;gap:18px;margin-left:auto}
.nav-publica a:not(.btn){color:var(--texto-2);font-weight:600;text-decoration:none}
.publico .conteudo{max-width:1180px;padding:24px 24px 60px}
@media (max-width:520px){.nav-publica{gap:12px}.nav-publica a:not(.btn){font-size:.92rem}.nav-publica .btn{padding:8px 12px;font-size:.86rem}.publico .conteudo{padding:16px 16px 50px}.topo-publico .topo-in{padding:10px 16px}.topo-publico .marca-nome{display:none}}
.rodape-publico{border-top:1px solid var(--linha);margin-top:20px}
.rodape-in{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.caixa-auth{max-width:440px;margin:28px auto;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-xl);padding:36px;box-shadow:var(--sombra-2)}
.caixa-auth h1{font-size:1.85rem}
.caixa-auth .form{margin:20px 0}
@media (max-width:480px){.caixa-auth{padding:24px 18px;margin:0 auto}}
.heroi{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;padding:44px 0 72px}
.heroi h1{font-size:clamp(2.4rem,5.4vw,3.9rem);line-height:1.04;letter-spacing:-.03em;margin-bottom:.4em;font-weight:600}
.heroi .lead{font-size:1.16rem;max-width:34em}
.selo-topo{display:inline-flex;align-items:center;gap:8px;padding:5px 14px 5px 5px;border-radius:99px;background:var(--sup);border:1px solid var(--linha);font-size:.84rem;font-weight:600;margin-bottom:22px;color:var(--texto-2)}
.selo-topo b{background:var(--marinho);color:#fff;border-radius:99px;padding:3px 10px;font-size:.72rem;letter-spacing:.04em}
.prova{display:flex;gap:30px;flex-wrap:wrap;margin-top:30px;color:var(--muted);font-size:.88rem;border-top:1px solid var(--linha);padding-top:22px}
.prova strong{display:block;font-family:var(--serif);font-size:1.7rem;font-weight:600;color:var(--texto);letter-spacing:-.02em;line-height:1.2}
.heroi-visual{position:relative;min-height:450px}
.heroi-visual::before{content:"";position:absolute;inset:30px 10px 10px 50px;border-radius:32px;background:var(--grad-marinho)}
.mock{position:absolute;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);box-shadow:var(--sombra-3);padding:20px}
.mock-licao{inset:70px 50px 70px 0}
.mock-licao .mock-barra{height:8px;border-radius:99px;background:var(--sup-3);overflow:hidden;margin-bottom:20px}
.mock-licao .mock-barra i{display:block;height:100%;width:62%;background:var(--pri)}
.mock-licao p{font-family:var(--serif);font-weight:600;font-size:1.3rem}
.mock-opcao{border:1px solid var(--linha-2);border-radius:10px;padding:11px 14px;margin-top:9px;font-weight:550}
.mock-opcao.certa{border-color:var(--ok);background:var(--ok-s);color:var(--ok)}
.mock-xp{right:0;top:0;padding:14px 18px;display:flex;gap:12px;align-items:center}
.mock-xp strong{font-size:1.2rem}
.mock-fogo{right:16px;bottom:0;padding:14px 18px;display:flex;gap:12px;align-items:center;background:var(--coral);color:#fff;border:0}
.mock-fogo .ico{width:26px;height:26px}
@media (max-width:860px){.heroi{grid-template-columns:1fr;gap:24px;padding:16px 0 40px}.heroi-visual{min-height:380px}.heroi-visual::before{inset:30px 0 10px 30px}}
.secao-titulo{text-align:center;max-width:700px;margin:0 auto 34px}
.secao-titulo h2{font-size:clamp(1.7rem,3.5vw,2.4rem)}
.grade-recursos{list-style:none;margin:0 0 76px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.grade-recursos li{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:24px;transition:transform .2s,box-shadow .2s}
.grade-recursos li:hover{transform:translateY(-2px);box-shadow:var(--sombra-2)}
.ico-caixa{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--c,var(--pri)) 12%,transparent);color:var(--c,var(--pri));margin-bottom:16px}
.ico-caixa .ico{width:23px;height:23px}
.grade-recursos p{color:var(--texto-2);margin:0;font-size:.95rem}
.niveis-faixa{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:76px}
.niveis-faixa div{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r);padding:16px;text-align:center}
.niveis-faixa span{display:block;font-size:.82rem;color:var(--muted);margin-top:8px;font-weight:600}
@media (max-width:700px){.niveis-faixa{grid-template-columns:repeat(3,1fr)}}
.passos-metodo{list-style:none;margin:0 0 76px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;counter-reset:passo}
.passos-metodo li{counter-increment:passo;border-top:2px solid var(--marinho);padding-top:16px}
.passos-metodo li::before{content:"0" counter(passo);display:block;font-family:var(--serif);font-size:2rem;color:var(--coral);font-weight:600;line-height:1;margin-bottom:10px}
.passos-metodo p{color:var(--texto-2);margin:0;font-size:.95rem}
.cta-final{background:var(--grad-marinho);color:#fff;border-radius:var(--r-xl);padding:52px 28px;text-align:center}
.cta-final h2{font-size:clamp(1.7rem,3.5vw,2.4rem);color:#fff}
.cta-final .lead{color:#fff;opacity:.85}
.cta-final .btn{background:var(--coral);color:#fff;border-color:var(--coral)}
.texto-longo{max-width:760px;margin:0 auto;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:36px}
.texto-longo h2{margin-top:1.4em}
@media (max-width:600px){.texto-longo{padding:22px 18px}}

/* ---------- Painel ---------- */
.boas-vindas{position:relative;overflow:hidden;background:var(--grad-marinho);color:#fff;border-radius:var(--r-xl);padding:30px 32px;margin-bottom:22px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.boas-vindas::after{content:"";position:absolute;right:-70px;top:-90px;width:300px;height:300px;border-radius:50%;border:44px solid rgba(255,255,255,.05)}
.boas-vindas h1{margin-bottom:.2em;color:#fff}
.boas-vindas p{margin:0;color:rgba(255,255,255,.82)}
.boas-vindas p strong{color:#fff}
.boas-vindas .sobretitulo{color:#ffb39b}
.boas-vindas .btn{background:var(--coral);color:#fff;border-color:var(--coral);position:relative;z-index:1}
.boas-vindas .btn:hover{color:#fff;filter:brightness(1.06)}
.boas-vindas .nivel{box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.boas-vindas .barra{background:rgba(255,255,255,.15);max-width:420px}
.boas-vindas .barra i{background:#fff}
.grade-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:14px;margin-bottom:22px}
.stat{display:flex;gap:14px;align-items:center;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:16px 18px}
.stat strong{display:block;font-size:1.3rem;line-height:1.2;letter-spacing:-.02em;font-weight:750}
.stat span{color:var(--muted);font-size:.82rem}
.grade-stats.pequena .stat{padding:13px 16px}
.stat-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex:none;background:color-mix(in srgb,var(--c,var(--pri)) 12%,transparent);color:var(--c,var(--pri))}
.stat-ico .ico{width:23px;height:23px}
.stat-ico.fogo{--c:var(--fogo)}.stat-ico.xp{--c:var(--xp)}.stat-ico.meta{--c:var(--pri)}.stat-ico.cartoes{--c:var(--ok)}
.atalhos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;margin-bottom:22px}
.atalho{display:flex;gap:14px;align-items:center;padding:16px;border-radius:var(--r-l);text-decoration:none;color:var(--texto);background:var(--sup);border:1px solid var(--linha);transition:transform .15s,box-shadow .2s,border-color .2s}
.atalho:hover{transform:translateY(-2px);box-shadow:var(--sombra-2);color:var(--texto);border-color:var(--linha-2)}
.atalho strong{display:block}
.atalho span{font-size:.84rem;color:var(--muted)}
.grade-ferramentas{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:14px;margin-bottom:22px}
.ferramenta{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:var(--r-l);background:var(--sup);border:1px solid var(--linha);text-decoration:none;color:var(--texto);transition:transform .15s,box-shadow .2s,border-color .2s;position:relative}
.ferramenta:hover{transform:translateY(-2px);box-shadow:var(--sombra-2);color:var(--texto);border-color:color-mix(in srgb,var(--c,var(--pri)) 45%,var(--linha))}
.ferramenta .ico-caixa{margin-bottom:8px}
.ferramenta h3{margin:0;font-size:1.02rem}
.ferramenta p{margin:0;color:var(--muted);font-size:.88rem;flex:1}
.ferramenta .ferramenta-rodape{margin-top:10px;font-size:.82rem;font-weight:650;color:var(--c,var(--pri));display:flex;align-items:center;gap:6px}
.lista-niveis,.lista-hab{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.lista-niveis a{display:flex;align-items:center;gap:12px;padding:9px;border-radius:10px;text-decoration:none;color:var(--texto)}
.lista-niveis a:hover{background:var(--sup-2)}
.lista-niveis .bloqueado{opacity:.55}
.lista-niveis small,.lista-hab small{color:var(--muted);min-width:3em;text-align:right;font-weight:700}
.nivel-nome{display:flex;gap:6px;align-items:center;font-weight:600;font-size:.94rem}
.lista-hab li{display:flex;align-items:center;gap:12px;padding:6px 8px;font-size:.94rem}
.hab-ico{width:38px;height:38px;border-radius:10px;display:inline-grid;place-items:center;background:var(--sup-2);color:var(--texto-2);flex:none}
.hab-ico.grande{width:56px;height:56px;border-radius:14px}
.hab-ico.grande .ico{width:28px;height:28px}
.h-vocabulario{background:#e2f4ec;color:#13845b}.h-gramatica{background:#eaeffe;color:#2f5bea}.h-leitura{background:#fbf1dc;color:#a8700a}.h-audicao{background:#f9e6f0;color:#b23a77}.h-escrita{background:#e0f3f5;color:#0f7b86}.h-fala{background:#fde9e2;color:#cc4a22}
@media (prefers-color-scheme:dark){.h-vocabulario{background:rgba(69,211,154,.13);color:#7ee2b8}.h-gramatica{background:rgba(123,152,255,.14);color:#b3c4ff}.h-leitura{background:rgba(240,184,74,.13);color:#f5cf7f}.h-audicao{background:rgba(240,127,182,.13);color:#f5a9cd}.h-escrita{background:rgba(64,200,214,.13);color:#8fe0e9}.h-fala{background:rgba(255,129,89,.14);color:#ffae92}}
.grafico-barras{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(14,1fr);gap:6px;align-items:end;height:170px}
.grafico-barras.g12{grid-template-columns:repeat(12,1fr)}
.grafico-barras li{display:flex;flex-direction:column;align-items:center;gap:7px;height:100%;min-width:0}
.coluna{flex:1;width:100%;max-width:34px;display:flex;align-items:flex-end;background:var(--sup-2);border-radius:6px;overflow:hidden}
.coluna i{display:block;width:100%;background:var(--linha-2);border-radius:6px 6px 0 0;height:0}
.meta-ok .coluna i{background:var(--pri)}
.hoje .rotulo{font-weight:800;color:var(--texto)}
.rotulo{font-size:.7rem;color:var(--muted);white-space:nowrap}
.h5{height:5%}.h10{height:10%}.h15{height:15%}.h20{height:20%}.h25{height:25%}.h30{height:30%}.h35{height:35%}.h40{height:40%}.h45{height:45%}.h50{height:50%}.h55{height:55%}.h60{height:60%}.h65{height:65%}.h70{height:70%}.h75{height:75%}.h80{height:80%}.h85{height:85%}.h90{height:90%}.h95{height:95%}.h100{height:100%}
.legenda{display:flex;gap:14px;flex-wrap:wrap;font-size:.8rem;color:var(--muted);margin-top:12px;align-items:center}
.legenda i{display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--linha-2);margin-right:5px;vertical-align:-1px}
.legenda i.l-pri{background:var(--pri)}
.tabela-rolagem{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%}
.tabela th,.tabela td{padding:11px 12px;border-bottom:1px solid var(--linha);text-align:left;vertical-align:middle}
.tabela th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;background:var(--sup-2)}
.tabela tr:last-child td{border-bottom:0}
.tabela tbody tr:hover{background:var(--sup-2)}

/* Mapa de atividade (heatmap) */
.heatmap-rolagem{overflow-x:auto;padding-bottom:4px}
.heatmap{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(7,13px);grid-auto-flow:column;grid-auto-columns:13px;gap:3px;width:max-content}
.heatmap li{border-radius:3px;background:var(--sup-3)}
.heatmap .n1{background:color-mix(in srgb,var(--pri) 28%,var(--sup-3))}.heatmap .n2{background:color-mix(in srgb,var(--pri) 52%,var(--sup-3))}.heatmap .n3{background:color-mix(in srgb,var(--pri) 76%,var(--sup-3))}.heatmap .n4{background:var(--pri)}
.heatmap .vazio-d{background:transparent}
.legenda .n1,.legenda .n2,.legenda .n3,.legenda .n4{width:11px;height:11px;border-radius:3px;display:inline-block}
.legenda .n0{background:var(--sup-3)}.legenda .n1{background:color-mix(in srgb,var(--pri) 28%,var(--sup-3))}.legenda .n2{background:color-mix(in srgb,var(--pri) 52%,var(--sup-3))}.legenda .n3{background:color-mix(in srgb,var(--pri) 76%,var(--sup-3))}.legenda .n4{background:var(--pri)}

/* Conquistas */
.conquistas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:12px}
.conquista{display:flex;gap:12px;align-items:center;padding:14px;border-radius:var(--r);border:1px solid var(--linha);background:var(--sup)}
.conquista strong{display:block;font-size:.92rem}
.conquista small{display:block;color:var(--muted);font-size:.78rem;line-height:1.35}
.conquista-ico{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--dourado-s);color:var(--dourado);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--dourado) 35%,transparent)}
.conquista-ico .ico{width:22px;height:22px}
.conquista.bloqueada{background:transparent;border-style:dashed}
.conquista.bloqueada .conquista-ico{background:var(--sup-3);color:var(--fraco);box-shadow:none}
.conquista.bloqueada strong{color:var(--muted)}

/* ---------- Trilha ---------- */
.abas-niveis{display:flex;gap:6px;margin-bottom:24px;overflow-x:auto;padding:4px;scrollbar-width:none;background:var(--sup);border:1px solid var(--linha);border-radius:12px;width:max-content;max-width:100%}
.abas-niveis::-webkit-scrollbar{display:none}
.nivel-aba{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:8px;text-decoration:none;color:var(--texto-2);font-weight:700;white-space:nowrap;font-size:.92rem}
.nivel-aba:hover{background:var(--sup-2);color:var(--texto)}
.nivel-aba[aria-current]{background:var(--marinho);color:#fff}
.nivel-aba.bloqueado{color:var(--fraco)}
.progresso-nivel{min-width:240px}
.unidade{margin-bottom:30px}
.unidade-cabeca{display:flex;gap:16px;align-items:center;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:16px 20px;margin-bottom:18px}
.unidade-cabeca h2{margin:0 0 .15em;font-size:1.12rem}
.unidade-cabeca p{margin:0;font-size:.88rem}
.unidade-num{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:var(--marinho);color:#fff;font-family:var(--serif);font-weight:600;font-size:1.15rem;flex:none}
.caminho{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:6px}
.no{display:flex;flex-direction:column;align-items:center;gap:6px;width:min(100%,420px);text-align:center;position:relative}
.no:nth-child(4n+2){transform:translateX(70px)}
.no:nth-child(4n+3){transform:translateX(100px)}
.no:nth-child(4n+4){transform:translateX(40px)}
@media (max-width:600px){.no:nth-child(4n+2){transform:translateX(34px)}.no:nth-child(4n+3){transform:translateX(50px)}.no:nth-child(4n+4){transform:translateX(18px)}}
.no-botao{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#fff;background:var(--sup-3);border:0;box-shadow:inset 0 -5px 0 rgba(0,0,0,.14);transition:transform .15s;position:relative}
.no-botao .ico{width:30px;height:30px}
.no-botao:hover{transform:scale(1.06);color:#fff}
.no.disponivel .no-botao{background:var(--pri);box-shadow:inset 0 -5px 0 rgba(0,0,0,.2),0 8px 20px rgba(47,91,234,.3)}
.no.feita .no-botao{background:var(--ok);box-shadow:inset 0 -5px 0 rgba(0,0,0,.16)}
.no.bloqueada .no-botao{color:var(--fraco);cursor:default}
.no.atual .no-botao{background:var(--coral);box-shadow:inset 0 -5px 0 rgba(0,0,0,.18),0 8px 22px rgba(240,100,60,.35)}
.no.atual .no-botao::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:3px solid var(--coral);opacity:.6;animation:pulsar 1.8s ease-out infinite}
@keyframes pulsar{0%{transform:scale(.9);opacity:.7}100%{transform:scale(1.25);opacity:0}}
.no-rotulo{font-weight:650;font-size:.9rem;line-height:1.25;max-width:240px}
.no-rotulo small{display:block;font-weight:550;color:var(--muted);font-size:.76rem;margin-top:2px}
.no-estrela{position:absolute;right:-4px;top:-4px;background:var(--dourado);color:#fff;border-radius:99px;font-size:.68rem;font-weight:800;padding:2px 6px}
.cartao-exame{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:24px;position:relative;overflow:hidden}
.cartao-exame::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--dourado)}
.cartao-exame.aprovado::before{background:var(--ok)}
.cartao-exame h2{margin-bottom:.3em}
.cartao-exame p{margin:0 0 .4em}
.exame-ico{width:56px;height:56px;border-radius:14px;background:var(--dourado-s);display:grid;place-items:center;color:var(--dourado);flex:none}
.exame-ico .ico{width:28px;height:28px}

/* ---------- Lição: modo player ---------- */
.player{max-width:780px;margin:0 auto}
.player-topo{display:flex;align-items:center;gap:14px;margin:0 0 22px}
.player-topo .barra{flex:1;height:10px;margin:0}
.player-topo .barra i{transition:width .45s cubic-bezier(.2,.8,.2,1)}
.combo{display:inline-flex;align-items:center;gap:4px;font-weight:800;color:var(--fogo);font-size:.95rem;min-width:52px;justify-content:flex-end}
.combo .ico{width:20px;height:20px}
.licao-cabeca{display:flex;gap:18px;align-items:flex-start;margin-bottom:22px}
.passo{animation:entrar .35s cubic-bezier(.2,.8,.2,1)}
@keyframes entrar{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.js .passo:not(.ativo){display:none}
.licao section{margin-bottom:20px}
.bloco-teoria,.bloco-texto,.bloco-vocab{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:26px}
.bloco-teoria h3{margin-top:1.3em;font-family:var(--serif);font-weight:600;font-size:1.15rem}
.bloco-teoria h3:first-child{margin-top:0}
.bloco-teoria ul{padding-left:1.2em}
.bloco-teoria li{margin-bottom:.3em}
.bloco-teoria table,.texto-base table{margin:10px 0 16px;font-size:.94rem}
.bloco-teoria th,.bloco-teoria td{border:1px solid var(--linha);padding:9px 12px;text-align:left}
.bloco-teoria th{background:var(--sup-2);font-weight:700}
.bloco-teoria [lang=en],.grade-vocab strong{color:var(--pri-forte)}
.texto-base{font-size:1.12rem;line-height:1.85;font-family:var(--serif);font-variation-settings:"opsz" 14}
.transcricao{margin-top:14px}
.transcricao summary{cursor:pointer;color:var(--pri);font-weight:700}
.grade-vocab{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:10px}
.grade-vocab li{display:flex;gap:8px;align-items:flex-start;background:var(--sup-2);border-radius:12px;padding:12px}
.grade-vocab strong,.grade-vocab span,.grade-vocab em{display:block}
.grade-vocab span{color:var(--texto-2);font-size:.92rem}
.grade-vocab em{color:var(--muted);font-size:.85rem}
.grade-vocab .guardar{margin-left:auto}
.lista-exercicios{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.exercicio{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:28px;box-shadow:var(--sombra-2);transition:border-color .2s}
@media (max-width:600px){.exercicio{padding:20px 16px}.bloco-teoria,.bloco-texto,.bloco-vocab{padding:20px 16px}}
.js .lista-exercicios .exercicio{min-height:300px;display:flex;flex-direction:column}
.exercicio.certo{border-color:var(--ok)}
.exercicio.errado{border-color:var(--erro)}
.ex-num{font-size:.74rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.09em;margin-bottom:.8em}
.enunciado{font-family:var(--serif);font-weight:600;font-size:1.3rem;margin-bottom:1em;padding:0;line-height:1.35}
.opcoes{border:0;margin:0;padding:0;display:grid;gap:10px;min-width:0}
.opcoes legend{margin-bottom:12px;float:left;width:100%}
.opcao{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--linha-2);border-radius:12px;cursor:pointer;font-weight:550;font-size:1.02rem;transition:background .12s,border-color .12s,transform .08s;background:var(--sup)}
.opcao:hover{border-color:var(--pri);background:var(--pri-s)}
.opcao:active{transform:translateY(1px)}
.opcao input{position:absolute;opacity:0;pointer-events:none}
.opcao .tecla{width:28px;height:28px;border-radius:7px;border:1px solid var(--linha-2);display:grid;place-items:center;font-size:.8rem;font-weight:750;color:var(--muted);flex:none}
.opcao:has(input:checked){border-color:var(--pri);background:var(--pri-s);color:var(--pri-forte)}
.opcao:has(input:checked) .tecla{border-color:var(--pri);background:var(--pri);color:var(--pri-texto)}
.opcao:has(input:focus-visible){box-shadow:var(--foco)}
.opcao.correta{border-color:var(--ok)!important;background:var(--ok-s)!important;color:var(--ok)!important}
.opcao.incorreta{border-color:var(--erro)!important;background:var(--erro-s)!important;color:var(--erro)!important}
.frase{font-size:1.22rem;line-height:2.3;font-weight:550}
.lacuna{display:inline-block;width:auto;min-width:9ch;max-width:100%;padding:3px 10px;min-height:0;margin:0 4px;font-size:1.12rem;font-weight:700;border-width:0 0 2px;border-radius:6px 6px 0 0;background:var(--pri-s);color:var(--pri-forte)}
.frase-pt{font-size:1.18rem;font-family:var(--serif);font-style:italic;color:var(--texto-2);background:var(--sup-2);border-left:3px solid var(--coral);border-radius:0 10px 10px 0;padding:14px 18px}
.ex-acoes{margin-top:auto;padding-top:20px;display:flex;gap:10px;flex-wrap:wrap}
.ex-acoes .btn.primario{min-width:180px}
@media (max-width:600px){.ex-acoes .btn{flex:1}}
.feedback{margin-top:18px;padding:16px 18px;border-radius:12px;animation:entrar .3s}
.feedback.certo{background:var(--ok-s)}
.feedback.errado{background:var(--erro-s)}
.feedback strong{display:block;margin-bottom:4px;font-size:1.05rem}
.feedback .certo-txt{color:var(--ok)}
.feedback .errado-txt{color:var(--erro)}
.feedback p{margin:.35em 0 0}
.feedback ul{margin:.5em 0 0;padding-left:0;list-style:none}
.feedback li::before{content:"✗ ";color:var(--erro);font-weight:800}
.feedback li.ok::before{content:"✓ ";color:var(--ok)}
.feedback .btn{margin-top:14px}
.criterios{margin:0 0 14px;padding-left:1.2em;color:var(--texto-2);font-size:.95rem}
.ouvir{display:inline-flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:center}
.btn-ouvir .ico{color:var(--pri)}
.btn-ouvir.grande-audio{width:80px;height:80px;border-radius:50%;padding:0;background:var(--pri);border:0;color:#fff;box-shadow:0 10px 26px rgba(47,91,234,.35)}
.btn-ouvir.grande-audio .ico{width:34px;height:34px;color:#fff}
.btn-ouvir.falando{border-color:var(--pri);background:var(--pri-s)}
.btn-ouvir.grande-audio.falando{animation:pulsar-botao 1s ease-in-out infinite;background:var(--pri)}
@keyframes pulsar-botao{50%{transform:scale(1.06)}}
.audio-aviso{font-size:.85rem;color:var(--aviso);background:var(--aviso-s);border-radius:10px;padding:10px 14px;margin-top:10px}
.banco-texto{font-size:1.05rem;color:var(--texto-2)}
.ordenar-js .banco-texto,.ordenar-js label,.ordenar-js input{display:none}
.montagem{min-height:60px;border-bottom:2px solid var(--linha-2);padding:10px 0;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;align-items:center;width:100%}
.montagem:empty::before{content:attr(data-vazio);color:var(--fraco);font-size:.92rem}
.banco{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.palavra{padding:9px 15px;border:1.5px solid var(--linha-2);border-bottom-width:3px;border-radius:10px;background:var(--sup);font:650 1rem/1.2 inherit;color:var(--texto);cursor:pointer;transition:transform .08s}
.palavra:hover{border-color:var(--pri)}
.palavra:active{transform:translateY(2px);border-bottom-width:1.5px}
.palavra.usada{visibility:hidden}
/* Fala */
.fala{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.fala-frase{font-family:var(--serif);font-size:1.5rem;font-weight:600;line-height:1.35}
.btn-mic{width:88px;height:88px;border-radius:50%;border:0;background:var(--coral);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 28px rgba(240,100,60,.35);transition:transform .1s}
.btn-mic .ico{width:38px;height:38px}
.btn-mic:active{transform:scale(.96)}
.btn-mic.gravando{animation:pulsar-botao 1s ease-in-out infinite;background:var(--erro)}
.fala-ouvido{min-height:1.6em;font-size:1.05rem;color:var(--texto-2);font-style:italic}
.fala-ouvido .falta{color:var(--erro);font-style:normal;font-weight:700;text-decoration:underline wavy}
.fala-sem{font-size:.9rem;color:var(--muted)}
.concluir{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:22px;padding:18px 22px;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l)}
.js .concluir{display:none}
.concluir p{margin:0}
.resultado-licao,.resultado-teste{text-align:center;background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-xl);padding:40px 24px;margin-top:20px;box-shadow:var(--sombra-3);position:relative;overflow:hidden}
.resultado-licao:focus{outline:none}
.resultado-licao .acoes,.resultado-teste .acoes{justify-content:center}
.resultado-numero{font-family:var(--serif);font-size:4rem;font-weight:600;line-height:1;letter-spacing:-.03em;margin:.15em 0 .25em;color:var(--pri)}
.resultado-numero .ico{width:60px;height:60px;color:var(--ok)}
.trofeu-grande{width:88px;height:88px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:var(--dourado-s);color:var(--dourado);font-size:2.6rem;box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--dourado) 35%,transparent)}
.trofeu-grande .ico{width:44px;height:44px}
.resultado-stats{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:18px 0 24px}
.resultado-stats div{background:var(--sup-2);border-radius:12px;padding:12px 18px;min-width:110px}
.resultado-stats strong{display:block;font-size:1.3rem}
.resultado-stats span{font-size:.78rem;color:var(--muted);font-weight:600}
.resultado-teste{max-width:680px;margin:20px auto}
.resultado-teste h1{justify-content:center;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.confete{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.confete i{position:absolute;top:-12px;width:8px;height:13px;border-radius:2px;animation:cair 2.6s linear forwards}
.confete i:nth-child(5n){background:#2f5bea}.confete i:nth-child(5n+1){background:#f0643c}.confete i:nth-child(5n+2){background:#13845b}.confete i:nth-child(5n+3){background:#13254b}.confete i:nth-child(5n+4){background:#d99a1e}
.confete i:nth-child(10n){left:5%}.confete i:nth-child(10n+1){left:15%;animation-delay:.2s}.confete i:nth-child(10n+2){left:25%;animation-delay:.5s}.confete i:nth-child(10n+3){left:35%;animation-delay:.1s}.confete i:nth-child(10n+4){left:45%;animation-delay:.7s}.confete i:nth-child(10n+5){left:55%;animation-delay:.3s}.confete i:nth-child(10n+6){left:65%;animation-delay:.6s}.confete i:nth-child(10n+7){left:75%;animation-delay:.15s}.confete i:nth-child(10n+8){left:85%;animation-delay:.45s}.confete i:nth-child(10n+9){left:95%;animation-delay:.35s}
@keyframes cair{to{transform:translateY(560px) rotate(540deg);opacity:0}}

/* ---------- Testes ---------- */
.teste{max-width:740px;margin:0 auto}
.teste-cabeca{margin-bottom:18px}
.intro-teste{max-width:780px}
.lista-check{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:12px}
.lista-check li{display:flex;gap:12px;align-items:flex-start}
.lista-check .ico{color:var(--ok);margin-top:3px}

/* ---------- Revisão (flashcards) ---------- */
.revisao{max-width:640px;margin:0 auto}
.flashcard,.revisao-vazia{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-xl);padding:36px 26px;text-align:center;box-shadow:var(--sombra-3)}
.flash-palavra{font-family:var(--serif);font-size:clamp(2rem,6.5vw,3rem);font-weight:600;letter-spacing:-.02em;margin:.2em 0 .4em;word-break:break-word}
.flash-verso{border-top:1px dashed var(--linha-2);margin-top:22px;padding-top:20px;animation:entrar .3s}
.flash-traducao{font-size:1.35rem;font-weight:700}
.flash-exemplo{color:var(--muted);font-style:italic;font-family:var(--serif)}
.flash-acoes{margin-top:24px}
.notas{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.notas .btn{flex-direction:column;gap:2px;padding:11px 6px;border-top-width:3px}
.notas small{font-weight:500;font-size:.72rem;color:var(--muted)}
.nota-0{border-top-color:var(--erro)!important}.nota-3{border-top-color:var(--aviso)!important}.nota-4{border-top-color:var(--ok)!important}.nota-5{border-top-color:var(--info)!important}
@media (max-width:480px){.notas{grid-template-columns:repeat(2,1fr)}.flashcard,.revisao-vazia{padding:26px 16px}}

/* ---------- Jogos e práticas ---------- */
.grade-jogos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:16px}
.jogo-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:var(--r-l);color:var(--texto);text-decoration:none;min-height:210px;background:var(--sup);border:1px solid var(--linha);border-top:4px solid var(--c);transition:transform .2s,box-shadow .2s}
.jogo-card:hover{transform:translateY(-3px);box-shadow:var(--sombra-2);color:var(--texto)}
.jogo-card h2{margin:0;font-size:1.25rem}
.jogo-card p{margin:0;color:var(--muted);font-size:.93rem;flex:1}
.jogo-card .jogo-ico{width:50px;height:50px;border-radius:12px;background:color-mix(in srgb,var(--c) 13%,transparent);color:var(--c);display:grid;place-items:center}
.jogo-card .jogo-ico .ico{width:26px;height:26px}
.jogo-card .jogo-recorde{font-size:.82rem;font-weight:700;color:var(--c);align-self:flex-start}
.arena{max-width:740px;margin:0 auto}
.arena-topo{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}
.arena-topo h1{margin:0}
.arena-topo .chip{font-size:.98rem}
.relogio-chip.urgente{color:var(--erro);border-color:var(--erro);animation:pulsar-botao .6s infinite}
.palco{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-xl);padding:30px 24px;box-shadow:var(--sombra-2);min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;position:relative;overflow:hidden}
@media (max-width:600px){.palco{padding:24px 16px}}
.palco h2{font-size:1.6rem}
.palco form,.palco .largura{width:100%;max-width:520px}
.palavra-grande{font-family:var(--serif);font-size:clamp(2rem,7vw,3rem);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.traducao-grande{font-size:1.3rem;font-weight:650;color:var(--texto-2)}
.grade-opcoes{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
@media (max-width:480px){.grade-opcoes{grid-template-columns:1fr}}
.opcao-jogo{padding:15px;border:1.5px solid var(--linha-2);border-bottom-width:3px;border-radius:12px;background:var(--sup);font:650 1rem/1.25 inherit;color:var(--texto);cursor:pointer;transition:transform .08s}
.opcao-jogo:hover{border-color:var(--pri)}
.opcao-jogo:active{transform:translateY(2px)}
.opcao-jogo.certa{border-color:var(--ok);background:var(--ok-s);color:var(--ok)}
.opcao-jogo.errada{border-color:var(--erro);background:var(--erro-s);color:var(--erro);animation:tremer .3s}
@keyframes tremer{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.pares{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.pares .opcao-jogo{min-height:56px}
.pares .opcao-jogo.selecionada{border-color:var(--pri);background:var(--pri-s);color:var(--pri-forte)}
.pares .opcao-jogo.feita{visibility:hidden}
.vf-botoes{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
.vf-botoes .btn{padding:18px;font-size:1.1rem}
.btn-vf-sim{background:var(--ok)!important;border-color:var(--ok)!important;color:#fff!important}
.btn-vf-nao{background:var(--erro)!important;border-color:var(--erro)!important;color:#fff!important}
.flutua{position:absolute;font-weight:900;font-size:1.4rem;color:var(--ok);animation:subir .8s forwards;pointer-events:none}
@keyframes subir{to{transform:translateY(-50px);opacity:0}}
.ranking{list-style:none;margin:0;padding:0;counter-reset:pos}
.ranking li{display:flex;align-items:center;gap:12px;padding:10px 4px;border-bottom:1px solid var(--linha);counter-increment:pos}
.ranking li:last-child{border-bottom:0}
.ranking li::before{content:counter(pos);width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--sup-3);font-weight:800;font-size:.85rem}
.ranking li:nth-child(1)::before{background:#d99a1e;color:#fff}.ranking li:nth-child(2)::before{background:#a3adbf;color:#fff}.ranking li:nth-child(3)::before{background:#b9784a;color:#fff}
.ranking li.eu{font-weight:800;color:var(--pri)}
.ranking span{flex:1}
.jogo-ico-grande{width:84px;height:84px;border-radius:22px;display:grid;place-items:center;color:var(--c);background:color-mix(in srgb,var(--c) 13%,transparent)}
.jogo-ico-grande .ico{width:42px;height:42px}
.pratica-progresso{width:100%;max-width:520px;display:flex;align-items:center;gap:12px;font-size:.84rem;color:var(--muted);font-weight:650}
.pratica-progresso .barra{flex:1;margin:0}
.pratica-verbo{font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--coral)}
.campo-grande{font-size:1.15rem;text-align:center;min-height:54px}
.resposta-certa{font-family:var(--serif);font-size:1.15rem}

/* ---------- Glossário, dicionário e verbos ---------- */
.lista-glossario{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.palavra-card{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r);padding:14px 16px;display:flex;gap:10px;align-items:flex-start}
.palavra-card .cresce strong{display:block;font-family:var(--serif);font-weight:600;font-size:1.12rem;color:var(--texto);word-break:break-word}
.palavra-card .cresce span{display:block;color:var(--texto-2);font-size:.93rem}
.palavra-card em{display:block;color:var(--muted);font-size:.85rem;margin-top:4px;font-family:var(--serif)}
.palavra-card small{display:block;color:var(--muted);font-size:.78rem;margin-top:6px}
.palavra-card form{margin:0}
.palavra-card .btn-icone{width:34px;height:34px}
.resultados-dicionario{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column}
.resultados-dicionario li{display:flex;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--linha)}
.resultados-dicionario li:last-child{border-bottom:0}
.resultados-dicionario strong{font-family:var(--serif);font-weight:600;font-size:1.05rem}
.resultados-dicionario form{margin:0}
.tabela-verbos td:first-child{font-weight:700}
.tabela-verbos td[lang=en]{font-family:var(--serif);font-size:1.03rem}
.tabela-verbos .btn-icone{width:32px;height:32px}
@media (max-width:600px){.tabela-verbos .col-trad,.tabela-verbos .col-nivel{display:none}.tabela-verbos th,.tabela-verbos td{padding:9px 6px}}

/* ---------- Gramática de referência ---------- */
.indice-gramatica{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}
.indice-gramatica a{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--r);border:1px solid var(--linha);background:var(--sup);text-decoration:none;color:var(--texto);transition:border-color .15s,box-shadow .15s}
.indice-gramatica a:hover{border-color:var(--pri);box-shadow:var(--sombra-2);color:var(--texto)}
.indice-gramatica strong{display:block;font-weight:650}
.indice-gramatica small{display:block;color:var(--muted);font-size:.83rem;line-height:1.4}
.artigo{max-width:780px}
.artigo .bloco-teoria{font-size:1.02rem}

/* ---------- Escrita orientada ---------- */
.tema-escrita{background:var(--sup-2);border-left:3px solid var(--coral);border-radius:0 12px 12px 0;padding:16px 18px;margin-bottom:16px}
.tema-escrita p{margin:0}
.tema-escrita .tema{font-family:var(--serif);font-size:1.2rem;font-weight:600;color:var(--texto);margin-bottom:6px}
.editor-escrita textarea{min-height:260px;font-size:1.05rem;line-height:1.75;font-family:var(--serif);font-variation-settings:"opsz" 14}
.editor-rodape{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.analise{display:grid;gap:16px}
.lista-criterios{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.lista-criterios li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.lista-criterios li::before{content:"✗";font-weight:800;color:var(--erro);flex:none;width:1.1em}
.lista-criterios li.ok::before{content:"✓";color:var(--ok)}
.observacoes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.observacoes li{background:var(--aviso-s);border-radius:10px;padding:10px 13px;font-size:.93rem}
.observacoes mark{background:transparent;color:var(--aviso);font-weight:750;font-family:var(--serif);font-size:1.02rem}
.texto-salvo{white-space:pre-wrap;font-family:var(--serif);line-height:1.75;background:var(--sup-2);border-radius:12px;padding:16px 18px;margin:0}

/* ---------- Certificados ---------- */
.lista-certificados{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.cert-card{background:var(--sup);border:1px solid var(--linha);border-radius:var(--r-l);padding:20px;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}
.cert-card::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;border:16px solid var(--dourado-s)}
.cert-card h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;margin:0}
.cert-card code{font-size:.8rem;color:var(--muted)}
.certificado{max-width:1000px;margin:0 auto 24px;background:#fffdf8;color:#14213d;border-radius:6px;padding:14px;box-shadow:var(--sombra-3)}
.certificado-in{border:2px solid #13254b;outline:1px solid #c9a24a;outline-offset:-10px;padding:clamp(24px,6vw,64px) clamp(18px,6vw,70px);text-align:center;position:relative}
.certificado .marca{justify-content:center;color:#13254b;margin-bottom:26px}
.certificado .marca-nome b{color:#f0643c}
.certificado .sobretitulo{justify-content:center;color:#a37515;letter-spacing:.24em}
.certificado h1{font-size:clamp(1.9rem,5vw,3rem);color:#13254b;margin:.1em 0 .4em}
.certificado .nome-aluno{font-family:var(--serif);font-size:clamp(1.6rem,4.5vw,2.6rem);font-style:italic;color:#13254b;border-bottom:1px solid #c9a24a;display:inline-block;padding:0 24px 6px;margin:6px 0 18px}
.certificado p{color:#3a4560;max-width:60ch;margin-left:auto;margin-right:auto}
.certificado .nivel{font-size:1.1rem;padding:5px 14px}
.cert-rodape{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:34px;font-size:.84rem;color:#69718a;text-align:left}
.cert-rodape strong{display:block;color:#13254b;font-size:.95rem}
.selo-cert{width:86px;height:86px;border-radius:50%;background:#c9a24a;color:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 5px #fffdf8,inset 0 0 0 7px #c9a24a}
.selo-cert .ico{width:40px;height:40px}
.verificado{max-width:620px;margin:20px auto;text-align:center}
.verificado .exame-ico{margin:0 auto 14px;width:72px;height:72px;border-radius:50%}
.verificado.ok .exame-ico{background:var(--ok-s);color:var(--ok)}
.verificado.erro .exame-ico{background:var(--erro-s);color:var(--erro)}

/* ---------- Admin ---------- */
.admin-abas{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:22px;padding:4px;background:var(--sup);border:1px solid var(--linha);border-radius:12px;width:max-content;max-width:100%}
.admin-abas a{padding:7px 14px;border-radius:8px;text-decoration:none;color:var(--texto-2);font-weight:650;font-size:.92rem}
.admin-abas a:hover{background:var(--sup-2)}
.admin-abas a[aria-current]{background:var(--marinho);color:#fff}
.grade-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.campo.inteiro,.inteiro{grid-column:1/-1}
.mono,textarea.mono{font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:.88rem}
.linha-acoes{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.linha-acoes form{margin:0}
.filtros{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px}
.filtros .campo{min-width:160px}
.perigo-titulo{margin-top:1.4em;color:var(--erro)}
details.editar summary{cursor:pointer;color:var(--pri);font-weight:700;padding:4px 0}

/* ---------- Toast ---------- */
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:var(--marinho);color:#fff;padding:12px 20px;border-radius:12px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:60;max-width:calc(100% - 32px);box-shadow:var(--sombra-3)}
.toast.mostrar{opacity:1;transform:translateX(-50%)}
@media (max-width:1020px){.toast{bottom:92px}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{
  @page{size:A4 landscape;margin:10mm}
  .lateral,.barra-topo,.tabbar,.rodape,.ex-acoes,.concluir,.nao-imprimir,.aviso,.veu,.toast{display:none!important}
  body{background:#fff}.shell{display:block}.conteudo{padding:0;max-width:none}
  .certificado{box-shadow:none;margin:0;max-width:none}
}
.guardada{color:var(--ok)!important}
.grupo-filtro:not(:has([data-texto]:not([hidden]))){display:none}
.nav-sair{display:flex;align-items:center;gap:12px;width:100%;padding:9px 12px;border:0;border-radius:10px;background:none;color:var(--marinho-texto);font:550 .92rem/1.6 inherit;cursor:pointer;text-align:left}
.nav-sair .ico{width:19px;height:19px;opacity:.85}
.nav-sair:hover{background:rgba(255,255,255,.07);color:#fff}

/* Símbolo ActiveCode nos rodapés de copyright (31/10/2026) */
.ac-mark{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin:0 5px 0 1px}
