:root{--bg:#000;--fg:#f4f6ef;--muted:#b7c0aa;--accent:#9be800;--accent-ink:#111800;--surface:#12160e;--surface-2:#1b2214;--line:#2c3820;--danger:#ff5d73;--font:"Segoe UI", "Helvetica Neue", sans-serif;--mono:"Cascadia Code", "SFMono-Regular", ui-monospace, monospace;--tap:3.25rem;--space:1rem;--radius:.9rem;--max:46rem;--shadow:0 0 0 1px var(--line)}*{box-sizing:border-box}html{background:var(--bg);color:var(--fg)}body{min-height:100vh;font-family:var(--font);background:var(--bg);color:var(--fg);margin:0;font-size:1.05rem;line-height:1.45}a{color:var(--accent)}img{max-width:100%}.skip{left:var(--space);background:var(--accent);color:var(--accent-ink);padding:.5rem .8rem;position:absolute;top:-4rem}.skip:focus{top:var(--space)}.shell{width:min(100% - 2rem, var(--max));margin:0 auto;padding-bottom:4rem}.masthead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 0 1.25rem;display:flex}.brand{color:var(--fg);align-items:center;gap:.75rem;text-decoration:none;display:flex}.logo-mark{width:var(--tap);height:var(--tap);border:2px solid var(--accent);border-radius:var(--radius);color:var(--accent);letter-spacing:.04em;place-items:center;font-weight:800;display:grid}.wordmark{flex-direction:column;line-height:1;display:flex}.wordmark strong{letter-spacing:.08em;font-size:1.35rem}.wordmark span{color:var(--accent);letter-spacing:.16em;font-size:.8rem}.nav{flex-wrap:wrap;gap:.4rem;display:flex}.nav-link{min-height:2.75rem;color:var(--fg);border:1px solid #0000;border-radius:999px;align-items:center;padding:0 .85rem;text-decoration:none;display:inline-flex}.nav-link.active,.nav-link:hover{border-color:var(--accent);color:var(--accent)}.stack{gap:var(--space);flex-direction:column;display:flex}.cluster{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.page-title{margin:0;font-size:clamp(2rem,8vw,3.4rem);line-height:.95}.lede{color:var(--fg);margin:0;font-size:1.2rem}.muted{color:var(--muted)}.card{background:var(--surface);box-shadow:var(--shadow);border-radius:var(--radius);padding:1rem}.tap,button,.button,input,select,textarea{font:inherit;min-height:var(--tap)}.button,button{border-radius:var(--radius);border:2px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer;justify-content:center;align-items:center;padding:0 1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.button.quiet,button.quiet{color:var(--accent);background:0 0}button:disabled{opacity:.45;cursor:not-allowed}label{flex-direction:column;gap:.35rem;font-weight:650;display:flex}input,select,textarea{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);width:100%;color:var(--fg);padding:0 .8rem}textarea{min-height:6rem;padding-top:.7rem}.choice{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);align-items:center;gap:.7rem;padding:0 .8rem;font-weight:650;display:flex}.choice input{width:1.25rem;height:1.25rem;min-height:0}.alert{border-radius:var(--radius);color:var(--danger);background:#2a1014;margin:0;padding:.8rem 1rem}.ok{border-radius:var(--radius);color:var(--accent);background:#17240a;margin:0;padding:.8rem 1rem}.roster,.stat-grid{grid-template-columns:1fr;gap:.7rem;display:grid}.roster-link{border-radius:var(--radius);background:var(--surface);min-height:5.5rem;box-shadow:var(--shadow);color:var(--fg);flex-direction:column;justify-content:center;padding:.9rem;text-decoration:none;display:flex}.roster-link strong{font-size:1.2rem}.roster-link:hover{outline:2px solid var(--accent)}.chip-row{flex-wrap:wrap;gap:.4rem;display:flex}.chip{background:var(--bg);border:1px solid var(--accent);min-height:2.4rem;color:var(--accent);font-family:var(--mono);border-radius:999px;align-items:center;padding:0 .7rem;display:inline-flex}.tag{background:var(--surface-2);min-height:1.8rem;color:var(--muted);border-radius:999px;align-items:center;padding:0 .55rem;font-size:.85rem;display:inline-flex}.mascot{border:2px dashed var(--accent);border-radius:var(--radius);min-height:8rem;color:var(--accent);letter-spacing:.2em;place-items:center;font-weight:800;display:grid}.site-footer{color:var(--muted);flex-wrap:wrap;gap:.8rem 1.2rem;margin-top:2rem;display:flex}@media (width>=720px){.roster{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1.2fr .8fr;align-items:start;gap:1rem;display:grid}}
