:root { color-scheme: dark; --ink:#f6f4ef; --muted:#aaa8a1; --panel:#171816; --line:#34362f; --accent:#d8ff3e; --danger:#ffb4aa; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:#0d0e0c; color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; background:radial-gradient(circle at 75% 15%,rgba(216,255,62,.12),transparent 30%),linear-gradient(135deg,transparent 0 49.8%,rgba(255,255,255,.035) 50%,transparent 50.2%); background-size:auto,52px 52px; }
.shell { position:relative; min-height:100vh; display:grid; place-items:center; padding:32px 20px; }
.card { width:min(760px,100%); padding:clamp(28px,6vw,72px); border:1px solid var(--line); border-radius:24px; background:rgba(23,24,22,.94); box-shadow:0 28px 80px rgba(0,0,0,.45); }
.card-small { width:min(680px,100%); }
.brand { display:flex; align-items:center; gap:11px; font-size:1.1rem; font-weight:800; letter-spacing:-.02em; }
.brand-link { color:var(--ink); text-decoration:none; width:max-content; }
.brand-mark { display:grid; place-items:center; width:34px; height:34px; border-radius:9px 3px 9px 3px; background:var(--accent); color:#12130e; font-style:italic; }
.eyebrow { margin:52px 0 12px; color:var(--accent); font-size:.78rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
h1 { max-width:650px; margin:0; font-size:clamp(2.35rem,7vw,5rem); line-height:.98; letter-spacing:-.055em; }
.card-small h1 { font-size:clamp(2.1rem,6vw,3.8rem); }
.lede { max-width:620px; margin:24px 0 30px; color:var(--muted); font-size:clamp(1rem,2vw,1.2rem); line-height:1.65; }
.signup-form > label:first-child { display:block; margin-bottom:9px; font-size:.88rem; font-weight:700; }
.form-row { display:flex; gap:10px; }
input[type="email"] { min-width:0; flex:1; padding:15px 17px; border:1px solid #494c42; border-radius:10px; background:#0e0f0d; color:var(--ink); font:inherit; }
input:focus-visible,button:focus-visible,a:focus-visible { outline:3px solid rgba(216,255,62,.5); outline-offset:3px; }
button { padding:15px 22px; border:0; border-radius:10px; background:var(--accent); color:#12130e; font:inherit; font-weight:800; cursor:pointer; }
button:hover { background:#e2ff70; }
.check-row { display:flex; align-items:flex-start; gap:11px; margin-top:17px; color:#d9d8d2; line-height:1.45; cursor:pointer; }
.check-row input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--accent); }
.fine-print { margin:17px 0 0; color:#85877f; font-size:.78rem; line-height:1.55; }
a { color:var(--accent); }
.notice { margin:0 0 22px; padding:13px 15px; border-radius:9px; line-height:1.45; }
.success { border:1px solid rgba(216,255,62,.4); background:rgba(216,255,62,.08); }
.error { border:1px solid rgba(255,180,170,.4); background:rgba(255,180,170,.08); color:var(--danger); }
.categories { display:flex; gap:8px; margin-top:42px; padding-top:22px; border-top:1px solid var(--line); }
.categories span { padding:7px 10px; border:1px solid var(--line); border-radius:999px; color:#aeb0a7; font-size:.76rem; text-transform:uppercase; letter-spacing:.08em; }
.trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.back-link { margin:30px 0 0; font-size:.9rem; }
@media (max-width:600px) { .card{padding:30px 22px;border-radius:18px}.eyebrow{margin-top:40px}.form-row{flex-direction:column}.form-row button{width:100%}.categories{flex-wrap:wrap} }
@media (prefers-reduced-motion:no-preference) { .card { animation:arrive .5s ease-out both; } @keyframes arrive { from{opacity:0;transform:translateY(12px)} } }
