:root{--ink:#14171c;--paper:#f4f5f7;--card:#fff;--muted:#6b7480;--accent:#2f5d8c;--hit:#1f6b3a;--miss:#9aa3af}@media (prefers-color-scheme:dark){:root{--ink:#e7eaef;--paper:#0e1116;--card:#171c24;--muted:#98a2b0;--accent:#82acde;--hit:#6fcb8f;--miss:#5a636f}}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--paper);min-height:100dvh;color:var(--ink);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:34rem;padding:1.5rem 1.25rem calc(1.5rem + env(safe-area-inset-bottom));flex-direction:column;gap:1.25rem;margin:0 auto;display:flex}#signup-page{flex-direction:column;gap:.75rem;display:flex}h1{letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:650}form{gap:.5rem;display:flex}input{min-width:0;font:inherit;background:var(--card);color:inherit;border:1px solid #0000;border-radius:.75rem;flex:1;padding:.75rem .9rem;font-size:1.5rem}input:focus-visible{border-color:var(--accent);outline:none}button{font:inherit;background:var(--accent);color:#fff;border:none;border-radius:.75rem;flex:none;width:3.5rem;font-size:1.5rem}#joined{flex-direction:column;align-items:center;gap:.5rem;padding-top:2rem;display:flex}#joined .tick{color:var(--hit);font-size:5rem;line-height:1}#joined .name{font-size:1.75rem;font-weight:650}.prompt{color:var(--muted);font-size:.95rem}#play{flex-direction:column;gap:.5rem;display:flex}header{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.me{align-items:center;gap:.4rem;font-size:1.15rem;display:flex}.me .tick{color:var(--hit);font-weight:700}.round{border:2px solid;border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:650;display:grid}ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}li{background:var(--card);border-radius:.6rem;padding:.5rem .9rem;font-size:1.25rem}li.miss{color:var(--miss);text-decoration:line-through}li.hit{color:var(--hit);font-weight:700}#reveal{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex}#solved{color:var(--hit);font-size:3rem;line-height:1}.term{font-size:1.6rem;font-weight:700}.solver{color:var(--muted);font-size:1.2rem}#error{color:#b4453a;margin:0;font-size:.95rem}#offline{text-align:center;color:var(--muted);letter-spacing:.3em;margin:0;font-size:2rem}
