:root{--bg:#070b2e;--bg-2:#0c1245;--board:#0a1a8f;--board-hi:#1229b8;--board-dim:#08104f;--line:#1c2670;--text:#f4f5ff;--muted:#9aa3d9;--gold:#f0c050;--gold-dim:#b58d34;--right:#22c06c;--right-bg:#0e3b2a;--wrong:#ef4a55;--wrong-bg:#45141d;--none:#6b74ad;--radius:14px;--display:"Oswald", "Arial Narrow", system-ui, sans-serif;--clue:"Libre Baskerville", Georgia, serif;--ui:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--ui);-webkit-tap-highlight-color:transparent;margin:0}body{overscroll-behavior-y:none;min-height:100dvh}#root{flex-direction:column;min-height:100dvh;display:flex}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none}input,select{font:inherit;color:var(--text)}a{color:var(--gold)}h1,h2,h3{font-family:var(--display);letter-spacing:.02em;margin:0;font-weight:600}.page{width:100%;max-width:560px;padding:16px 16px calc(96px + env(safe-area-inset-bottom));flex:1;margin:0 auto}.page-title{text-transform:uppercase;margin:8px 0 16px;font-size:28px}.brand{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--gold);text-shadow:2px 2px #000;font-size:30px}.muted{color:var(--muted)}.small{font-size:13px}.row{align-items:center;gap:8px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{flex-direction:column;gap:12px;display:flex}.grow{flex:1}.center{text-align:center}.spacer{height:16px}.card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.card.tap{text-align:left;width:100%;display:block}.card.tap:active{background:var(--board-dim)}.section-label{font-family:var(--display);text-transform:uppercase;color:var(--muted);letter-spacing:.08em;margin:20px 0 8px;font-size:14px}.btn{background:var(--board);border:1px solid var(--board-hi);border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-weight:600;display:inline-flex}.btn:active{filter:brightness(1.25)}.btn:disabled{opacity:.45}.btn.primary{background:var(--gold);color:#1b1300;border-color:var(--gold);font-family:var(--display);text-transform:uppercase;letter-spacing:.05em;font-size:18px}.btn.ghost{border-color:var(--line);background:0 0}.btn.danger{background:var(--wrong-bg);border-color:var(--wrong)}.btn.block{width:100%}.btn.big{min-height:60px;font-size:20px}.btn.sm{border-radius:10px;min-height:36px;padding:0 12px;font-size:14px}.chip{border:1px solid var(--line);background:var(--bg-2);border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:15px;display:inline-flex}.chip.on{background:var(--board);border-color:var(--gold);color:var(--gold)}.field{border:1px solid var(--line);background:var(--bg-2);border-radius:12px;width:100%;min-height:48px;padding:0 14px;font-size:17px}.field:focus{outline:2px solid var(--gold);outline-offset:-1px}label.lbl{color:var(--muted);margin:0 0 6px;font-size:13px;display:block}.segmented{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:3px;display:inline-flex}.segmented button{min-height:36px;color:var(--muted);border-radius:9px;padding:0 14px;font-size:14px;font-weight:600}.segmented button.on{background:var(--board);color:var(--text)}.segmented.full{display:flex}.segmented.full button{flex:1}.money{font-variant-numeric:tabular-nums}.neg{color:var(--wrong)}.pos{color:var(--text)}.badge{background:var(--board);color:var(--gold);text-transform:uppercase;letter-spacing:.05em;vertical-align:middle;border-radius:6px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-block}.badge.warn{color:var(--gold);background:#3b2a06}.badge.muted{background:var(--line);color:var(--muted)}.tabbar{border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#070b2ef5;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar-inner{width:100%;max-width:560px;display:flex}.tabbar button{min-height:60px;color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:12px;display:flex}.tabbar button .ico{font-size:20px;line-height:1}.tabbar button.on{color:var(--gold)}.play{flex-direction:column;width:100%;max-width:560px;height:100dvh;margin:0 auto;display:flex}.play-top{padding:10px 12px 6px;padding-top:max(10px, env(safe-area-inset-top));align-items:center;gap:8px;display:flex}.icon-btn{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:inline-flex}.icon-btn:disabled{opacity:.35}.round-label{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;font-size:15px}.scores{scrollbar-width:none;gap:8px;padding:4px 12px 8px;display:flex;overflow-x:auto}.score-chip{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;flex:1 0 auto;min-width:96px;padding:6px 10px}.score-chip .nm{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:12px;overflow:hidden}.score-chip .sc{font-family:var(--display);font-size:22px;line-height:1.1}.score-chip .cy{color:var(--muted);font-size:11px}.play-body{flex-direction:column;flex:1;padding:0 12px;display:flex;overflow-y:auto}.clue-card{background:linear-gradient(180deg, var(--board-hi), var(--board));border-radius:18px;flex-direction:column;gap:10px;padding:18px 18px 20px;display:flex;box-shadow:0 6px #000a,inset 0 0 0 2px #000}.clue-cat{font-family:var(--display);text-transform:uppercase;text-shadow:2px 2px #000;font-size:21px;line-height:1.15}.clue-cat-comment{color:#cfd5ff;font-size:13px;font-style:italic}.clue-value{font-family:var(--display);color:var(--gold);text-shadow:2px 2px #000;font-size:34px;line-height:1}.clue-text{font-family:var(--clue);text-transform:uppercase;text-shadow:1px 1px #000;font-size:19px;line-height:1.45}.clue-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.response-btn{color:#cfd5ff;text-underline-offset:3px;align-self:flex-start;padding:6px 0;font-size:14px;text-decoration:underline}.response{font-family:var(--clue);color:var(--gold);font-size:17px}.dd-banner{font-family:var(--display);text-transform:uppercase;color:var(--gold);text-align:center;text-shadow:3px 3px #000;letter-spacing:.04em;font-size:40px;line-height:1}.mark-zone{background:linear-gradient(transparent, var(--bg) 14px);padding:12px 12px calc(12px + env(safe-area-inset-bottom));flex-direction:column;gap:10px;display:flex;position:sticky;bottom:0}.mark-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.mark-btn{border:2px solid #0000;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:84px;font-size:34px;font-weight:700;display:flex}.mark-btn span{letter-spacing:.04em;text-transform:uppercase;font-size:14px;font-weight:600}.mark-btn.right{background:var(--right-bg);border-color:var(--right);color:var(--right)}.mark-btn.wrong{background:var(--wrong-bg);border-color:var(--wrong);color:var(--wrong)}.mark-btn.right.on{background:var(--right);color:#032112}.mark-btn.wrong.on{background:var(--wrong);color:#2a0006}.mark-btn:active{transform:scale(.98)}.none-btn{background:var(--bg-2);border:1px solid var(--line);min-height:48px;color:var(--muted);border-radius:14px;font-weight:600}.none-btn.on{border-color:var(--muted);color:var(--text)}.player-rows{flex-direction:column;gap:8px;display:flex}.player-row{grid-template-columns:1fr 64px 64px;align-items:center;gap:8px;display:grid}.player-row .nm{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.toggle{border:2px solid var(--line);background:var(--bg-2);height:56px;color:var(--muted);border-radius:14px;font-size:24px;font-weight:700}.toggle.right.on{background:var(--right);border-color:var(--right);color:#032112}.toggle.wrong.on{background:var(--wrong);border-color:var(--wrong);color:#2a0006}.wager-block{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:8px;padding:12px;display:flex}.wager-amount{font-family:var(--display);color:var(--gold);font-size:28px}.grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}.grid-cat{background:var(--board);text-align:center;min-height:64px;font-family:var(--display);text-transform:uppercase;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;border-radius:6px;justify-content:center;align-items:center;padding:4px 3px;font-size:10.5px;line-height:1.1;display:flex;overflow:hidden}.grid-cat.editable{outline:1px dashed var(--board-hi)}.grid-cell{background:var(--board);min-height:54px;font-family:var(--display);color:var(--gold);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;padding:2px;font-size:17px;display:flex;position:relative}.grid-cell:active{filter:brightness(1.3)}.grid-cell.played{background:var(--board-dim);color:var(--gold-dim);font-size:12px}.grid-cell.current{outline:2px solid var(--gold);outline-offset:-2px}.grid-cell.empty{background:#050826}.grid-cell .marks{font-size:13px;font-family:var(--ui);gap:2px;font-weight:800;display:flex}.grid-cell .dd{color:var(--gold);font-size:8px;font-family:var(--ui);font-weight:800;position:absolute;top:2px;right:3px}.m-right{color:var(--right)}.m-wrong{color:var(--wrong)}.m-none{color:var(--none)}.sheet-backdrop{z-index:30;background:#000a;justify-content:center;align-items:flex-end;animation:.15s fade;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border-top:1px solid var(--line);width:100%;max-width:560px;max-height:92dvh;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.18s ease-out up;overflow-y:auto}.sheet-handle{background:var(--line);border-radius:3px;width:40px;height:5px;margin:0 auto 12px}@keyframes up{0%{opacity:.6;transform:translateY(30px)}}@keyframes fade{0%{opacity:0}}.toast{left:50%;top:calc(8px + env(safe-area-inset-top));z-index:40;border:1px solid var(--board-hi);white-space:nowrap;background:#1b2260;border-radius:999px;align-items:center;gap:12px;padding:6px 6px 6px 16px;font-size:15px;animation:.15s fade;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #000a}.toast button{background:var(--gold);color:#1b1300;border-radius:999px;padding:8px 14px;font-weight:700}.menu{z-index:35;background:var(--bg-2);border:1px solid var(--line);border-radius:14px;min-width:220px;padding:6px;position:absolute;top:58px;right:12px;box-shadow:0 12px 32px #000c}.menu button{text-align:left;border-radius:10px;width:100%;padding:12px;display:block}.menu button:active{background:var(--board-dim)}.menu hr{border:none;border-top:1px solid var(--line);margin:4px 0}table.tbl{border-collapse:collapse;width:100%;font-size:15px}.tbl th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--line);padding:6px 4px;font-size:12px;font-weight:600}.tbl td{border-bottom:1px solid var(--line);padding:10px 4px}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.stat{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:10px 12px}.stat .v{font-family:var(--display);font-size:24px}.stat .k{color:var(--muted);font-size:12px}.rank{font-family:var(--display);color:var(--gold);width:28px;font-size:20px}.lock{align-items:center;gap:10px;display:flex}.lock .ico{font-size:22px}.sync-dot{background:var(--right);border-radius:50%;width:8px;height:8px;display:inline-block}.sync-dot.syncing{background:var(--gold)}.sync-dot.offline,.sync-dot.error{background:var(--wrong)}.notice{border:1px solid var(--gold-dim);color:#f6e2a8;background:#2a2108;border-radius:12px;padding:10px 12px;font-size:14px}.error{background:var(--wrong-bg);border:1px solid var(--wrong);border-radius:12px;padding:10px 12px;font-size:14px}.link-box{word-break:break-all;border:1px solid var(--line);background:#000;border-radius:10px;padding:10px;font-family:ui-monospace,monospace;font-size:13px}.empty-state{text-align:center;color:var(--muted);padding:32px 8px}.cmp-tbl td,.cmp-tbl th{padding:6px 4px;font-size:13px}.cmp-tbl td.m{text-align:center;width:40px;font-weight:800}
