:root{--bg:#0f1320;--panel:#1a2032;--ink:#e8ecf5;--muted:#94a0bd;--accent:#5b8cff;--ok:#37c97f;--warn:#f5b942;--bad:#ff6b6b;--line:#2a3350}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 28px;border-bottom:1px solid var(--line);background:var(--panel)}
.brand{font-weight:700;font-size:1.2rem;color:var(--ink)}
.topbar nav a{margin-left:18px;color:var(--muted)}
main{max-width:860px;margin:0 auto;padding:32px 20px}
footer{max-width:860px;margin:40px auto;padding:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}
h1{font-size:2rem;line-height:1.2}
.accent{color:var(--accent)}
.lede{color:var(--muted);font-size:1.1rem}
.fine{color:var(--muted);font-size:.85rem}
.btn{display:inline-block;padding:11px 18px;border-radius:9px;font-weight:600;border:none;cursor:pointer;font-size:1rem}
.btn-primary{background:var(--accent);color:#fff}
.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
.cta-row{display:flex;gap:12px;margin:22px 0}
.features{display:grid;grid-template-columns:1fr;gap:16px;margin-top:30px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px}
.card h3{margin-top:0}
form textarea,form input[type=text],form input[type=email]{width:100%;background:#0c0f1a;border:1px solid var(--line);border-radius:8px;color:var(--ink);padding:11px;margin:8px 0;font-size:1rem}
.tabs{display:flex;gap:18px;margin-bottom:8px}
.scan-form button,.gen-form button{margin-top:10px}
.gen-form label{display:block;margin:6px 0;font-weight:600}
.gen-form fieldset{border:1px solid var(--line);border-radius:8px;margin:14px 0}
label.inline{display:inline-block;margin-right:16px;font-weight:400}
.alert{background:#3a2230;border:1px solid var(--bad);padding:12px;border-radius:8px;margin:14px 0}
.alert.info{background:#1d2740;border-color:var(--accent)}
.scorecard{margin-top:28px}
.score-header{display:flex;gap:20px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px}
.score-num{font-size:3rem;font-weight:800}
.score-num span{font-size:1.2rem;color:var(--muted)}
.grade-A .score-num,.grade-B .score-num{color:var(--ok)}
.grade-C .score-num{color:var(--warn)}
.grade-D .score-num,.grade-F .score-num{color:var(--bad)}
.grade{font-weight:700}
.cat{margin:22px 0 6px;color:var(--accent);font-size:.95rem;text-transform:uppercase;letter-spacing:.05em}
.checklist{list-style:none;padding:0}
.checklist li{display:flex;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px;margin:8px 0}
.checklist .icon{font-size:1.2rem}
.badge{font-size:.7rem;padding:2px 8px;border-radius:20px;background:var(--line);margin-left:8px;vertical-align:middle}
.status-present .badge{background:#173d2b;color:var(--ok)}
.status-needs_update .badge{background:#3d3417;color:var(--warn)}
.status-missing .badge{background:#3d1d1d;color:var(--bad)}
.why{color:var(--muted);font-size:.9rem;margin:4px 0 0}
.fix{color:var(--ink);font-size:.9rem;margin:4px 0 0}
.upsell{background:linear-gradient(135deg,#1d2740,#23305a);border:1px solid var(--accent);border-radius:12px;padding:22px;margin-top:28px}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}
.plan{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:22px}
.plan.featured{border-color:var(--accent)}
.plan .price{font-size:2.4rem;font-weight:800}
.plan .price span{font-size:1rem;color:var(--muted)}
.plan ul{list-style:none;padding:0}
.plan li{padding:5px 0;border-bottom:1px solid var(--line)}
.billing-options{display:grid;gap:10px;margin:16px 0}
.billing-option{display:flex;gap:10px;align-items:flex-start;background:#0c0f1a;border:1px solid var(--line);border-radius:10px;padding:13px;cursor:pointer}
.billing-option:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.billing-option-featured{background:linear-gradient(135deg,#111a30,#17213a)}
.billing-option-compact{padding:10px 13px}
.billing-copy{display:grid;gap:2px;width:100%}
.billing-head{display:flex;justify-content:space-between;gap:10px;align-items:center}
.save-badge{font-size:.72rem;padding:2px 8px;border-radius:20px;background:#173d2b;color:var(--ok);white-space:nowrap}
.billing-price{font-size:1.45rem;font-weight:800}
.billing-price span{font-size:.9rem;color:var(--muted)}
.linkbtn{background:none;border:none;color:var(--muted);cursor:pointer;text-decoration:underline;margin-top:8px;padding:0}
.ok{color:var(--ok);font-weight:600}
.doc-list{list-style:none;padding:0;font-size:1.1rem}
.doc-list li{padding:8px 0}
.changelog li{color:var(--muted);font-size:.9rem}
.legal-doc .doc-body{background:#fff;color:#1a1a1a;padding:30px;border-radius:10px;margin-top:14px}
.doc-body h1{font-size:1.6rem}
.doc-body h2{font-size:1.15rem;margin-top:22px}
.doc-body a{color:#1a56db}
@media(min-width:680px){.features{grid-template-columns:repeat(3,1fr)}}
