@font-face{font-family:"Source Serif 4";src:url(assets/fonts/source-serif-4-var.woff2) format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:"Inter";src:url(assets/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--ink:#081423;--line:#294058;--gold:#edc77c;--muted:#aabbd0;--white:#f4f6f9}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{min-height:100dvh;font:400 16px/1.5 Inter,ui-sans-serif,system-ui,sans-serif;color:var(--white);background:radial-gradient(1000px 600px at 85% -10%,rgba(56,104,152,.35),transparent 60%),radial-gradient(800px 500px at -10% 110%,rgba(237,199,124,.1),transparent 60%),linear-gradient(180deg,#071326,#050d19 75%)}
.gate{min-height:100dvh;display:grid;place-items:center;padding:24px 16px}
.card{width:100%;max-width:400px;padding:44px 36px 36px;border:1px solid var(--line);border-radius:22px;background:rgba(10,24,42,.78);box-shadow:0 40px 80px -40px #000;text-align:center;display:flex;flex-direction:column;gap:14px}
.mark{width:52px;height:52px;margin:0 auto 6px;border-radius:15px;background:linear-gradient(135deg,var(--gold),#b8893a);box-shadow:0 10px 30px -10px rgba(237,199,124,.6)}
h1{margin:0;font:600 32px/1.1 "Source Serif 4",Georgia,serif;letter-spacing:-.01em}
h1 span{color:var(--gold)}
.sub{margin:-6px 0 14px;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:#06111f;color:var(--white);font:inherit;font-size:17px}
input:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:transparent}
button{padding:14px 16px;border:0;border-radius:12px;background:var(--gold);color:var(--ink);font:600 17px/1 Inter,sans-serif;cursor:pointer}
button:hover{filter:brightness(1.05)}button:disabled{opacity:.6;cursor:wait}
#message{min-height:22px;margin:0;font-size:14px;color:#f3b4a8}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
