:root{
  --bg:#ffffff; --fg:#18181b; --muted:#6b6b76; --soft:#9a9aa3;
  --opt:#f1f2f7; --opt-fg:#18181b; --line:#ececf1;
  --sel:#18181b; --sel-fg:#ffffff;
  --accent:#18181b; --back:#f1f2f7; --back-fg:#3a3a40;
  --red:#e44343; --green:#4cc85a; --blue:#4f6bd8; --orange:#ff7a00;
  --card:#f8f8fa;
}
body.dark{
  --bg:#1b1b1d; --fg:#ffffff; --muted:#c9c9cf; --soft:#8b8b93;
  --opt:#2a2a2d; --opt-fg:#ffffff; --line:#3a3a3e;
  --accent:#e44343; --back:#2c2c2f; --back-fg:#e7e7ea;
  --card:#262628;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{min-height:100%}
body{background:var(--bg);color:var(--fg);font-family:'Roboto',Arial,sans-serif;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}
img,svg{display:block;max-width:100%}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
[hidden]{display:none!important}

.app{max-width:568px;margin:0 auto;padding:24px 16px 110px;min-height:100vh;position:relative}
.hdr{height:36px;display:flex;align-items:center}
.hdr img{height:36px;width:auto}
.hdr .logo-dark{display:none}
body.dark .hdr .logo-light{display:none}
body.dark .hdr .logo-dark{display:block}

/* Progresso */
.prog{position:relative;width:300px;max-width:80%;height:20px;margin:30px auto 0}
.prog-track,.prog-fill{position:absolute;left:0;top:50%;height:4px;margin-top:-2px;border-radius:4px}
.prog-track{right:0;background:var(--opt)}
.prog-fill{background:var(--accent);transition:width .5s ease}
.prog-dot{position:absolute;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--opt);transition:background .3s}
.prog-dot.on{background:var(--accent)}

.screen{animation:fade .35s ease}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.title{font-size:20px;line-height:1.35;font-weight:700;text-align:center;margin:36px auto 0;max-width:536px}
.title.lg{font-size:24px;margin-top:30px}
.title.xl{font-size:30px;margin-top:30px}
.title u{text-underline-offset:3px}
.g{color:var(--green)} .b{color:var(--blue)}
.sub{font-size:16px;text-align:center;margin-top:16px;color:var(--fg)}
.sub.b{color:var(--blue)}
.note-sm{font-size:12px;color:var(--soft);text-align:center;margin-top:10px}
.text{font-size:15px;line-height:1.5;text-align:center;margin-top:24px}

.badge{display:flex;width:max-content;margin:24px auto 0;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;font-weight:700;color:#fff;text-transform:uppercase}
.badge.red{background:var(--red)} .badge.orange{background:var(--orange)}
.badge + .title{margin-top:20px}

/* Opções */
.opts{max-width:536px;margin:32px auto 0;display:flex;flex-direction:column;gap:9px}
.opt{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:12px 17px;border-radius:8px;background:var(--opt);color:var(--opt-fg);font-size:15px;font-weight:500;text-align:left;transition:background .15s,color .15s}
.opt i{flex:0 0 22px;height:22px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;margin-left:12px}
.opt i svg{opacity:0;width:12px;height:12px}
.opt.sel{background:var(--sel);color:var(--sel-fg)}
.opt.sel i svg{opacity:1}
.opt .emo{font-size:20px;margin-right:12px}
.opt-l{display:flex;align-items:center}

/* Dica exibida após a resposta (mostra como o plano ajuda) */
.tip{max-width:536px;margin:16px auto 0;padding:14px 16px;border-radius:10px;background:#eaf8ec;border:1px solid #bfe8c5;display:flex;gap:12px;align-items:flex-start;animation:tipIn .35s cubic-bezier(.3,1.4,.6,1)}
.tip p{font-size:14px;line-height:1.45;color:#1f4d27}
.tip b{color:#14381b}
.tip-ic{flex:0 0 24px;height:24px;border-radius:50%;background:var(--green);color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}
@keyframes tipIn{from{opacity:0;transform:translateY(8px) scale(.97)}}
@media (prefers-reduced-motion:reduce){.tip{animation:none}}

/* Escala 1 a 5 */
.scale-hint{font-size:16px;color:var(--muted);text-align:center;margin-top:32px}
.scale{display:flex;justify-content:center;gap:8px;margin-top:24px}
.scale button{width:74px;height:74px;border-radius:8px;background:var(--opt);font-size:16px;font-weight:700;transition:background .15s,color .15s}
.scale button.sel{background:var(--sel);color:var(--sel-fg)}
.scale-lbl{display:flex;justify-content:space-between;width:402px;max-width:100%;margin:16px auto 0;font-size:14px;color:var(--muted)}
@media (max-width:480px){.scale button{width:calc((100% - 32px)/5);max-width:64px;height:60px}.scale-lbl{width:calc(100% - 8px);max-width:352px}}

/* Navegação inferior */
.nav{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:16px;padding:16px 16px env(safe-area-inset-bottom,0px);background:linear-gradient(to top,var(--bg) 75%,transparent);z-index:3}
.nav button{width:153px;height:52px;border-radius:8px 8px 0 0;font-size:18px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:10px}
.nav .back{background:var(--back);color:var(--back-fg)}
.nav .next{background:var(--accent);color:#fff}
.nav .next:disabled{opacity:.4;cursor:default}
.nav svg{width:16px;height:16px}

.cta{display:flex;align-items:center;justify-content:center;width:100%;max-width:536px;min-height:56px;margin:32px auto 0;border-radius:8px;background:var(--red);color:#fff;font-size:18px;font-weight:700;box-shadow:0 14px 30px -6px rgba(228,67,67,.55);animation:pulse 2.2s ease-in-out infinite}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.02)}}

.src{display:flex;align-items:center;gap:12px;max-width:536px;margin:20px auto 0;padding:10px 12px;border-radius:8px;background:var(--card);text-align:left}
.src .ic{flex:0 0 36px;height:36px;border-radius:50%;background:#1b1b1d;display:flex;align-items:center;justify-content:center}
.src small{display:block;font-size:12px;color:var(--soft)}
.src b{font-size:13px;font-weight:500;line-height:1.35}

.fig{max-width:536px;margin:24px auto 0}
.fig img{width:100%;height:auto;border-radius:8px}

/* Estatística em ícones (1 em cada 10) */
.people{display:flex;justify-content:center;align-items:flex-end;gap:clamp(6px,2.2vw,14px);margin:30px auto 0;max-width:460px;padding:18px 12px 16px;border-radius:14px;background:radial-gradient(ellipse at 50% 100%,rgba(76,200,90,.14),transparent 70%)}
.people .p{width:clamp(24px,7vw,34px);height:auto;animation:pop .45s cubic-bezier(.3,1.6,.6,1) both;animation-delay:calc(var(--i) * 90ms)}
.people .p.on{filter:drop-shadow(0 0 7px rgba(76,200,90,.55));animation-name:pop,glow;animation-duration:.45s,2.4s;animation-delay:calc(var(--i) * 90ms),1.2s;animation-iteration-count:1,infinite}
.people .p.off{opacity:.55}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.6)}}
@keyframes glow{50%{filter:drop-shadow(0 0 12px rgba(76,200,90,.85))}}
.people-leg{display:flex;justify-content:center;gap:22px;margin-top:12px;font-size:13px;color:var(--muted)}
.people-leg span{display:flex;align-items:center;gap:8px}
.people-leg i{width:12px;height:12px;border-radius:50%;background:#4a4a4f}
.people-leg i.on{background:#4cc85a;box-shadow:0 0 6px rgba(76,200,90,.7)}
@media (prefers-reduced-motion:reduce){.people .p{animation:none!important}}
.bigstat{text-align:center;margin-top:18px}
.bigstat strong{display:block;font-size:56px;font-weight:900;line-height:1;color:var(--green)}
.bigstat span{display:block;font-size:16px;margin-top:8px;line-height:1.4}

/* Barra empilhada do estudo */
.stack{max-width:536px;margin:26px auto 0}
.stack .bar{display:flex;height:34px;border-radius:8px;overflow:hidden;font-size:13px;font-weight:700;color:#18181b}
.stack .bar div{display:flex;align-items:center;justify-content:center}
.stack .leg{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:13px}
.stack .leg span{display:flex;align-items:center;gap:8px}
.stack .leg i{width:12px;height:12px;border-radius:3px;display:inline-block}

/* Analisando */
.anl{max-width:536px;margin:40px auto 0;display:flex;flex-direction:column;gap:26px}
.anl .row .l{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);margin-bottom:10px}
.anl .row.active .l,.anl .row.done .l{color:var(--fg);font-weight:700}
.anl .row .l span{display:flex;align-items:center;gap:14px}
.anl .ring{width:18px;height:18px;border-radius:50%;border:2px solid transparent;border-top-color:var(--red);border-left-color:var(--red);animation:spin .8s linear infinite;display:none}
.anl .row.active .ring{display:block}
.anl .track{height:9px;border-radius:9px;background:var(--opt);overflow:hidden}
.anl .fill{height:100%;width:0;border-radius:9px;background:var(--fg)}
@keyframes spin{to{transform:rotate(360deg)}}
.ready{position:fixed;inset:0;background:rgba(255,255,255,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;animation:fade .3s;z-index:5;padding:16px;text-align:center}
.ready i{width:80px;height:80px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center}
.ready h2{font-size:30px;font-weight:700}

/* Resultado */
.feat{max-width:536px;margin:24px auto 0;display:flex;flex-direction:column;gap:14px}
.feat div{display:flex;align-items:center;gap:12px;font-size:15px}
.feat svg{width:20px;height:20px;flex:0 0 20px}
.summary{max-width:536px;margin:24px auto 0;padding:16px;border-radius:10px;background:var(--card);display:grid;grid-template-columns:1fr 1fr;gap:14px}
.summary div small{display:block;font-size:12px;color:var(--soft)}
.summary div b{font-size:15px}
.cmp{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
.cmp th,.cmp td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:center}
.cmp th:first-child,.cmp td:first-child{text-align:left}
.cmp th{font-size:13px;color:var(--muted);font-weight:500}
.yes{color:var(--green);font-weight:700} .no{color:var(--red);font-weight:700}
.section-t{font-size:16px;font-weight:700;text-align:center;margin:34px 0 4px}
.review{max-width:536px;margin:10px auto 0;padding:14px 16px;border-radius:8px;background:var(--card);text-align:left}
.review .top{display:flex;justify-content:space-between;font-size:12px;color:var(--soft)}
.review h4{font-size:14px;margin-top:8px}
.review p{font-size:13px;line-height:1.5;margin-top:6px}
.rv-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:536px;margin:12px auto 0;padding:4px 2px 8px}
.rv-track::-webkit-scrollbar{display:none}
.rv{flex:0 0 86%;scroll-snap-align:start;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 16px 14px;display:flex;flex-direction:column;gap:8px}
.rv-stars{display:flex;gap:2px;font-size:18px;line-height:1;color:#d4d4d8}
.rv-stars .on{color:#ff9a1f}
.rv h4{font-size:15px}
.rv p{font-size:14px;line-height:1.5;color:var(--fg);flex:1}
.rv-who{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--soft);margin-top:4px}
.rv-av{width:26px;height:26px;border-radius:50%;background:var(--opt);color:var(--soft);display:flex;align-items:center;justify-content:center}
.rv-ok{margin-left:auto;color:var(--green);font-weight:500}
.rv-dots{display:flex;justify-content:center;gap:8px;margin-top:6px}
.rv-dots button{width:8px;height:8px;border-radius:8px;background:var(--line);transition:width .25s,background .25s}
.rv-dots button.on{width:22px;background:var(--fg)}
.price{max-width:536px;margin:30px auto 0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;background:var(--card);border:1px solid var(--line)}
.price + .cta{margin-top:12px}
.price-l{display:flex;flex-direction:column;gap:2px}
.price-l small{font-size:12px;color:var(--soft)}
.price-from{font-size:14px;color:var(--muted)}
.price-from s{text-decoration-color:var(--red);text-decoration-thickness:2px}
.price-now{font-size:15px;color:var(--fg)}
.price-now b{font-size:30px;font-weight:900;color:var(--green);letter-spacing:-.5px}
.price-off{flex:0 0 auto;padding:8px 10px;border-radius:8px;background:var(--red);color:#fff;font-size:15px;font-weight:900;transform:rotate(-3deg);box-shadow:0 6px 14px -4px rgba(228,67,67,.5)}
.offer{max-width:536px;margin:20px auto 0;padding:18px 16px;border-radius:14px;background:var(--card);border:1px solid var(--line)}
.offer-t{font-size:17px;font-weight:700;text-align:center;margin-bottom:14px}
.offer ul{list-style:none;display:flex;flex-direction:column;gap:14px}
.offer li{display:flex;gap:12px;align-items:flex-start}
.offer-ck{flex:0 0 24px;height:24px;border-radius:50%;background:var(--green);color:#fff;font-size:13px;font-weight:900;display:flex;align-items:center;justify-content:center;margin-top:1px}
.offer li p{font-size:14px;line-height:1.5;color:var(--fg)}
.offer li small{display:block;font-size:12.5px;line-height:1.45;color:var(--muted);margin-top:4px}
.trust{max-width:536px;margin:18px auto 0;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.trust-g{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,#fff7ee,#fff)}
.trust-g .seal{flex:0 0 84px;width:84px;height:84px;filter:drop-shadow(0 4px 8px rgba(232,106,0,.3))}
.trust-g h4{font-size:16px;margin-bottom:4px}
.trust-g p{font-size:13px;line-height:1.45;color:var(--muted)}
.trust-g p b{color:var(--fg)}
.trust-row{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.trust-row div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:12px 8px;font-size:11.5px;line-height:1.35;color:var(--soft)}
.trust-row div + div{border-left:1px solid var(--line)}
.trust-row svg{width:22px;height:22px;color:var(--green)}
.trust-row b{display:block;font-size:12.5px;color:var(--fg)}
@media (max-width:380px){.trust-g .seal{flex-basis:70px;width:70px;height:70px}.trust-row div{padding:10px 4px;font-size:11px}}
.faq{max-width:536px;margin:10px auto 0;display:flex;flex-direction:column;gap:8px}
.faq .section-t{margin-bottom:6px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;font-size:15px;font-weight:700;color:var(--fg)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:0 0 24px;height:24px;border-radius:50%;background:var(--opt);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500;transition:transform .2s}
.faq details[open] summary::after{content:"−";background:var(--fg);color:var(--bg)}
.faq details p{padding:0 16px 14px;font-size:14px;line-height:1.5;color:var(--muted);animation:fade .25s ease}
.disclaimer{max-width:536px;margin:28px auto 0;font-size:11.5px;line-height:1.55;color:var(--soft);text-align:center}
.guarantee{max-width:536px;margin:18px auto 0;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;color:var(--muted)}

.foot{max-width:536px;margin:40px auto 0;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--soft);text-align:center;line-height:1.7}
.foot a{color:inherit}

@media (max-width:480px){
  .title.xl{font-size:26px}
  .nav button{width:50%}
  .bigstat strong{font-size:46px}
}

/* ===== Páginas legais ===== */
.legal{max-width:760px;margin:0 auto;padding:32px 20px 64px;font-size:15px;line-height:1.65;color:#2a2a2e}
.legal h1{font-size:26px;margin:28px 0 6px;color:#18181b}
.legal .upd{font-size:13px;color:#8b8b93;margin-bottom:24px}
.legal h2{font-size:18px;margin:28px 0 8px;color:#18181b}
.legal p,.legal ul{margin-top:10px}
.legal ul{padding-left:22px}
.legal li{margin-top:6px}
.legal a{color:var(--blue)}
.legal .box{background:#f8f8fa;border-left:4px solid var(--blue);padding:12px 16px;border-radius:6px;margin-top:16px}
.legal .back-link{display:inline-block;margin-top:36px;font-weight:500}
