/* Pharus Mentoria — identidade dos mocks (plataforma.html): índigo/roxo, laranja e amarelo, Exo + Open Sans. */
:root{
  --roxo:#6d3c91;--indigo:#433588;--laranja:#e39041;--amarelo:#f9b104;
  --indigo-d:#372a73;--roxo-d:#5b3179;
  --ink:#2b2740;--muted:#736e85;--line:#e8e4f0;--bg:#f4f2f8;--card:#fff;--card-2:#faf8fd;
  --titulo:var(--indigo);--link:var(--roxo);--green:#2e9e6b;--red:#d9534f;
  --verde-bg:#e4f3ec;--ambar-bg:#fdeede;--vermelho-bg:#fae6e5;--roxo-bg:#f0e9f7;
  --sombra:0 1px 2px rgba(67,53,136,.05);
}
@media (prefers-color-scheme:dark){
  :root:not([data-tema="claro"]){
    --ink:#e9e6f2;--muted:#a59fbb;--line:#352f4d;--bg:#15121f;--card:#1e1a2c;--card-2:#231f33;--titulo:#c9bdf5;--link:#c9a5ec;
    --verde-bg:#16362a;--ambar-bg:#3a2a16;--vermelho-bg:#3d1c1c;--roxo-bg:#2d2442;--sombra:none;
  }
}
:root[data-tema="escuro"]{
  --ink:#e9e6f2;--muted:#a59fbb;--line:#352f4d;--bg:#15121f;--card:#1e1a2c;--card-2:#231f33;--titulo:#c9bdf5;--link:#c9a5ec;
  --verde-bg:#16362a;--ambar-bg:#3a2a16;--vermelho-bg:#3d1c1c;--roxo-bg:#2d2442;--sombra:none;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px;scroll-padding-bottom:96px}
body{font-family:'Open Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.55}
h1,h2,h3,h4,.exo{font-family:'Exo','Open Sans',sans-serif;letter-spacing:-.01em;line-height:1.2}
a{color:inherit;text-decoration:none}
p a,.txt a,.link{color:var(--link);font-weight:700}
button{font-family:inherit;cursor:pointer;border:none}
img{max-width:100%}
::selection{background:var(--amarelo);color:var(--indigo-d)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.muted{color:var(--muted)}.small{font-size:.84rem}.center{text-align:center}
.mt{margin-top:14px}.mt2{margin-top:24px}.mb{margin-bottom:14px}.mb2{margin-bottom:24px}
.flex{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}
.grow{flex:1}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;border-radius:10px;padding:11px 20px;font-size:.92rem;transition:transform .15s,box-shadow .15s,background .15s;min-height:42px;cursor:pointer;border:1px solid transparent;line-height:1.2;text-align:center}
.btn:hover{transform:translateY(-1px)}
.btn-laranja{background:var(--laranja);color:#fff}.btn-laranja:hover{background:#d27f2f;box-shadow:0 10px 22px rgba(227,144,65,.34)}
.btn-roxo{background:var(--roxo);color:#fff}.btn-roxo:hover{background:var(--indigo);box-shadow:0 10px 22px rgba(67,53,136,.32)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--titulo)}
.btn-ghost:hover{border-color:var(--roxo)}
.btn-ghost-claro{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.btn-perigo{background:transparent;border-color:#e3b4b2;color:var(--red)}
.btn-perigo:hover{background:var(--vermelho-bg)}
.btn-sm{padding:7px 12px;font-size:.8rem;min-height:34px;border-radius:8px}
.btn-bloco{width:100%}
.btn[disabled],.btn.desligado{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}

/* pílulas */
.pill{display:inline-block;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:100px;white-space:nowrap}
.pill.verde{background:var(--verde-bg);color:var(--green)}.pill.ambar{background:var(--ambar-bg);color:#c47518}
.pill.vermelho{background:var(--vermelho-bg);color:var(--red)}.pill.roxo{background:var(--roxo-bg);color:var(--link)}
.pill.cinza{background:var(--roxo-bg);color:var(--muted)}.pill.ouro{background:var(--amarelo);color:var(--indigo-d)}

/* formulários */
.campo{margin-bottom:14px}
.campo label,.rotulo{display:block;font-size:.82rem;color:var(--titulo);font-weight:700;margin-bottom:6px}
.campo input,.campo select,.campo textarea,.input{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 13px;font-size:.93rem;font-family:inherit;background:var(--card);color:var(--ink);min-height:42px}
.campo input:focus,.campo select:focus,.campo textarea:focus,.input:focus{outline:2px solid rgba(109,60,145,.35);border-color:var(--roxo)}
.campo .dica{font-size:.78rem;color:var(--muted);margin-top:4px}
.grade2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.grade3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px}
.check{display:flex;gap:8px;align-items:center;font-size:.9rem;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--roxo)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.alerta{display:flex;gap:10px;align-items:flex-start;border-radius:10px;padding:12px 14px;font-size:.9rem;margin-bottom:16px;border:1px solid}
.alerta.erro{background:var(--vermelho-bg);border-color:#efc2c0;color:#8f2f2b}
.alerta.ok{background:var(--verde-bg);border-color:#bfe3cf;color:#1f6b48}
.alerta.aviso{background:var(--ambar-bg);border-color:#f5d4ab;color:#8a5618}
:root[data-tema="escuro"] .alerta.erro{color:#f2b8b5;border-color:#5a2a2a}
:root[data-tema="escuro"] .alerta.ok{color:#9fdcbc;border-color:#244d3a}
:root[data-tema="escuro"] .alerta.aviso{color:#f3c98f;border-color:#5a4220}

/* ============ PÚBLICO ============ */
.lp-nav{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px max(16px,6%);background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.marca{display:flex;align-items:center}
.marca img{height:40px;width:auto;display:block}
.marca-bloco{background:#fff;border-radius:8px;padding:3px 8px}
.nav-links{display:flex;gap:22px;align-items:center}
.nav-links a.nl{font-size:.9rem;font-weight:600}
.nav-links a.nl:hover{color:var(--roxo)}
.nav-acoes{display:flex;gap:10px;align-items:center}
.lp-hero{color:#fff;padding:72px max(16px,8%) 88px;position:relative;overflow:hidden;
  background:linear-gradient(105deg,rgba(40,30,74,.97) 0%,rgba(53,43,99,.93) 42%,rgba(67,53,136,.66) 72%,rgba(109,60,145,.4) 100%),url("/static/img/hero.jpg") right center/cover}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:44px;align-items:center;position:relative;z-index:2;max-width:1180px;margin:0 auto}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.hero-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);font-size:.74rem;font-weight:600;padding:6px 13px;border-radius:100px}
.hero-badge i{width:6px;height:6px;border-radius:50%;background:var(--amarelo)}
.ey{color:var(--amarelo);font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin-bottom:16px}
.lp-hero h1{font-size:2.9rem;font-weight:800;line-height:1.1;margin-bottom:18px}
.lp-hero h1 .g{color:var(--amarelo)}
.lp-hero p.sub{font-size:1.1rem;color:#e6def2;max-width:600px;margin-bottom:28px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.creds{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.cred{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:.76rem;font-weight:600;padding:5px 11px;border-radius:7px}
.vidro{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:26px;backdrop-filter:blur(12px);box-shadow:0 28px 70px rgba(20,12,40,.45)}
.vidro h4{font-size:1.08rem;margin-bottom:3px}
.vidro .gp{color:#d9d2ec;font-size:.86rem;margin-bottom:18px}
.gstats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.gstats div{background:rgba(255,255,255,.07);border-radius:10px;padding:12px 6px;text-align:center}
.gstats b{font-family:'Exo';font-weight:800;font-size:1.45rem;color:var(--amarelo);display:block;line-height:1}
.gstats span{font-size:.72rem;color:#cfc9e2}
.vagas-faixa{background:rgba(249,177,4,.16);border:1px solid rgba(249,177,4,.32);border-radius:10px;padding:10px;color:var(--amarelo);font-size:.8rem;font-weight:700;text-align:center;margin-bottom:14px}
.precos{display:grid;gap:8px;margin-bottom:14px}
.precos div{display:flex;justify-content:space-between;align-items:center;font-size:.86rem;color:#e6def2;border-bottom:1px dashed rgba(255,255,255,.15);padding-bottom:7px}
.precos b{color:#fff;font-family:'Exo';font-size:1rem}
.trust{background:var(--card);border-bottom:1px solid var(--line);padding:18px max(16px,6%)}
.trust .in{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:center}
.trust .tt{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.trust .seg{font-family:'Exo';font-weight:700;color:var(--titulo);opacity:.75}
.lp-sec{padding:64px max(16px,6%);max-width:1180px;margin:0 auto}
.lp-sec.sem-topo{padding-top:0}
.lp-sec>h2{font-size:1.95rem;color:var(--titulo);margin-bottom:10px;font-weight:800}
.lp-sec>h2::after{content:"";display:block;width:50px;height:4px;border-radius:3px;background:linear-gradient(90deg,var(--laranja),var(--amarelo));margin-top:14px}
.lp-sec .sub{color:var(--muted);margin-bottom:30px;font-size:1.04rem;max-width:680px}
.texto-longo p{font-size:1.02rem;margin-bottom:14px;max-width:820px}
.texto-longo ul{margin:6px 0 16px 20px}.texto-longo li{margin-bottom:6px}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;transition:transform .18s,box-shadow .18s}
.feat:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(67,53,136,.12)}
.feat .ic{width:46px;height:46px;border-radius:11px;background:linear-gradient(135deg,var(--roxo),var(--indigo));color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.feat .ic svg{width:24px;height:24px}
.feat h3{font-size:1.04rem;color:var(--titulo);margin-bottom:6px}
.feat p{font-size:.9rem;color:var(--muted)}
.steps-row{display:grid;grid-template-columns:repeat(5,1fr);position:relative;margin-top:8px}
.steps-row::before{content:"";position:absolute;top:24px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,var(--roxo),var(--amarelo));opacity:.45}
.step{text-align:center;padding:0 10px;position:relative}
.step .n{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--roxo),var(--indigo));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Exo';font-weight:800;font-size:1.1rem;margin:0 auto 14px;position:relative;z-index:2;box-shadow:0 10px 22px rgba(67,53,136,.3)}
.step h4{font-size:.95rem;color:var(--titulo);margin-bottom:4px}
.step p{font-size:.82rem;color:var(--muted)}
.modlist{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.modlist .m{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 16px;display:flex;gap:12px;align-items:center;font-size:.92rem}
.modlist .m .n{width:32px;height:32px;flex:none;border-radius:8px;background:linear-gradient(135deg,var(--roxo),var(--indigo));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;font-family:'Exo'}
.modlist .m.ao-vivo .n{background:linear-gradient(135deg,var(--laranja),var(--amarelo))}
.modlist .m small{display:block;color:var(--muted);font-size:.76rem}
.numeros{background:linear-gradient(135deg,var(--indigo),var(--roxo));border-radius:18px;padding:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;color:#fff;text-align:center;position:relative;overflow:hidden}
.numeros b{font-family:'Exo';font-weight:800;font-size:2.4rem;color:var(--amarelo);display:block;line-height:1}
.numeros span{font-size:.86rem;color:#e6def2}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ba .col{border-radius:14px;padding:26px;border:1px solid var(--line);background:var(--card)}
.ba .col.depois{border-color:var(--amarelo);box-shadow:0 14px 34px rgba(227,144,65,.14)}
.ba h4{font-size:1.05rem;margin-bottom:14px}
.ba .antes h4{color:var(--muted)}.ba .depois h4{color:var(--laranja)}
.ba ul{list-style:none}
.ba li{font-size:.92rem;padding:8px 0 8px 28px;position:relative}
.ba .antes li{color:var(--muted)}
.ba .antes li::before{content:"\2715";position:absolute;left:0;color:#b56;font-weight:700}
.ba .depois li::before{content:"\2713";position:absolute;left:0;color:var(--green);font-weight:700}
.mentor-box{background:linear-gradient(135deg,var(--indigo),var(--roxo));color:#fff;border-radius:20px;padding:42px;display:grid;grid-template-columns:130px 1fr;gap:32px;align-items:center}
.mentor-box .ph{width:130px;height:130px;border-radius:50%;background:linear-gradient(160deg,var(--laranja),var(--amarelo));display:flex;align-items:center;justify-content:center;font-family:'Exo';font-size:2.8rem;font-weight:800}
.mentor-box h2{font-size:1.8rem;margin-bottom:4px}
.mentor-box .papel{color:var(--amarelo);font-weight:600;font-size:.92rem;margin-bottom:12px}
.mentor-box p{color:#e6def2}
.mentor-box .frase{font-family:'Exo';font-style:italic;color:var(--amarelo);margin-top:12px;font-size:1.05rem}
.bonus{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.bonus .b{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--laranja);border-radius:12px;padding:16px 18px}
.bonus .b b{color:var(--titulo);display:block;margin-bottom:4px}
.bonus .b p{font-size:.88rem;color:var(--muted)}
.faixa{background:linear-gradient(135deg,var(--roxo),var(--indigo));border-radius:18px;padding:40px;text-align:center;color:#fff}
.faixa.laranja{background:linear-gradient(135deg,var(--laranja),var(--amarelo))}
.faixa h2{font-size:1.7rem;margin-bottom:8px}
.faixa p{color:#f1ebfa;max-width:560px;margin:8px auto 22px}
.faixa .selo{display:inline-block;background:rgba(249,177,4,.2);color:var(--amarelo);font-weight:700;font-size:.8rem;padding:6px 14px;border-radius:100px;margin-bottom:14px}
.faixa.laranja .selo{background:rgba(255,255,255,.25);color:#fff}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 18px;margin-bottom:8px}
.faq summary{color:var(--titulo);font-weight:700;cursor:pointer;font-size:.95rem}
.faq details p{color:var(--muted);font-size:.9rem;margin-top:8px}
.rodape{background:var(--indigo-d);color:#bdb4dc;padding:44px max(16px,8%) 22px}
.rodape .in{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.1)}
.rodape p{font-size:.88rem;max-width:320px;color:#9b93bd;margin-top:10px}
.rodape h5{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.rodape a{display:block;font-size:.88rem;padding:4px 0}
.rodape a:hover{color:var(--amarelo)}
.rodape .copy{max-width:1120px;margin:0 auto;padding-top:18px;font-size:.78rem;color:#8b84a8;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.rodape img{height:38px}

/* páginas de fluxo (aplicar, entrar, diagnóstico) */
.fluxo{max-width:680px;margin:0 auto;padding:36px 16px 60px}
.fluxo.largo{max-width:900px}
.fluxo h1{color:var(--titulo);font-size:1.6rem;margin-bottom:6px;font-weight:800}
.fluxo .lead{color:var(--muted);margin-bottom:20px}
.passos{display:flex;justify-content:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}
.passos .s{font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:6px}
.passos .s b{width:22px;height:22px;border-radius:50%;background:var(--roxo-bg);display:flex;align-items:center;justify-content:center;font-size:.74rem}
.passos .s.on{color:var(--titulo);font-weight:700}.passos .s.on b{background:var(--laranja);color:#fff}
.sucesso{max-width:560px;margin:50px auto;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:42px 28px}
.sucesso .check-ic{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--laranja),var(--amarelo));color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 18px}
.sucesso h2{color:var(--titulo);margin-bottom:8px}
.sucesso p{color:var(--muted);margin-bottom:22px}
.login-wrap{min-height:calc(100vh - 66px);display:flex;align-items:center;justify-content:center;padding:30px 16px}
.login-card{background:var(--card);border-radius:16px;overflow:hidden;width:820px;max-width:100%;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 30px 80px rgba(27,21,51,.25);border:1px solid var(--line)}
.login-lado{background:linear-gradient(160deg,var(--indigo),var(--roxo));color:#fff;padding:40px;display:flex;flex-direction:column;justify-content:center}
.login-lado h2{font-size:1.45rem;margin:18px 0 8px}
.login-lado p{color:#e6def2;font-size:.92rem}
.login-corpo{padding:40px}
.login-corpo h1{color:var(--titulo);font-size:1.35rem;margin-bottom:4px}

/* diagnóstico */
.matq{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:10px}
.matq .fase{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--laranja);margin-bottom:4px}
.matq p.q{color:var(--titulo);font-weight:600;font-size:.95rem;margin-bottom:10px}
.escala{display:flex;gap:8px}
.escala label{flex:1;text-align:center;border:1px solid var(--line);border-radius:9px;padding:9px 0;font-weight:700;color:var(--muted);cursor:pointer;font-size:.92rem;min-height:40px;transition:.12s;background:var(--card)}
.escala label:hover{border-color:var(--roxo)}
.escala label{position:relative}.escala input{position:absolute;opacity:0;width:1px;height:1px;left:50%;top:50%}
.escala label:has(input:checked){background:var(--roxo);color:#fff;border-color:var(--roxo)}
.escala label:has(input:focus-visible){outline:2px solid var(--laranja)}
.legenda-escala{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.78rem;color:var(--muted);margin-bottom:14px}
.cab-fase{background:linear-gradient(135deg,var(--indigo),var(--roxo));color:#fff;border-radius:12px;padding:14px 18px;margin:22px 0 10px}
.cab-fase b{font-family:'Exo';font-size:1.05rem}.cab-fase span{display:block;font-size:.84rem;color:#e6def2}
.score{display:flex;gap:20px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:16px}
.anel{width:96px;height:96px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center}
.anel i{width:72px;height:72px;background:var(--card);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-style:normal;font-family:'Exo';font-weight:800;color:var(--titulo);font-size:1.4rem;line-height:1}
.anel i small{font-size:.62rem;color:var(--muted);font-family:'Open Sans';font-weight:600;margin-top:3px}
.barras-fase .bf{margin-bottom:12px}
.barras-fase .bf .t{display:flex;justify-content:space-between;font-size:.86rem;margin-bottom:5px}
.niveis{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.niveis .nv{border:1px solid var(--line);border-radius:10px;padding:10px;font-size:.78rem;background:var(--card)}
.niveis .nv b{display:block;color:var(--titulo);font-size:.84rem;margin-bottom:3px}
.niveis .nv.on{border-color:var(--laranja);background:var(--ambar-bg)}

/* ============ SHELL (console e área do aluno) ============ */
.app{display:grid;grid-template-columns:252px 1fr;min-height:100vh;background:linear-gradient(90deg,var(--indigo-d) 0 252px,transparent 252px)}
.side{background:linear-gradient(180deg,var(--indigo),var(--indigo-d));color:#cfc8e6;padding:18px 14px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
.side .marca{padding:0 6px 14px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:10px}
.side .marca img{height:44px}
.side-sub{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:#9b93bd;padding:4px 8px 12px}
.nav a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:9px;font-size:.9rem;font-weight:600;color:#bdb4dc;margin-bottom:2px;transition:.13s;min-height:40px}
.nav a svg{width:18px;height:18px;flex:none;opacity:.9}
.nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.nav a.ativo{background:var(--laranja);color:#fff}
.nav a .tag{white-space:nowrap;font-size:.58rem;background:var(--amarelo);color:var(--indigo-d);padding:2px 6px;border-radius:5px;font-weight:800;margin-left:auto;letter-spacing:.05em}
.nav a .tag.cinza{background:rgba(255,255,255,.14);color:#cfc8e6}
.nav a.ativo .tag{background:#fff;color:var(--laranja)}
.nav .sep{height:1px;background:rgba(255,255,255,.1);margin:10px 4px}
.side .eu{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}
.side .eu .linha{display:flex;align-items:center;gap:10px;padding:0 6px}
.av{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--roxo),var(--indigo));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;flex:none}
.av.ouro{background:linear-gradient(135deg,var(--laranja),var(--amarelo))}
.side .eu b{color:#fff;font-size:.85rem;display:block}
.side .eu span{font-size:.72rem;color:#9b93bd}
.side .eu .acoes{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.side .eu .acoes a,.side .eu .acoes button{font-size:.76rem;color:#cfc8e6;background:rgba(255,255,255,.08);padding:6px 10px;border-radius:7px;min-height:32px;display:inline-flex;align-items:center}
.side .eu .acoes a:hover,.side .eu .acoes button:hover{background:rgba(255,255,255,.16);color:#fff}
.topo-movel{display:none}
.main{padding:28px 36px 80px;min-width:0}
.cab{margin-bottom:22px;display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}
.cab h1{font-size:1.65rem;color:var(--titulo);font-weight:800}
.cab p{color:var(--muted);margin-top:4px}
.voltar{display:inline-block;font-size:.85rem;font-weight:700;color:var(--link);margin-bottom:10px}
.row{display:grid;gap:18px}
.row.c2{grid-template-columns:2fr 1fr}.row.c2i{grid-template-columns:1fr 1fr}.row.c3{grid-template-columns:repeat(3,1fr)}.row.c4{grid-template-columns:repeat(4,1fr)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--sombra);min-width:0}
.panel h3{font-size:1.03rem;color:var(--titulo);margin-bottom:14px}
.panel-titulo{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px}
.panel-titulo h3{margin:0}
.panel.destaque{background:linear-gradient(160deg,var(--indigo),var(--roxo));color:#fff;border:none}
.panel.destaque h3{color:var(--amarelo)}
.panel.destaque p{color:#e6def2}
.metric{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.metric .lbl{font-size:.8rem;color:var(--muted);margin-bottom:8px}
.metric .v{font-family:'Exo';font-weight:800;font-size:1.95rem;color:var(--titulo);line-height:1}
.metric .d{font-size:.78rem;margin-top:6px;color:var(--muted)}
.prog{height:9px;background:var(--roxo-bg);border-radius:100px;overflow:hidden;margin:8px 0}
.prog>i{display:block;height:100%;background:linear-gradient(90deg,var(--laranja),var(--amarelo));border-radius:100px}
.tprog{height:7px;width:110px;background:var(--roxo-bg);border-radius:100px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:6px}
.tprog>i{display:block;height:100%;background:linear-gradient(90deg,var(--laranja),var(--amarelo))}
.big{font-family:'Exo';font-weight:800;font-size:2.2rem;color:var(--titulo);line-height:1}
.tabela{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;white-space:nowrap}
td b{color:var(--titulo)}
tr.clicavel{cursor:pointer}
tr.clicavel:hover td{background:var(--card-2)}
.vazio{text-align:center;padding:28px 16px;color:var(--muted);border:1px dashed var(--line);border-radius:12px;background:var(--card-2)}
.vazio b{display:block;color:var(--titulo);margin-bottom:4px}
.chips{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.chip{padding:7px 14px;border:1px solid var(--line);border-radius:100px;font-size:.82rem;font-weight:600;color:var(--muted);background:var(--card);min-height:34px;display:inline-flex;align-items:center}
.chip.ativo,.chip:hover{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.feed .ev{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.88rem}
.feed .ev:last-child{border-bottom:none}
.feed .ev .dot{width:9px;height:9px;border-radius:50%;background:var(--laranja);margin-top:6px;flex:none}
.feed .ev .t{color:var(--muted);font-size:.76rem;margin-left:auto;white-space:nowrap}
.aula{display:flex;align-items:center;gap:14px;padding:13px;border:1px solid var(--line);border-radius:12px;margin-bottom:9px;background:var(--card);transition:.13s}
.aula:hover{border-color:var(--roxo);transform:translateX(2px)}
.aula .st{width:34px;height:34px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;font-family:'Exo'}
.st.feita{background:var(--verde-bg);color:var(--green)}.st.agora{background:var(--ambar-bg);color:var(--laranja)}.st.prox{background:var(--roxo-bg);color:var(--muted)}
.aula .info{flex:1;min-width:0}.aula .info b{display:block;color:var(--titulo);font-size:.95rem}.aula .info span{font-size:.8rem;color:var(--muted)}
.player{aspect-ratio:16/9;background:linear-gradient(135deg,var(--indigo),var(--roxo));border-radius:14px;overflow:hidden;margin-bottom:16px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;text-align:center;padding:20px}
.player iframe{width:100%;height:100%;border:0;display:block}
.player.com-video{padding:0}
.player .play{width:64px;height:64px;border-radius:50%;background:var(--laranja);display:flex;align-items:center;justify-content:center;margin-bottom:12px;font-size:1.3rem}
.player span{font-size:.86rem;color:#d9d2ec;max-width:420px}
.bloco-texto{white-space:pre-line;font-size:.92rem;line-height:1.7}
.retomar{display:flex;gap:16px;align-items:center}
.miniatura{width:140px;height:84px;flex:none;border-radius:10px;background:linear-gradient(135deg,var(--roxo),var(--indigo));display:flex;align-items:center;justify-content:center}
.miniatura i{width:36px;height:36px;border-radius:50%;background:var(--laranja);color:#fff;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:.85rem}
.live{display:flex;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:var(--card);flex-wrap:wrap}
.live .data{text-align:center;flex:none;width:62px;background:var(--roxo-bg);border-radius:10px;padding:8px 0}
.live .data b{font-family:'Exo';font-weight:800;font-size:1.4rem;color:var(--titulo);display:block;line-height:1}
.live .data span{font-size:.7rem;color:var(--roxo);text-transform:uppercase;font-weight:700}
.live .info{flex:1;min-width:180px}.live .info b{color:var(--titulo);display:block}.live .info span{font-size:.82rem;color:var(--muted)}
.arquivo{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:var(--card);flex-wrap:wrap}
.arquivo .fic{width:36px;height:36px;border-radius:8px;background:var(--roxo-bg);color:var(--roxo);display:flex;align-items:center;justify-content:center;font-size:.66rem;font-weight:800;text-transform:uppercase;flex:none}
.arquivo .nm{flex:1;min-width:140px}.arquivo .nm b{display:block;color:var(--titulo);font-size:.9rem}.arquivo .nm span{font-size:.76rem;color:var(--muted)}
.post{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:12px}
.post.mentor{border-left:4px solid var(--laranja)}
.post .cab-post{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.post .cab-post b{color:var(--titulo);font-size:.9rem}.post .meta{font-size:.76rem;color:var(--muted)}
.post .corpo{font-size:.93rem;white-space:pre-line;margin:4px 0 10px;overflow-wrap:anywhere}
.post .coms{border-top:1px solid var(--line);padding-top:10px;margin-top:6px}
.com{display:flex;gap:9px;padding:6px 0;font-size:.88rem}
.com .av{width:28px;height:28px;font-size:.7rem}
.com .tx{background:var(--card-2);border-radius:10px;padding:7px 11px;flex:1;overflow-wrap:anywhere}
.com .tx b{color:var(--titulo);font-size:.82rem}
.form-linha{display:flex;gap:8px;margin-top:8px}
.form-linha .input{flex:1}
.embreve{text-align:center;max-width:600px;margin:30px auto;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:40px 28px}
.embreve .selo{display:inline-block;background:var(--amarelo);color:var(--indigo-d);font-weight:800;font-size:.72rem;padding:5px 12px;border-radius:100px;letter-spacing:.06em;margin-bottom:14px}
.embreve h2{color:var(--titulo);margin-bottom:10px}
.embreve p{color:var(--muted)}
.copiar{display:flex;gap:8px;align-items:center;background:var(--card-2);border:1px dashed var(--roxo);border-radius:10px;padding:10px;flex-wrap:wrap}
.copiar code{flex:1;font-size:.82rem;overflow-wrap:anywhere;min-width:200px;color:var(--ink)}
.kanban{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kcol{background:var(--card-2);border:1px solid var(--line);border-radius:10px;padding:12px;min-width:0}
.kcol h4{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px;display:flex;justify-content:space-between}
.kcard{display:block;background:var(--card);border:1px solid var(--line);border-radius:9px;padding:12px;margin-bottom:9px;transition:.15s}
.kcard:hover{border-color:var(--roxo);transform:translateY(-2px)}
.kcard b{color:var(--titulo);font-size:.9rem;display:block}
.kcard .s{font-size:.76rem;color:var(--muted);margin:2px 0 8px}
.dl{display:grid;grid-template-columns:160px 1fr;gap:8px 14px;font-size:.9rem}
.dl dt{color:var(--muted)}.dl dd{overflow-wrap:anywhere}
.cfg-grupo{border-top:1px solid var(--line);padding-top:16px;margin-top:6px}
.tema-btn{background:rgba(255,255,255,.08)}

/* toast */
#toasts{position:fixed;left:20px;bottom:20px;z-index:9000;display:flex;flex-direction:column;gap:10px}
.toast{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--laranja);border-radius:10px;padding:12px 16px;box-shadow:0 14px 34px rgba(27,33,48,.2);font-size:.9rem;max-width:360px;display:flex;gap:10px;align-items:flex-start;animation:sobe .3s ease both}
.toast.ok{border-left-color:var(--green)}.toast.erro{border-left-color:var(--red)}
.toast button{background:none;color:var(--muted);font-size:1.1rem;line-height:1;margin-left:auto}
@keyframes sobe{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* responsivo */
@media (max-width:1000px){
  .row.c4{grid-template-columns:1fr 1fr}.kanban{grid-template-columns:1fr 1fr}
  .row.c2,.row.c2i,.row.c3{grid-template-columns:1fr}
}
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}.lp-hero h1{font-size:2.1rem}
  .feat-grid,.ba,.bonus,.modlist{grid-template-columns:1fr}
  .steps-row{grid-template-columns:1fr 1fr;gap:24px}.steps-row::before{display:none}
  .numeros{grid-template-columns:1fr 1fr}.rodape .in{grid-template-columns:1fr}
  .mentor-box{grid-template-columns:1fr;text-align:center;padding:30px 22px}.mentor-box .ph{margin:0 auto}
  .nav-links{display:none}
  .app{grid-template-columns:1fr}
  .side{position:fixed;left:0;top:0;bottom:0;width:270px;z-index:60;transform:translateX(-100%);transition:transform .2s}
  body.menu-aberto .side{transform:none;box-shadow:0 0 0 100vmax rgba(20,14,40,.5)}
  .topo-movel{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--indigo-d);position:sticky;top:0;z-index:50}
  .topo-movel img{height:34px}
  .topo-movel button{background:rgba(255,255,255,.1);color:#fff;border-radius:8px;width:42px;height:42px;font-size:1.2rem}
  .main{padding:20px 16px 90px}
  .login-card{grid-template-columns:1fr}.login-lado{display:none}.login-corpo{padding:28px 22px}
  .niveis{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .row.c4,.kanban,.grade2,.grade3{grid-template-columns:1fr}
  .lp-nav .btn{padding:8px 12px;font-size:.82rem;min-height:38px}
  .cta-longo{display:none}
  .marca img{height:34px}
  .numeros{padding:26px 16px}.numeros b{font-size:1.9rem}
  .escala label{font-size:.84rem}
  .dl{grid-template-columns:1fr}.dl dt{margin-top:6px}
  .retomar{flex-direction:column;align-items:flex-start}
  .score{flex-direction:column;text-align:center}
  .faixa{padding:28px 18px}
  .cab h1{font-size:1.4rem}
}
@media print{.side,.topo-movel,#toasts{display:none}.app{display:block}}
a.metric{display:block;transition:border-color .15s}a.metric:hover{border-color:var(--roxo)}

.cta-curto{display:none}
@media (max-width:640px){.cta-curto{display:inline}}
.nowrap{white-space:nowrap}
@media (max-width:900px){.app{background:none}}
