@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/libre-franklin-cyrillic-ext-500-normal-CEScqsDp.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-ext-500-normal-DNjvXlO5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/libre-franklin-cyrillic-500-normal-DmkkefNM.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-500-normal-BbpetOLr.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/libre-franklin-vietnamese-500-normal-RIIoSqy6.woff2)format("woff2"),url(/assets/libre-franklin-vietnamese-500-normal-r-ir2lkU.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/libre-franklin-latin-ext-500-normal-B0aoLQ4L.woff2)format("woff2"),url(/assets/libre-franklin-latin-ext-500-normal-BEjoZNRk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/libre-franklin-latin-500-normal-Cbta7Jiu.woff2)format("woff2"),url(/assets/libre-franklin-latin-500-normal-BQKhRarp.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-franklin-cyrillic-ext-700-normal-DR5N6Ba7.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-ext-700-normal-CF39TNs6.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-franklin-cyrillic-700-normal-CCiRtMb4.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-700-normal-CsIUO3b6.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-franklin-vietnamese-700-normal-C4s2DR1-.woff2)format("woff2"),url(/assets/libre-franklin-vietnamese-700-normal-tr4w5WCD.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-franklin-latin-ext-700-normal-DaqAYsRT.woff2)format("woff2"),url(/assets/libre-franklin-latin-ext-700-normal-CccHi4gv.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-franklin-latin-700-normal-TBBKpXzk.woff2)format("woff2"),url(/assets/libre-franklin-latin-700-normal-CP58KLQO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/libre-franklin-cyrillic-ext-800-normal-C-hGTN_5.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-ext-800-normal-BmEamoZ2.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/libre-franklin-cyrillic-800-normal-Cg7tvgdF.woff2)format("woff2"),url(/assets/libre-franklin-cyrillic-800-normal-D_zDfX4T.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/libre-franklin-vietnamese-800-normal-C0L32ege.woff2)format("woff2"),url(/assets/libre-franklin-vietnamese-800-normal-CTHI2tCk.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/libre-franklin-latin-ext-800-normal-DdVAzGkM.woff2)format("woff2"),url(/assets/libre-franklin-latin-ext-800-normal-DZTh8Sc4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/libre-franklin-latin-800-normal-IoztdYMZ.woff2)format("woff2"),url(/assets/libre-franklin-latin-800-normal-C1oVkKH1.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg-base:#fff;--color-bg-surface:#f6f6f6;--color-bg-slot:#5a5a5a;--color-bg-slot-pending:#d8d8d8;--color-text-primary:#121212;--color-text-secondary:#6e6e6e;--color-text-inverse:#fff;--color-border-default:#d3d6da;--color-brand-accent:#3b82d8;--color-status-error:#d0342c;--color-shadow:#00000059;--font-family-body:"Libre Franklin", system-ui, -apple-system, "Segoe UI", sans-serif;--font-family-heading:var(--font-family-body);--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.125rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.5rem;--font-weight-medium:500;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-base:1.5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--radius-sm:3px;--radius-lg:12px;--radius-full:9999px;--shadow-tile:-2px 3px 0 var(--color-shadow);--shadow-drag:-4px 6px 12px #00000040;--shadow-modal:0 8px 32px #00000040;--duration-fast:.1s;--duration-base:.2s;--duration-slow:.3s;--pulse-cycle:4.6s;--pulse-stagger:.12s;--pulse-group-gap:.26s;--pulse-scale-letter:1.09;--pulse-scale-rack:1.07;--pulse-scale-switcher:var(--pulse-scale-rack);--board-scale:1;--tile-size-base:clamp(48px, 14vw, 64px);--tile-font-base:clamp(1.5rem, 6vw, 2rem);--tile-size:var(--tile-size-base);--tile-font:var(--tile-font-base);--board-gap:var(--space-2);--dot-size:8px;--confetti-size:8px;--color-confetti-1:var(--color-brand-accent);--color-confetti-2:#f5a623;--color-confetti-3:#e8506e;--color-confetti-4:#35c17f;--color-confetti-5:#8b5cf6;font-family:var(--font-family-body);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background:var(--color-bg-base);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.game{max-width:480px;height:100dvh;padding:0 var(--space-4);flex-direction:column;margin:0 auto;display:flex}.game-header{align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-default);display:flex}.header-back{margin:calc(-1 * var(--space-2));padding:var(--space-2);color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.header-howto{margin:calc(-1 * var(--space-2));padding:var(--space-2);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:auto}.game-header h1{font-size:var(--font-size-lg);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;line-height:var(--line-height-tight);margin:0}.puzzle-number{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.board-scroll{scrollbar-width:none;-ms-overflow-style:none;flex:1;min-height:0;overflow:auto}.board-scroll::-webkit-scrollbar{display:none}.board-scroll{cursor:grab}.board-scroll.panning,.board-scroll.panning *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.board-pad{width:fit-content;padding:50vh 50vw}.board-canvas{--tile-size:calc(var(--tile-size-base) * var(--board-scale));--tile-font:calc(var(--tile-font-base) * var(--board-scale));--board-gap:calc(var(--space-2) * var(--board-scale));position:relative}.board-focus{pointer-events:none;position:absolute}.cell{width:var(--tile-size);height:var(--tile-size);border-radius:var(--radius-sm);font-size:var(--tile-font);font-weight:var(--font-weight-bold);color:var(--color-text-primary);box-sizing:border-box;justify-content:center;align-items:center;font-family:inherit;display:flex;position:absolute}.cell.letter{background:var(--color-bg-base);border:2px solid var(--color-text-primary)}.cell.blue{color:var(--color-brand-accent)}.cell.selectable{cursor:pointer}.cell.selected{border-color:var(--color-brand-accent);box-shadow:0 0 0 2px var(--color-brand-accent)}.cell.letter.inactive{border-color:var(--color-border-default);color:var(--color-text-secondary)}.cell.letter.inactive.blue{color:var(--color-brand-accent);opacity:.55}.cell.slot{background:var(--color-bg-slot);animation:slot-pop var(--duration-slow) ease-out backwards;animation-delay:calc(var(--slot-index,0) * 70ms);transition:background var(--duration-base) ease-out;border:none}.cell.slot.pending{background:var(--color-bg-slot-pending)}.cell.slot.filled{background:var(--color-bg-base);border:2px solid var(--color-text-primary);cursor:pointer;animation:none}.cell.slot.filled.shake{animation:.4s shake}@keyframes slot-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.rack{gap:var(--space-3);justify-content:center;display:flex}.tile,.rack-gap{width:var(--tile-size);height:var(--tile-size)}.tile{background:var(--color-bg-base);border:2px solid var(--color-text-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-tile);font-size:var(--tile-font);font-weight:var(--font-weight-bold);color:var(--color-text-primary);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-family:inherit;display:flex}.tile.blue{color:var(--color-brand-accent)}.tile.selected{border-color:var(--color-brand-accent);box-shadow:0 0 0 2px var(--color-brand-accent)}.tile.dragging{pointer-events:none;z-index:10;box-shadow:var(--shadow-drag);position:relative}.game-footer{padding:0 0 max(var(--space-6), env(safe-area-inset-bottom))}.switcher-space{height:64px;margin-bottom:var(--space-3);justify-content:center;align-items:center;display:flex}.switcher{background:var(--color-bg-base);border:2px solid var(--color-text-primary);border-radius:var(--radius-lg);width:48px;height:60px;box-shadow:var(--shadow-tile);color:var(--color-text-primary);cursor:pointer;justify-content:center;align-items:center;display:flex}.switcher.armed{border-color:var(--color-brand-accent);color:var(--color-brand-accent);box-shadow:0 0 0 2px var(--color-brand-accent)}.turn-dots{justify-content:center;gap:var(--space-4);padding:var(--space-1) 0 var(--space-2);background:0 0;border:none;display:flex}button.turn-dots{cursor:pointer}.turn-dot{border-radius:var(--radius-full);border:1.5px solid var(--color-border-default);background:var(--color-border-default);width:18px;height:18px}.turn-dot.half{background:linear-gradient(90deg, var(--color-bg-base) 50%, var(--color-border-default) 50%)}.turn-dot.done{background:var(--color-bg-base)}.switch-pulse{animation:switch-pulse var(--pulse-cycle) ease-in-out infinite;animation-delay:calc(var(--pulse-index,0) * var(--pulse-stagger) + var(--pulse-group,0) * var(--pulse-group-gap))}.cell.letter.switch-pulse{--pulse-peak:var(--pulse-scale-letter)}.rack-tile.switch-pulse{--pulse-peak:var(--pulse-scale-rack)}.switcher.switch-pulse{--pulse-peak:var(--pulse-scale-switcher)}@keyframes switch-pulse{0%,16%,to{transform:scale(1)}8%{transform:scale(var(--pulse-peak))}}.cell.letter.switch-pulse.shake{animation:.4s shake}@media (prefers-reduced-motion:reduce){.switch-pulse{animation:none}}.message{text-align:center;justify-content:center;align-items:center;min-height:4rem;display:flex}.message-error{color:var(--color-status-error);font-weight:var(--font-weight-bold)}.message-hint{color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.message-success{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);letter-spacing:-.02em;animation:pop var(--duration-slow) ease-out;transition:opacity var(--duration-slow) ease-out}.message-success.fade-out{opacity:0}.loading-dots{gap:var(--space-2);display:flex}.loading-dots span{width:var(--dot-size);height:var(--dot-size);border-radius:var(--radius-full);background:var(--color-text-secondary);animation:1.2s ease-in-out infinite dot-pulse;animation-delay:calc(var(--dot-index,0) * .16s)}@keyframes dot-pulse{0%,to{opacity:.25}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dots span{opacity:.6;animation:none}}.game-status{text-align:center;color:var(--color-text-secondary);flex:1;justify-content:center;align-items:center;display:flex}.button-primary,.button-secondary{padding:var(--space-3) var(--space-12);border-radius:var(--radius-full);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);cursor:pointer}.button-primary{background:var(--color-text-primary);color:var(--color-text-inverse);border:none}.button-secondary{background:var(--color-bg-base);color:var(--color-text-primary);border:2px solid var(--color-text-primary)}.button-tertiary{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;display:flex}.button-link{padding:var(--space-2);font-family:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;text-decoration:underline}.splash{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;padding:var(--space-6);flex-direction:column;flex:1;display:flex}.splash-brand{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.splash-logo{width:54px;height:auto}.splash-wordmark{font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.03em;line-height:var(--line-height-tight);margin:0}.splash-tm{font-size:var(--font-size-sm);vertical-align:super}.splash-lockup{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.splash-author{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.splash-footer{bottom:var(--space-6);gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-direction:column;display:flex;position:absolute;left:0;right:0}.splash-footer p{margin:0}.splash-footer a{color:inherit}.splash-phrase{margin:var(--space-6) 0;font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.splash-streak{font-weight:var(--font-weight-bold);margin:0}.splash-copyright{font-size:var(--font-size-xs)}.results{justify-content:center;align-items:center;gap:var(--space-6);text-align:center;padding:var(--space-6);padding-bottom:calc(var(--space-12) + var(--space-4));flex-direction:column;flex:1;display:flex;position:relative}.results-headline{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;line-height:var(--line-height-tight);animation:pop var(--duration-slow) ease-out;margin:0}.results-stats{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.results-stats:has(.stat:nth-child(4)){grid-template-columns:repeat(4,1fr)}.stat{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight)}.stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.results-actions{gap:var(--space-3);width:min(280px,100%);margin-top:var(--space-3);flex-direction:column;align-items:stretch;display:flex}.results-actions .button-tertiary{align-self:center}.results-about{bottom:var(--space-6);position:absolute}.share-preview{padding:var(--space-4);background:var(--color-bg-surface);border-radius:var(--radius-lg);font-family:inherit;font-size:var(--font-size-sm);white-space:pre-wrap;text-align:center;margin:0}.countdown{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.won-footer{padding:0 0 max(var(--space-6), env(safe-area-inset-bottom));justify-content:center;align-items:center;display:flex}.won-footer-dots{min-height:var(--dot-size);justify-content:flex-end}.confetti{pointer-events:none;z-index:50;position:fixed;inset:0;overflow:hidden}.confetti span{width:var(--confetti-size);height:calc(var(--confetti-size) * var(--piece-ratio));background:var(--piece-color);opacity:0;animation:confetti-burst var(--piece-duration) linear var(--piece-delay) forwards;border-radius:1px;position:absolute;top:38%;left:50%}@keyframes confetti-burst{0%{opacity:1;animation-timing-function:cubic-bezier(.1,.75,.3,1);transform:translate(-50%,-50%)scale(.4)rotate(0)}22%{transform:translate(calc(-50% + var(--piece-mx)), calc(-50% + var(--piece-my))) scale(1) rotate(calc(var(--piece-rot) * .22));opacity:1;animation-timing-function:linear}35%{opacity:1;animation-timing-function:linear}90%{opacity:0;animation-timing-function:linear}to{transform:translate(calc(-50% + var(--piece-ex)), calc(-50% + var(--piece-ey))) scale(1) rotate(var(--piece-rot));opacity:0}}.modal-backdrop{box-sizing:border-box;z-index:100;height:100svh;padding:var(--space-6) var(--space-6) max(var(--space-6), env(safe-area-inset-bottom));background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-bg-base);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);padding:var(--space-8);text-align:center;gap:var(--space-3);max-width:360px;max-height:calc(100% - 2 * var(--space-8));flex-direction:column;display:flex;overflow-y:auto}.modal h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin:0}.modal p{font-size:var(--font-size-sm);margin:0}.modal .fine-print{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.modal a{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.howto{text-align:left;gap:0;max-height:100%;padding:0;position:relative;overflow:hidden}.howto-scroll{padding:var(--space-6);gap:var(--space-2);flex-direction:column;display:flex;overflow-y:auto}.howto-scrim{height:var(--space-12);background:linear-gradient(to bottom, transparent, var(--color-bg-base));pointer-events:none;transition:opacity var(--duration-base);position:absolute;bottom:0;left:0;right:0}.howto-scrim.spent{opacity:0}.howto h2{text-align:center}.howto-goal,.howto-tip,.howto-steps{font-size:var(--font-size-sm);line-height:var(--line-height-base);margin:0}.howto-steps{gap:var(--space-3);padding-left:var(--space-4);flex-direction:column;display:flex}.howto-tip{color:var(--color-text-primary)}.howto .button-secondary{margin-top:var(--space-1);align-self:center}.shake{animation:.4s shake}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.mode-toggle{width:100%;max-width:280px;padding:var(--space-1);gap:var(--space-1);background:var(--color-bg-surface);border-radius:var(--radius-full);box-sizing:border-box;grid-auto-columns:1fr;grid-auto-flow:column;display:grid}.mode-segment{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:2px solid #0000;display:flex}.mode-segment.selected{background:var(--color-bg-base);border-color:var(--color-text-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.mode-check{font-weight:var(--font-weight-bold)}.mode-tag{font-weight:var(--font-weight-medium)}.splash-meta{gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;flex-direction:column;display:flex}.splash-meta p{margin:0}.splash-difficulty{font-size:var(--font-size-lg);letter-spacing:.1em;color:var(--color-text-primary)}.splash-practice{font-weight:var(--font-weight-bold)}.results-difficulty{font-size:var(--font-size-lg);letter-spacing:.1em;margin:0}.results-note,.results-clean{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.results-clean{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.hero-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-default);display:flex}.hero-header h1{font-size:var(--font-size-lg);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;line-height:var(--line-height-tight);margin:0}.hero-grid-cell{background:var(--color-bg-surface);cursor:pointer;border:none;padding:0}.cell.slot.hero-deny{animation:slot-pop var(--duration-slow) ease-out backwards, shake .4s;animation-delay:calc(var(--slot-index,0) * 70ms), .6s}.hero-controls{justify-content:center;align-items:center;gap:var(--space-6);margin-bottom:var(--space-3);display:flex}.hero-controls .switcher:disabled{opacity:.35;cursor:default;box-shadow:none}.hero-counter{min-width:48px;line-height:var(--line-height-tight);flex-direction:column;align-items:center;display:flex}.hero-counter strong{font-weight:var(--font-weight-extrabold);font-size:var(--font-size-xl)}.hero-counter small{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.hero-counter.zero strong,.hero-counter.zero small{color:var(--color-status-error)}.hero-board-pad{padding:var(--space-6)}.hero-board-canvas{box-shadow:0 0 0 3px var(--color-border-default);border-radius:var(--radius-sm)}.hero-board-won{box-shadow:none}.hero-queue-group{gap:2px;display:flex}.hero-queue-group.centered{justify-content:center}.hero-queue-group.played .hero-queue-tile{opacity:.35;text-decoration:line-through}.hero-queue-tile{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);width:22px;height:22px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);justify-content:center;align-items:center;display:flex}.hero-score small{margin-top:var(--space-2);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);display:inline-block}
