/* Quiz (/quiz) — componentes exclusivos desta tela. Reusa tokens e a maior parte dos
   componentes de src/styles-v2.css (pv-*, section/container, path-steps, journey,
   flow-diagram, mechanism-shots, footer); só o que não existe lá entra aqui. */

/* Sem marca visível antes da revelação (Zona 10 do resultado) e sem botão de voltar
   (fluxo só avança): topbar neutra, centralizada, só o rótulo + progresso. */
.quiz-topbar{justify-content:center}
.quiz-topbar-label{font:700 13px/1.2 var(--sans);color:#fff}

.quiz-intro-h1{font:700 clamp(28px,8vw,40px)/1.12 var(--serif);letter-spacing:-.03em;margin:0 0 14px;text-wrap:balance}
.quiz-reassure{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.quiz-reassure li{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600}
.quiz-reassure li span{display:grid;place-items:center;width:22px;height:22px;flex:none;border-radius:50%;background:var(--acid);color:var(--ink);font-size:12px}

.quiz-qcount{font:600 11px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.quiz-strong{font-weight:800;font-size:18px;margin:18px 0 0}
.quiz-subhead{font:700 24px/1.1 var(--serif);letter-spacing:-.02em;margin:10px 0 0}
.quiz-label{font-size:13px;font-weight:700;color:var(--muted);margin:20px 0 6px}
.quiz-label:first-of-type{margin-top:16px}
.quiz-quote{font:600 17px/1.4 var(--sans);margin:0;padding:14px 16px;background:var(--paper);border:2px solid var(--line);border-radius:14px}
.quiz-q2headline{font:700 22px/1.2 var(--serif);letter-spacing:-.02em;margin:22px 0 16px}

.quiz-check-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.quiz-check-list li{display:flex;align-items:flex-start;gap:10px;font-size:15px;font-weight:600}
.quiz-check-list li span{color:var(--violet-deep);font-weight:800}

.quiz-money-grid{display:grid;gap:10px;margin-top:10px}
.quiz-money-grid.is-locked{pointer-events:none}
.quiz-money-pick{display:flex;align-items:baseline;justify-content:center;gap:2px;min-height:74px;background:var(--paper);border:2px solid var(--line);border-radius:16px;cursor:pointer;transition:border-color .18s ease,background-color .18s ease}
.quiz-money-pick:hover{border-color:var(--ink)}
.quiz-money-pick:focus-visible{outline:none;border-color:var(--ink);box-shadow:0 0 0 4px var(--acid)}
.quiz-money-pick[aria-pressed="true"]{border-color:var(--ink);background:var(--acid)}
.quiz-money-cur{font:700 22px var(--serif);align-self:flex-start;margin-top:6px}
.quiz-money-val{font:700 40px/1 var(--serif);letter-spacing:-.02em}

.quiz-biz-strip{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.quiz-biz-strip li{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:700;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:8px 13px}
.quiz-biz-strip li span{font-size:16px}

.quiz-msg-card{margin:18px 0;background:#e9fbc9;border:2px solid var(--ink);border-radius:16px;padding:16px 18px;box-shadow:3px 3px 0 var(--ink)}
.quiz-msg-biz{margin:0 0 6px;font:700 12px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--acid-deep)}
.quiz-msg-text{margin:0;font-size:16px;line-height:1.4;font-weight:600}
/* Dentro de .path-step (que já é um cartão): sem borda/sombra própria, senão vira cartão
   dentro de cartão. Só um tom de fundo para destacar a mensagem. */
.quiz-msg-card-compact{margin:14px 0 0;padding:12px 14px;background:var(--acid-soft);border:0;border-radius:10px;box-shadow:none}
.quiz-msg-card-compact .quiz-msg-biz{color:var(--acid-deep)}
.quiz-msg-card-compact .quiz-msg-text{font-size:14px}

.quiz-slop,.quiz-good-result{margin:10px 0 18px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.quiz-slop figcaption,.quiz-good-result figcaption{padding:10px 14px;font:700 11px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.quiz-good-result figcaption{color:var(--violet-deep)}

/* align-items:center (base .flow-diagram) só funciona com itens de 1 linha uniforme — a lista
   "do zero" mistura itens curtos com itens de 2-3 linhas (título + <small>), o que empurra o
   círculo pra baixo em itens altos e desalinha a linha conectora com o próximo item. */
.quiz-flow-light li{align-items:flex-start}
.quiz-flow-light .flow-diagram-num{color:var(--muted);margin-top:2px}
.quiz-flow-light li:not(:last-child)::before{background:var(--line)}
.quiz-flow-light li span:last-child{color:var(--ink)}
.quiz-flow-light li small{display:block;margin-top:3px;font-size:13px;font-weight:500;color:var(--muted)}

.quiz-recap{margin:26px 0 0;display:grid;gap:1px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.quiz-recap-row{display:flex;justify-content:space-between;gap:12px;padding:13px 16px;background:var(--paper);font-size:14px}
.quiz-recap-row span{color:var(--muted)}
.quiz-recap-row strong{text-align:right}

/* Página de resultado (scroll normal, fora da casca de pergunta única) */
.quiz-result-hero{padding-top:32px}
.quiz-result-lead{font-size:17px;color:var(--muted);margin:0 0 10px;max-width:640px}
.quiz-result-h1{font:700 clamp(32px,9vw,52px)/1.05 var(--serif);letter-spacing:-.035em;margin:0 0 16px;max-width:820px;text-wrap:balance}
.quiz-result-sub{font-size:17px;max-width:640px;margin:0}
.quiz-recap-headline{font:700 clamp(26px,7vw,36px)/1.12 var(--serif);letter-spacing:-.025em;margin:0}
.quiz-objection-q{font-style:italic;font-size:17px}
.quiz-reveal-name{font:700 clamp(30px,9vw,44px)/1 var(--serif);letter-spacing:-.02em;margin:6px 0}

.quiz-personalization-body{font-size:16px;line-height:1.55;color:var(--muted);margin:0}
.quiz-bonus-card{margin-top:20px;display:flex;gap:16px;align-items:flex-start;background:var(--violet-soft);border-radius:16px;padding:18px}
.quiz-bonus-card .journey-cover{width:64px}
.quiz-bonus-text h3{margin:0 0 8px;font:700 19px/1.15 var(--serif)}
.quiz-bonus-text ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:13px;color:var(--ink)}
.quiz-bonus-text ul li::before{content:'✓ ';color:var(--violet-deep);font-weight:800}
@media(min-width:560px){.quiz-money-grid{grid-template-columns:repeat(3,1fr)}.quiz-money-cur{font-size:16px}.quiz-money-val{font-size:32px}}

/* Aviso legal dentro do rodapé escuro (mesma cor/tamanho de .footer p) */
.footer .quiz-disclaimer-title{margin-top:18px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:10px;color:#9a9d92}

@media(prefers-reduced-motion:reduce){.quiz-money-pick{transition:none}}

/* Tela de processamento: pontos pulsando, sem número/porcentagem inventada — só sinaliza
   que algo está acontecendo enquanto o resultado é montado. */
.quiz-thinking{display:flex;gap:7px;margin:22px 0 0}
.quiz-thinking i{width:9px;height:9px;border-radius:50%;background:var(--ink);opacity:.25;animation:quiz-thinking-pulse 1.1s ease-in-out infinite}
.quiz-thinking i:nth-child(2){animation-delay:.15s}
.quiz-thinking i:nth-child(3){animation-delay:.3s}
@keyframes quiz-thinking-pulse{0%,80%,100%{opacity:.25;transform:scale(1)}40%{opacity:1;transform:scale(1.25)}}
@media(prefers-reduced-motion:reduce){.quiz-thinking i{animation:none;opacity:.55}}
