*{box-sizing:border-box}:root{--bg:#0b1a3a;--fg:#fff;--panel:#12244f;--panel2:#071230;--btn:#2a4a8a;--tile:#1c3a7a;--tile-fg:#cfd8ea;--border:#446}body.light{--bg:#f4f6fb;--fg:#111;--panel:#fff;--panel2:#e6ebf5;--btn:#3b62b8;--tile:#d5deef;--tile-fg:#223;--border:#bbc}body{background:var(--bg);color:var(--fg);margin:0;font-family:system-ui,sans-serif}button{font:inherit;background:var(--btn);color:#fff;cursor:pointer;border:0;border-radius:.4em;margin:.2em;padding:.5em 1em}button.ok{background:#1f9d55}button.ko{background:#c0392b}button.danger{background:#555}button.theme{vertical-align:middle;margin-left:1em;font-size:.5em}input,select{font:inherit;border:1px solid var(--border);background:var(--panel);color:var(--fg);border-radius:.3em;padding:.4em}.rosco{margin:auto;position:relative}.letter{background:var(--tile);width:2.2em;height:2.2em;color:var(--tile-fg);border-radius:50%;place-items:center;font-weight:700;transition:background .2s,transform .2s;display:grid;position:absolute;transform:translate(-50%,-50%)}.letter.correct{color:#fff;background:#1f9d55}.letter.wrong{color:#fff;background:#c0392b}.letter.current{color:#000;background:#f5b301;transform:translate(-50%,-50%)scale(1.25);box-shadow:0 0 20px #f5b301}.screen{flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex}.screen.idle{opacity:.6;font-size:4vmin}.stage{flex:1;place-items:center;width:100%;display:grid;position:relative}.center{text-align:center;position:absolute}.center .player{font-size:5vmin;font-weight:700}.center .score{font-size:8vmin;font-weight:800}.ok{color:#2ecc71}.ko{color:#e74c3c}.question{text-align:center;background:var(--panel2);width:100%;padding:2vmin 6vmin 4vmin}.question .hint{opacity:.8;font-size:3vmin}.question .text{font-size:4.5vmin;line-height:1.3}.admin{max-width:1000px;margin:auto;padding:1em}.admin section{background:var(--panel);border-radius:.6em;margin-bottom:1em;padding:1em}.admin .control{flex-wrap:wrap;align-items:center;gap:2em;display:flex}.admin .control>div{flex:1;min-width:300px}.admin .big{font-size:1.5em}.admin ul{padding:0;list-style:none}.admin li{align-items:center;gap:.5em;padding:.3em 0;display:flex}.admin li small{opacity:.6;flex:1}.admin table{border-collapse:collapse;width:100%}.admin td,.admin th{text-align:left;padding:.2em}.admin td input{width:100%}.admin .title{width:100%;margin-bottom:1em;font-size:1.4em}
