:root{color-scheme:dark;--bg:#102d25;--panel:#1a3b31;--line:#355448;--muted:#b4c8bc;--cream:#f2eddf;--gold:#ebce88;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--cream);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top right,#254939,transparent 65%);min-height:100vh}main{max-width:1140px;margin:auto;padding:28px 22px 36px}header{display:flex;align-items:center;gap:16px;margin-bottom:22px}.brand{position:relative;border:1px solid #819781;border-radius:14px;width:52px;height:54px;display:grid;place-items:center;font-family:Georgia,serif;font-size:35px;color:var(--gold);text-decoration:none}.brand-dot{position:absolute;right:6px;bottom:3px;font-size:10px}h1{font-size:23px;margin:3px 0;letter-spacing:-.6px}h2{font-size:26px;letter-spacing:-.7px;margin:8px 0 16px}p{line-height:1.6}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.8px;color:var(--gold);margin:0}.connection{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}.connection.offline{color:#ffd08d}.intro{padding:35px 0 28px;max-width:610px}.intro h2{font-family:Georgia,serif;font-size:clamp(40px,8vw,62px);line-height:1.08;font-weight:400;letter-spacing:-2px}.intro p{max-width:410px;color:var(--muted)}.tag{font-size:10px;letter-spacing:1.3px;border:1px solid #71846a;padding:7px 10px;border-radius:30px}.home-grid,.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.game-grid{grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr)}.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:24px;margin:0 0 18px;min-width:0}.home-grid .card{margin-bottom:18px}label{display:block;font-size:13px;margin:17px 0 6px;font-weight:600}input{display:block;width:100%;font:inherit;color:var(--cream);background:#102b23;border:1px solid #55705d;border-radius:10px;padding:13px 14px;min-height:48px}input::placeholder{color:#90a89b}button{border:1px solid transparent;border-radius:10px;background:var(--gold);color:#183126;font:inherit;font-weight:650;padding:13px 16px;min-height:48px;cursor:pointer;touch-action:manipulation}form button{margin-top:20px;display:flex;width:100%;justify-content:space-between}button.secondary{border-color:#637b68;background:#244a3a;color:var(--cream)}button.danger{background:#713e32;color:#fff}button.compact{padding:7px 11px;min-height:40px;font-size:13px}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.muted{color:var(--muted)}.small{font-size:12px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.room-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin:30px 0 22px}.room-heading h2{font-size:35px;margin-bottom:5px}.room-heading p{margin-top:5px}.lobby-grid{display:grid;grid-template-columns:1fr 250px;gap:28px}.invitation{text-align:center;background:#102b23;border-radius:14px;padding:20px}.invitation img{background:white;border:9px solid white;border-radius:12px;width:190px;height:190px}.code{font-size:24px;font-weight:750;letter-spacing:4px;margin:10px 0}.invitation label{font-size:11px}.invitation input{font-size:12px}.invitation button{width:100%}#players{padding:0;list-style:none;counter-reset:players}#players li{counter-increment:players;display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}#players li:before{content:counter(players,decimal-leading-zero);color:var(--gold);font-size:12px}#players li span{flex:1}.categories{display:grid;grid-template-columns:1fr 1fr;gap:8px}.category{background:#28503e;color:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;font-size:13px;padding:13px 10px;min-height:56px;border-color:#496550}.category strong{color:var(--gold)}.turn-card h2{font-size:33px}.table-wrap{overflow:auto;max-height:650px}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:13px 9px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}th:first-child,td:first-child{text-align:left}thead th{color:var(--gold)}.active-column{background:#284c3c}.total-row{font-size:16px;color:var(--gold)}summary{cursor:pointer;font-weight:600}details p{font-size:13px}a{color:var(--gold);overflow-wrap:anywhere}footer{margin-top:25px;color:var(--muted);font-size:11px;text-align:center}.winner{font-family:Georgia,serif;font-size:30px;line-height:1.3;color:var(--gold)}dialog{border:1px solid #7b906e;background:var(--panel);color:var(--cream);border-radius:20px;padding:24px;width:calc(100% - 24px);max-width:480px;max-height:90dvh}dialog::backdrop{background:#000b}.dialog-top{display:flex;justify-content:space-between;align-items:start}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choices button{min-height:60px}.picked{letter-spacing:4px;min-height:30px;font-size:25px}.score{font-size:36px;font-weight:700;color:var(--gold);margin:15px 0}.count-label{display:block;font-size:12px;font-weight:400;margin-top:3px}.strike{margin-top:22px}#error{position:sticky;top:10px;z-index:5;background:#713e32;color:#fff;padding:13px 16px;border-radius:12px;border:1px solid #c68b73}#join-code{text-transform:uppercase;letter-spacing:3px}[hidden]{display:none!important}@media(max-width:760px){main{padding:20px 14px 28px}.home-grid,.game-grid,.lobby-grid{grid-template-columns:1fr}.intro{padding-top:22px}.card{padding:20px}.room-heading h2{font-size:28px}.invitation{max-width:340px;width:100%;justify-self:center}.game-grid{gap:0}.table-wrap{max-height:none}.room-heading{margin-top:24px}.actions button{flex-grow:1}.board-card{padding:20px 12px}h1{font-size:20px}.eyebrow{font-size:9px;letter-spacing:1.2px}}
