/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.mt-6{margin-top:calc(var(--spacing) * 6)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.lowercase{text-transform:lowercase}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}.account-card-stable{min-height:720px}.account-card-stable h1{min-height:60px}.account-card-stable .account-form{align-content:start;min-height:520px}.player-feedback{max-width:580px;margin:16px auto}.privacy-link{text-align:center;color:var(--muted);padding:20px;font-size:12px}.player-feedback form{gap:12px;display:grid}.player-feedback label{gap:8px;display:grid}.player-feedback textarea{background:var(--panel);width:100%;color:var(--text);border:1px solid var(--line);resize:vertical;border-radius:8px;padding:12px}.player-feedback small{color:var(--muted);line-height:1.5}.install-game{position:relative}.install-hint{background:var(--panel);border:1px solid var(--line);z-index:30;border-radius:8px;width:270px;max-width:80vw;padding:16px;position:absolute;top:100%;right:0}.admin-metrics{border-top:1px solid var(--line);max-width:880px;margin:28px auto;padding:20px 0}.admin-metrics>p{color:var(--muted);font-size:13px;line-height:1.6}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin:24px 0;display:grid}.metrics-grid dt{color:var(--muted);font-size:12px}.metrics-grid dd{font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:24px}.metrics-table{overflow:auto}.metrics-table table{border-collapse:collapse;width:100%;font-size:13px}.metrics-table th,.metrics-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 8px}.admin-metrics article{border-top:1px solid var(--line);overflow-wrap:anywhere;padding:16px 0}@media (max-width:640px){.header-actions{flex-wrap:wrap;justify-content:flex-end}.account-card-stable{min-height:712px}}.header-actions{align-items:center;gap:10px;min-width:0;display:flex}.board-nav,.signout-button{color:var(--text);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:10px;font-size:14px;display:flex}.player-name{text-overflow:ellipsis;white-space:nowrap;max-width:130px;color:var(--muted);font-size:14px;overflow:hidden}.account-loading{justify-content:center;align-items:center;gap:10px;display:flex}.account-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-card);max-width:400px;margin:18px auto 28px;padding:26px}.account-tabs,.board-tabs{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-pill);gap:5px;padding:4px;display:flex}.account-tabs button,.board-tabs button{color:var(--muted);border-radius:var(--radius-pill);background:0 0;border:0;flex:1;padding:10px 14px;font-size:14px}.account-tabs button[aria-pressed=true],.board-tabs button[aria-pressed=true]{background:var(--accent);color:var(--bg);font-weight:700}.account-card h1{margin:24px 0 8px;font-size:24px;line-height:1.25}.account-card>p{color:var(--muted);margin-bottom:20px;font-size:16px;line-height:1.5}.account-form{gap:15px;display:grid}.account-form label{gap:7px;font-size:14px;display:grid}.account-form input{background:var(--bg);width:100%;min-height:44px;color:var(--text);border-radius:var(--radius-field);border:1px solid #aebdc74a;padding:10px 12px;font-size:16px}.account-form input:focus{outline:2px solid var(--accent);outline-offset:1px}.account-form small{color:var(--muted);margin-top:-9px;font-size:14px}.account-submit{border-radius:var(--radius-pill);background:var(--accent);min-height:46px;color:var(--bg);border:0;justify-content:center;align-items:center;gap:8px;margin-top:3px;font-size:16px;font-weight:700;display:flex}.competition-strip{max-width:620px;color:var(--muted);justify-content:space-between;align-items:center;gap:14px;margin:3px auto 18px;font-size:14px;display:flex}.competition-strip strong,.competition-strip b{color:var(--text)}.competition-time{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--accent);align-items:center;gap:7px;display:flex}.practice-note{text-align:center;color:var(--muted);margin:-5px 0 17px;font-size:14px}.leaderboard-panel{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel);width:100%;max-width:880px;margin:26px auto 12px;padding:24px}.board-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.board-heading h2{align-items:center;gap:9px;margin:0;font-size:20px;display:flex}.board-heading h2 svg{color:var(--accent)}.board-dates,.board-rule{color:var(--muted);margin:12px 0;font-size:14px}.board-loading{align-items:center;gap:9px;padding:25px 0;display:flex}.board-scroll{max-width:100%;overflow-x:auto}.leaderboard-panel table{border-collapse:collapse;width:100%;font-size:16px}.leaderboard-panel th,.leaderboard-panel td{text-align:left;border-bottom:1px solid var(--line);padding:15px 12px}.leaderboard-panel thead th{color:var(--muted);font-size:14px;font-weight:400}.leaderboard-panel tbody th{overflow-wrap:anywhere;min-width:100px;font-weight:500}.leaderboard-panel td:nth-child(3),.leaderboard-panel td:nth-child(4){white-space:nowrap;font-variant-numeric:tabular-nums}.leaderboard-panel td>span{color:var(--muted);font-size:14px}.leaderboard-panel .board-own{background:#86ceea12}.board-own th small{color:var(--accent);margin-left:8px;font-size:14px}.rank-mark{min-width:32px;display:inline-block}.leaderboard-panel .rank-1,.leaderboard-panel .rank-2,.leaderboard-panel .rank-3{color:var(--accent);font-weight:700}.board-footnote{color:var(--muted);margin:18px 0 0;font-size:14px;line-height:1.6}.board-empty{padding:24px 0;font-size:16px}.board-reload{border:1px solid var(--accent);color:var(--accent);background:0 0;border-radius:8px;padding:9px 14px}@media (max-width:700px){.header-actions{gap:3px}.header-actions .help-button{gap:0;padding:10px;font-size:0}.player-name,.board-nav span{display:none}.account-card{padding:22px}.competition-strip{align-items:flex-start;font-size:14px}.competition-strip>span:first-child{max-width:240px}.leaderboard-panel{padding:18px 12px}.board-heading{flex-direction:column;align-items:flex-start;gap:13px}.board-tabs{width:100%}.leaderboard-panel th,.leaderboard-panel td{padding:13px 8px;font-size:14px}.leaderboard-panel th:first-child,.leaderboard-panel td:first-child{padding-left:0}}:root{--bg:#252a30;--panel:#2d343c;--accent:#86ceea;--text:#e8edf0;--muted:#aebdc7;--line:#86ceea29;--metal:linear-gradient(115deg,#56a5c2 5%,#86ceea 36%,#bfeaf7 52%,#86ceea 73%,#56a5c2 100%);--radius-card:24px;--radius-field:18px;--radius-pill:999px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{border-radius:var(--radius-pill);cursor:pointer;transition:background .2s,transform .2s}button:disabled{cursor:default;opacity:.5}button:hover:not(:disabled){filter:brightness(1.1)}:is(button:focus-visible,a:focus-visible,summary:focus-visible){outline:2px solid var(--accent);outline-offset:5px}.app-shell{flex-direction:column;max-width:1240px;min-height:100svh;margin:auto;padding:0 56px;display:flex}.header{border-bottom:1px solid var(--line);flex-shrink:0;height:80px}.brand{letter-spacing:-1.2px;color:var(--accent);font-size:27px;font-weight:700;text-decoration:none}.brand-logo{width:205px;height:auto;display:block}.help-button{color:var(--muted);background:0 0;border:0;padding:10px;font-size:12px}.main{flex:1;align-items:center;width:100%;padding:18px 0;display:grid}.game-area{width:100%;max-width:880px;margin:auto}.game-toolbar{justify-content:center;margin:0 4px 18px;display:flex}.completion-counter{text-align:center;width:min(420px,100%);padding:6px 0 8px}.counter-value{font-variant-numeric:tabular-nums;justify-content:center;align-items:baseline;gap:5px;line-height:1;display:flex}.counter-value strong{letter-spacing:-3px;background:var(--metal);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:58px;font-weight:500;animation:.2s ease-out appear}.counter-value>span{color:var(--muted);letter-spacing:-1px;font-size:25px}.counter-segments{gap:6px;margin-top:16px;display:flex}.counter-segments i{border-radius:var(--radius-pill);color:#aebdc7;background:#303840;border:1px solid #aebdc740;flex:1;place-items:center;height:26px;font-size:11px;font-style:normal;font-weight:600;transition:background .2s,box-shadow .2s;display:grid}.counter-segments .is-filled{color:#142e46;background:linear-gradient(#86ceea,#377dcc);border-color:#91c9f5;box-shadow:0 0 10px #498ce866}.counter-segments .is-missed{color:#fff3f6;background:linear-gradient(#fa738b,#d82f54);border-color:#ff879a;box-shadow:0 0 10px #ed416270}.counter-segments .is-current{color:#b5deec;background:#86ceea55;border-color:#80c9e3}.is-complete .counter-value strong{filter:drop-shadow(0 0 20px #5cf3919c);background:linear-gradient(115deg,#74e6a2,#dcffe5 52%,#6bd891);-webkit-background-clip:text;background-clip:text;animation:1.5s ease-in-out 3 complete-score}.is-complete .counter-segments .is-filled{animation:1.7s ease-in-out 2 complete-segment;box-shadow:0 0 17px #5da5ef99}.victory{isolation:isolate;text-align:center;color:#bdffd0;background:radial-gradient(at 50% 30%,#68f39b55 0%,#2c9c5a48 38%,#0000 75%),linear-gradient(145deg,#143e2b,#0a2b20 70%);border:1px solid #8af6ad;border-radius:24px;max-width:580px;margin:0 auto 20px;padding:37px 24px 40px;animation:.8s ease-out both victory-arrive,2.15s ease-in-out .6s 3 victory-glow;position:relative;overflow:hidden;box-shadow:0 0 0 1px #8af6ad30,0 0 48px #4ee88971,0 0 100px #38d6712e,inset 0 0 58px #75fa972d}.victory:before{content:"";z-index:-1;background:radial-gradient(circle at 50% 46%,#8dffb94d,#0000 54%);animation:2.15s ease-in-out .6s 3 victory-light;position:absolute;inset:0}.victory-rings{pointer-events:none;z-index:-1;width:1px;height:1px;position:absolute;top:81px;left:50%}.victory-rings span{border:2px solid #adffc480;border-radius:50%;animation:2.1s ease-out .25s 2 both victory-ring;position:absolute;inset:-48px;box-shadow:0 0 24px #7bffac7a}.victory-rings span:nth-child(2){animation-delay:.7s}.victory-rings span:nth-child(3){animation-delay:1.15s}.victory-mark{color:#07351e;background:linear-gradient(145deg,#c0ffd0,#5adf8b 58%,#31ad64);border:2px solid #d5ffe1;border-radius:50%;place-items:center;width:96px;height:96px;margin:0 auto;animation:.8s ease-out .15s both victory-pop,2.15s ease-in-out 1s 2 mark-glow;display:grid;box-shadow:0 0 0 9px #7ff8a923,0 0 42px #70f49ab8,inset 0 2px #effff3}.victory h1{margin:12px 0 5px;font-size:clamp(24px,5vw,34px);font-weight:600}.victory p{color:#cae8d1;margin:0;font-size:14px}.victory-burst{pointer-events:none;z-index:-1;position:absolute;inset:0}.victory-burst span{background:#7dc7e2;border-radius:2px;width:7px;height:16px;animation:1.8s ease-out both victory-confetti;position:absolute;top:-15px}.victory-burst span:first-child{animation-delay:.1s;left:13%}.victory-burst span:nth-child(2){background:#88e8aa;animation-delay:.28s;left:29%}.victory-burst span:nth-child(3){animation-delay:40ms;left:41%}.victory-burst span:nth-child(4){background:#88e8aa;animation-delay:.19s;left:62%}.victory-burst span:nth-child(5){animation-delay:.33s;left:77%}.victory-burst span:nth-child(6){background:#88e8aa;animation-delay:80ms;left:89%}.game-area[data-final-score="5"] .victory{background:radial-gradient(at 50% 35%,#79ffac73,#0000 72%),linear-gradient(145deg,#195c36,#0a3022 75%);border-color:#c5ffcd;animation:.8s ease-out both victory-arrive,2.8s ease-in-out .8s 3 perfect-glow;box-shadow:0 0 0 1px #bcffcc66,0 0 65px #4ee88999,0 0 120px #38d67145,inset 0 0 65px #75fa9740}.victory-perfect-label{color:#b5deec;letter-spacing:3px;text-transform:uppercase;margin:0 0 20px;font-size:12px;font-weight:700}.game-area[data-final-score="5"] .victory-mark{background:var(--metal);color:#244426;border-color:#cce8f2;width:106px;height:106px;animation:.85s ease-out .15s both victory-pop,2.8s ease-in-out 1s 3 perfect-trophy;box-shadow:0 0 0 10px #7dc7e225,0 0 48px #7dc7e285,inset 0 2px #def0f7}.game-area[data-final-score="5"] .victory-rings{top:123px}.game-area[data-final-score="5"] .victory-rings span{border-color:#e5ffb8a0;animation-duration:2.8s}.game-area[data-final-score="5"] .victory h1{color:#e0ffe6;text-shadow:0 0 25px #79ffac85;margin-top:22px}.game-area[data-final-score="5"] .victory p{color:#ddf8df;font-size:15px;line-height:1.5}.game-area[data-final-score="5"] .victory-burst span{animation-iteration-count:2}.game-area[data-final-score="5"] .victory-burst span:nth-child(3n){background:#c8e6f1;border-radius:50%;width:5px;height:10px}.game-area[data-final-score="5"] .victory-burst span:nth-child(3n+1){background:#7dc7e2}.game-area[data-final-score="5"] .victory-burst span:nth-child(3n+2){background:#88e8aa}@keyframes perfect-glow{50%{box-shadow:0 0 0 2px #c5ffcd80,0 0 90px #58f293aa,0 0 145px #3fdb8060,inset 0 0 82px #75fa9760}}@keyframes perfect-trophy{50%{transform:translateY(-5px)rotate(4deg);box-shadow:0 0 0 14px #7dc7e215,0 0 65px #7dc7e2aa,inset 0 2px #def0f7}}.game-area[data-final-score="4"]{--result-accent:#79df9b;--result-light:#d2ffdf;--result-dark:#16472d;--result-ink:#103c23;--result-glow:#63e89148}.game-area[data-final-score="3"]{--result-accent:#cdd681;--result-light:#eaf3bd;--result-dark:#323b26;--result-ink:#343b1d;--result-glow:#cdd68138}.game-area[data-final-score="2"]{--result-accent:#e8a66d;--result-light:#ffe0bf;--result-dark:#403027;--result-ink:#482b19;--result-glow:#e8a66d30}.game-area[data-final-score="1"]{--result-accent:#e88e7f;--result-light:#ffd4cb;--result-dark:#402b29;--result-ink:#4c2520;--result-glow:#e88e7f30}.game-area[data-final-score="0"]{--result-accent:#f05262;--result-light:#ffb9c2;--result-dark:#4a2028;--result-ink:#531822;--result-glow:#f0435550}.game-area[data-final-score]:not([data-final-score="5"]) .victory{border-color:var(--result-accent);background:radial-gradient(ellipse at 50% 30%,var(--result-glow),transparent 75%),linear-gradient(145deg,var(--result-dark),var(--bg) 85%);box-shadow:0 0 32px var(--result-glow),inset 0 0 38px var(--result-glow);color:var(--result-light);animation:.8s ease-out both victory-arrive}.game-area[data-final-score]:not([data-final-score="5"]) .victory:before{background:radial-gradient(circle at 50% 46%,var(--result-glow),transparent 54%)}.game-area[data-final-score]:not([data-final-score="5"]) .victory-mark{border-color:var(--result-light);background:linear-gradient(145deg,var(--result-light),var(--result-accent));color:var(--result-ink);box-shadow:0 0 0 9px var(--result-glow),0 0 28px var(--result-glow);animation:.8s ease-out .15s both victory-pop}.game-area[data-final-score]:not([data-final-score="5"]) .victory p{color:var(--result-light)}.game-area[data-final-score]:not([data-final-score="5"]) .victory-rings span{border-color:var(--result-accent);box-shadow:0 0 16px var(--result-glow)}.game-area[data-final-score]:not([data-final-score="5"]) .victory-burst span{background:var(--result-accent)}.game-area[data-final-score]:not([data-final-score="5"]) .is-complete .counter-value strong{background:linear-gradient(115deg,var(--result-accent),var(--result-light) 52%,var(--result-accent));filter:drop-shadow(0 0 14px var(--result-glow));-webkit-background-clip:text;background-clip:text;animation:.2s ease-out appear}.game-area[data-final-score]:not([data-final-score="5"]) .is-complete .counter-segments .is-filled{animation:none;box-shadow:0 0 7px #5da5ef40}.word-card{background:linear-gradient(125deg,#4bb2d808,transparent 45%),var(--panel);border:1px solid var(--line);border-radius:var(--radius-card);padding:46px 28px 22px;transition:border-color .5s,box-shadow .5s,background .5s;position:relative;box-shadow:inset 0 1px #89cde512}.word-card.is-correct{background:radial-gradient(circle at 50% 50%,#397dd13b,transparent 67%),linear-gradient(120deg,#377dcc21,transparent 65%),var(--panel);border-color:#86bff1;animation:3.6s ease-in-out answer-correct-confirm;box-shadow:0 0 0 1px #86ceea30,0 0 32px #3e87dc45,inset 0 0 40px #4d98e51a}.word-card.is-incorrect{background:radial-gradient(circle at 50% 50%,#e439603b,transparent 67%),linear-gradient(120deg,#b92b4d21,transparent 65%),var(--panel);border-color:#ff8398;animation:1.35s ease-out answer-red-pulse;box-shadow:0 0 0 1px #f5678240,0 0 36px #e3446861,inset 0 0 45px #e3446821}.interval-heading{text-align:center}.eyebrow{letter-spacing:2px;color:var(--muted);margin:4px 0 8px;font-size:10px;display:block}.metric-title{justify-content:center;align-items:center;gap:12px;display:flex}.word{letter-spacing:-1.5px;background:var(--metal);color:#0000;overflow-wrap:anywhere;-webkit-background-clip:text;background-clip:text;max-width:90%;margin:0;font-size:clamp(25px,4vw,38px);font-weight:500;line-height:1.15}.waiting-title{text-align:center;max-width:none;padding:70px 0}.hint{text-align:left;flex-shrink:0;display:inline-block;position:relative}.hint summary{cursor:pointer;color:var(--muted);border-radius:50%;padding:8px;list-style:none;display:flex}.hint summary::-webkit-details-marker{display:none}.hint-content{z-index:10;border-radius:var(--radius-field);background:#20262d;border:1px solid #86ceea59;width:min(310px,75vw);padding:15px 18px;font-size:12px;line-height:1.65;position:absolute;top:36px;right:-8px;box-shadow:0 12px 36px #0006}.hint-content p{color:var(--muted);margin:0}.hint:not([open]) .hint-content{display:none}.daily-axis{margin:18px 2px 12px}.comparison-labels{text-align:center;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,2fr);gap:0;display:grid}.comparison-labels>div:last-child{grid-column:3}.comparison-labels small{color:var(--muted);letter-spacing:1.4px;margin-bottom:8px;font-size:9px;display:block}.comparison-labels strong{color:#8ecfe6;overflow-wrap:anywhere;font-size:clamp(16px,2.4vw,22px);font-weight:500;line-height:1.2;display:block}.boundary-value{color:#e8edf0;overflow-wrap:anywhere;margin-top:5px;font-size:13px;display:block}.revealed-tip{overflow-wrap:anywhere}.revealed-tip svg{flex-shrink:0}.tip-correct{color:#b5ddff}.tip-incorrect{color:#ffc0cd}.boundary-connectors{pointer-events:none;width:100%;height:22px;display:block;overflow:visible}.boundary-connectors path{fill:none;stroke:#57b7da99;stroke-width:1.3px}.axis-track{border-radius:var(--radius-pill);background:linear-gradient(#343d47,#20262d 54%,#303840);border:1px solid #278cb0;height:42px;position:relative;box-shadow:inset 0 2px 7px #0009,inset 0 0 0 1px #89cde518,0 8px 20px #151a2066}.axis-fill{border-radius:var(--radius-pill);background:linear-gradient(#303b45,#242c35);position:absolute;inset:4px;overflow:hidden}.axis-fill:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 1px 4px #0009}.target-band{top:6px;bottom:6px;left:var(--lower);width:var(--window);border-radius:var(--radius-pill);background:linear-gradient(110deg,#bde1ee4d,#0000 38%,#def0f776 55%,#0000 70%),linear-gradient(#b3ddec 0%,#73c3e0 42%,#2995bc 100%);border:1px solid #b5deec;animation:3.2s ease-in-out infinite target-breathe;position:absolute;overflow:hidden;box-shadow:0 0 8px #76c4e1a8,inset 0 1px #e5f3f9,inset 0 -1px #1c647e90}.target-band:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 35%,#ddf0f72b 47%,#edf7faac 50%,#ddf0f71a 53%,#0000 65%);animation:6s ease-in-out infinite azure-ripple;position:absolute;inset:-60% -35%}.axis-endpoint{z-index:2;background:#7cc7e2;border:1px solid #b3ddec;border-radius:2px;width:8px;height:8px;position:absolute;top:-4px;transform:translate(-50%)rotate(45deg);box-shadow:0 0 9px #8ecfe6a8}.answer-cursor{z-index:3;background:#ecf6fa;border-radius:3px;width:3px;height:60px;transition:left .2s cubic-bezier(.2,.8,.2,1);position:absolute;top:-10px;transform:translate(-50%);box-shadow:0 0 8px #bce1ee,0 0 22px #b8dfeda0}.answer-cursor:before{content:"";background:#78c5e1;border:2px solid #ebf6fa;border-radius:3px;width:13px;height:13px;position:absolute;top:-3px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:0 0 14px #bae0eeb5}.is-scanning .answer-cursor{transition:none}.is-scanning .answer-cursor:after{content:"";filter:blur(7px);background:radial-gradient(#d1eaf490,#0000 70%);width:56px;height:32px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.axis-incorrect .answer-cursor{background:#ff708d;width:5px;box-shadow:0 0 10px #ec3b63d0,0 0 24px #ec3b6380}.axis-incorrect .answer-cursor:before{background:#e3486d;border-color:#ffdae4;box-shadow:0 0 14px #ec3b63}.axis-correct .answer-cursor{background:#b4e2ff;width:5px;animation:3.6s ease-in-out cursor-correct-confirm;box-shadow:0 0 10px #69aef2b0,0 0 24px #4385dc66}.axis-correct .answer-cursor:before{background:#589bea;border-color:#dcefff;animation:3.6s ease-in-out cursor-mark-confirm;box-shadow:0 0 14px #5199ec}.answer-cursor.cursor-overflow-left:before,.answer-cursor.cursor-overflow-right:before{width:20px;height:28px;box-shadow:none;color:#ecf6fa;text-align:center;background:0 0;border:0;font-size:28px;line-height:28px;top:-11px;transform:translate(-50%)}.answer-cursor.cursor-overflow-left:before{content:"‹"}.answer-cursor.cursor-overflow-right:before{content:"›"}.axis-incorrect .answer-cursor.cursor-overflow-left:before,.axis-incorrect .answer-cursor.cursor-overflow-right:before{color:#ff708d}.axis-zones{color:var(--muted);letter-spacing:1px;justify-content:space-between;margin:10px 2px 0;font-size:12px;display:flex}.interval-instruction{color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:9px;margin:18px 0 0;font-size:14px;line-height:1.55;display:flex}.target-swatch{border-radius:var(--radius-pill);background:linear-gradient(#b3ddec,#45afd6);border:1px solid #b3ddec;flex-shrink:0;width:16px;height:8px;box-shadow:0 0 9px #86ceea75}.end-message{text-align:center;color:#e0a38f;padding:22px 0 2px}.end-message strong{font-size:19px;font-weight:500}.answer-area{max-width:580px;min-height:100px;margin:18px auto 0}.answer-area.is-finished{min-height:0;margin-top:14px}.finish-progress{width:48px;height:48px;margin:0 auto 16px}.finish-progress svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.finish-progress circle{fill:none;stroke-width:4px}.finish-progress-track{stroke:#86ceea29}.finish-progress-fill{stroke:var(--accent);stroke-linecap:round}.answer-form{background:linear-gradient(120deg,#343e48,#252d36);border:1px solid #86ceea59;border-radius:38px;align-items:center;gap:8px;padding:8px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:inset 0 1px #b7dfed1c,0 8px 28px #151a2033}.answer-form:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #86ceea13,0 8px 30px #151a2044}.input-row{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.input-row input{color:#72c3e0;caret-color:#b3ddec;letter-spacing:-.5px;background:0 0;border:0;outline:none;flex:1;width:0;min-width:0;padding:14px;font-size:26px;font-weight:500}.input-row input::placeholder{color:#aebdc78f;font-size:22px;font-weight:400}.input-row input::selection{color:#d4ecf4;background:#86ceea40}.answer-form button,.next-button{background:var(--metal);border-radius:var(--radius-pill);color:var(--bg);border:1px solid #7fc8e3;justify-content:center;align-items:center;gap:12px;font-weight:600;display:flex;box-shadow:inset 0 1px #cae7f288,0 3px 16px #49b1d70b}.answer-form button{flex-shrink:0;width:60px;height:60px}.answer-form .skip-button{color:#addaeb;background:#374551;border-color:#2ea5d0;width:auto;padding:0 14px;font-size:14px}.answer-form .skip-button:hover:not(:disabled){background:#435666}.next-button{width:100%;padding:20px;font-size:15px}.replay-button{border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--accent);background:0 0;justify-content:center;align-items:center;gap:9px;margin:auto;padding:12px 18px;font-size:13px;display:flex}.thinking{color:var(--accent);justify-content:center;align-items:center;gap:15px;padding:22px 0;animation:.3s appear;display:flex}.thinking strong{font-size:13px;font-weight:500}.feedback{padding:0 2px 16px;animation:.3s appear}.feedback-title{color:var(--accent);align-items:center;gap:8px;font-size:16px;display:flex}.feedback-incorrect .feedback-title{color:#e0a38f}.feedback small{color:var(--muted);margin-top:7px;font-size:12px;line-height:1.6;display:block}.center-hit-badge{border-radius:var(--radius-field);background:linear-gradient(120deg,#86ceea17,#86ceea05);border:1px solid #86ceea4d;align-items:center;gap:10px;max-width:100%;margin:0 0 14px;padding:10px 14px;animation:.35s ease-out both center-hit-arrive;display:inline-flex;box-shadow:inset 0 1px #b6deed14}.center-hit-icon{color:#84cae4;background:#86ceea14;border-radius:50%;flex-shrink:0;place-items:center;width:35px;height:35px;display:grid}.center-hit-copy{text-align:left;flex-direction:column;gap:3px;line-height:1.4;display:flex}.center-hit-copy strong{color:#84cae4;font-size:13px;font-weight:600}.center-hit-copy>span{color:#bdcad4;font-size:11px}.answer-area.is-finished .center-hit-badge{width:fit-content;margin:14px auto 0;display:flex}.error{color:#e0a38f;padding:12px 0;font-size:12px;line-height:1.7}.example-answer{border:1px solid var(--line);border-radius:var(--radius-field);color:var(--muted);background:#86ceea09;margin-top:15px;padding:14px 16px;font-size:12px;line-height:1.8}.example-answer strong{color:var(--accent)}.example-answer a{color:var(--accent);margin-left:10px;text-decoration:underline;display:inline-block}.revealed-boundaries{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.7}.game-summary{text-align:center;max-width:580px;margin:20px auto 0}.share-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.share-button{border-radius:var(--radius-pill);background:var(--metal);min-width:220px;color:var(--bg);border:1px solid #75c4e1;justify-content:center;align-items:center;gap:10px;padding:15px 26px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 4px 20px #86ceea10}.share-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #86ceea20}.next-challenge-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel);max-width:360px;margin:24px auto 0;padding:20px 18px}.next-challenge-heading{color:var(--muted);letter-spacing:1.8px;justify-content:center;align-items:center;gap:8px;font-size:10px;display:flex}.next-challenge{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.next-challenge-card .replay-button{margin-top:16px}.challenge-countdown{color:var(--accent);letter-spacing:-.6px;margin:10px 0 0;font-size:24px;font-weight:500}.challenge-countdown time{font-variant-numeric:tabular-nums}.share-notice{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.6}.share-notice:empty{display:none}.game-summary textarea{border:1px solid var(--line);border-radius:var(--radius-field);width:100%;min-height:100px;color:var(--text);background:var(--panel);margin-top:10px;padding:12px;font-size:13px}.help-dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-card);width:min(540px,100% - 32px);max-height:85svh;margin:auto;padding:28px}.help-dialog::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#151a20cc}.help-dialog h2{font-size:24px;font-weight:500}.help-dialog>p{color:var(--muted);margin:15px 0;font-size:13px;line-height:1.8}.close-button{color:var(--accent);background:0 0;border:0;padding:6px}.game-recap{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--panel);max-width:580px;margin:20px auto 0;overflow:hidden}.game-recap summary{cursor:pointer;color:var(--accent);padding:18px 20px;font-size:14px}.game-recap summary>span{float:right;color:var(--muted);font-variant-numeric:tabular-nums}.game-recap summary:focus-visible{outline-offset:-4px}.game-recap>ol{margin:0;padding:0 18px 18px;list-style:none}.game-recap>ol>li{border-top:1px solid var(--line);padding:16px 12px}.game-recap .recap-mistake{background:#d7988309;border-left:2px solid #d79883}.recap-heading{color:var(--accent);justify-content:space-between;gap:12px;font-size:11px;display:flex}.recap-mistakes{color:#e0a38f;align-items:center;gap:5px;display:flex}.game-recap p{color:var(--muted);margin:8px 0 12px;font-size:12px;line-height:1.6}.game-recap ul{gap:9px;padding:0;list-style:none;display:grid}.game-recap ul>li{align-items:baseline;gap:8px;font-size:13px;display:flex}.game-recap ul svg{color:var(--accent);flex-shrink:0;align-self:center}.game-recap ul .lucide-x{color:#e0a38f}.game-recap ul span{overflow-wrap:anywhere;min-width:0}.game-recap small{text-align:right;color:var(--muted);overflow-wrap:anywhere;flex-shrink:0;max-width:45%;margin-left:auto;font-size:11px}.spin{animation:1s linear infinite spin}@keyframes appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes center-hit-arrive{0%{opacity:0;transform:translateY(5px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes azure-ripple{0%,to{opacity:.25;transform:translate(-35%)rotate(-3deg)}50%{opacity:.75;transform:translate(35%)rotate(3deg)}}@keyframes answer-red-pulse{0%,to{transform:scale(1)}31%{transform:scale(1.008);box-shadow:0 0 0 5px #ff78942d,0 0 62px #ef456ea0,inset 0 0 70px #ef456e48}65%{transform:scale(1);box-shadow:0 0 0 12px #ff789400,0 0 35px #e3446861,inset 0 0 45px #e3446821}}@keyframes target-breathe{50%{box-shadow:0 0 16px #8ecfe6ed,inset 0 1px #e5f3f9,inset 0 -1px #1c647e90}}@keyframes victory-arrive{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes victory-pop{0%{transform:scale(.5)rotate(-22deg)}to{transform:scale(1)rotate(0)}}@keyframes victory-glow{50%{box-shadow:0 0 0 2px #afffbe77,0 0 80px #58f293bd,0 0 135px #3fdb805c,inset 0 0 76px #75fa975c}}@keyframes victory-light{50%{opacity:.4}}@keyframes victory-ring{0%{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(4.5)}}@keyframes mark-glow{50%{box-shadow:0 0 0 15px #7ff8a900,0 0 62px #70f49ae6,inset 0 2px #effff3}}@keyframes complete-score{50%{filter:drop-shadow(0 0 30px #8affb6)}}@keyframes complete-segment{50%{box-shadow:0 0 22px #78b7ffe6}}@keyframes victory-confetti{0%{opacity:0;transform:translateY(-10px)rotate(0)}15%{opacity:1}to{opacity:0;transform:translateY(195px)rotate(240deg)}}@media (max-width:600px){.app-shell{padding:0 20px}.header{height:72px}.brand{font-size:25px}.brand-logo{width:180px}.help-button{padding-right:0;font-size:11px}.main{align-items:start}.game-area{margin:0 auto}.answer-area{overflow-anchor:none;flex-direction:column;display:flex}.answer-area>form{order:-1}.game-toolbar{margin-bottom:20px}.word-card{border-radius:var(--radius-card);padding:46px 18px 20px}.metric-title{gap:5px}.word{font-size:27px}.daily-axis{margin-top:20px}.comparison-labels strong{font-size:17px}.answer-form,.answer-form:focus-within{box-shadow:none;background:0 0;border:0;flex-direction:column;align-items:stretch;gap:2px;padding:0}.input-row{background:linear-gradient(120deg,#343e48,#252d36);border:1px solid #86ceea59;border-radius:38px;padding:8px;box-shadow:inset 0 1px #b7dfed1c,0 8px 28px #151a2033}.input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #86ceea13,0 8px 30px #151a2044}.input-row input{padding:13px 10px;font-size:24px}.input-row input::placeholder{font-size:20px}.input-row button{width:54px;height:54px}.answer-form .skip-button{height:44px;box-shadow:none;color:var(--muted);background:0 0;border-color:#0000;align-self:flex-end;padding:0 10px;font-size:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.target-band:after{opacity:.25}}.guest-play{border-radius:var(--radius-pill);min-height:44px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #aebdc74a;font-size:16px}.guest-play:hover{border-color:var(--accent)}@keyframes answer-correct-confirm{0%,45%,85%{background:radial-gradient(circle at 50% 50%,#65d49440,transparent 67%),linear-gradient(120deg,#58be8420,transparent 65%),var(--panel);border-color:#9de3b8;transform:scale(1);box-shadow:0 0 0 1px #9de3b838,0 0 32px #65d4944a,inset 0 0 40px #65d49428}25%,65%{background:radial-gradient(circle at 50% 50%,#65d49440,transparent 67%),linear-gradient(120deg,#58be8420,transparent 65%),var(--panel);border-color:#b2efca;transform:scale(1.008);box-shadow:0 0 0 4px #9de3b82b,0 0 52px #65d49475,inset 0 0 58px #65d49440}to{background:radial-gradient(circle at 50% 50%,#397dd13b,transparent 67%),linear-gradient(120deg,#377dcc21,transparent 65%),var(--panel);border-color:#86bff1;transform:scale(1);box-shadow:0 0 0 1px #86ceea30,0 0 32px #3e87dc45,inset 0 0 40px #4d98e51a}}@keyframes cursor-correct-confirm{0%,45%,85%{background:#a4dfba;box-shadow:0 0 10px #79c99c66,0 0 24px #79c99c30}25%,65%{background:#b2efca;box-shadow:0 0 15px #79c99c99,0 0 30px #79c99c55}}@keyframes cursor-mark-confirm{0%,45%,85%{background:#81c59b;border-color:#dbf4e4;box-shadow:0 0 14px #79c99c66}25%,65%{background:#9de3b8;border-color:#ebfff2;box-shadow:0 0 20px #79c99c99}}.play-time,.summary-time{color:var(--muted);justify-content:center;align-items:center;gap:7px;margin:0 0 14px;font-size:12px;display:flex}.play-time span,.summary-time span{color:var(--accent);font-variant-numeric:tabular-nums}.summary-time{margin-bottom:18px;font-size:11px}.password-field{width:100%;display:block;position:relative}.account-form .password-field input{padding-right:50px}.password-toggle{width:40px;height:40px;color:var(--accent);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.question-content{transition:filter .35s,opacity .35s}.is-concealed .question-content{filter:blur(7px);opacity:.6;-webkit-user-select:none;user-select:none;pointer-events:none}.question-start{border-radius:var(--radius-pill);color:#102c45;background:linear-gradient(135deg,#80cfee,#418ce1);border:1px solid #91d5fa;justify-content:center;align-items:center;gap:12px;width:100%;min-height:84px;font-size:24px;font-weight:700;animation:2.4s ease-in-out infinite question-start-pulse;display:flex;box-shadow:0 0 24px #449fe64a}.question-start:hover{background:linear-gradient(135deg,#a6e5ff,#619ff0)}.question-start:focus-visible{outline-offset:5px;outline:3px solid #d8f3ff}.question-start:disabled{opacity:.6;cursor:wait;animation:none}@keyframes question-start-pulse{0%,to{transform:scale(1);box-shadow:0 0 #69b9ef36,0 0 22px #449fe64a}50%{transform:scale(1.015);box-shadow:0 0 0 8px #69b9ef00,0 0 42px #449fe677}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
