/* PLAYER ACCOUNTS (2026-10-31): the sign-up, forgotten-password and new-password pages, in the live site's own tokens. */
:root{
  --void:#05080b; --panel:#0a1218; --panel-2:#0e1920;
  --ink:#e9eff2; --ink-dim:#95a8b1; --ink-faint:#55666e;
  --gold:#ffc729; --gold-pale:#ffe39a; --danger:#ff7a6b; --good:#6fe0a8;
  --line:rgba(150,172,182,.18); --line-gold:rgba(255,199,41,.28);
}
*{box-sizing:border-box}
body{margin:0; min-height:100vh; min-height:100dvh; display:flex; align-items:flex-start; justify-content:center; padding:48px 16px; background:var(--void); color:var(--ink); font-family:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif; line-height:1.55; -webkit-font-smoothing:antialiased}
main{width:100%; max-width:440px}
.brand{display:block; font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-pale); text-decoration:none; margin-bottom:26px}
.brand b{color:var(--gold); font-weight:600}
h1{margin:0 0 8px; font-family:'Chakra Petch',system-ui,sans-serif; font-weight:600; font-size:32px; line-height:1.1}
.lead{margin:0 0 26px; color:var(--ink-dim)}
form{display:grid; gap:18px; background:var(--panel); border:1px solid var(--line); padding:24px}
label{display:block; font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-dim); margin-bottom:7px}
.hint{display:block; margin-top:6px; font-size:13px; color:var(--ink-faint)}
input{width:100%; font:inherit; font-size:16px; color:var(--ink); background:var(--panel-2); border:1px solid var(--line); padding:11px 12px; border-radius:0}
input:focus-visible{outline:2px solid var(--gold); outline-offset:1px; border-color:transparent}
input:user-invalid{border-color:var(--danger)}
.check{display:flex; align-items:center; gap:8px; font-size:14px; color:var(--ink-dim); margin-top:9px; cursor:pointer}
.check input{width:auto}
button{font-family:'Chakra Petch',system-ui,sans-serif; font-weight:600; font-size:17px; letter-spacing:.06em; color:#10151a; background:var(--gold); border:0; padding:12px 18px; cursor:pointer}
button:hover{background:var(--gold-pale)}
button:focus-visible{outline:2px solid var(--ink); outline-offset:2px}
button:disabled{opacity:.55; cursor:progress}
.say{margin:0; min-height:1.55em}
.say.bad{color:var(--danger)}
.say.good{color:var(--good)}
.more{margin-top:18px; font-size:14px; color:var(--ink-dim)}
.more a{color:var(--gold-pale)}
[hidden]{display:none !important}
