
:root{--bg:#000;--cyan:#55ecff;--gold:#ffd35c;--text:#edfaff;--muted:#9dbdcc;--panel:rgba(4,17,28,.88);--danger:#ff8f8f}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0;background:#000;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{display:grid;place-items:center;overflow-x:hidden;background:
radial-gradient(circle at 50% 22%,rgba(0,145,255,.12),transparent 38%),
linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),#000;
background-size:auto,52px 52px,52px 52px}
.shell{width:min(92vw,520px);padding:42px 0}
.brand{text-align:center;margin:0 0 28px;font-weight:300;letter-spacing:.38em;text-indent:.38em;text-transform:uppercase;text-shadow:0 0 24px rgba(85,236,255,.35)}
.card{position:relative;padding:30px;border:1px solid rgba(85,236,255,.32);border-radius:20px;background:var(--panel);backdrop-filter:blur(18px);box-shadow:0 0 55px rgba(22,143,215,.17)}
.step{color:var(--gold);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase}
h1{font-size:1.55rem;font-weight:500;margin:8px 0}
.lead{color:var(--muted);line-height:1.55;margin:0 0 24px}
label{display:block;color:#dff7ff;font-size:.9rem;margin:16px 0 7px}
input{width:100%;padding:14px;border:1px solid rgba(117,222,248,.28);border-radius:11px;background:rgba(0,7,12,.72);color:#fff;font:inherit;outline:none}
input:focus{border-color:rgba(112,231,255,.85);box-shadow:0 0 0 4px rgba(77,222,255,.07)}
button{width:100%;margin-top:22px;padding:14px;border:1px solid rgba(95,224,255,.62);border-radius:11px;background:linear-gradient(180deg,rgba(20,124,170,.24),rgba(3,21,34,.78));color:#ecfbff;font:inherit;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
button:hover,button:focus-visible{border-color:rgba(130,243,255,.95);box-shadow:0 0 36px rgba(30,205,255,.2)}
button:disabled{opacity:.55;cursor:wait}
.status{min-height:1.4em;margin:14px 0 0;color:var(--danger);font-size:.92rem}
.meta{text-align:center;color:rgba(185,218,230,.62);font-size:.82rem;margin-top:20px}
a{color:var(--cyan)}
.rules{color:var(--muted);font-size:.82rem;line-height:1.55;margin-top:12px}
.success{text-align:center}
.success .mark{font-size:3rem;color:var(--gold);text-shadow:0 0 25px rgba(255,211,92,.45)}
