:root { color-scheme: dark; --ink:#f7f3ff; --muted:#b9b1cc; --page:#100d1c; --panel:#1a1629; --line:#373047; --acid:#b8ff5b; --lav:#bca8ff; --bad:#ff766f; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
body { margin:0; background:var(--page); color:var(--ink); line-height:1.55; }
a { color:inherit; text-underline-offset:.25em; }
button,input,textarea { font:inherit; }
button { min-height:44px; cursor:pointer; }
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid var(--acid); outline-offset:3px; }
.hero { min-height:530px; padding:24px max(24px,calc((100vw - 1120px)/2)); background:radial-gradient(circle at 80% 15%,#523c78 0,transparent 28%),linear-gradient(145deg,#171329,#0e0b18); border-bottom:1px solid var(--line); }
nav { display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; gap:10px; align-items:center; font-weight:800; text-decoration:none; letter-spacing:-.02em; }
.brand span { display:grid; place-items:center; width:38px; height:38px; color:#171329; background:var(--acid); border-radius:10px 3px 10px 3px; font-size:.78rem; }
.hero-copy { max-width:850px; padding:92px 0 48px; }
.eyebrow,.step { color:var(--acid); font-weight:800; text-transform:uppercase; letter-spacing:.13em; font-size:.76rem; }
h1 { max-width:800px; margin:.25rem 0 1.25rem; font-size:clamp(3rem,8vw,6.7rem); line-height:.88; letter-spacing:-.065em; }
.hero-copy>p:not(.eyebrow) { max-width:710px; font-size:1.13rem; color:var(--muted); }
.privacy { margin-top:28px; font-size:.92rem!important; }.privacy span { color:var(--acid); margin-right:7px; }
main { max-width:1120px; margin:auto; padding:70px 24px; }
.workbench,.results,.how { margin-bottom:90px; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.step { margin:0 0 3px; } h2 { margin:0; font-size:clamp(2rem,5vw,3.5rem); letter-spacing:-.045em; line-height:1; } h3 { margin:.2rem 0 .6rem; }
label { display:block; font-weight:750; } label span,.hint { color:var(--muted); font-weight:400; }
textarea,input { width:100%; margin-top:8px; color:var(--ink); background:#0d0a17; border:1px solid var(--line); border-radius:8px; padding:13px 14px; }
textarea { min-height:245px; resize:vertical; font:500 .92rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace; tab-size:2; }
input { min-height:48px; }.hint { margin:8px 0 25px; font-size:.9rem; }
.settings { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.primary,.secondary { border-radius:7px; padding:10px 18px; font-weight:800; }
.primary { width:100%; margin-top:22px; color:#12101b; background:var(--acid); border:0; }
.secondary { color:var(--ink); background:transparent; border:1px solid var(--line); }
.secondary:hover { border-color:var(--lav); background:#231d35; }
.samples,.downloads { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.status-card { border:1px solid var(--line); border-left:7px solid var(--lav); border-radius:10px; padding:24px; background:var(--panel); }
.status-card.unsafe { border-left-color:var(--bad); }.status-card.safe { border-left-color:var(--acid); }
.status-card h3 { font-size:1.75rem; }.status-card p:last-child { color:var(--muted); margin-bottom:0; }
.metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:16px 0 34px; }
.metric { padding:18px; border:1px solid var(--line); border-radius:8px; }.metric strong { display:block; font-size:2rem; line-height:1; }.metric span { display:block; color:var(--muted); margin-top:8px; font-size:.83rem; }
.finding-group { margin:28px 0; }.finding-group ul { list-style:none; padding:0; display:grid; gap:10px; }.finding { border:1px solid var(--line); border-radius:7px; padding:15px 17px; background:var(--panel); }
.empty { color:var(--muted); }.caveat { margin-top:34px; padding:22px; border:1px solid #62552e; background:#211d12; border-radius:8px; }.caveat p { color:#d8ceaf; margin-bottom:0; }
.how ol { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; list-style:none; padding:0; }.how li { padding:24px; min-height:145px; border-top:2px solid var(--lav); background:var(--panel); }.how strong { color:var(--acid); }
footer { border-top:1px solid var(--line); padding:26px max(24px,calc((100vw - 1120px)/2)); color:var(--muted); }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
[hidden] { display:none!important; }
@media (max-width:720px) { .hero { min-height:auto; }.hero-copy { padding:70px 0 30px; } h1 { font-size:clamp(3.2rem,15vw,5rem); }.section-heading { align-items:flex-start; flex-direction:column; }.settings,.how ol { grid-template-columns:1fr; }.samples,.downloads { justify-content:flex-start; width:100%; }.samples button,.downloads button { flex:1; }.metrics { grid-template-columns:repeat(2,1fr); }.workbench,.results,.how { margin-bottom:65px; } }
@media (prefers-reduced-motion:no-preference) { .primary,.secondary { transition:transform .15s ease,background .15s ease; }.primary:hover { transform:translateY(-1px); background:#c8ff82; } }
