@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Nunito-400.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Nunito-500.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Nunito-600.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Nunito-700.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/Nunito-800.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/Nunito-900.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Inter-700.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/Inter-900.woff2) format("woff2")}:root{--bg: #ffffff;--surface: #ffffff;--surface-raised: #ffffff;--border: #e0e0d8;--text: #1a1a1a;--text-secondary: #666660;--text-muted: #999990;--tile-bg: #8E8E93;--tile-text: #ffffff;--tile-back-bg: #636366;--tile-valid-bg: #E6A032;--tile-valid-text: #ffffff;--tile-solved-bg: #199B4C;--tile-solved-text: #ffffff;--btn-primary-bg: #1a1a1a;--btn-primary-text: #ffffff;--btn-secondary-bg: #ffffff;--btn-secondary-text: #1a1a1a;--btn-secondary-border: #cccccc;--btn-hint-bg: #f0f0ea;--btn-hint-border: #cccccc;--btn-hint-text: #1a1a1a;--btn-giveup-bg: #fff0f0;--btn-giveup-border: #ffcccc;--btn-giveup-text: #cc3333;--mode-pill-track: #d4eadb;--mode-pill-active-bg: #199B4C;--mode-pill-active-text: #ffffff;--mode-pill-inactive-text: #666660;--status-bg: #f0f0ea;--status-text: #555550;--status-solved-bg: #e8f5e9;--status-solved-text: #2e7d32;--status-gaveup-bg: #fff3e0;--status-gaveup-text: #e65100;--overlay-bg: rgba(0, 0, 0, .45);--sheet-bg: #ffffff;--sheet-border: #e0e0d8;--stat-box-bg: #f5f5f0;--stat-box-border: #e0e0d8;--badge-solved-bg: #e8f5e9;--badge-solved-text: #2e7d32;--badge-solved-border: #a5d6a7;--badge-valid-bg: #fff3e0;--badge-valid-text: #e65100;--badge-valid-border: #ffcc80;--chip-solved-bg: #4caf50;--chip-solved-text: #ffffff;--chip-valid-bg: #f5a623;--chip-valid-text: #ffffff;--sort-btn-bg: #f0f0ea;--sort-btn-text: #666660;--sort-btn-active-bg: #1a1a1a;--sort-btn-active-text: #ffffff;--hint-tile-bg: #1a1a1a;--hint-tile-text: #ffffff;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.12);--shadow-lg: 0 8px 32px rgba(0,0,0,.18);--font: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}html[data-dark=true]{--bg: #121212;--surface: #1e1e1e;--surface-raised: #2a2a2a;--border: #333333;--text: #f0f0f0;--text-secondary: #aaaaaa;--text-muted: #666666;--tile-text: #ffffff;--tile-valid-bg: #E6A032;--tile-valid-text: #ffffff;--tile-solved-bg: #199B4C;--tile-solved-text: #ffffff;--btn-primary-bg: #f0f0f0;--btn-primary-text: #1a1a1a;--btn-secondary-bg: #2a2a2a;--btn-secondary-text: #f0f0f0;--btn-secondary-border: #444444;--btn-hint-bg: #2a2a2a;--btn-hint-border: #444444;--btn-hint-text: #f0f0f0;--btn-giveup-bg: #2a1a1a;--btn-giveup-border: #663333;--btn-giveup-text: #ff6666;--mode-pill-track: #2a2a2a;--mode-pill-active-bg: #f0f0f0;--mode-pill-active-text: #1a1a1a;--mode-pill-inactive-text: #888884;--status-bg: #1e1e1e;--status-text: #aaaaaa;--status-solved-bg: #1a2e1a;--status-solved-text: #66bb6a;--status-gaveup-bg: #2a1e0a;--status-gaveup-text: #ffa726;--overlay-bg: rgba(0, 0, 0, .65);--sheet-bg: #1e1e1e;--sheet-border: #333333;--stat-box-bg: #2a2a2a;--stat-box-border: #444444;--badge-solved-bg: #1a2e1a;--badge-solved-text: #66bb6a;--badge-solved-border: #2e7d32;--badge-valid-bg: #2a1e0a;--badge-valid-text: #ffa726;--badge-valid-border: #d4881a;--chip-solved-bg: #388e3c;--chip-solved-text: #ffffff;--chip-valid-bg: #d4881a;--chip-valid-text: #ffffff;--sort-btn-bg: #2a2a2a;--sort-btn-text: #aaaaaa;--sort-btn-active-bg: #f0f0f0;--sort-btn-active-text: #1a1a1a;--hint-tile-bg: #f0f0f0;--hint-tile-text: #1a1a1a}html[data-dark=true]:not([data-theme=high-contrast]){--mode-pill-track: #d4eadb;--mode-pill-active-bg: #199B4C;--mode-pill-active-text: #ffffff;--mode-pill-inactive-text: #888884}html[data-theme=high-contrast]{--tile-valid-bg: #FED52F;--tile-valid-text: #000000;--tile-solved-bg: #00ABFF;--tile-solved-text: #000000;--mode-pill-track: #cce8ff;--mode-pill-active-bg: #00ABFF;--mode-pill-active-text: #000000;--chip-solved-bg: #00ABFF;--chip-solved-text: #000000;--chip-valid-bg: #FED52F;--chip-valid-text: #000000;--badge-solved-bg: #e0f4ff;--badge-solved-text: #005f8a;--badge-solved-border: #99d6ff;--badge-valid-bg: #fffde0;--badge-valid-text: #8a6800;--badge-valid-border: #ffe566;--status-solved-bg: #e0f4ff;--status-solved-text: #005f8a}html[data-theme=high-contrast] .game-header{background:#00abff}html[data-theme=high-contrast] .game-title,html[data-theme=high-contrast] .icon-btn{color:#000}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;user-select:none;-webkit-user-select:none}html{height:100dvh;overflow:hidden}body,#root{height:100%;overflow:hidden}#root{display:flex;flex-direction:column}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;touch-action:pan-y}button{font-family:var(--font);cursor:pointer;border:none;background:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.game{display:flex;flex-direction:column;align-items:center;flex:1;min-height:0;width:100%;max-width:600px;margin:0 auto;padding:0 16px max(16px,env(safe-area-inset-bottom));gap:0;overflow:hidden}.game-header{width:100%;background:#199b4c;padding-top:env(safe-area-inset-top,0px)}.game-header__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:600px;margin:0 auto;padding:8px 16px}.game-header__left{display:flex;justify-content:flex-start;gap:4px}.game-header__centre{display:flex;flex-direction:column;align-items:center;gap:8px}.game-header__right{display:flex;justify-content:flex-end;gap:0}.game-title{font-family:var(--font);font-size:clamp(28px,7.5vw,52px);font-weight:900;font-style:italic;letter-spacing:-.5px;color:#fff}.game-title__beta{font-size:.35em;font-weight:700;font-style:normal;letter-spacing:.05em;margin-left:4px;vertical-align:super;opacity:.85;text-transform:uppercase}.game-day{font-size:14px;color:var(--text-secondary);font-weight:600;text-align:center;padding:16px 0;flex-shrink:0}.icon-btn{width:34px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:18px;background:transparent;color:#fff;transition:opacity .15s}.icon-btn:active{opacity:.6}.mode-switcher{display:flex;align-items:center;justify-content:center;width:100%;padding:0 16px 6px;flex-shrink:0}.mode-switcher__track{display:flex;align-items:center;width:min(60vw,320px);background:var(--mode-pill-track);border-radius:999px;padding:3px;gap:0}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:4px clamp(8px,2vw,12px);background:transparent;color:var(--mode-pill-inactive-text);font-size:clamp(13px,3.5vw,16px);font-weight:700;border:none;border-radius:999px;transition:background .2s,color .2s;white-space:nowrap}.mode-btn--active{background:var(--mode-pill-active-bg);color:var(--mode-pill-active-text)}.mode-btn__sub{font-size:11px;font-weight:400;opacity:.7}.status-bar{width:100%;text-align:center;padding:10px 16px;border-radius:var(--radius-md);background:var(--status-bg);color:var(--status-text);font-size:14px;font-weight:500;min-height:40px;display:flex;align-items:center;justify-content:center}.status-bar--solved{background:var(--status-solved-bg);color:var(--status-solved-text)}.status-bar--gave-up{background:var(--status-gaveup-bg);color:var(--status-gaveup-text)}.push-counter{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;gap:2px;padding-top:16px;flex-shrink:0;width:min(80%,460px);container-type:inline-size}.push-counter__number{font-family:Inter,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:10cqi;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}.push-counter__label{font-size:5cqi;font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.push-counter__result{font-size:clamp(13px,4vw,17px);font-weight:700;color:var(--text)}.game-spacer{flex:1;min-height:12px;max-height:clamp(12px,3vh,48px)}.game-tab-panel{width:100%;display:flex;flex-direction:column;flex:1;min-height:0}.game-level{width:100%;flex:1;min-height:0;display:flex;flex-direction:column}.game-panel{width:100%;display:flex;flex-direction:column;align-items:center;gap:0;padding:0 12px;flex:1;min-height:0;background:var(--bg)}.tile-and-buttons{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:100%;gap:24px}.tile-grid-wrapper{width:min(80%,460px);touch-action:none;-webkit-user-select:none;user-select:none;aspect-ratio:5 / 3;display:flex;align-items:center;flex-shrink:0}.tile-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:100%}.tile-cell{aspect-ratio:1;position:relative;container-type:inline-size}.tile-cell--spacer{visibility:hidden}.tile-wrapper{width:100%;height:100%;perspective:600px;transition:transform .18s ease}.tile{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 1s ease-in-out,background .25s;border-radius:2px;transform:rotateY(0)}.tile--back{transform:rotateY(-180deg)}.tile__face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:2px;display:flex;align-items:center;justify-content:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;font-size:clamp(16px,4vw,22px);font-weight:700;letter-spacing:.5px}.tile__face--front{background:var(--tile-bg);color:var(--tile-text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:50cqi;font-weight:900;transition:background .25s,color .25s,box-shadow .15s ease-in-out;-webkit-user-select:none;user-select:none}.tile__face--back{background:var(--tile-bg);transform:rotateY(180deg)}.tile--invalid .tile__face--front{background:var(--tile-bg);color:var(--tile-text)}.tile--valid .tile__face--front{background:var(--tile-valid-bg);color:var(--tile-valid-text)}.tile--solved .tile__face--front{background:var(--tile-solved-bg);color:var(--tile-solved-text)}.tile-wrapper--dragging .tile__face--front{opacity:.85;box-shadow:var(--shadow-lg)}.bottom-buttons{width:100%;display:flex;flex-direction:column;align-items:center;gap:0;flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);font-weight:600;font-size:clamp(12px,3.5vw,15px);padding:clamp(8px,2vw,12px) clamp(12px,4vw,24px);transition:opacity .15s,transform .1s;border:2px solid transparent}.btn:active{transform:scale(.97);opacity:.85}.btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn--large{font-size:17px;padding:14px 32px;border-radius:var(--radius-lg)}.btn--start{background:var(--tile-solved-bg);color:var(--tile-solved-text);border-radius:4px;font-size:clamp(13px,4vw,17px);font-weight:700;padding:4px 8px;letter-spacing:.2px}.game-action-buttons{display:inline-flex;flex-direction:column;align-items:stretch;gap:10px}.btn--words{background:var(--tile-valid-bg);color:var(--tile-valid-text);border-radius:4px;font-size:clamp(13px,4vw,17px);font-weight:700;padding:4px 8px;letter-spacing:.2px}.btn--hints,.btn--share,.btn--results{background:var(--tile-solved-bg);color:var(--tile-solved-text);border-radius:4px;font-size:clamp(13px,4vw,17px);font-weight:700;padding:4px 8px;letter-spacing:.2px}.btn--secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-color:var(--btn-secondary-border)}.btn--hint{background:var(--tile-solved-bg);color:var(--tile-solved-text);border-color:transparent;font-size:clamp(11px,3.5vw,14px);font-weight:700;padding:7px 16px;text-align:center;border-radius:4px;flex-shrink:0}.btn--giveup{background:#d32f2f;color:#fff;border-color:transparent;font-size:clamp(11px,3.5vw,14px);font-weight:700;padding:7px 16px;text-align:center;border-radius:4px;flex-shrink:0}.game-over-actions{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.solution-reveal{font-size:15px;color:var(--text-secondary);text-align:center;line-height:1.6}.solution-reveal strong{color:var(--tile-solved-bg);font-weight:700;margin:0 3px}.out-of-puzzles-banner{width:100%;padding:12px 16px;border-radius:var(--radius-md);background:var(--status-gaveup-bg);color:var(--status-gaveup-text);font-size:13px;text-align:center}.words-drawer{position:fixed;bottom:0;left:0;right:0;max-width:480px;margin:0 auto;background:var(--sheet-bg);border-radius:16px 16px 0 0;box-shadow:none;z-index:90;overflow:hidden;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1)}.words-drawer .sheet-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding-bottom:20px;scrollbar-gutter:stable}.words-drawer--open{transform:translateY(0);box-shadow:0 -4px 24px #0000004d}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);display:flex;align-items:flex-end;justify-content:center;z-index:100;animation:overlay-fade-in .2s ease forwards}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:480px;background:var(--sheet-bg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-top:1px solid var(--sheet-border);max-height:85vh;overflow-y:auto;overscroll-behavior:contain;box-shadow:var(--shadow-lg);animation:sheet-slide-up .25s ease forwards}@keyframes sheet-slide-up{0%{transform:translateY(40px);opacity:.8}to{transform:translateY(0);opacity:1}}.sheet-content{padding:0 20px 32px}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:20px 0 6px;position:sticky;top:0;background:var(--sheet-bg);z-index:1;border-bottom:1px solid var(--border)}.sheet-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:var(--text)}.sheet-close{width:40px;height:40px;border-radius:50%;background:var(--mode-btn-bg);color:var(--text);display:flex;align-items:center;justify-content:center;transition:opacity .15s}.sheet-close:active{opacity:.6}.hint-giveup-confirm{display:flex;gap:8px;flex-shrink:0}.hints-subtitle{font-size:13px;color:var(--text-muted);margin-bottom:16px}.hint-block{border:1px solid var(--border);border-radius:4px;background:#efefef;padding:14px;margin-bottom:10px}.hint-block--giveup{border-color:var(--border)}.hint-block__header{display:flex;align-items:center;gap:12px}.hint-block__icon{font-size:22px;flex-shrink:0}.hint-block__title{font-size:14px;font-weight:600;color:var(--text)}.hint-block__cost{font-size:12px;color:var(--text-muted);margin-top:1px}.hint-block__header .btn{margin-left:auto;flex-shrink:0}.hint-block__desc{font-size:13px;color:var(--text-secondary);margin-top:8px}.hint-block__result{margin-top:12px;display:flex;gap:6px;flex-wrap:wrap}.hint-letter-tile{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--tile-solved-bg);color:var(--tile-solved-text);border-radius:4px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:18px;font-weight:900;letter-spacing:.5px}.hint-word-tiles{display:flex;gap:6px}.words-found-empty{font-size:14px;color:var(--text-muted);text-align:center;padding:24px 0}.words-found-summary{display:flex;gap:8px;margin-bottom:14px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid}.badge--solved{background:var(--badge-solved-bg);color:var(--badge-solved-text);border-color:var(--badge-solved-border)}.badge--valid{background:var(--badge-valid-bg);color:var(--badge-valid-text);border-color:var(--badge-valid-border)}.sort-toggle{display:flex;align-items:center;gap:6px}.sort-btn{padding:6px 0;width:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-size:13px;font-weight:700;background:var(--sort-btn-bg);color:var(--sort-btn-text);transition:background .15s,color .15s}.sort-btn--active{background:var(--tile-solved-bg);color:var(--tile-solved-text)}.words-found-grid{flex:1;min-height:0;display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;gap:6px;margin-top:12px;overflow-x:auto;overflow-y:hidden}.word-chip{padding:5px 10px;border-radius:2px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:14px;font-weight:700;letter-spacing:.5px}@keyframes word-appear{0%{opacity:0}12%{opacity:0;animation-timing-function:ease-in}20%{opacity:1}36%{opacity:1;animation-timing-function:ease-in-out}48%{opacity:.4;animation-timing-function:ease-in-out}60%{opacity:1}72%{opacity:1;animation-timing-function:ease-in-out}84%{opacity:.4;animation-timing-function:ease-in-out}96%{opacity:1}to{opacity:1}}.word-chip--new{animation:word-appear 2.5s linear both}.word-chip--solved{background:var(--tile-solved-bg);color:var(--tile-solved-text)}.word-chip--valid{background:var(--tile-valid-bg);color:var(--tile-valid-text)}.word-chip--tappable{cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:currentColor;opacity:.9;transition:opacity .15s ease,transform .1s ease}.word-chip--tappable:hover{opacity:1;transform:scale(1.06)}.word-chip--tappable:active{transform:scale(.97)}.sheet--definition{max-height:85vh;min-height:40vh;box-shadow:0 -4px 24px #0000004d;display:flex;flex-direction:column}.sheet--definition .sheet-content{flex:1;display:flex;flex-direction:column}.word-definition-panel__scroll-fade{position:sticky;bottom:0;margin:-56px -20px 0;height:56px;background:linear-gradient(to bottom,transparent,var(--sheet-bg));pointer-events:none}.word-definition-panel .sheet-header{align-items:flex-start;border-bottom:none}.word-definition-panel .sheet-close{margin-top:-10px}.word-definition-panel__header-text{display:flex;flex-direction:column;gap:1px}.word-definition-panel__label{font-size:16px;color:var(--text-secondary);font-weight:500}.word-definition-panel__word{font-size:30px;letter-spacing:.02em;margin-top:4px}.word-definition-panel__loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 0}.word-definition-panel__loading-text{font-size:14px;color:var(--text-secondary, #8e8e93)}.word-definition-panel__spinner{width:32px;height:32px;border-radius:50%;border:3px solid transparent;border-top-color:var(--text-secondary, #8e8e93);border-right-color:var(--text-secondary, #8e8e93);border-bottom-color:var(--text-secondary, #8e8e93);animation:wdp-spin .75s linear infinite}@keyframes wdp-spin{to{transform:rotate(360deg)}}.word-definition-panel__not-found{font-size:14px;color:var(--text-muted);text-align:center;padding:24px 0}.word-definition-panel__chain{margin-bottom:16px}.word-definition-panel__chain-step{font-size:14px;color:var(--text-muted);margin:2px 0;padding-left:12px}.word-definition-panel__chain-label{font-style:italic;font-size:16px;color:var(--text)}.word-definition-panel__chain-word{font-weight:700;font-size:16px;color:var(--text)}.word-definition-panel__senses{display:flex;flex-direction:column;gap:16px}.word-definition-panel__sense{display:flex;flex-direction:column;gap:4px}.word-definition-panel__pos{font-size:18px;font-weight:700;color:var(--text);text-transform:lowercase;letter-spacing:normal;margin:0;padding-left:12px}.word-definition-panel__def{font-size:16px;line-height:1.5;color:var(--text);margin:0;padding-left:24px}.word-definition-panel__example{font-size:16px;font-style:italic;color:var(--text-secondary);margin:0;padding-left:24px}.word-definition-panel__license{font-size:12px;color:var(--text-secondary);text-align:left;margin-top:auto;padding-top:24px;padding-bottom:20px}.level-stats{display:flex;flex-direction:column;align-items:center;padding:16px 0}.level-stats__heading{font-size:17px;font-weight:700;color:var(--text);margin-bottom:16px}.stats-rating-section{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:20px}.stats-rating-label{font-size:15px;font-weight:700;color:var(--text-secondary);letter-spacing:.02em}.stats-rating-tile{width:min(18vw,84px);aspect-ratio:1;background:var(--tile-solved-bg);color:var(--tile-solved-text);border-radius:4px;display:flex;align-items:center;justify-content:center;padding:6px;font-size:min(8vw,36px);font-weight:800;font-variant-numeric:tabular-nums}.stats-rating-sublabel{font-size:13px;color:var(--text-secondary)}.stats-row{display:grid;gap:0;width:100%;max-width:320px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:-1px}.stats-row--3{grid-template-columns:repeat(3,1fr)}.stats-row--2{grid-template-columns:repeat(2,1fr);max-width:210px}.stat-cell{background:transparent;border:none;border-radius:0;padding:12px 8px;text-align:center}.stat-cell__value{font-size:24px;font-weight:700;color:var(--text);line-height:1.1;font-variant-numeric:tabular-nums}.stat-cell__label{font-size:11px;color:var(--text-secondary);margin-top:4px;line-height:1.3;white-space:pre-line}.stats-divider{height:1px;background:var(--border);margin:4px 0}.completion-panel{display:flex;flex-direction:column;align-items:stretch;padding-bottom:24px}.completion-panel .sheet-header{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;border-bottom:none}.completion-panel .sheet-title{grid-column:2;justify-content:center;color:var(--text-secondary);font-size:clamp(13px,4vw,17px)}.completion-panel .sheet-close{grid-column:3}.completion-result{text-align:center;font-size:clamp(16px,5vw,20px);font-weight:800;color:var(--text);margin:12px 0 6px;line-height:1.2}.completion-result__emoji{font-size:1em;line-height:1}.completion-score{display:flex;flex-direction:column;align-items:center;margin:4px 0 14px}.completion-score__number{font-size:48px;font-weight:800;color:var(--text);line-height:1;font-variant-numeric:tabular-nums}.completion-score__label{font-size:15px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em;margin-top:6px}.completion-panel .level-stats{padding-top:0;padding-bottom:0}.completion-mode-switcher{margin-top:4px;margin-bottom:0}.completion-panel .stats-rating-section{gap:4px;margin-top:8px;margin-bottom:12px}.completion-share-btn{align-self:center;margin-top:4px;font-size:clamp(13px,4vw,17px);font-weight:700}.completion-next-puzzle{text-align:center;font-size:13px;color:var(--text-secondary);margin-top:18px}.completion-stats-section{background:color-mix(in srgb,var(--text) 8%,transparent);border-radius:12px;padding:14px 16px 12px;margin-top:18px}.completion-stats-label{display:flex;align-items:center;justify-content:center;gap:8px;font-size:clamp(13px,4vw,17px);font-weight:700;color:var(--text-secondary);margin-bottom:6px}@media (max-height: 900px) and (max-width: 410px){.completion-panel .sheet-header{padding:8px 0 2px}.completion-result{margin-top:4px}.completion-score__number{font-size:36px}.completion-panel .stat-cell{padding:4px 8px}.completion-panel .stat-cell__value{font-size:20px}}@media (max-height: 700px){.game-day{padding:8px 0}}@media (max-width: 360px){.game{padding:0 10px 24px;gap:8px}.stat-cell__value{font-size:20px}}@media (min-width: 768px){.tile-grid{gap:6px}}@media (min-width: 500px){.game{padding:0 24px 16px;gap:16px}.game-day{padding-bottom:0}.sheet{border-radius:var(--radius-lg);margin-bottom:48px}.sheet-overlay{align-items:center}.sheet-overlay--bottom{align-items:flex-end}.sheet-overlay--bottom .sheet{border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin-bottom:0}}.settings-panel .sheet-header{background:var(--sheet-bg)}.settings-body{padding-top:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.settings-row__label{font-size:16px;font-weight:700;color:var(--text)}.settings-row__text{display:flex;flex-direction:column;gap:2px}.settings-row__subtitle{font-size:13px;font-weight:400;color:var(--text-secondary, #8e8e93)}.settings-toggle{position:relative;width:51px;height:31px;border-radius:16px;background:#e0e0e0;transition:background .2s;flex-shrink:0;border:none;padding:0;cursor:pointer}html[data-dark=true] .settings-toggle{background:#48484a}.settings-toggle--on{background:var(--tile-solved-bg)!important}.settings-toggle__thumb{position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0000004d;transition:transform .2s}.settings-toggle--on .settings-toggle__thumb{transform:translate(20px)}.settings-divider{border:none;border-top:1px solid var(--border)}.settings-footer-links{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.settings-footer-link{color:#06c;text-decoration:underline;font-size:13px;font-weight:500}html[data-dark=true] .settings-footer-link{color:#4da6ff}.settings-footer-link:active{opacity:.7}.settings-divider--inset{margin-left:32px}.settings-section-title{font-size:16px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;padding:16px 0 8px}.settings-theme-row{display:flex;align-items:center;width:100%;padding:8px 0;background:none;border:none;cursor:pointer;gap:8px}.settings-theme-row__inner{flex:1;display:flex;align-items:center;padding:6px 10px;background:#efefef;border:1px solid var(--border);border-radius:4px;gap:12px}html[data-dark=true] .settings-theme-row__inner,html[data-dark=true] .hint-block{background:#48484a}.settings-theme-row__check{width:24px;flex-shrink:0;color:#007aff;display:flex;align-items:center}.settings-theme-row__name{flex:1;font-size:16px;font-weight:400;color:var(--text);text-align:left}.settings-theme-row__tiles{display:flex;gap:4px;flex-shrink:0}.settings-theme-tile{width:36px;height:36px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:clamp(16px,3.5vw,20px);font-weight:900}.help-panel .sheet-header{background:var(--sheet-bg)}.help-body{display:flex;flex-direction:column;gap:0}.help-replay-section{display:flex;justify-content:flex-start;margin:8px 0 4px}.help-replay-btn{background:var(--tile-solved-bg);color:var(--tile-solved-text);border-radius:4px;padding:4px 8px;font-size:clamp(13px,4vw,17px);font-weight:700;letter-spacing:.2px}.help-divider{border:none;border-top:1px solid var(--border);margin:4px 0}.help-section{display:flex;flex-direction:column;gap:10px;padding:20px 0;font-size:15px;line-height:1.5;color:var(--text)}.help-heading{font-size:20px;font-weight:700;margin-bottom:2px}.help-bullets{padding-left:0;list-style:none;display:flex;flex-direction:column;gap:4px}.help-bullets li:before{content:"■ ";font-size:10px;vertical-align:middle}.help-level{display:flex;align-items:flex-start;gap:10px}.help-level-icon{width:20px;height:20px;flex-shrink:0;margin-top:2px;color:var(--tile-solved-bg)}.help-example{display:flex;flex-direction:column;gap:8px;padding-bottom:4px}.help-example-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:100%;max-width:220px}.help-example-tile{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;border-radius:2px;font-weight:900;font-size:clamp(12px,3.5vw,18px)}.help-example-tile--invalid{background:var(--tile-bg);color:var(--tile-text)}.help-color-legend{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.help-color-row{display:flex;align-items:center;gap:12px}.help-color-row p{margin:0}.help-color-swatch{display:inline-block;width:24px;height:24px;border-radius:4px;flex-shrink:0}.help-color-swatch--invalid{background:var(--tile-bg)}.help-color-swatch--valid{background:var(--tile-valid-bg)}.help-color-swatch--solved{background:var(--tile-solved-bg)}.help-example-tile--valid{background:var(--tile-valid-bg);color:var(--tile-valid-text)}.help-example-tile--solved{background:var(--tile-solved-bg);color:var(--tile-solved-text)}.help-footnote{font-size:13px;color:var(--text-secondary);margin-top:4px}.help-badge{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;padding:7px 14px;border-radius:4px;align-self:flex-start}.help-badge--words{background:var(--tile-valid-bg);color:var(--tile-valid-text)}.help-badge--hints{background:var(--tile-solved-bg);color:var(--tile-solved-text)}.help-hints-list{padding-left:20px;display:flex;flex-direction:column;gap:6px}.game--hidden{visibility:hidden}.game-header--onboarding{position:relative;z-index:10000}.game-header--onboarding .game-header__right{visibility:hidden}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;animation:onboarding-fade-in .25s ease}.onboarding-overlay--first-visit{background:var(--bg)}.onboarding-overlay--replay{background:var(--overlay-bg)}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}.onboarding-card{position:relative;width:min(90vw,360px);background:var(--bg);border-radius:var(--radius-lg);padding:28px 24px 20px;display:flex;flex-direction:column;align-items:center;gap:16px;box-shadow:0 8px 40px #0000004d}.onboarding-close{position:absolute;top:26px;right:12px;background:none;border:none;padding:4px;cursor:pointer;color:var(--text-muted);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.onboarding-close:hover{color:var(--text);background:var(--hover-bg, rgba(0, 0, 0, .06))}.onboarding-grid{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:100%;max-width:280px}.onboarding-ghost-hand{position:absolute;pointer-events:none;z-index:10;transform:translate(-3px,-1px);filter:drop-shadow(0 2px 4px rgba(0,0,0,.18))}.onboarding-tile{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;border-radius:2px;font-weight:900;font-size:clamp(19px,5.5vw,28px);color:#fff;background:var(--tile-bg);transition:background .25s ease}.onboarding-tile--invalid{background:var(--tile-bg)}.onboarding-tile--valid{background:var(--tile-valid-bg)}.onboarding-tile--solved{background:var(--tile-solved-bg)}.onboarding-title{font-size:20px;font-weight:800;color:var(--text);text-align:center;margin:0;letter-spacing:-.01em}.onboarding-text{display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;transform:translateY(4px);transition:opacity .35s ease,transform .35s ease;min-height:56px}.onboarding-text--visible{opacity:1;transform:translateY(0)}.onboarding-heading{font-size:18px;font-weight:800;color:var(--text);text-align:center;margin:0}.onboarding-caption{font-size:16px;line-height:1.5;color:var(--text);text-align:center;margin:0;max-width:300px}.onboarding-footer{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:4px}.onboarding-dots{display:flex;gap:8px}.onboarding-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted);transition:background .2s}.onboarding-dot--active{background:var(--tile-solved-bg)}.onboarding-btn{background:var(--tile-solved-bg);color:#fff;border:none;border-radius:999px;padding:8px 24px;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s}.onboarding-btn:disabled{opacity:.45;cursor:default}.onboarding-btn:active:not(:disabled){transform:scale(.97);opacity:.85}.portrait-lock{display:none}@media (orientation: landscape) and (max-height: 500px){.portrait-lock{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;background:var(--bg);align-items:center;justify-content:center;text-align:center;padding:16px}}.portrait-lock__inner{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:320px}.portrait-lock__icon{color:var(--text);animation:portrait-lock-rotate 2.4s ease-in-out infinite}@keyframes portrait-lock-rotate{0%,25%{transform:rotate(0)}50%,75%{transform:rotate(-90deg)}to{transform:rotate(0)}}.portrait-lock__text{margin:0;font-size:18px;font-weight:700;color:var(--text);line-height:1.3}.portrait-lock__brand{margin:0;font-size:14px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em}.prelaunch-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#199b4c;padding:24px;z-index:99999;animation:prelaunch-fade-in .4s ease forwards}@keyframes prelaunch-fade-in{0%{opacity:0}to{opacity:1}}.prelaunch-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;max-width:420px}.prelaunch-brand__title{font-size:clamp(32px,8vw,48px);font-weight:900;font-style:italic;letter-spacing:-.5px;color:#fff;margin-bottom:8px}.prelaunch-heading{margin:0;font-size:clamp(22px,5vw,28px);font-weight:800;color:#fff}.prelaunch-date{margin:0;font-size:clamp(16px,4vw,20px);font-weight:600;color:#fff}.prelaunch-date sup{font-size:.65em;vertical-align:super}.prelaunch-subtitle{margin:8px 0 0;font-size:14px;color:#ffffffd9;line-height:1.5}.platform-chooser-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#199b4c;padding:24px;z-index:99999;animation:prelaunch-fade-in .4s ease forwards}.platform-chooser-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:20px;max-width:420px;width:100%}.platform-chooser-brand{font-size:clamp(44px,11vw,64px);font-weight:900;font-style:italic;letter-spacing:-.5px;color:#fff;margin-bottom:4px}.platform-chooser-heading{margin:0;font-size:clamp(28px,6.5vw,36px);font-weight:800;color:#fff}.platform-chooser-subtitle{margin:0 0 8px;font-size:clamp(18px,4.5vw,22px);color:#ffffffeb;line-height:1.5;padding:0 8px}.platform-chooser-buttons{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.platform-chooser-btn{display:flex;align-items:center;justify-content:flex-start;gap:8px;font-family:inherit;font-size:13px;font-weight:700;white-space:nowrap;padding:0 8px;border-radius:10px;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,background .12s ease,color .12s ease,box-shadow .16s ease;height:50px;width:150px}.platform-chooser-btn--primary{background:#fff;color:#199b4c;box-shadow:0 0 0 1px #0028124d,0 4px 10px #002812b3}.platform-chooser-btn--primary:hover{background:#f3f3f3;box-shadow:0 0 0 1px #0028124d,0 6px 16px #002812d9;transform:translateY(-1px)}.platform-chooser-btn--primary:active{background:#ebebeb;box-shadow:0 0 0 1px #0028124d,0 1px 3px #00281299;transform:translateY(0)}.platform-chooser-browser-icon{width:28px;height:28px;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.platform-chooser-app-store-badge{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;padding:0;cursor:pointer;align-self:center;margin-top:12px;border-radius:9px;transition:transform .12s ease,box-shadow .16s ease;box-shadow:0 4px 10px #002812b3}.platform-chooser-app-store-badge:hover{box-shadow:0 6px 16px #002812d9;transform:translateY(-1px)}.platform-chooser-app-store-badge:active{box-shadow:0 1px 3px #00281299;transform:translateY(0)}.platform-chooser-app-store-badge img{display:block;height:50px;width:auto;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.platform-chooser-dont-show{display:flex;align-items:center;gap:10px;margin-top:4px;font-size:18px;color:#ffffffeb;cursor:pointer;-webkit-user-select:none;user-select:none}.platform-chooser-dont-show input[type=checkbox]{width:22px;height:22px;accent-color:#ffffff;cursor:pointer}
