:root{--bg-0: #0b1220;--bg-1: #121a2b;--bg-2: #1a2438;--text: #e8eef9;--muted: #93a0b8;--accent: #3b82f6;--accent-2: #22d3ee;--danger: #f87171;--success: #34d399;--radius: 18px;--font-display: "Segoe UI", "Helvetica Neue", sans-serif;--font-body: "Segoe UI", "Helvetica Neue", sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font-body);color:var(--text);background:radial-gradient(1200px 600px at 10% -10%,rgba(59,130,246,.25),transparent 55%),radial-gradient(900px 500px at 90% 0%,rgba(34,211,238,.18),transparent 50%),linear-gradient(180deg,var(--bg-0),var(--bg-1) 40%,#0a101c 100%)}.shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}.brand-bar{padding:1.25rem 1.5rem}.brand{font-family:var(--font-display);font-weight:800;letter-spacing:.28em;font-size:1.1rem;color:var(--text)}main{display:grid;place-items:center;padding:1rem}.footer{text-align:center;color:var(--muted);font-size:.85rem;padding:1.5rem}.card-panel{width:min(440px,100%);background:linear-gradient(180deg,#1a2438eb,#121a2bf5);border:1px solid rgba(148,163,184,.18);border-radius:var(--radius);padding:2rem 1.75rem;box-shadow:0 24px 60px #00000059;animation:rise .42s ease-out}.eyebrow{margin:0 0 .35rem;letter-spacing:.22em;font-size:.75rem;color:var(--accent-2);font-weight:700}h1{margin:0 0 1rem;font-size:1.75rem;letter-spacing:-.02em}h2{margin:.5rem 0}p{color:var(--muted);line-height:1.5}dl{display:grid;gap:.75rem;margin:0 0 1.5rem}dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}dd{margin:.15rem 0 0;font-size:1.05rem;color:var(--text)}.cta{display:block;width:100%;box-sizing:border-box;border:0;border-radius:12px;padding:.95rem 1rem;font-size:1rem;font-weight:700;color:#04101f;text-align:center;text-decoration:none;cursor:pointer;background:linear-gradient(135deg,var(--accent-2),var(--accent));transition:transform .16s ease,filter .16s ease}.cta:hover:not(:disabled):not([aria-disabled=true]){transform:translateY(-1px);filter:brightness(1.05)}.cta:disabled,.cta[aria-disabled=true]{opacity:.7;cursor:not-allowed;pointer-events:none}.state{text-align:center}.state.error{color:var(--danger)}.state.success .check{font-size:2.5rem;color:var(--success);animation:pop .36s ease-out}.muted{color:var(--muted);font-size:.9rem}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:480px){.card-panel{padding:1.5rem 1.2rem}}
