:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#fff)var(--lightningcss-dark,#121212);--fg:var(--lightningcss-light,#1a1a1a)var(--lightningcss-dark,#e6e6e6);--border:var(--lightningcss-light,#ccc)var(--lightningcss-dark,#3a3a3a);--surface-hover:var(--lightningcss-light,#ececec)var(--lightningcss-dark,#2c2c2c);--button-bg:var(--lightningcss-light,#f0f0f0)var(--lightningcss-dark,#2a2a2a);--button-fg:var(--lightningcss-light,#1a1a1a)var(--lightningcss-dark,#e6e6e6);--muted:var(--lightningcss-light,#888)var(--lightningcss-dark,#a0a0a0);--link:var(--lightningcss-light,#4a6fa5)var(--lightningcss-dark,#8fb0dc);--active-bg:var(--lightningcss-light,#b0c4de)var(--lightningcss-dark,#3a4d6b)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{-webkit-user-select:none;user-select:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg);color:var(--fg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}h1{text-align:center;align-content:center;font-size:2rem;font-weight:700}button{cursor:pointer;text-align:center;border:20px #f0f8ff;border-radius:.45rem;align-content:center;margin:10px;padding:15px;font-family:inherit;font-size:40px;text-decoration:none}button:active{transition:transform .1s;transform:scale(.95)}.button-number{color:#61dafb;background-color:#00008b;width:clamp(52px,9vw,92px);margin:clamp(4px,1vw,10px);padding:15px 0;font-size:clamp(22px,4.5vw,40px);line-height:1;position:relative}.button-number.playing{transform:scale(.95);box-shadow:inset 0 2px 6px #00000073}.play-icon{color:#61dafb;font-size:14px;line-height:1;position:absolute;top:3px;left:5px}.button-number:disabled{opacity:.35;cursor:default}.button-number.wrong:disabled{opacity:.7;cursor:not-allowed}.swatch-mark{text-shadow:0 0 3px #000c;font-size:14px;line-height:1;position:absolute;top:3px;right:5px}.swatch-winner{text-shadow:0 0 3px #000c;font-size:16px;line-height:1;position:absolute;top:3px;left:5px}.game-toggle,.race-toggle,.mute-toggle{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:6px;margin:0;padding:6px 10px;font-size:20px;line-height:1}.game-toggle:hover,.mute-toggle:hover{background-color:var(--surface-hover)}.game-toggle.on,.race-toggle.on,.mute-toggle.on{background-color:var(--active-bg);transform:scale(.95);box-shadow:inset 0 2px 6px #00000059}.game-toggle:disabled{opacity:.4;cursor:not-allowed}@media (prefers-reduced-motion:no-preference){.game-toggle.busy{animation:1s ease-in-out infinite flight-mode-pulse}}.game-feedback{pointer-events:none;z-index:1200;justify-content:center;align-items:center;font-size:30vmin;display:flex;position:fixed;inset:0}@media (prefers-reduced-motion:no-preference){.game-feedback{animation:.7s ease-out forwards game-feedback-flash}}@keyframes game-feedback-flash{0%{opacity:0;transform:scale(.6)}25%{opacity:1;transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.app-bar{z-index:1000;background-color:var(--bg);border-bottom:1px solid var(--border);flex-direction:row-reverse;justify-content:flex-start;align-items:center;gap:12px;min-height:56px;padding:8px 12px;display:flex;position:sticky;top:0}.toolbar{order:1}.game-actions{order:2}.display{order:3}.game-score{order:4}.toolbar{flex:none;align-items:center;gap:8px;display:flex}.display{flex:1 1 0;justify-content:safe center;align-items:center;min-width:140px;display:flex;overflow:hidden;container-type:inline-size}@media (width<=760px){.app-bar{flex-direction:column;align-items:center;gap:8px}.toolbar,.display,.game-score,.game-actions{order:0}.display{flex:none;width:100%;min-width:0}}.display-text{white-space:nowrap;margin:0;animation:6s ease-in-out infinite alternate display-overflow-scroll}@keyframes display-overflow-scroll{0%{transform:translate(0)}to{transform:translate(min(0px,100cqw - 100%))}}.game-score{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:center;gap:clamp(6px,1.5vw,16px);font-size:clamp(.95rem,3vw,1.25rem);font-weight:700;display:flex}.game-actions{flex:none;align-items:center;gap:6px;display:flex}.game-actions button{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:10px;margin:0;padding:8px 12px;font-size:20px;line-height:1}.game-actions button:hover{background-color:var(--surface-hover)}.game-actions button:disabled{opacity:.4;cursor:not-allowed}:root{interpolate-size:allow-keywords}.game-score,.game-actions{height:auto;transition:opacity .3s,transform .3s,height .3s;overflow:hidden}@starting-style{.game-score,.game-actions{opacity:0;height:0;transform:translateY(-8px)}}.language-select{border:1px solid var(--border);cursor:pointer;background-color:var(--button-bg);color:var(--button-fg);border-radius:6px;padding:6px 10px;font-family:inherit;font-size:16px}.settings{position:relative}.settings-button{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);margin:0;padding:6px 10px;font-size:20px;line-height:1}.settings-button:hover{background-color:var(--surface-hover)}.settings-button.open{background-color:var(--active-bg);transform:scale(.95);box-shadow:inset 0 2px 6px #00000059}.settings-panel{border:1px solid var(--border);background-color:var(--bg);text-align:left;border-radius:10px;width:260px;max-height:calc(100vh - 80px);margin-top:8px;padding:16px;position:absolute;top:100%;right:0;overflow-y:auto;box-shadow:0 8px 28px #00000047}.settings-row{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.settings-row:last-child{margin-bottom:0}.settings-select-all{gap:6px;display:flex}.settings-select-all button{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:5px;margin:0;padding:4px 8px;font-size:12px;line-height:1}.settings-select-all button:hover{background-color:var(--surface-hover)}.settings-checklist{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:2px;max-height:180px;padding:6px 8px;display:flex;overflow-y:auto}.settings-check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:3px 0;font-size:14px;display:flex}.settings-uilang{align-items:center;gap:8px;display:flex}.settings-uilang-icon{flex:none;font-size:20px;line-height:1}.settings-uilang .language-select{flex:1}.settings-check input{cursor:pointer;margin:0}.settings-select-all button:disabled{opacity:.4;cursor:not-allowed}.settings-check:has(input:disabled){cursor:default;opacity:.6}.settings-cache-row{align-items:center;gap:10px;display:flex}.settings-cache-count{font-variant-numeric:tabular-nums;flex:1;font-size:14px}.settings-cache-clear{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:6px;margin:0;padding:6px 10px;font-size:16px;line-height:1}.settings-cache-clear:hover{background-color:var(--surface-hover)}.settings-cache-clear:disabled{opacity:.45;cursor:not-allowed}.settings-share-row{align-items:center;gap:10px;display:flex}.settings-copy-link{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:6px;margin:0;padding:6px 10px;font-size:16px;line-height:1}.settings-copy-link:hover{background-color:var(--surface-hover)}.settings-flight-mode{border:1px solid var(--border);background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:6px;margin:0;padding:8px 12px;font-size:20px;line-height:1;display:block}.settings-flight-mode:hover{background-color:var(--surface-hover)}.settings-flight-mode.on{background-color:var(--active-bg);transform:scale(.95);box-shadow:inset 0 2px 6px #00000059}@media (prefers-reduced-motion:no-preference){.settings-flight-mode.busy{animation:1s ease-in-out infinite flight-mode-pulse}}@keyframes flight-mode-pulse{50%{opacity:.4}}.settings-about{border-top:1px solid var(--border);color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:12px;font-size:12px;display:flex}.settings-about a{color:var(--link);text-decoration:none}.settings-about a:hover{text-decoration:underline}.settings-segmented{align-items:center;gap:6px;display:flex}.settings-segmented .segment{border:1px solid var(--border);white-space:nowrap;background-color:var(--button-bg);width:auto;color:var(--button-fg);border-radius:6px;flex:1;margin:0;padding:8px 4px;font-size:20px;font-weight:500}.settings-segmented .segment:hover{background-color:var(--surface-hover)}.settings-segmented .segment.selected{background-color:var(--active-bg);border-color:var(--fg);font-weight:700}.race-panel{flex:none;align-items:center;display:flex;position:relative}.race-score{order:4}.race-sheet{z-index:1100;border:1px solid var(--border,#8884);background:var(--panel-bg,Canvas);color:canvastext;border-radius:12px;flex-direction:column;gap:10px;width:min(20rem,100vw - 24px);max-height:80vh;padding:12px;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 8px 24px #0003}.race-lead{margin:0;font-size:.95rem}.race-sheet-head{justify-content:flex-end;align-items:center;gap:6px;margin:-4px -4px -6px;display:flex}.race-close,.race-step-back{color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;margin:0;padding:4px 8px;font-size:1rem;line-height:1}.race-close:hover,.race-step-back:hover{border-color:var(--border,#8886)}.race-step-back{margin-inline-end:auto}.race-note{opacity:.75;margin:0;font-size:.85rem}.race-sound{border:1px solid var(--border,#8884);border-radius:8px;margin:0;padding:6px 8px;font-size:.85rem}.race-choices{flex-wrap:wrap;gap:8px;display:flex}.race-choices button{cursor:pointer;flex:auto;padding:8px 10px;font-size:.95rem}.race-hold.on{border-color:currentColor;font-weight:600}.race-status{min-height:1.4em;margin:0;font-size:.9rem}.race-status.wrong{font-weight:600}.race-code{align-items:center;gap:6px;font-size:1.8rem;display:flex}.race-digits{min-width:0;font:inherit;font-variant-numeric:tabular-nums;letter-spacing:.25em;text-align:center;color:inherit;border:none;border-bottom:2px solid var(--border,#8886);background:0 0;flex:auto;padding:2px 0;font-size:1.8rem}.race-digits::placeholder{letter-spacing:.25em;opacity:.4}.race-digits:focus{border-bottom-color:currentColor;outline:none}.race-back{cursor:pointer;margin-inline-start:auto;font-size:1rem}.race-keypad,.race-avatars{gap:4px;display:grid}.race-keypad{grid-template-columns:repeat(3,1fr)}.race-keypad button:last-child{grid-column:2}.race-avatars{grid-template-columns:repeat(6,1fr)}.race-keypad button,.race-avatars button{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:4px 0;font-size:1.5rem}.race-keypad button:hover,.race-avatars button:hover:not(:disabled){border-color:var(--border,#8886)}.race-keypad button:disabled,.race-avatars button:disabled{opacity:.3;cursor:default}.race-room{align-items:center;gap:8px;display:flex}.race-room-code{font-variant-numeric:tabular-nums;letter-spacing:.15em;font-size:2rem}.race-qr-glyph{fill:currentColor;width:1.1rem;height:1.1rem;display:block}.race-qr-code{border-radius:8px;width:min(15rem,100%);margin:0 auto;display:block}.race-invite.on{background:var(--active-bg)}.race-invite{cursor:pointer;margin-inline-start:auto;font-size:1.1rem}.race-invite+.race-invite{margin-inline-start:4px}.race-here{flex-wrap:wrap;gap:6px;font-size:1.6rem;display:flex}.race-score{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:center;gap:clamp(6px,1.5vw,14px);font-size:clamp(.95rem,3vw,1.25rem);font-weight:700;display:flex}.race-player{align-items:center;gap:3px;display:inline-flex}.race-player.me{text-underline-offset:4px;text-decoration:underline}.race-player.away,.race-avatar.away{opacity:.4}.race-avatar{font-size:1.2em}@media (width<=760px){.race-score{order:0}}.Number{text-align:center}
