/* Banco de Questões — dark premium (teal profundo + âmbar/coral), identidade de estudo */
:root{
  --bg:#07272c;
  --bg-deep:#051d21;
  --panel:#0b3238;
  --panel-soft:#0e3b43;
  --line:rgba(23,162,152,.22);
  --light-line:rgba(244,239,230,.14);
  --cream:#f4efe6;
  --cream-dim:rgba(244,239,230,.72);
  --cream-faint:rgba(244,239,230,.62);
  --teal:#17a298;
  --teal-deep:#0f7a72;
  --amber:#f2a93b;
  --coral:#e86a4a;
  --clay:#c0603a;
  --terracota:#C35A3A;
  --terracota-dark:#A64A28;
  --green:#2fbf71;
  --red:#ef6461;
  --display:"Fraunces",Georgia,serif;
  --sans:"Manrope","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:
    radial-gradient(900px 480px at 85% -80px, rgba(23,162,152,.16), transparent 60%),
    radial-gradient(700px 420px at -10% 20%, rgba(242,169,59,.08), transparent 60%),
    var(--bg);
  color:var(--cream);font-family:var(--sans);min-height:100vh;
  overflow-x:hidden;
}
h1,h2,h3{font-family:var(--display);line-height:1.15;margin:0 0 10px}
p{margin:0 0 12px}
a{color:var(--amber)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px;width:100%}
img,canvas,video{max-width:100%}

/* ---------- topbar ---------- */
.topbar{position:sticky;top:0;z-index:50;background:rgba(5,29,33,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--light-line)}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--cream)}
.brand-mark{font-size:1.6rem}
.brand-text{font-family:var(--display);font-weight:700;font-size:1.05rem;line-height:1.1;display:flex;flex-direction:column}
.brand-text small{font-family:var(--sans);font-weight:600;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}
.topnav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.nav-btn{background:transparent;border:1px solid transparent;color:var(--cream-dim);font:700 .82rem var(--sans);padding:8px 14px;border-radius:999px;cursor:pointer;text-decoration:none}
.nav-btn:hover{color:var(--cream);border-color:var(--light-line)}
.nav-btn.active{background:rgba(242,169,59,.14);color:var(--amber);border-color:rgba(242,169,59,.4)}
.nav-link{border-color:var(--light-line)}

/* ---------- views ---------- */
.view{display:none;padding:26px 0 10px}
.view.show{display:block;animation:fadeUp .35s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- hero ---------- */
.hero{padding:26px 0 8px}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:var(--cream-dim)}
.eyebrow::before{content:"";width:40px;height:1px;background:var(--coral);flex:0 0 auto}
.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 0 rgba(242,169,59,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 12px rgba(242,169,59,0)}100%{box-shadow:0 0 0 0 rgba(242,169,59,0)}}
.hero h1{font-size:clamp(2rem,5.4vw,3.2rem);font-weight:700}
.hero h1 em{font-style:italic;color:var(--amber)}
.hero-sub{color:var(--cream-dim);font-size:1.02rem;max-width:640px}
.hero-stats{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0 6px}
.stat-chip{background:rgba(23,162,152,.12);border:1px solid var(--line);border-radius:14px;padding:10px 16px;font-size:.85rem;color:var(--cream-dim)}
.stat-chip b{display:block;font-size:1.25rem;color:var(--cream);font-family:var(--display)}

/* ---------- destaque modo concurso ---------- */
.destaque-card{
  margin:22px 0;background:linear-gradient(135deg, rgba(200,96,58,.22), rgba(23,162,152,.16));
  border:1px solid rgba(242,169,59,.45);border-radius:20px;padding:24px;
  display:flex;gap:18px;align-items:center;flex-wrap:wrap;position:relative;overflow:hidden;
}
.destaque-card .d-ic{font-size:2.6rem}
.destaque-card h2{font-size:1.4rem;margin-bottom:6px}
.destaque-card p{color:var(--cream-dim);font-size:.92rem;margin-bottom:4px;max-width:560px}
.destaque-tag{display:inline-block;background:var(--amber);color:#3a2703;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:4px 12px;margin-bottom:10px}
.destaque-card .btn{margin-left:auto}

/* ---------- sections / cards ---------- */
.section-head{margin:30px 0 16px}
.section-head h2{font-size:1.5rem}
.section-head p{color:var(--cream-faint);font-size:.92rem}
.temas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.tema-card{background:var(--panel);border:1px solid var(--light-line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px;transition:transform .15s ease,border-color .15s ease}
.tema-card.disponivel:hover{transform:translateY(-3px);border-color:rgba(242,169,59,.5)}
.tema-card.bloqueado{opacity:.75}
.tema-num{font-size:.7rem;font-weight:800;letter-spacing:.16em;color:var(--teal);text-transform:uppercase}
.tema-card h3{font-size:1.02rem;font-family:var(--sans);font-weight:700;margin:0}
.tema-meta{font-size:.8rem;color:var(--cream-faint)}
.tema-card .btn{margin-top:auto}
.badge-breve{display:inline-block;background:rgba(242,169,59,.14);color:var(--amber);border:1px dashed rgba(242,169,59,.5);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}
.badge-prod{display:inline-block;background:rgba(23,162,152,.14);color:var(--teal);border:1px dashed rgba(23,162,152,.5);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}
.badge-ok{display:inline-block;background:rgba(47,191,113,.14);color:var(--green);border:1px solid rgba(47,191,113,.4);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}

/* ---------- buttons / forms ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;padding:12px 22px;font:700 .9rem var(--sans);cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn-cta{background:linear-gradient(135deg,var(--terracota),var(--terracota-dark));color:#fff;box-shadow:0 6px 20px rgba(195,90,58,.4);text-shadow:0 1px 2px rgba(0,0,0,.25)}
.btn-cta:hover{box-shadow:0 8px 26px rgba(195,90,58,.55)}
.btn-ghost{background:rgba(244,239,230,.07);color:var(--cream);border:1px solid var(--light-line)}
.btn-ghost:hover{background:rgba(244,239,230,.12)}
.btn-outline{background:transparent;color:var(--cream-dim);border:1px solid var(--light-line)}
.btn-outline:hover{color:var(--cream);border-color:var(--cream-faint)}
.btn-sm{padding:8px 16px;font-size:.8rem}
.btn-block{width:100%}
.btn[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}
.panel{background:var(--panel);border:1px solid var(--light-line);border-radius:20px;padding:26px;margin:18px 0}
.panel h3{font-size:1.1rem;margin-bottom:14px}
.panel-sub{color:var(--cream-dim);font-size:.92rem}
.field{margin-bottom:14px;text-align:left}
.field label{display:block;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cream-dim);margin-bottom:6px}
.field input,.field select{width:100%;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:12px;color:var(--cream);padding:12px 14px;font:500 1rem var(--sans);outline:none}
.field input:focus,.field select:focus{border-color:var(--amber);box-shadow:0 0 0 3px rgba(242,169,59,.18)}

/* foco de teclado visível (WCAG 2.4.7) */
.btn:focus-visible,.alt:focus-visible,.nav-btn:focus-visible,.ap-btn:focus-visible,.field input:focus-visible,.field select:focus-visible,.radio-card:focus-within{
  outline:3px solid var(--terracota);outline-offset:2px;
}
/* respeita quem prefere menos movimento (WCAG 2.3.3) */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .view.show{animation:none}
}
.form-error{display:none;background:rgba(239,100,97,.12);border:1px solid rgba(239,100,97,.5);color:#ffb3b1;border-radius:12px;padding:10px 14px;font-size:.85rem;margin-bottom:14px}
.form-error.show{display:block}
.radio-cards{display:grid;gap:10px;margin:16px 0}
.radio-card{display:flex;gap:12px;align-items:flex-start;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:14px;padding:14px 16px;cursor:pointer}
.radio-card input{margin-top:4px;accent-color:var(--amber)}
.radio-card:has(input:checked){border-color:var(--amber);background:rgba(242,169,59,.08)}
.radio-card b{display:block;font-size:.95rem}
.radio-card span{font-size:.82rem;color:var(--cream-faint)}

/* ---------- quiz ---------- */
.quiz-topbar{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.quiz-progress{flex:1;min-width:180px;font-size:.85rem;color:var(--cream-dim)}
.progress-track{height:8px;background:rgba(244,239,230,.1);border-radius:999px;margin-top:6px;overflow:hidden}
.progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--amber));border-radius:999px;transition:width .3s ease}
.quiz-timer{background:var(--bg-deep);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:800;font-variant-numeric:tabular-nums}
.quiz-timer.urgente{border-color:var(--red);color:#ffb3b1;animation:pulse 1s infinite}
.questao-card{background:var(--panel);border:1px solid var(--light-line);border-radius:20px;padding:26px;margin-bottom:16px}
.q-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.q-badge{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:4px 12px;background:rgba(23,162,152,.14);color:var(--teal);border:1px solid rgba(23,162,152,.4)}
.q-badge.banca{background:rgba(242,169,59,.14);color:var(--amber);border-color:rgba(242,169,59,.45)}
.q-enunciado{font-size:1.05rem;line-height:1.6;margin-bottom:18px}
.alternativas{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.alt{display:flex;gap:12px;align-items:flex-start;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:14px;padding:14px 16px;cursor:pointer;font-size:.95rem;line-height:1.5;transition:border-color .15s ease,background .15s ease;width:100%;text-align:left;color:var(--cream);font-family:var(--sans)}
.alt:hover:not([disabled]){border-color:var(--teal)}
.alt .letra{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:rgba(23,162,152,.15);color:var(--teal);font-weight:800;display:flex;align-items:center;justify-content:center;text-transform:uppercase}
.alt[disabled]{cursor:default}
.alt.certa{border-color:var(--green);background:rgba(47,191,113,.1)}
.alt.certa .letra{background:var(--green);color:#06281a}
.alt.errada{border-color:var(--red);background:rgba(239,100,97,.08)}
.alt.errada .letra{background:var(--red);color:#3a0d0c}
.feedback{margin-top:16px;border-radius:14px;padding:14px 16px;font-weight:700;display:none}
.feedback.show{display:block}
.feedback.ok{background:rgba(47,191,113,.12);border:1px solid rgba(47,191,113,.45);color:#9fe8bf}
.feedback.no{background:rgba(239,100,97,.1);border:1px solid rgba(239,100,97,.45);color:#ffb3b1}
.comentario{margin-top:14px;display:none;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:14px;padding:16px 18px}
.comentario.show{display:block}
.comentario h4{margin:0 0 10px;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.comentario .c-item{margin-bottom:10px;font-size:.9rem;line-height:1.55;color:var(--cream-dim)}
.comentario .c-item b{color:var(--cream);text-transform:uppercase}
.comentario .c-item.destaque b{color:var(--green)}
.comentario .c-geral{font-size:.92rem;line-height:1.6;color:var(--cream-dim);border-left:3px solid var(--teal);padding-left:12px}
.q-audio-row{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap}
/* player de áudio por alternativa */
.alt-player{display:flex;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;background:rgba(255,255,255,.03);border:1px solid var(--light-line);border-radius:10px}
.ap-btn{min-width:44px;min-height:44px;border-radius:50%;border:1px solid var(--light-line);background:var(--bg-panel);color:var(--cream);font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .12s,border-color .12s}
.ap-btn:hover{transform:scale(1.08);border-color:var(--amber)}
.ap-btn[data-act="play"]{border-color:var(--teal)}
.ap-status{font-size:.78rem;color:var(--cream-dim);margin-left:4px}
.alt-player.tocando{border-color:var(--teal)}
.alt-player.tocando .ap-status{color:var(--green)}
.quiz-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.quiz-nav .btn{flex:1;min-width:140px}
.quiz-actions-row{display:flex;justify-content:center;margin:6px 0 20px}

/* ---------- resultado ---------- */
.result-panel{text-align:center;padding:40px 26px}
.result-score{font-family:var(--display);font-size:3.4rem;font-weight:700;color:var(--amber);margin:6px 0}
.result-msg{color:var(--cream-dim);max-width:480px;margin:0 auto 18px}
.result-xp{display:inline-block;background:rgba(242,169,59,.14);border:1px solid rgba(242,169,59,.45);color:var(--amber);border-radius:999px;padding:8px 20px;font-weight:800;margin-bottom:20px}
.result-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/* ---------- dashboard ---------- */
.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}
.dash-card{background:var(--panel);border:1px solid var(--light-line);border-radius:16px;padding:18px;text-align:center}
.dash-card .v{font-family:var(--display);font-size:1.9rem;font-weight:700;color:var(--amber)}
.dash-card .l{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream-faint);margin-top:4px}
.dash-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.chart-box{position:relative;min-height:220px}
.chart-donut{max-width:300px;margin:0 auto}
.badges-list{display:grid;gap:10px}
.badge-item{display:flex;gap:12px;align-items:center;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:14px;padding:12px 14px}
.badge-item .b-ic{font-size:1.5rem}
.badge-item.locked{opacity:.45}
.badge-item b{display:block;font-size:.9rem}
.badge-item span{font-size:.78rem;color:var(--cream-faint)}
.dica{background:var(--bg-deep);border:1px solid var(--light-line);border-left:3px solid var(--amber);border-radius:12px;padding:14px 16px;margin-bottom:10px}
.dica b{display:block;margin-bottom:4px}
.dica p{font-size:.88rem;color:var(--cream-dim);margin:0}

/* ---------- lead modal / toast / footer ---------- */
.lead-overlay{position:fixed;inset:0;z-index:100;background:rgba(4,20,23,.82);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}
.lead-overlay[hidden]{display:none}
.lead-card{background:var(--panel-soft);border:1px solid rgba(242,169,59,.4);border-radius:22px;padding:32px;max-width:420px;width:100%;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.lead-badge{font-size:2.4rem;margin-bottom:6px}
.lead-card h2{font-size:1.4rem}
.lead-sub{color:var(--cream-dim);font-size:.9rem;margin-bottom:18px}
.lead-note{font-size:.75rem;color:var(--cream-faint);margin:12px 0 0}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:var(--panel-soft);border:1px solid var(--line);color:var(--cream);border-radius:999px;padding:12px 22px;font-size:.88rem;font-weight:600;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:120;max-width:calc(100vw - 40px);text-align:center}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.foot{border-top:1px solid var(--light-line);margin-top:30px;padding:20px 0 30px;color:var(--cream-faint);font-size:.82rem}
.foot-inner{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}

/* ---------- paywall / CTA freemium ---------- */
.nav-unlock{border-color:rgba(242,169,59,.55)!important;color:var(--amber)!important;background:rgba(242,169,59,.1)}
.pay-card{position:relative;text-align:left}
.pay-card h2,.pay-card .lead-sub{text-align:center}
.pay-fechar{position:absolute;top:12px;right:14px;background:transparent;border:none;color:var(--cream-faint);font-size:1.1rem;cursor:pointer;padding:6px}
.pay-fechar:hover{color:var(--cream)}
.pay-benefits{list-style:none;margin:6px 0 16px;padding:0;display:grid;gap:8px;font-size:.9rem;color:var(--cream-dim)}
.pay-preco-box{text-align:center;margin:4px 0 16px}
.pay-preco-box .pay-preco{font-family:var(--display);font-size:2.2rem;font-weight:700;color:var(--amber)}
.pay-preco-box small{display:block;color:var(--cream-faint);font-size:.75rem;margin-top:2px}
.badge-paywall{display:inline-block;background:rgba(242,169,59,.12);color:var(--amber);border:1px dashed rgba(242,169,59,.55);border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:700}
.cta-completo{
  margin:22px 0;background:linear-gradient(135deg, rgba(242,169,59,.16), rgba(232,106,74,.12));
  border:1px solid rgba(242,169,59,.5);border-radius:18px;padding:20px 22px;
  display:flex;gap:16px;align-items:center;flex-wrap:wrap;
}
.cta-completo strong{font-size:1.02rem}
.cta-completo p{color:var(--cream-dim);font-size:.88rem;margin:6px 0 0;max-width:560px}
.cta-completo .btn{margin-left:auto}
.destaque-btns{margin-left:auto;display:flex;flex-direction:column;gap:10px;align-items:stretch}
@media(max-width:700px){
  .cta-completo .btn{margin-left:0;width:100%}
  .destaque-btns{margin-left:0;width:100%}
}

@media(max-width:700px){
  .dash-cols{grid-template-columns:1fr}
  .questao-card{padding:18px}
  .destaque-card{padding:20px}
  .destaque-card .btn{margin-left:0;width:100%}
  .topbar-inner{padding:10px 16px}
  .brand-text{font-size:.95rem}
  .nav-btn{padding:7px 10px;font-size:.76rem}
  .quiz-nav .btn{min-width:0}
}

/* ---------- cronômetro sticky (Q18) ---------- */
.quiz-topbar{position:sticky;top:64px;z-index:40;background:rgba(7,39,44,.94);backdrop-filter:blur(8px);padding:10px 0;border-radius:14px}

/* ---------- lead gate: opt-in + perfil (Q4) ---------- */
.optin{display:flex;gap:10px;align-items:flex-start;text-align:left;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:12px;padding:12px 14px;margin:0 0 16px;cursor:pointer;font-size:.85rem;color:var(--cream-dim)}
.optin input{margin-top:3px;accent-color:var(--terracota);width:18px;height:18px;flex:0 0 auto}
.optin small{color:var(--cream-faint);font-size:.74rem}

/* ---------- como funciona (D1) ---------- */
.como-funciona h2{font-size:1.35rem;max-width:520px}
.passos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:16px}
.passo{background:var(--bg-deep);border:1px solid var(--light-line);border-radius:14px;padding:16px}
.p-num{display:inline-flex;width:32px;height:32px;border-radius:50%;background:var(--terracota);color:#fff;font-weight:800;align-items:center;justify-content:center;margin-bottom:10px}
.passo b{display:block;margin-bottom:4px}
.passo p{font-size:.85rem;color:var(--cream-dim);margin:0}

/* ---------- selo de autoria / prova social (Q16) ---------- */
.autor-card{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.autor-card img{width:110px;height:110px;object-fit:cover;border-radius:50%;border:3px solid var(--terracota);flex:0 0 auto}
.autor-card h3{margin:8px 0 6px}
.autor-card p{color:var(--cream-dim);font-size:.9rem;max-width:600px}

/* ---------- revisão de hoje / desafio (A1, A10) ---------- */
.revisao-card{margin:22px 0;background:linear-gradient(135deg,rgba(195,90,58,.2),rgba(23,162,152,.14));border:1px solid rgba(195,90,58,.55);border-radius:20px;padding:22px 24px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.revisao-card .d-ic{font-size:2.4rem}
.revisao-card h2{font-size:1.25rem;margin-bottom:4px}
.revisao-card p{color:var(--cream-dim);font-size:.9rem;margin:0;max-width:560px}
.revisao-card .btn{margin-left:auto}

/* ---------- paywall: âncora + garantia (Q7) ---------- */
.pay-ancora{font-size:.88rem;color:var(--cream-dim);background:rgba(242,169,59,.08);border:1px solid rgba(242,169,59,.35);border-radius:12px;padding:10px 14px;margin:0 0 10px}
.pay-garantia{font-size:.88rem;color:var(--cream-dim);background:rgba(47,191,113,.08);border:1px solid rgba(47,191,113,.35);border-radius:12px;padding:10px 14px;margin:0 0 16px}

/* ---------- trilhas por tema (A3) ---------- */
.trilha{margin-top:10px}
.trilha .t-linha{display:flex;justify-content:space-between;font-size:.74rem;color:var(--cream-dim);margin-bottom:4px}
.trilha .t-bar{height:8px;background:rgba(244,239,230,.1);border-radius:999px;overflow:hidden}
.trilha .t-fill{height:100%;background:linear-gradient(90deg,var(--teal),var(--amber));border-radius:999px;transition:width .3s ease}
.trilha .t-medalha{font-size:.78rem;font-weight:800;color:var(--amber)}

/* ---------- marca-texto (A5) ---------- */
.hl{background:rgba(242,169,59,.45);border-radius:3px;padding:0 1px}
.q-marcas{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px;font-size:.78rem;color:var(--cream-dim)}
.q-marcas[hidden]{display:none}
.q-marcas .btn{min-height:0}

/* ---------- áudio: enunciado + velocidade (Q10, Q13, D3) ---------- */
.q-audio-row{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.audio-enunciado{display:flex;align-items:center;gap:8px;background:rgba(23,162,152,.1);border:1px solid var(--line);border-radius:999px;padding:6px 14px 6px 6px;font-size:.82rem;color:var(--cream-dim)}
.audio-enunciado .ap-status{color:var(--green)}
.rate-select{background:var(--bg-deep);border:1px solid var(--light-line);color:var(--cream-dim);border-radius:999px;padding:8px 10px;font-size:.78rem;min-height:44px}
.marcada-on{border-color:var(--amber)!important;color:var(--amber)!important}

/* ✓/✗ além da cor (Q17) */
.alt .okx{margin-left:auto;font-weight:800;font-size:1.1rem;flex:0 0 auto}
.alt.certa .okx{color:var(--green)}
.alt.errada .okx{color:var(--red)}

/* ---------- skeletons / empty / erro (Q19) ---------- */
.sk-card{background:var(--panel);border:1px solid var(--light-line);border-radius:16px;padding:18px;min-height:150px;position:relative;overflow:hidden}
.sk-card::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(244,239,230,.07) 50%,transparent 70%);animation:shimmer 1.4s infinite}
@keyframes shimmer{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.sk-line{height:14px;border-radius:7px;background:rgba(244,239,230,.1);margin:10px 0}
.empty-state{text-align:center;padding:36px 20px}
.empty-state .d-ic{font-size:2.6rem}
.empty-state p{color:var(--cream-dim);max-width:440px;margin:8px auto 18px}

/* ---------- plano semanal (D4) ---------- */
.plano-tabela{width:100%;border-collapse:collapse;font-size:.88rem}
.plano-tabela th{text-align:left;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cream-faint);padding:8px 6px;border-bottom:1px solid var(--light-line)}
.plano-tabela td{padding:10px 6px;border-bottom:1px solid rgba(244,239,230,.06);color:var(--cream-dim)}
.plano-tabela td:first-child{font-weight:800;color:var(--cream);white-space:nowrap}
.plano-tabela .btn{min-height:0;padding:6px 14px;font-size:.76rem}

/* ---------- card compartilhável (A10) ---------- */
.share-card{background:var(--bg-deep);border:1px dashed rgba(195,90,58,.6);border-radius:16px;padding:20px;margin:18px auto;max-width:520px;text-align:center}
.share-card .share-texto{background:rgba(244,239,230,.05);border-radius:12px;padding:14px;font-size:.9rem;color:var(--cream);white-space:pre-line;margin:12px 0}
.share-card .share-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/* ---------- micro-form depoimento (Q16) ---------- */
.depo-form{margin:22px auto 0;max-width:520px;text-align:left}
.depo-form textarea{width:100%;background:var(--bg-deep);border:1px solid var(--light-line);border-radius:12px;color:var(--cream);padding:12px 14px;font:500 1rem var(--sans);min-height:84px;resize:vertical}
.depo-form textarea:focus{border-color:var(--amber);outline:none}

/* ---------- diagnóstico pós-simulado (A4) ---------- */
.diag{background:var(--bg-deep);border:1px solid var(--light-line);border-radius:16px;padding:18px;margin:18px auto;max-width:560px;text-align:left}
.diag h3{font-size:1rem;margin-bottom:10px}
.diag .d-linha{display:flex;justify-content:space-between;font-size:.85rem;color:var(--cream-dim);padding:6px 0;border-bottom:1px solid rgba(244,239,230,.06)}
.diag .d-linha b{color:var(--cream)}

/* ---------- filtro banca (D5) ---------- */
.filtro-banca{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}
.filtro-banca label{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cream-dim)}

/* ---------- CTA resultado adaptado (Q9) ---------- */
.result-cta-box{background:linear-gradient(135deg,rgba(195,90,58,.18),rgba(23,162,152,.12));border:1px solid rgba(195,90,58,.5);border-radius:16px;padding:18px;margin:20px auto;max-width:560px}
.result-cta-box p{font-size:.95rem;margin-bottom:12px}

@media(max-width:700px){
  .quiz-topbar{top:58px}
  .revisao-card .btn{margin-left:0;width:100%}
  .autor-card img{width:84px;height:84px}
}
