:root{--bg:#fafafb;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#e5e7eb;--brand:#4f46e5;--brand2:#7c3aed;--ok:#059669;--warn:#d97706;--bad:#dc2626;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--brand)}h1,h2,h3{line-height:1.2;letter-spacing:-.01em}h1{font-size:clamp(2rem,4vw,3.1rem);margin:.2em 0 .4em}h2{font-size:1.7rem}h3{font-size:1.1rem;margin:.2em 0 .6em}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}.center{text-align:center}.muted{color:var(--muted)}.small{font-size:.85rem}
.demo-bar{background:#fef3c7;color:#92400e;text-align:center;font-size:.85rem;padding:6px 10px;border-bottom:1px solid #fde68a}
.nav{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.nav-in{display:flex;align-items:center;justify-content:space-between;height:62px}
.nav nav{display:flex;gap:22px;align-items:center}.nav nav a{color:var(--ink);text-decoration:none;font-size:.95rem}
.logo{font-weight:800;font-size:1.25rem;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.dot{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#fff 30%,var(--brand) 32%)}
.btn{display:inline-block;border:0;border-radius:10px;padding:11px 18px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff!important;font-weight:600;cursor:pointer;text-decoration:none;font-size:.95rem}
.btn:hover{filter:brightness(1.07)}.btn-sm{padding:7px 12px;font-size:.85rem}.btn-lg{padding:14px 22px;font-size:1.05rem;width:100%}
.btn-ghost{background:#fff;color:var(--brand)!important;border:1px solid #c7d2fe}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.hero{background:radial-gradient(1200px 400px at 10% -10%,#e0e7ff,transparent),radial-gradient(900px 400px at 100% 0,#f3e8ff,transparent);padding:56px 0 40px}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
.hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--brand),var(--brand2));-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--brand);margin:0}
.lead{font-size:1.15rem;color:#334155}.hero-points{display:flex;gap:18px;padding:0;list-style:none;color:#334155;font-weight:500}.hero-points li:before{content:"✓ ";color:var(--ok)}
.form h2{margin-top:0;font-size:1.3rem}.form label{display:block;font-size:.85rem;font-weight:600;margin:0 0 12px;color:#334155}
.form input,.form select{display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid #d1d5db;border-radius:9px;font:inherit;background:#fff}
.form input:focus{outline:2px solid #c7d2fe;border-color:var(--brand)}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.error{color:var(--bad);background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:8px 12px;margin-top:10px;font-size:.9rem}
.section{padding:48px 20px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.num{width:32px;height:32px;border-radius:50%;background:#eef2ff;color:var(--brand);display:grid;place-items:center;font-weight:800}
.feat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.feat b{display:block}.feat span{color:var(--muted);font-size:.88rem}
.plan{position:relative;display:flex;flex-direction:column}.plan.featured{border:2px solid var(--brand);box-shadow:0 10px 30px rgba(79,70,229,.12)}.plan .btn{margin-top:auto}
.pill{position:absolute;top:-12px;left:22px;background:var(--brand);color:#fff;font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:99px}
.price{font-size:2.4rem;font-weight:800}.price span{font-size:1rem;color:var(--muted);font-weight:500}
.ticks{list-style:none;padding:0;margin:6px 0 18px}.ticks li{padding:4px 0}.ticks li:before{content:"✓  ";color:var(--ok);font-weight:700}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:10px auto;max-width:760px}.faq summary{font-weight:600;cursor:pointer}
.foot{border-top:1px solid var(--line);background:#fff;padding:30px 0;margin-top:40px}.foot-in{display:flex;justify-content:space-between;gap:20px;margin-bottom:14px}.foot-links{display:flex;gap:18px;flex-wrap:wrap}.foot-links a{color:var(--muted);text-decoration:none}
.bar{height:10px;background:#eef2ff;border-radius:99px;overflow:hidden;flex:1}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--brand2));border-radius:99px}.bar.me span{background:linear-gradient(90deg,#059669,#10b981)}
.t{width:100%;border-collapse:collapse;font-size:.92rem}.t th{text-align:left;color:var(--muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);padding:8px 6px}.t td{border-bottom:1px solid #f1f5f9;padding:8px 6px;vertical-align:top}.w40{width:40%}tr.own td{background:#ecfdf5}
.score-card{display:flex;gap:22px;align-items:center}.grade{width:96px;height:96px;border-radius:22px;display:grid;place-items:center;font-size:3rem;font-weight:900;color:#fff;flex:none}
.g-A{background:#059669}.g-B{background:#65a30d}.g-C{background:#d97706}.g-D{background:#ea580c}.g-F{background:#dc2626}.score{font-size:2.6rem;font-weight:800}.score span{font-size:1rem;color:var(--muted)}
.sov{display:flex;align-items:center;gap:10px;margin:8px 0}.sov-name{width:38%;font-size:.92rem}.sov.me .sov-name{font-weight:700}.sov-v{width:44px;text-align:right;font-variant-numeric:tabular-nums;font-size:.9rem}
.tag{display:inline-block;font-size:.7rem;font-weight:700;background:#eef2ff;color:var(--brand);padding:1px 7px;border-radius:99px;margin-left:4px;vertical-align:middle}.tag-new{background:#fff7ed;color:#c2410c}.tag-ok{background:#ecfdf5;color:var(--ok)}.tag-miss{background:#fef2f2;color:var(--bad)}.tag-err{background:#f1f5f9;color:#475569}
.rec{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid #f1f5f9}.rec:last-child{border:0}.rec ul{margin:6px 0 0;padding-left:18px}.rec p{margin:2px 0}
.prio{flex:none;font-size:.7rem;font-weight:800;text-transform:uppercase;padding:3px 8px;border-radius:6px;height:fit-content;width:64px;text-align:center}.p-high{background:#fee2e2;color:#b91c1c}.p-medium{background:#fef3c7;color:#92400e}.p-low{background:#e0f2fe;color:#075985}
blockquote{margin:10px 0;padding:10px 14px;border-left:3px solid #c7d2fe;background:#f8fafc;border-radius:0 8px 8px 0}
.report .card{margin-bottom:18px}.report .grid2 .card{margin-bottom:0}.report-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px}.report-head h1{font-size:2rem}.actions{display:flex;gap:8px}
.tr{border-bottom:1px solid #f1f5f9;padding:8px 0}.tr summary{cursor:pointer;font-size:.92rem}.tr pre{white-space:pre-wrap;background:#f8fafc;padding:12px;border-radius:8px;font:13px/1.5 ui-monospace,Menlo,monospace}
.locked{position:relative}.blur{filter:blur(3px);opacity:.6}.blur .bar{margin:12px 0}.upsell{background:linear-gradient(135deg,#eef2ff,#faf5ff);border-color:#c7d2fe}
.ph{background:#fef9c3;padding:0 4px;border-radius:4px;font-family:ui-monospace,monospace;font-size:.9em}.legal h3{margin-top:1.6em}
.spinner{width:42px;height:42px;border:4px solid #e0e7ff;border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 10px}@keyframes spin{to{transform:rotate(360deg)}}
#result{padding-top:30px}.result-cta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
@media (max-width:860px){.hero-in,.grid2,.grid3{grid-template-columns:1fr}.grid4{grid-template-columns:1fr 1fr}.nav nav a:not(.btn){display:none}.report-head{flex-direction:column;align-items:flex-start}}
@media print{.nav,.foot,.demo-bar,.actions,.btn{display:none!important}.card{break-inside:avoid;box-shadow:none}details.tr{display:block}details.tr>*{display:block}body{background:#fff}}
.pill.soon{position:static;display:inline-block;background:#fef3c7;color:#92400e;margin:4px 0}
.waitlist{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
.waitlist input{flex:1 1 200px;padding:10px;border:1px solid #d1d5db;border-radius:8px}
.waitlist p{flex-basis:100%;margin:2px 0}
.ok{color:#166534}
