*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#000;--card:#111;--card2:#1a1a1a;--ink:#fff;--muted:#8a8f98;
  --brand:#7cf344;--brand2:#4ade80;--line:#242424;--danger:#ff4d6d;
}
html,body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body{min-height:100vh;line-height:1.5}
.app{max-width:480px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:16px 20px 120px}
/* progress */
.top{display:flex;align-items:center;gap:12px;padding:8px 0 20px}
.back{width:44px;height:44px;border-radius:50%;background:#161616;border:none;color:#fff;font-size:20px;cursor:pointer;flex:0 0 auto;display:none;align-items:center;justify-content:center}
.back.show{display:flex}
.bar{flex:1;height:10px;border-radius:20px;background:#1e1e1e;overflow:hidden}
.bar>i{display:block;height:100%;width:0;background:var(--brand);border-radius:20px;transition:width .35s}
/* step */
.step{display:none;flex:1;flex-direction:column;animation:fade .3s}
.step.on{display:flex}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.qh{font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.sub{color:var(--muted);font-size:16px;margin-top:10px}
.mid{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:6px;padding:20px 0}
/* choices */
.choices{display:flex;flex-direction:column;gap:12px;margin-top:26px}
.choice{padding:18px;border:1px solid var(--line);background:var(--card);border-radius:16px;font-size:17px;font-weight:600;color:#d6d6d6;cursor:pointer;text-align:center;transition:.15s;display:flex;align-items:center;justify-content:center;gap:10px}
.choice:hover{border-color:#3a3a3a}
.choice.sel{background:var(--brand);border-color:var(--brand);color:#000}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.grid2 .choice{flex-direction:column;padding:26px 12px;gap:14px}
.choice .ic{font-size:30px;line-height:1}
/* number picker */
.bignum{font-size:52px;font-weight:800;letter-spacing:-.02em}
.unit-row{display:flex;gap:8px;align-items:center;justify-content:center;margin-top:18px}
.toggle{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-weight:600;font-size:14px}
.sw{width:52px;height:30px;border-radius:20px;background:#2a2a2a;position:relative;cursor:pointer;transition:.2s}
.sw.on{background:var(--brand)}
.sw>i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:.2s}
.sw.on>i{left:25px}
input[type=range]{width:100%;margin-top:26px;accent-color:var(--brand);height:6px}
.two{display:flex;gap:22px;width:100%;margin-top:10px}
.two>div{flex:1;text-align:center}
.two .lbl{color:var(--muted);font-size:14px;font-weight:600;margin-bottom:6px}
.two .val{font-size:30px;font-weight:800}
input[type=email]{width:100%;padding:16px;border:1px solid var(--line);background:var(--card);border-radius:14px;color:#fff;font-size:16px;margin-top:20px}
input[type=email]:focus{outline:none;border-color:var(--brand)}
/* cta */
.cta-wrap{position:fixed;bottom:0;left:0;right:0;padding:16px 20px 28px;background:linear-gradient(transparent,#000 30%);display:flex;justify-content:center;transition:opacity .25s}
.cta-wrap.hide{opacity:0;pointer-events:none}
.cta{max-width:440px;width:100%;padding:17px;border:none;border-radius:14px;background:var(--brand);color:#000;font-size:18px;font-weight:800;cursor:pointer}
.cta:disabled{opacity:.35}
.cta.ghost{background:#161616;color:#fff}
/* trust visuals */
.badges{display:flex;gap:10px;justify-content:center;margin-top:26px;flex-wrap:wrap}
.badge{background:#141414;border:1px solid var(--line);border-radius:12px;padding:12px 16px;font-weight:800;font-size:15px;letter-spacing:.02em;color:#e8e8e8}
.acc{font-size:60px;font-weight:900;color:var(--brand);text-shadow:0 0 40px rgba(124,243,68,.5)}
.nn{width:100%;height:200px;margin-top:20px}
.quote{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px;text-align:left}
.quote p{font-size:15px}.quote .src{color:var(--muted);font-size:12px;margin-top:8px}
/* result */
.rescard{background:linear-gradient(145deg,#0f1a0c,#0c140a);border:1px solid #24401a;border-radius:18px;padding:26px;text-align:center;margin-top:8px}
.rescard .k{color:var(--muted);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.rescard .v{font-size:46px;font-weight:900;color:var(--brand);margin:6px 0}
.rescard .r{color:#b8c2ad;font-size:14px}
.issue{background:#1a0f13;border:1px solid #3a1622;border-radius:14px;padding:16px;margin-top:16px;display:flex;gap:12px;align-items:flex-start}
.issue .tag{color:var(--danger);font-weight:800;font-size:13px}
.advice{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.acard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;position:relative}
.acard h4{font-size:16px;display:flex;align-items:center;gap:8px}
.acard p{color:var(--muted);font-size:14px;margin-top:6px}
.lock{position:absolute;right:14px;top:14px;font-size:13px;color:var(--muted)}
.disc{color:#5a5f68;font-size:12px;text-align:center;margin-top:22px;line-height:1.6}
.thanks{text-align:center;padding:40px 0}
.thanks .big{font-size:40px}

/* ---------- static content (SEO) ---------- */
.scroll-hint{text-align:center;color:#4a4f58;font-size:13px;padding:0 0 28px;letter-spacing:.02em}
.seo{max-width:720px;margin:0 auto;padding:8px 22px 90px;border-top:1px solid var(--line)}
.seo h1{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:44px 0 16px}
.seo h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:40px 0 12px}
.seo h3{font-size:17px;font-weight:700;margin:26px 0 8px}
.seo p{color:#b6bcc4;font-size:16.5px;line-height:1.75;margin:12px 0}
.seo p.lead{color:#d6dae0;font-size:18px}
.seo ul,.seo ol{color:#b6bcc4;font-size:16.5px;line-height:1.75;margin:12px 0 12px 22px}
.seo li{margin:7px 0}
.seo strong{color:#e8ecf1;font-weight:700}
.seo a{color:var(--brand);text-decoration:none;border-bottom:1px solid rgba(124,243,68,.35)}
.seo a:hover{border-bottom-color:var(--brand)}
.seo table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15.5px}
.seo th,.seo td{border:1px solid var(--line);padding:10px 12px;text-align:left;color:#b6bcc4}
.seo th{background:#0f0f0f;color:#e8ecf1;font-weight:700}
.seo .note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px;padding:16px 18px;margin:20px 0}
.seo .note p{margin:0;font-size:15.5px}
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:17px;color:#e8ecf1;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';float:right;color:var(--muted);font-weight:400;font-size:20px;line-height:1}
.faq details[open] summary::after{content:'−'}
.faq details p{margin:10px 0 0}
.links{display:grid;gap:12px;margin:18px 0}
.links a{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;color:#e8ecf1;font-weight:700;font-size:16px;text-decoration:none;border-bottom:1px solid var(--line)}
.links a:hover{border-color:#3a3a3a}
.links a span{display:block;color:var(--muted);font-weight:400;font-size:14px;margin-top:4px}
.site-footer{max-width:720px;margin:0 auto;padding:26px 22px 60px;border-top:1px solid var(--line);color:#5a5f68;font-size:13px;line-height:1.7}
.site-footer a{color:#8a8f98;text-decoration:none;margin-right:14px}
.site-footer a:hover{color:#b6bcc4}
@media(min-width:768px){
  .seo h1{font-size:38px}
  .links{grid-template-columns:1fr 1fr}
}
