:root { color-scheme: dark; --bg:#101112; --panel:#181a1c; --text:#f5f1e8; --muted:#b9afa1; --gold:#d4a843; --border:#2a2d31; --danger:#ff7b7b; }
* { box-sizing: border-box; }
body { margin: 0; font-family: Arial, sans-serif; background: var(--bg); color: var(--text); }
a { color: inherit; text-decoration: none; }
.topbar { height: 64px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; border-bottom:1px solid var(--border); position:sticky; top:0; background:rgba(16,17,18,.9); backdrop-filter: blur(10px); }
.brand { font-weight:700; color:var(--gold); }
.topbar nav { display:flex; gap:16px; color:var(--muted); }
.page { max-width: 960px; margin: 0 auto; padding: 48px 20px; }
.panel { background:var(--panel); border:1px solid var(--border); border-radius:8px; padding:32px; }
.narrow { max-width:420px; margin:0 auto; }
.eyebrow { color:var(--gold); text-transform:uppercase; font-size:12px; letter-spacing:.08em; }
h1 { margin: 0 0 12px; font-size: clamp(32px, 5vw, 56px); line-height:1; }
p { color:var(--muted); line-height:1.6; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 18px; border-radius:999px; background:var(--gold); color:#101112; font-weight:700; border:0; cursor:pointer; }
.form { display:grid; gap:16px; }
label { display:grid; gap:8px; color:var(--muted); }
input { width:100%; min-height:44px; border-radius:8px; border:1px solid var(--border); background:#111315; color:var(--text); padding:0 12px; }
label span, .error { color:var(--danger); }
.footer { padding:24px; text-align:center; color:var(--muted); }
