/*! tailwindcss v4.2.1 | 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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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,ui-sans-serif, system-ui, 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{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]){appearance:button}::file-selector-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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--paper:#f4efe4;--sheet:#fffdf7;--surface-canvas:#fffdf7;--surface-navigation:#f2eee5;--surface-raised:#faf7ef;--surface-interactive:#f7f2e9;--surface-active:#eee7dc;--surface-hover:#46392712;--ink:#27251f;--ink-soft:#6d685e;--line:#cfc6b5;--line-dark:#4f4a41;--coral:#d95643;--coral-soft:#f7d8d1;--sage:#6f876f;--sage-soft:#dfe9dc;--blue-soft:#e4edf2;--gold-soft:#f3e8b4;--status-success-surface:#e7eee4;--status-success-border:#6f876f;--status-success-ink:#4f674f;--status-warning-surface:#fbf2d2;--status-warning-border:#d2ad45;--status-warning-ink:#795d14;--status-danger-surface:#f8ddd6;--status-danger-border:#b84b3d;--status-danger-ink:#9f4135;--status-info-surface:#e4edf2;--status-info-border:#7893a3;--status-info-ink:#35566c;--selection-surface:#f3e8b4;--selection-border:#c59b3b;--toggle-track:#e3ddd2;--toggle-thumb:#fffdf8;--text-on-accent:#fffdf7;--control-shadow:0 1px 0 #46392708, 0 7px 16px #4639270b;--overlay-surface:#fffdf7eb;--overlay-border:#3f667e3d;--overlay-ink:#31536a;--scrim:#24201b85;--celebration-surface:linear-gradient(145deg, #fffdf7 0%, #fff7dc 100%);--celebration-border:#e2c96f;--celebration-glow:#f1d985b8;--celebration-stat-line:#7a5d142e;--celebration-emphasis:#725713;--celebration-control:#fffdf7cc;--ui-accent:#3f667e;--ui-accent-hover:#31536a;--ui-accent-soft:#e4edf2;--ui-accent-subtle:#f3f7f9;--ui-accent-border:#3f667e52;--ui-panel:#faf7ef;--ui-panel-strong:#fffdf7;--ui-panel-muted:#f2eee5;--ui-panel-border:#d7cdbd;--ui-divider:#ded5c6;--ui-icon-bg:#eaf1f4;--ui-focus:#3f667e5c;--mode-explore:#3f667e;--mode-practice:#607860;--mode-game:#ad573c;--game-primary-action-surface:var(--ui-accent);--game-primary-action-hover:var(--ui-accent-hover);--game-primary-action-border:var(--ui-accent);--game-primary-action-ink:var(--text-on-accent);--rush-rhythm-start:#00aee6;--rush-rhythm-middle:#20cf72;--rush-rhythm-end:#f5b91f;--rush-rhythm-glow:#20cf7257;--shadow:0 20px 54px #4639271a}*{box-sizing:border-box}html{scroll-behavior:smooth;width:100%;height:100%}body{background:var(--sheet);width:100%;height:100%;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5;overflow:hidden}button,select,input{font:inherit}button,select{color:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--ui-focus);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:500}main{width:100%;height:100dvh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--coral);letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;font-size:.66rem;font-weight:800}.workbench{background:var(--sheet);border:0;grid-template-columns:minmax(205px,240px) minmax(0,1fr);width:100%;height:100dvh;margin:0;display:grid;overflow:hidden}.workbench[data-learning-mode=game]{--ui-accent:#ad573c;--ui-accent-hover:#8f432f;--ui-accent-soft:#f3ded4;--ui-accent-subtle:#fcf4ef;--ui-accent-border:#ad573c57;--ui-icon-bg:#f7e6dc;--ui-focus:#ad573c5c;--game-primary-action-surface:#ad573c;--game-primary-action-hover:#8f432f;--game-primary-action-border:#ad573c;--game-primary-action-ink:#fffdf7}.workbench:fullscreen{background:var(--sheet);border:0;width:100vw;height:100dvh;margin:0;overflow:hidden}.technique-index,.lesson{height:100%;overflow-y:auto}.workbench:fullscreen .technique-index{height:100%;overflow-y:auto}.workbench:fullscreen .lesson{height:100%;overflow-y:auto}.technique-index{border-right:1px solid var(--line);background:var(--surface-navigation);padding:18px 12px 22px}.mobile-index-header,.mobile-technique-trigger,.mobile-menu-backdrop,.game-mobile-mode-menu,.return-to-explanation{display:none}.section-kicker{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:800;display:block}.technique-list{gap:14px;display:grid}.game-sidebar-score{color:var(--ink-soft);margin:0;font-size:.62rem;line-height:1.45}.game-sidebar-controls{gap:11px;display:grid}.game-sidebar-controls>.game-sidebar-session-card{order:0}.game-sidebar-controls>.game-sidebar-ranking{order:1}.game-sidebar-session-card{border:1px solid var(--ui-panel-border);background:linear-gradient(145deg, var(--surface-interactive), var(--surface-raised));box-shadow:var(--control-shadow);border-radius:12px;gap:8px;padding:8px;display:grid}.game-sidebar-session-card>.game-variant-switch{border-color:var(--line)}@supports (color:color-mix(in lab, red, red)){.game-sidebar-session-card>.game-variant-switch{border-color:color-mix(in srgb, var(--line) 72%, transparent)}}.game-sidebar-session-card>.game-variant-switch{background:var(--surface-navigation)}@supports (color:color-mix(in lab, red, red)){.game-sidebar-session-card>.game-variant-switch{background:color-mix(in srgb, var(--surface-navigation) 82%, transparent)}}.game-sidebar-session{border:1px solid var(--ui-panel-border);background:linear-gradient(145deg, var(--surface-interactive), var(--surface-raised));box-shadow:var(--control-shadow);border-radius:11px;gap:11px;padding:12px;display:grid}.game-sidebar-session-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.game-sidebar-session-title{align-items:center;gap:8px;min-width:0;display:flex}.game-sidebar-session-icon,.game-new-session-icon{border:1px solid var(--ui-accent-border);background:var(--ui-icon-bg);width:30px;height:30px;color:var(--ui-accent);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.game-sidebar-session-title>span:last-child{gap:1px;display:grid}.game-sidebar-session-title small{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.5rem;font-weight:850}.game-sidebar-session-title strong{color:var(--ink);font-size:.72rem;font-weight:850}.game-session-level{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.game-session-level>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.game-sidebar-rank{background:var(--status-success-surface);color:var(--status-success-ink);border-radius:999px;flex:none;margin:0;padding:2px 6px;font-size:.46rem;font-weight:850}.game-sidebar-rank.is-unranked{background:var(--status-danger-surface);color:var(--status-danger-ink)}.game-sidebar-session dl{border-top:1px solid var(--ui-divider);border-bottom:1px solid var(--ui-divider);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:8px 0;display:grid}.game-sidebar-session dl>div{gap:2px;padding:0 8px;display:grid}.game-sidebar-session dl>div:first-child{border-right:1px solid var(--ui-divider);padding-left:0}.game-sidebar-session dl>div:last-child{padding-right:0}.game-sidebar-session dt,.game-sidebar-session dd{margin:0}.game-sidebar-session dt{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.49rem;font-weight:750}.game-sidebar-session dd{color:var(--ink);justify-content:flex-start;align-items:center;gap:5px;font-size:.64rem;font-weight:800;display:inline-flex}.game-sidebar-pause{border:1px solid var(--game-primary-action-border);background:var(--game-primary-action-surface);width:100%;min-height:32px;color:var(--game-primary-action-ink);text-align:left;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:6px 8px;font-size:.61rem;font-weight:850;display:grid}.game-sidebar-pause:hover:not(:disabled){border-color:var(--game-primary-action-hover);background:var(--game-primary-action-hover)}.game-sidebar-pause:disabled{cursor:default;opacity:.5}.game-sidebar-pause kbd{border:1px solid;min-width:18px;padding:2px 4px}@supports (color:color-mix(in lab, red, red)){.game-sidebar-pause kbd{border:1px solid color-mix(in srgb, currentColor 40%, transparent)}}.game-sidebar-pause kbd{background:currentColor;border-radius:3px}@supports (color:color-mix(in lab, red, red)){.game-sidebar-pause kbd{background:color-mix(in srgb, currentColor 8%, transparent)}}.game-sidebar-pause kbd{color:inherit;text-align:center;font-family:inherit;font-size:.52rem;font-weight:850}.game-new-session.game-sidebar-new-session{box-shadow:none;background:0 0;border:0;padding:0;position:relative}.game-sidebar-new-session summary{border:1px solid var(--ui-panel-border);background:var(--surface-interactive);border-radius:8px;align-items:center;gap:7px;min-height:32px;padding:6px 8px;transition:border-color .15s,background .15s,color .15s;display:flex}.game-sidebar-new-session summary:hover,.game-sidebar-new-session[open] summary{border-color:var(--ui-accent-border);background:var(--ui-accent-subtle)}.game-sidebar-new-session summary:focus-visible{outline:2px solid var(--ui-focus);outline-offset:4px;border-radius:7px}.game-sidebar-new-session .game-new-session-heading{align-items:center;gap:6px;min-width:0;display:flex}.game-new-session-heading strong{color:var(--ink);white-space:nowrap;font-size:.58rem;font-weight:850}.game-session-actions{flex:none;align-items:center;gap:7px;display:flex}.game-new-session-chevron{color:var(--ink-soft);flex:none;transition:transform .16s,color .16s}.game-new-session[open] .game-new-session-chevron{color:var(--ui-accent);transform:rotate(180deg)}.game-sidebar-new-session .game-new-session-content{z-index:40;border:1px solid var(--ui-panel-border);background:linear-gradient(145deg, var(--surface-raised), var(--surface-canvas));border-radius:12px;gap:11px;width:min(300px,100vw - 32px);margin-top:0;padding:14px;display:grid;position:absolute;bottom:calc(100% + 16px);right:0;box-shadow:0 18px 46px #2f281e33}.game-sidebar-new-session .game-new-session-content:before{border-right:1px solid var(--ui-panel-border);border-bottom:1px solid var(--ui-panel-border);background:var(--surface-raised);content:"";width:11px;height:11px;position:absolute;bottom:-6px;right:22px;transform:rotate(45deg)}.game-new-session-content-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.game-new-session-content-header>span{gap:2px;display:grid}.game-new-session-content-header strong{color:var(--ink);font-size:.72rem;font-weight:850}.game-new-session-content-header small,.game-new-session-footer>small{color:var(--ink-soft);font-size:.56rem;font-weight:700;line-height:1.4}.game-new-session-close{width:27px;height:27px;color:var(--ink-soft);background:0 0;border:0;border-radius:7px;flex:none;place-items:center;padding:0;display:inline-grid}.game-new-session-close:hover{background:var(--surface-hover);color:var(--ink)}.game-sidebar-new-session .game-difficulty{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr);gap:6px;padding:0}.game-sidebar-new-session .game-difficulty button{border:1px solid var(--ui-panel-border);background:var(--surface-interactive);min-height:43px;box-shadow:var(--control-shadow);text-align:left;border-radius:9px;justify-content:flex-start;gap:7px;padding:7px 30px 7px 7px;font-size:.57rem;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s;position:relative}.game-sidebar-new-session .game-difficulty button:hover{border-color:var(--ui-accent-border);background:var(--ui-accent-subtle);transform:translateY(-1px)}.game-sidebar-new-session .game-difficulty button.is-active{border-color:var(--ui-accent-border);background:var(--ui-accent-soft);box-shadow:inset 0 0 0 1px var(--ui-accent-border), var(--control-shadow)}.game-sidebar-new-session .rush-duration-options{gap:8px}.game-sidebar-new-session .rush-duration-options button{border-color:var(--status-info-border);gap:10px;min-height:50px;padding:8px 34px 8px 9px}@supports (color:color-mix(in lab, red, red)){.game-sidebar-new-session .rush-duration-options button{border-color:color-mix(in srgb, var(--status-info-border) 48%, var(--ui-panel-border))}}.game-sidebar-new-session .rush-duration-options button{background:var(--status-info-surface)}@supports (color:color-mix(in lab, red, red)){.game-sidebar-new-session .rush-duration-options button{background:color-mix(in srgb, var(--status-info-surface) 28%, var(--surface-interactive))}}.game-sidebar-new-session .rush-duration-options button:hover{border-color:var(--status-info-border);background:var(--status-info-surface)}@supports (color:color-mix(in lab, red, red)){.game-sidebar-new-session .rush-duration-options button:hover{background:color-mix(in srgb, var(--status-info-surface) 65%, var(--surface-canvas))}}.game-sidebar-new-session .rush-duration-options button.is-active{border-color:var(--status-info-border);background:var(--status-info-surface);box-shadow:inset 0 0 0 1px var(--status-info-border), 0 5px 13px var(--status-info-border)}@supports (color:color-mix(in lab, red, red)){.game-sidebar-new-session .rush-duration-options button.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--status-info-border) 72%, transparent), 0 5px 13px color-mix(in srgb, var(--status-info-border) 18%, transparent)}}.rush-duration-options .game-difficulty-icon{border:1px solid var(--status-info-border);width:31px;height:31px}@supports (color:color-mix(in lab, red, red)){.rush-duration-options .game-difficulty-icon{border:1px solid color-mix(in srgb, var(--status-info-border) 48%, transparent)}}.rush-duration-options .game-difficulty-icon{background:var(--status-info-surface)}@supports (color:color-mix(in lab, red, red)){.rush-duration-options .game-difficulty-icon{background:color-mix(in srgb, var(--status-info-surface) 78%, var(--surface-canvas))}}.rush-duration-options .game-difficulty-icon{color:var(--status-info-ink)}.rush-duration-options button.is-active .game-difficulty-icon{border-color:var(--status-info-border);background:var(--status-info-border);color:var(--text-on-accent)}.rush-duration-options .game-difficulty-check{color:var(--status-info-ink);right:11px}.rush-duration-options .game-difficulty-copy{gap:2px}.game-difficulty-check{color:var(--ui-accent);position:absolute;right:9px}.game-difficulty-icon{background:var(--ui-icon-bg);width:25px;height:25px;color:var(--ui-accent);border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.game-difficulty-copy{gap:1px;min-width:0;display:grid}.game-difficulty-copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.56rem;overflow:hidden}.game-difficulty-copy small{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.43rem;font-weight:700;line-height:1.25;overflow:hidden}.game-new-session-footer{border-top:1px solid var(--ui-divider);gap:8px;padding-top:10px;display:grid}.game-new-session-footer-actions{justify-content:flex-end;gap:7px;display:flex}.game-new-session-cancel,.game-new-session-start{border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:7px 10px;font-size:.6rem;font-weight:850;display:inline-flex}.game-new-session-cancel{border:1px solid var(--ui-panel-border);background:var(--surface-interactive);color:var(--ink-soft)}.game-new-session-cancel:hover{background:var(--surface-hover);color:var(--ink)}.game-new-session-start{border:1px solid var(--game-primary-action-border);background:var(--game-primary-action-surface);color:var(--game-primary-action-ink)}.game-new-session-start:hover{border-color:var(--game-primary-action-hover);background:var(--game-primary-action-hover)}.game-entry-shortcuts{border-top:1px solid var(--line);padding-top:10px}.game-entry-shortcuts>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:26px;list-style:none;display:grid}.game-entry-shortcuts>summary::-webkit-details-marker{display:none}.game-shortcut-essentials{align-items:center;gap:9px;min-width:0;display:flex}.game-shortcut-essentials>span,.game-shortcut-disclosure{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.game-shortcut-essentials>span{color:var(--ink-soft);font-size:.5rem;font-weight:700}.game-shortcut-disclosure{color:var(--ui-accent);font-size:.52rem;font-weight:850}.game-shortcut-disclosure svg{transition:transform .16s}.game-entry-shortcuts[open] .game-shortcut-disclosure svg{transform:rotate(180deg)}.game-entry-shortcuts>dl{display:none}.game-entry-shortcuts[open]>dl{border-top:1px solid var(--ui-divider);grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:8px 0 0;padding-top:8px;display:grid}.game-entry-shortcuts dl>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-height:22px;display:grid}.game-entry-shortcuts dt,.game-entry-shortcuts dd{margin:0}.game-entry-shortcuts kbd{border:1px solid var(--line);background:var(--surface-canvas);min-width:24px;min-height:18px;color:var(--ui-accent);white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:2px 4px;font-family:inherit;font-size:.48rem;font-weight:850;display:inline-flex}.game-entry-shortcuts dd{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.54rem;line-height:1.2;overflow:hidden}.game-sidebar-score{border:0;align-items:flex-start;gap:7px;padding:0;display:flex}.game-sidebar-score strong{color:var(--ui-accent);font-weight:850}.game-sidebar-score>svg{color:var(--ui-accent);flex:none;margin-top:1px}.game-sidebar-ranking{border:1px solid var(--ui-panel-border);background:var(--surface-raised);border-radius:11px;gap:9px;padding:11px;display:grid}.game-sidebar-ranking-summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;min-width:0;list-style:none;display:grid}.game-sidebar-ranking-summary::-webkit-details-marker{display:none}.game-sidebar-ranking-identity{min-width:0;color:var(--ui-accent);align-items:center;gap:7px;display:inline-flex}.game-sidebar-ranking-identity>span{gap:1px;min-width:0;display:grid}.game-sidebar-ranking-identity strong{color:var(--ink);font-size:.62rem;font-weight:850}.game-sidebar-ranking-identity small{max-width:100%;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.46rem;font-weight:700;display:block;overflow:hidden}.game-sidebar-ranking-headline{text-align:right;gap:1px;display:grid}.game-sidebar-ranking-headline small{color:var(--ink-soft);white-space:nowrap;font-size:.44rem;font-weight:750}.game-sidebar-ranking-headline strong{color:var(--ui-accent);font-variant-numeric:tabular-nums;font-size:.7rem;font-weight:900}.game-sidebar-ranking-chevron{color:var(--ink-soft);transition:transform .16s}.game-sidebar-ranking[open] .game-sidebar-ranking-chevron{transform:rotate(180deg)}.game-sidebar-ranking-body{display:none}.game-sidebar-ranking[open]>.game-sidebar-ranking-body{border-top:1px solid var(--ui-divider);gap:8px;padding-top:8px;display:grid}.game-sidebar-ranking-refresh{min-height:24px;color:var(--ink-soft);background:0 0;border:0;border-radius:5px;justify-self:end;align-items:center;gap:4px;padding:3px 5px;font-size:.5rem;font-weight:800;display:inline-flex}.game-sidebar-ranking-refresh:hover{background:var(--ui-accent-soft);color:var(--ui-accent)}.game-sidebar-ranking-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.game-sidebar-ranking-list li{border-top:1px solid var(--ui-divider);grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:34px;padding:5px 0;display:grid}.game-sidebar-ranking-body .game-sidebar-ranking-list li:first-child{border-top:0}.game-sidebar-ranking-position{background:var(--surface-active);width:20px;height:20px;color:var(--ink-soft);border-radius:999px;place-items:center;font-size:.49rem;font-weight:900;display:grid}.game-sidebar-ranking-list li:first-child .game-sidebar-ranking-position{background:var(--status-warning-surface);color:var(--status-warning-ink)}.game-sidebar-ranking-player{gap:1px;min-width:0;display:grid}.game-sidebar-ranking-player strong,.game-sidebar-ranking-player small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-sidebar-ranking-player strong{color:var(--ink);font-size:.54rem;font-weight:800}.game-sidebar-ranking-player small{color:var(--ink-soft);font-size:.43rem;font-weight:700}.game-sidebar-ranking-points{color:var(--ui-accent);font-variant-numeric:tabular-nums;font-size:.54rem;font-weight:900}.game-sidebar-ranking-empty{border-top:1px solid var(--ui-divider);min-height:34px;color:var(--ink-soft);text-align:left;background:0 0;margin:0;padding:8px 0;font-size:.52rem;line-height:1.35}.game-sidebar-ranking-empty.is-action{cursor:pointer;border-bottom:0;border-left:0;border-right:0;width:100%}.game-sidebar-high-scores{border:1px solid var(--ui-panel-border);width:100%;min-height:34px;color:var(--ink-soft);background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-size:.62rem;font-weight:850;display:inline-flex}.game-sidebar-high-scores:hover,.game-sidebar-high-scores.is-active{border-color:var(--ui-accent-border);background:var(--ui-accent-soft);color:var(--ui-accent)}.technique-group h3{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px 9px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.63rem;font-weight:900}.category-guide-link{width:100%;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:7px;padding:3px 5px 3px 0;transition:color .15s,background .15s;display:flex}.category-guide-link svg{opacity:.48;flex:none;transition:opacity .15s,transform .15s}.category-guide-link:hover,.category-guide-link.is-active{background:var(--surface-interactive);color:var(--ink)}.category-guide-link:hover svg,.category-guide-link.is-active svg{opacity:1;transform:translate(1px)}.category-guide-link.is-active{color:var(--coral)}.technique-group-list{gap:2px;display:grid}.technique-group+.technique-group{padding-top:5px}.technique-link{width:100%;min-height:31px;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-left:2px solid #0000;border-radius:0 3px 3px 0;grid-template-columns:17px minmax(0,1fr);align-items:center;gap:7px;padding:5px 9px;transition:background .15s,box-shadow .15s,color .15s;display:grid}.technique-link:hover{background:var(--surface-interactive);color:var(--ink)}.technique-link.is-active{border-left-color:var(--coral);background:var(--surface-active);box-shadow:var(--control-shadow);color:var(--ink)}.technique-icon{color:var(--ink-soft);transition:color .15s,transform .15s}.technique-link:hover .technique-icon{color:var(--ink-soft)}.technique-link.is-active .technique-icon{color:var(--coral);transform:translate(1px)}.technique-name{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:700;overflow:hidden}.practice-eyebrow{color:var(--coral);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:850}.lesson{min-width:0;padding:14px clamp(20px,2.2vw,36px) 24px}.lesson-title-row{grid-area:1/2;justify-self:center;min-width:0}.lesson-topline{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;min-height:44px;padding:1px 0 10px;display:grid}.lesson-identity{align-items:center;min-width:0;display:flex}.lesson-identity h1{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(1.08rem,1.35vw,1.3rem);line-height:1.1;overflow:hidden}.lesson-identity h1:focus-visible,.board-panel:focus-visible{outline-offset:4px;outline:2px solid #d956438c}.category-guide{width:min(100%,1160px);margin:0 auto;padding:clamp(32px,4.5vw,66px) 0 72px}.category-guide-hero{grid-template-columns:minmax(0,1.38fr) minmax(290px,.72fr);align-items:end;gap:clamp(34px,5vw,76px);padding-bottom:clamp(36px,5vw,58px);display:grid}.category-guide-eyebrow,.category-example-eyebrow,.category-definition>span{color:var(--coral);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-style:normal;font-weight:850;display:block}.category-guide-hero h2{letter-spacing:-.045em;max-width:820px;margin:10px 0 17px;font-size:clamp(2rem,4.2vw,4.25rem);line-height:.98}.category-guide-hero-copy>p{max-width:760px;color:var(--ink-soft);margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.58}.category-guide-start{border:1px solid var(--ui-accent-border);background:var(--ui-accent-subtle);min-height:42px;color:var(--ui-accent);border-radius:999px;align-items:center;gap:9px;margin-top:24px;padding:9px 15px;font-size:.72rem;font-weight:800;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.category-guide-start:hover{border-color:var(--ui-accent);background:var(--ui-accent-soft);transform:translateY(-1px)}.category-definition{border-left:2px solid var(--coral);padding:22px 0 3px 24px}.category-definition>span{color:var(--ink-soft);margin-bottom:10px}.category-definition p{color:#555047;margin:0;font-size:.84rem;line-height:1.68}.category-guide-section{border-top:1px solid var(--line);padding:clamp(38px,5vw,62px) 0}.category-guide-section-heading{max-width:720px;margin-bottom:27px}.category-guide-section-heading h2{letter-spacing:-.025em;margin:8px 0 0;font-size:clamp(1.55rem,2.6vw,2.35rem);line-height:1.12}.category-guide-section-heading>p{color:var(--ink-soft);margin:10px 0 0;font-size:.79rem;line-height:1.55}.category-practical-use .category-guide-section-heading{margin-bottom:17px}.category-practical-use>p{color:#4f4a42;max-width:960px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.35vw,1.14rem);line-height:1.72}.category-model{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.category-model article{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:17px minmax(0,1fr);gap:12px;min-height:124px;padding:18px clamp(18px,2vw,28px);display:grid;position:relative}.category-model article+article{border-left:1px solid var(--line)}.category-model-marker{border:2px solid var(--coral);background:var(--sheet);border-radius:50%;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 4px #f8e8e3}.category-model h3{margin:0 0 7px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;font-weight:820;line-height:1.25}.category-model p{color:#635e55;margin:0;font-size:.73rem;line-height:1.55}.category-model-arrow{z-index:1;background:var(--sheet);color:#9a9286;border-radius:50%;padding:2px;position:absolute;top:18px;right:-9px}.category-example-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.category-example{border:1px solid var(--line);background:var(--surface-raised);border-radius:12px;flex-direction:column;min-height:310px;padding:clamp(23px,3vw,34px);display:flex}.category-example-eyebrow{color:var(--sage)}.category-example h3{margin:9px 0 13px;font-size:clamp(1.18rem,1.7vw,1.5rem);line-height:1.18}.category-example>p:not(.category-example-conclusion){color:var(--ink-soft);margin:0;font-size:.78rem;line-height:1.62}.category-example-flow{align-items:stretch;gap:5px;margin:24px 0;display:flex}.category-example-flow>span{flex:1 1 0;align-items:center;gap:5px;min-width:0;display:flex}.category-example-flow b{border:1px solid var(--line);background:var(--surface-interactive);min-height:48px;color:var(--ink);text-align:center;border-radius:7px;flex:auto;place-items:center;padding:8px;font-size:.66rem;line-height:1.3;display:grid}.category-example-flow svg{color:#968f84;flex:none}.category-example-conclusion{color:#4d5f4e;border-top:1px solid #6f876f40;grid-template-columns:18px minmax(0,1fr);gap:9px;margin:auto 0 0;padding-top:17px;font-size:.73rem;font-weight:680;line-height:1.5;display:grid}.category-example-conclusion svg{color:var(--sage);margin-top:2px}.category-method-directory{padding-bottom:0}.category-method-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.category-method-card{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:34px minmax(0,1fr) 22px;align-items:start;gap:13px;min-height:166px;padding:22px 20px;transition:background .15s;display:grid}.category-method-card:nth-child(odd){border-right:1px solid var(--line)}.category-method-card:hover{background:var(--surface-interactive)}.category-method-icon{background:var(--surface-interactive);width:32px;height:32px;color:var(--ink-soft);border-radius:8px;place-items:center;display:grid}.category-method-copy{min-width:0;display:grid}.category-method-meta{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:6px;display:flex}.category-method-meta small,.category-method-meta i{color:#817a70;letter-spacing:.045em;text-transform:uppercase;font-size:.57rem;font-style:normal;font-weight:760}.category-method-meta small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-method-meta i{color:var(--coral);flex:none}.category-method-copy>strong{color:var(--ink);margin-bottom:7px;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:600;line-height:1.25}.category-method-copy>span:not(.category-method-meta){color:#575249;font-size:.72rem;line-height:1.47}.category-method-copy>em{color:var(--sage);margin-top:5px;font-size:.67rem;font-style:normal;font-weight:720;line-height:1.4}.category-method-arrow{color:#9b9489;margin-top:7px;transition:color .15s,transform .15s}.category-method-card:hover .category-method-arrow{color:var(--coral);transform:translate(2px)}.lesson-header-actions{grid-area:1/3;justify-content:flex-end;justify-self:stretch;align-items:center;gap:8px;display:flex}.lesson-nav{border:1px solid var(--ui-panel-border);background:var(--surface-raised);border-radius:10px;flex:none;gap:2px;padding:2px;display:flex}.lesson-nav button{width:32px;height:32px;color:var(--ink-soft);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;font-size:1rem;display:inline-grid}.lesson-nav .fullscreen-toggle{justify-content:center;align-items:center;width:32px;padding:0;display:inline-flex}.lesson-nav button:hover{background:var(--surface-active);color:var(--ink)}.lesson-nav button:disabled{cursor:not-allowed;opacity:.34}.game-header-history-controls{display:contents}.theme-toggle[aria-pressed=true]{background:var(--status-warning-surface);color:var(--status-warning-ink)}.lesson-topline>.learning-mode-switch{grid-area:1/1;justify-self:start}.learning-mode-switch{border:1px solid var(--ui-panel-border);background:var(--surface-raised);white-space:nowrap;border-radius:10px;align-items:center;gap:2px;min-height:36px;padding:2px;display:inline-flex}.learning-mode-switch button{min-height:30px;color:var(--ink-soft);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:5px 9px;font-size:.76rem;font-weight:800;line-height:1;transition:background .15s,color .15s,box-shadow .15s,transform .15s;display:inline-flex}.learning-mode-switch button:hover{background:var(--surface-hover);color:var(--ink)}.learning-mode-switch button.is-active{background:var(--mode-explore);box-shadow:0 3px 10px var(--mode-explore)}@supports (color:color-mix(in lab, red, red)){.learning-mode-switch button.is-active{box-shadow:0 3px 10px color-mix(in srgb, var(--mode-explore) 22%, transparent)}}.learning-mode-switch button.is-active{color:var(--text-on-accent)}.learning-mode-switch[data-active-mode=practice] button.is-active{background:var(--mode-practice);box-shadow:0 3px 10px var(--mode-practice)}@supports (color:color-mix(in lab, red, red)){.learning-mode-switch[data-active-mode=practice] button.is-active{box-shadow:0 3px 10px color-mix(in srgb, var(--mode-practice) 22%, transparent)}}.learning-mode-switch[data-active-mode=game] button.is-active{background:var(--mode-game);box-shadow:0 3px 10px var(--mode-game)}@supports (color:color-mix(in lab, red, red)){.learning-mode-switch[data-active-mode=game] button.is-active{box-shadow:0 3px 10px color-mix(in srgb, var(--mode-game) 22%, transparent)}}.learning-mode-switch button.is-active svg{color:currentColor}.game-shell{grid-template-columns:minmax(390px,680px) minmax(300px,420px);justify-content:center;align-items:start;gap:clamp(22px,2.5vw,38px);width:100%;max-width:1120px;margin:14px auto 0;display:grid}.game-board-panel,.game-controls{min-width:0}.game-grid-wrap{--game-grid-label-column:26px;--game-grid-label-row:22px;width:100%;max-width:680px;padding:var(--game-grid-label-row) 0 0 var(--game-grid-label-column);margin:0 auto;position:relative}.game-column-labels,.game-row-labels{z-index:4;pointer-events:none;color:var(--status-info-ink);font-size:clamp(.52rem,.74vw,.64rem);font-weight:850;line-height:1;position:absolute}.game-column-labels{inset:0 0 auto var(--game-grid-label-column);height:var(--game-grid-label-row);grid-template-columns:repeat(9,minmax(0,1fr));display:grid}.game-row-labels{inset:var(--game-grid-label-row) auto 0 0;width:var(--game-grid-label-column);grid-template-rows:repeat(9,minmax(0,1fr));display:grid}.game-column-labels>span,.game-row-labels>span{place-items:center;display:grid}.game-column-labels>span.is-selected,.game-row-labels>span.is-selected{background:var(--status-info-surface);width:18px;height:18px;color:var(--status-info-ink);box-shadow:inset 0 0 0 1px var(--status-info-border);border-radius:999px;place-self:center}.game-column-labels>span.is-progress-base,.game-row-labels>span.is-progress-base,.game-column-labels>span.is-progress-cover,.game-row-labels>span.is-progress-cover{border-radius:999px;place-self:center;width:18px;height:18px}.game-column-labels>span.is-progress-base,.game-row-labels>span.is-progress-base{background:var(--status-info-surface);color:var(--status-info-ink);box-shadow:inset 0 0 0 1px var(--status-info-border)}.game-column-labels>span.is-progress-cover,.game-row-labels>span.is-progress-cover{background:var(--status-warning-surface);color:var(--status-warning-ink);box-shadow:inset 0 0 0 1px var(--status-warning-border)}.game-column-labels>span.is-inline-highlighted,.game-row-labels>span.is-inline-highlighted{background:var(--selection-surface);width:18px;height:18px;color:var(--status-warning-ink);box-shadow:inset 0 0 0 2px var(--selection-border);border-radius:999px;place-self:center}.game-grid{border:2px solid var(--line-dark);background:var(--line);border-radius:2px;grid-template-columns:repeat(9,minmax(0,1fr));width:100%;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 32px #46392714}.game-cell{aspect-ratio:1;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--sheet);min-width:0;color:var(--ink);border-radius:0;place-items:center;padding:0;transition:background .1s,color .1s,box-shadow .1s;display:grid;position:relative}.game-cell:nth-child(9n){border-right:0}.game-cell:nth-child(9n+3),.game-cell:nth-child(9n+6){border-right:2px solid var(--line-dark)}.game-cell:nth-child(n+19):nth-child(-n+27),.game-cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid var(--line-dark)}.game-cell:nth-child(n+73){border-bottom:0}.game-cell:hover:not(.is-selected){background:var(--surface-interactive)}.game-cell:focus-visible{z-index:4;outline:3px solid var(--coral);outline-offset:-4px}.game-cell.is-peer{background:var(--surface-interactive)}.game-cell.is-same-value{background:var(--blue-soft)}.game-cell.is-selected{z-index:1;background:var(--selection-surface);box-shadow:inset 0 0 0 3px var(--selection-border)}.game-grid-wrap[data-notes-mode=true] .game-cell.is-selected{background:var(--status-info-surface);box-shadow:inset 0 0 0 3px var(--status-info-border)}.game-grid-wrap[data-notes-mode=true] .game-cell.is-selected>strong{color:var(--status-info-ink)}.game-cell.is-error{background:var(--status-danger-surface);color:var(--status-danger-ink)}.game-cell.is-placement-mistake:after{z-index:3;content:"";pointer-events:none;border-radius:2px;animation:.5s ease-out game-placement-mistake;position:absolute;inset:3px}.game-cell.is-placement-valid>strong{animation:.36s cubic-bezier(.18,.88,.28,1.25) game-placement-value-pop}.game-placement-burst{--burst-color:var(--rush-rhythm-start);--burst-color-secondary:var(--status-info-border);--burst-digit-size:1.55rem;--burst-distance:26px;--burst-size:46px;z-index:6;isolation:isolate;pointer-events:none;width:0;height:0;position:absolute}.game-placement-burst.is-level-2{--burst-color:var(--rush-rhythm-middle);--burst-color-secondary:var(--rush-rhythm-start);--burst-digit-size:1.75rem;--burst-distance:38px;--burst-size:72px}.game-placement-burst.is-level-3{--burst-color:var(--rush-rhythm-end);--burst-color-secondary:var(--rush-rhythm-middle);--burst-digit-size:2rem;--burst-distance:52px;--burst-size:102px}.game-placement-burst.is-grid-complete{--burst-digit-size:2.15rem;--burst-distance:62px;--burst-size:118px}.game-placement-burst:before{z-index:0;width:var(--burst-size);height:var(--burst-size);background:radial-gradient(circle at 30% 28%, #ffffff7a 0 5%, transparent 6%), radial-gradient(circle at 68% 66%, var(--burst-color-secondary) 0 13%, transparent 14%), radial-gradient(circle, var(--burst-color) 0 34%, var(--burst-color-secondary) 35% 54%, var(--burst-color) 55% 64%, transparent 72%);border-radius:44% 56% 52% 48%/50% 42% 58% 50%;position:absolute;top:0;left:0}@supports (color:color-mix(in lab, red, red)){.game-placement-burst:before{background:radial-gradient(circle at 30% 28%, #ffffff7a 0 5%, transparent 6%), radial-gradient(circle at 68% 66%, color-mix(in srgb, var(--burst-color-secondary) 80%, transparent) 0 13%, transparent 14%), radial-gradient(circle, color-mix(in srgb, var(--burst-color) 94%, white) 0 34%, color-mix(in srgb, var(--burst-color-secondary) 76%, transparent) 35% 54%, color-mix(in srgb, var(--burst-color) 24%, transparent) 55% 64%, transparent 72%)}}.game-placement-burst:before{box-shadow:0 0 22px var(--burst-color)}@supports (color:color-mix(in lab, red, red)){.game-placement-burst:before{box-shadow:0 0 22px color-mix(in srgb, var(--burst-color) 34%, transparent)}}.game-placement-burst:before{content:"";animation:.54s cubic-bezier(.16,.8,.24,1) both game-placement-bloom;transform:translate(-50%,-50%)scale(.18)}.game-placement-burst-digit{z-index:2;color:#fff;font-family:Georgia,Times New Roman,serif;font-size:var(--burst-digit-size);text-shadow:0 1px 2px #0c2a3e80, 0 0 10px var(--burst-color);font-weight:700;line-height:1;position:absolute;top:0;left:0}@supports (color:color-mix(in lab, red, red)){.game-placement-burst-digit{text-shadow:0 1px 2px #0c2a3e80, 0 0 10px color-mix(in srgb, var(--burst-color) 72%, transparent)}}.game-placement-burst-digit{animation:.54s cubic-bezier(.16,.9,.28,1.18) both game-placement-digit;transform:translate(-50%,-50%)}.game-placement-burst i{--spark-angle:0deg;z-index:1;background:linear-gradient(var(--burst-color), var(--burst-color));border-radius:999px;width:4px;height:10px;position:absolute;top:-5px;left:-2px}@supports (color:color-mix(in lab, red, red)){.game-placement-burst i{background:linear-gradient(var(--burst-color), color-mix(in srgb, var(--burst-color) 42%, white))}}.game-placement-burst i{box-shadow:0 0 8px var(--burst-color)}@supports (color:color-mix(in lab, red, red)){.game-placement-burst i{box-shadow:0 0 8px color-mix(in srgb, var(--burst-color) 46%, transparent)}}.game-placement-burst i{transform-origin:2px 5px;animation:.5s cubic-bezier(.16,.82,.25,1) both game-placement-spark}.game-placement-burst i:first-child{--spark-angle:0deg}.game-placement-burst i:nth-child(2){--spark-angle:45deg}.game-placement-burst i:nth-child(3){--spark-angle:90deg}.game-placement-burst i:nth-child(4){--spark-angle:135deg}.game-placement-burst i:nth-child(5){--spark-angle:180deg}.game-placement-burst i:nth-child(6){--spark-angle:225deg}.game-placement-burst i:nth-child(7){--spark-angle:270deg}.game-placement-burst i:nth-child(8){--spark-angle:315deg}.game-placement-burst.is-level-1 i:nth-child(n+5),.game-placement-burst.is-level-2 i:nth-child(n+7){display:none}.game-cell.is-hinted:not(.is-selected){background:var(--sage-soft)}.game-cell.is-analysis-target{z-index:1;background:var(--status-danger-surface);box-shadow:inset 0 0 0 2px var(--status-danger-border)}.game-cell.is-analysis-selected{z-index:2;background:var(--status-success-surface);box-shadow:inset 0 0 0 3px var(--status-success-border)}.game-cell.is-analysis-selected:hover{background:var(--status-success-surface)}.game-cell.is-progress-pattern{background:var(--status-info-surface)}.game-cell.is-progress-target{background:var(--status-danger-surface)}.game-cell.is-progress-inline{z-index:2;background:var(--status-warning-surface);box-shadow:inset 0 0 0 3px var(--status-warning-border)}.game-cell.is-progress-inline-digit-value>strong{color:var(--status-warning-ink)}.game-cell.is-progress-pattern.is-selected{background:linear-gradient(135deg, var(--selection-surface) 0 54%, var(--status-info-surface) 54% 100%)}.game-cell.is-progress-target.is-selected{background:linear-gradient(135deg, var(--selection-surface) 0 54%, var(--status-danger-surface) 54% 100%)}.game-cell>strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.4rem,2.3vw,2.2rem);font-weight:500;line-height:1}.game-cell.is-editable>strong{color:var(--status-info-ink);font-weight:600}.game-cell.is-error>strong{color:var(--status-danger-ink)}.game-cell-notes{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:100%;height:100%;padding:6%;display:grid}.game-cell-notes i{color:var(--ink-soft);place-items:center;font-size:clamp(.48rem,.8vw,.72rem);font-style:normal;font-weight:750;line-height:1;display:grid}.game-cell-notes i.is-progress-inline-digit{background:var(--selection-surface);width:1.45em;height:1.45em;color:var(--status-warning-ink);box-shadow:0 0 0 2px var(--status-warning-border);border-radius:50%;place-self:center;font-weight:900}.game-grid.is-paused{filter:blur(3px);pointer-events:none;-webkit-user-select:none;user-select:none}.game-pause-overlay{z-index:3;inset:var(--game-grid-label-row) 0 0 var(--game-grid-label-column);background:var(--overlay-surface);box-shadow:inset 0 0 0 1px var(--overlay-border);color:var(--overlay-ink);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-content:center;justify-items:center;gap:10px;display:grid;position:absolute}.game-pause-overlay>svg{color:currentColor}.game-pause-overlay strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:500}.game-pause-overlay button{border:1px solid var(--ui-accent);background:var(--ui-accent);color:var(--text-on-accent);border-radius:999px;align-items:center;gap:6px;margin-top:5px;padding:8px 13px;font-size:.7rem;font-weight:800;display:inline-flex}.game-pause-overlay button:hover{border-color:var(--ui-accent-hover);background:var(--ui-accent-hover)}.game-pause-overlay button:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}.game-controls{margin-top:var(--game-grid-label-row,22px);align-self:start}#game-scores-panel,.game-resolution-section{position:relative}.game-scores-close,.game-resolution-close{border:1px solid var(--line);background:var(--surface-interactive);width:32px;height:32px;color:var(--ink-soft);border-radius:8px;place-items:center;padding:0;display:inline-grid}.game-scores-close{z-index:2;position:absolute;top:0;right:0}.game-scores-close:hover,.game-resolution-close:hover{border-color:var(--ui-panel-border);background:var(--surface-active);color:var(--ink)}.game-resolution-sheet-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.game-resolution-sheet-heading .game-control-group-label{margin-bottom:0}.game-resolution-close{width:28px;height:28px}.game-control-flow{gap:16px;display:grid}.game-variant-switch{border:1px solid var(--line);background:var(--surface-navigation);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;display:grid}.game-variant-switch button{min-height:34px;color:var(--ink-soft);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:.64rem;font-weight:850;display:inline-flex}.game-variant-switch button:hover{background:var(--surface-hover);color:var(--ink)}.game-variant-switch button.is-active{background:var(--surface-canvas);color:var(--ink);box-shadow:var(--control-shadow)}.game-variant-switch button:last-child.is-active{background:var(--status-info-surface)}@supports (color:color-mix(in lab, red, red)){.game-variant-switch button:last-child.is-active{background:color-mix(in srgb, var(--status-info-surface) 72%, var(--surface-canvas))}}.game-variant-switch button:last-child.is-active{color:var(--status-info-ink)}.game-session-controls{display:block}.game-session-controls>.game-sidebar-session{min-width:0;box-shadow:none}.game-sidebar-session-card .game-sidebar-session{box-shadow:none;background:0 0;border:0;border-radius:0;gap:8px;padding:2px}.game-sidebar-controls .game-sidebar-session-header{flex-direction:column;align-items:stretch}.game-sidebar-controls .game-session-actions,.game-sidebar-controls .game-sidebar-new-session{width:100%}.game-sidebar-controls .game-sidebar-new-session summary{justify-content:space-between}.game-sidebar-controls .game-sidebar-new-session .game-new-session-content{inset:0 auto auto calc(100% + 16px)}.game-sidebar-controls .game-sidebar-new-session .game-new-session-content:before{border:0;border-bottom:1px solid var(--ui-panel-border);border-left:1px solid var(--ui-panel-border);inset:12px auto auto -6px}.game-control-group{min-width:0}.game-control-group+.game-control-group,.game-resolution-section{border-top:1px solid var(--line);padding-top:15px}.game-control-group-label{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;margin:0 2px 7px;font-size:.56rem;font-weight:850}.game-entry-section{border:1px solid var(--line);background:var(--surface-raised);border-radius:14px;gap:10px;padding:13px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.game-entry-section{background:color-mix(in srgb, var(--surface-raised) 76%, var(--surface-canvas))}}.game-entry-section{box-shadow:0 12px 30px var(--ink)}@supports (color:color-mix(in lab, red, red)){.game-entry-section{box-shadow:0 12px 30px color-mix(in srgb, var(--ink) 7%, transparent)}}.game-play-status{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:36px;padding-bottom:9px;display:grid}.game-play-status dl{align-items:center;gap:22px;margin:0;display:flex}.game-play-status dl>div{align-items:baseline;gap:7px;display:inline-flex}.game-play-status dt{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.52rem;font-weight:800}.game-play-status dd{color:var(--ink);font-variant-numeric:tabular-nums;align-items:center;gap:5px;margin:0;font-size:.82rem;font-weight:800;display:inline-flex}.game-play-pause{border:1px solid var(--line);background:var(--surface-canvas);width:36px;height:36px;color:var(--ui-accent-hover);box-shadow:0 2px 5px var(--ink);border-radius:10px;place-items:center;padding:0;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.game-play-pause{box-shadow:0 2px 5px color-mix(in srgb, var(--ink) 5%, transparent)}}.game-play-pause{transition:border-color .14s,background .14s,box-shadow .14s,transform .14s}.game-play-pause:hover:not(:disabled){border-color:var(--ui-panel-border);background:var(--surface-active);box-shadow:0 4px 10px var(--ink)}@supports (color:color-mix(in lab, red, red)){.game-play-pause:hover:not(:disabled){box-shadow:0 4px 10px color-mix(in srgb, var(--ink) 8%, transparent)}}.game-play-pause:hover:not(:disabled){transform:translateY(-1px)}.game-play-pause:active:not(:disabled){box-shadow:none;transform:translateY(0)}.game-play-pause kbd{min-width:0;color:var(--ink-soft);background:0 0;border:0;border-radius:0;padding:0;font-size:.42rem;font-weight:850;line-height:1;position:absolute;bottom:3px;right:3px}.game-quick-tools{border:1px solid var(--line);background:var(--surface-canvas);box-shadow:0 3px 10px var(--ink);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.game-quick-tools{box-shadow:0 3px 10px color-mix(in srgb, var(--ink) 4%, transparent)}}.game-quick-tools.is-rush{grid-template-columns:repeat(2,minmax(0,1fr))}.rush-hud{border-bottom:1px solid var(--line);gap:9px;padding-bottom:10px;display:grid}.rush-hud-primary{justify-content:space-between;align-items:center;gap:14px;min-height:58px;display:flex}.rush-timer{align-content:center;gap:1px;display:grid;position:relative}.rush-score{gap:1px;display:grid}.rush-timer small,.rush-score small{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.49rem;font-weight:850}.rush-timer strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.055em;font-size:clamp(1.8rem,4vw,2.3rem);font-weight:900;line-height:1}.rush-score>strong{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(1.6rem,3.2vw,2rem);font-weight:900;line-height:1}.rush-score-rank{color:var(--status-info-ink);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:.55rem;font-weight:900;line-height:1}.rush-score{justify-items:end;position:relative}.rush-score em{color:var(--status-success-ink);white-space:nowrap;font-size:.7rem;font-style:normal;font-weight:900;animation:.8s both rush-score-pop;position:absolute;top:50%;right:calc(100% + 9px)}.rush-score em.is-penalty{color:var(--status-danger-ink)}.rush-timer em{color:var(--status-success-ink);white-space:nowrap;font-size:.74rem;font-style:normal;font-weight:900;animation:.8s both rush-score-pop;position:absolute;bottom:2px;left:calc(100% + 9px)}.rush-timer em.is-penalty{color:var(--status-danger-ink)}@keyframes rush-score-pop{0%{opacity:0;transform:translateY(5px)scale(.92)}24%{opacity:1;transform:translateY(0)scale(1.04)}to{opacity:0;transform:translateY(-7px)scale(1)}}.rush-rhythm{padding-block:2px}.rush-rhythm-track{background:var(--status-info-border);border-radius:999px;height:9px;display:block;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.rush-rhythm-track{background:color-mix(in srgb, var(--status-info-border) 16%, var(--surface-active))}}.rush-rhythm-track{box-shadow:inset 0 1px 2px var(--ink)}@supports (color:color-mix(in lab, red, red)){.rush-rhythm-track{box-shadow:inset 0 1px 2px color-mix(in srgb, var(--ink) 10%, transparent)}}.rush-rhythm-track i{border-radius:inherit;background:linear-gradient(90deg, var(--rush-rhythm-start), var(--rush-rhythm-middle) 55%, var(--rush-rhythm-end));height:100%;box-shadow:0 0 9px var(--rush-rhythm-glow);transition:width .28s;display:block}.rush-hud.is-final-seconds .rush-timer,.rush-hud.is-final-seconds .rush-timer strong{color:var(--status-danger-ink)}.rush-hud.is-final-seconds .rush-timer strong{animation:.7s steps(2,end) infinite rush-timer-alert}@keyframes rush-timer-alert{0%,to{opacity:1;text-shadow:0 0 #0000}50%{opacity:.28;text-shadow:0 0 12px color-mix(in srgb, var(--status-danger-border) 55%, transparent)}}.game-grid-wrap.is-rush-final-seconds .game-grid{animation:1s ease-in-out infinite rush-final-seconds-pulse}@keyframes rush-final-seconds-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--status-danger-border) 0%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--status-danger-border) 28%, transparent)}}.rush-countdown-overlay{color:var(--status-info-ink);gap:0}.rush-countdown-overlay strong{color:var(--status-info-ink);font-variant-numeric:tabular-nums;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(5.5rem,18vw,9rem);font-weight:900;line-height:.82}.rush-finished-overlay{background:var(--surface-raised);gap:8px;padding:24px}@supports (color:color-mix(in lab, red, red)){.rush-finished-overlay{background:color-mix(in srgb, var(--surface-raised) 94%, transparent)}}.rush-finished-overlay{color:var(--status-info-ink);text-align:center}.rush-finished-overlay>span{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:850}.rush-finished-overlay strong{color:var(--ink);letter-spacing:-.04em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(1.8rem,5vw,3rem);font-weight:900}.rush-finished-overlay small{max-width:340px;color:var(--ink-soft);font-size:.72rem;font-weight:750;line-height:1.45}.rush-finished-overlay .rush-replay-button{border-color:var(--status-info-ink);background:var(--status-info-ink);color:var(--surface-canvas);margin-top:10px}.rush-finished-overlay .rush-replay-button:hover{border-color:var(--status-info-border);background:var(--status-info-border);color:var(--surface-canvas)}.rush-replay-button kbd{border:1px solid;margin-left:3px;padding:2px 5px}@supports (color:color-mix(in lab, red, red)){.rush-replay-button kbd{border:1px solid color-mix(in srgb, currentColor 46%, transparent)}}.rush-replay-button kbd{background:var(--surface-canvas);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.rush-replay-button kbd{background:color-mix(in srgb, var(--surface-canvas) 18%, transparent)}}.rush-replay-button kbd{color:inherit;font-size:.56rem;font-weight:850;line-height:1}.rush-duration-options .game-difficulty-copy small{white-space:normal}.game-sidebar-ranking.is-rush{border-color:var(--status-info-border);background:linear-gradient(145deg, var(--status-info-surface), var(--surface-raised))}.rush-score-page{gap:12px;display:grid}.rush-score-actions{--rush-score-action-size:46px;grid-template-columns:minmax(0, 1fr) var(--rush-score-action-size);align-items:stretch;gap:8px;display:grid}.rush-score-actions .rush-new-game-top,.rush-score-actions .game-scores-close{height:var(--rush-score-action-size);min-height:var(--rush-score-action-size);margin:0}.rush-score-actions .game-scores-close{width:var(--rush-score-action-size);border-color:var(--status-info-border);color:var(--status-info-ink);border-radius:9px;position:static}.rush-score-actions .game-scores-close:hover{background:var(--status-info-surface);color:#17384d;border-color:#285c78}.rush-score-page>:is(.high-score-filter,.high-score-ranking){margin-top:0}.rush-score-summary{border:1px solid var(--status-info-border);background:var(--surface-raised);border-radius:13px;gap:0;display:grid;overflow:hidden;box-shadow:0 14px 28px #1a35461a}.rush-score-summary-hero{color:#f7fbfd;background:radial-gradient(circle at 88% 8%,#56b1e252,#0000 33%),linear-gradient(135deg,#285c78 0%,#17384d 72%);grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;padding:16px 17px 15px;display:grid;position:relative;overflow:hidden}.rush-score-mode-badge{color:#f7fbfd;letter-spacing:.07em;text-transform:uppercase;background:#ffffff1a;border:1px solid #ffffff42;border-radius:999px;align-items:center;gap:6px;width:max-content;padding:5px 8px;font-size:.55rem;font-weight:900;display:inline-flex}.rush-score-total{grid-area:2/1;grid-template-columns:auto 1fr;align-items:end;gap:0 7px;min-width:0;display:grid}.rush-score-total small{color:#f7fbfdb8;letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1;font-size:.52rem;font-weight:900}.rush-score-total strong{color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.07em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(3rem,11vw,4.15rem);font-weight:900;line-height:.94}.rush-score-total em{color:#f7fbfdb8;letter-spacing:.06em;text-transform:uppercase;padding-bottom:4px;font-size:.62rem;font-style:normal;font-weight:900}.rush-score-standing{color:#f7fbfd;font-variant-numeric:tabular-nums;border-left:1px solid #f7fbfd33;grid-area:2/2;align-self:end;place-items:end;min-width:88px;padding-left:16px;display:grid}.rush-score-standing strong{color:#fff;letter-spacing:-.11em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(2.35rem,8vw,3.25rem);font-weight:950;line-height:.95}.rush-score-summary-meta{color:#f7fbfd;font-variant-numeric:tabular-nums;grid-area:1/2;align-content:start;justify-items:end;gap:1px;display:grid}.rush-score-summary-meta strong{font-size:.9rem;font-weight:900}.rush-score-summary-meta span{color:#f7fbfdb3;letter-spacing:.06em;text-transform:uppercase;font-size:.52rem;font-weight:800}.rush-score-stat-rail{border-bottom:1px solid var(--line);background:var(--status-info-surface);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}@supports (color:color-mix(in lab, red, red)){.rush-score-stat-rail{background:color-mix(in srgb, var(--status-info-surface) 56%, var(--surface-raised))}}.rush-score-stat-rail>div{text-align:center;gap:2px;min-width:0;padding:13px 9px 12px;display:grid}.rush-score-stat-rail>div+div{border-left:1px solid var(--status-info-border)}@supports (color:color-mix(in lab, red, red)){.rush-score-stat-rail>div+div{border-left:1px solid color-mix(in srgb, var(--status-info-border) 56%, var(--line))}}.rush-score-stat-rail dt{color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:.5rem;font-weight:900}.rush-score-stat-rail dd{color:var(--status-info-ink);font-variant-numeric:tabular-nums;letter-spacing:-.055em;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.75rem;font-weight:900;line-height:1}.rush-score-stat-rail small{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.5rem;font-weight:750;overflow:hidden}.rush-score-ledger-section{gap:8px;padding:13px 15px 12px;display:grid}.rush-score-ledger-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rush-score-ledger-heading strong{font-size:.68rem;font-weight:900}.rush-score-ledger-heading span{color:var(--ink-soft);font-size:.52rem;font-weight:700}.rush-score-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;margin:0;display:grid}.rush-score-breakdown>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:7px 0;display:flex}.rush-score-breakdown>div:last-child{grid-column:1/-1}.rush-score-breakdown dt{color:var(--ink-soft);font-size:.55rem;font-weight:750}.rush-score-breakdown dd{color:var(--status-success-ink);font-variant-numeric:tabular-nums;margin:0;font-size:.7rem;font-weight:900}.rush-score-breakdown .is-penalty dd{color:var(--status-danger-ink)}.rush-score-outcome{font-weight:850}.rush-score-summary-footer{border-top:1px solid var(--line);background:var(--surface-interactive);gap:5px;padding:10px 15px 12px;display:grid}.rush-score-summary-footer>p,.rush-insight-empty{color:var(--ink-soft);margin:0;font-size:.57rem;line-height:1.45}.rush-score-summary-footer .rush-insight-summary{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.rush-score-summary-footer .rush-insight-summary li{border-top:1px solid var(--line);background:0 0;border-radius:0;padding:5px 0}.rush-insight-summary{gap:4px;margin:0;padding:0;list-style:none;display:grid}.rush-insight-summary li{background:var(--status-info-surface);color:var(--status-info-ink);border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;font-size:.58rem;display:flex}.rush-insight-summary strong{font-variant-numeric:tabular-nums;font-weight:900}.rush-score-filter{grid-template-columns:repeat(4,minmax(0,1fr))}.rush-score-filter button{letter-spacing:-.03em;white-space:nowrap;font-size:.6rem}.rush-ranking-board{border-color:var(--status-info-border)}@supports (color:color-mix(in lab, red, red)){.rush-ranking-board{border-color:color-mix(in srgb, var(--status-info-border) 56%, var(--line))}}.rush-ranking-board{background:var(--surface-canvas);border-radius:12px;box-shadow:0 10px 24px #1a354612}.rush-ranking-header{border-bottom:1px solid var(--line);background:var(--status-info-surface);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:9px 10px 9px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.rush-ranking-header{background:color-mix(in srgb, var(--status-info-surface) 38%, var(--surface-canvas))}}.rush-ranking-title{gap:1px;display:grid}.rush-ranking-title small{color:var(--status-info-ink);letter-spacing:.08em;text-transform:uppercase;font-size:.48rem;font-weight:900}.rush-ranking-title strong{color:var(--ink);font-size:.68rem;font-weight:900}.rush-ranking-header>button{width:30px;height:30px;color:var(--status-info-ink);background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.rush-ranking-header>button:hover{background:var(--surface-hover)}.rush-ranking-entry{border-bottom:1px solid var(--line);background:0 0;gap:8px;padding:12px 14px 13px;display:grid}.rush-ranking-entry-copy{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.rush-ranking-entry-copy strong{color:var(--ink);font-size:.64rem;font-weight:900}.rush-ranking-entry-copy small,.rush-ranking-entry>small{color:var(--ink-soft);font-size:.52rem;line-height:1.4}.rush-ranking-entry-controls{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.rush-ranking-entry input{border:1px solid var(--line);background:var(--surface-interactive);min-width:0;min-height:38px;color:var(--ink);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:.7rem}.rush-ranking-entry input:focus{border-color:var(--status-info-border);box-shadow:0 0 0 3px var(--status-info-border)}@supports (color:color-mix(in lab, red, red)){.rush-ranking-entry input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--status-info-border) 20%, transparent)}}.rush-ranking-entry button,.rush-ranking-state>button{border:1px solid var(--status-info-ink);background:var(--status-info-ink);min-height:38px;color:var(--text-on-accent);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:7px 12px;font-size:.62rem;font-weight:900;display:inline-flex}.rush-ranking-entry button:hover:not(:disabled){background:var(--ui-accent-hover)}.rush-ranking-entry-saved{border-bottom:1px solid var(--line);background:var(--status-success-surface);color:var(--status-success-ink);align-items:center;gap:8px;padding:10px 14px;font-size:.59rem;display:flex}.rush-ranking-state{min-height:74px;color:var(--ink-soft);text-align:left;justify-content:center;align-items:center;gap:9px;padding:15px;font-size:.6rem;display:flex}.rush-ranking-state>span{gap:1px;min-width:0;display:grid}.rush-ranking-state strong{color:var(--ink);font-size:.63rem;font-weight:900}.rush-ranking-state small{color:var(--ink-soft);font-size:.55rem}.rush-ranking-state.is-loading svg{animation:.9s linear infinite rush-ranking-spin}.rush-ranking-state.is-error{justify-content:space-between}.rush-ranking-state.is-error>span{border-left:3px solid var(--status-danger-border);padding-left:9px}.rush-ranking-state>button{border-color:var(--line);min-height:32px;color:var(--ink-soft);background:0 0;flex:none}.rush-ranking-state>button:hover{border-color:var(--status-info-border);background:var(--surface-interactive);color:var(--status-info-ink)}@keyframes rush-ranking-spin{to{transform:rotate(360deg)}}.rush-score-page .high-score-points{letter-spacing:-.03em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:900}.rush-new-game{border-color:var(--status-info-border);background:var(--status-info-surface);color:var(--status-info-ink)}.rush-new-game-top{color:#f7fbfd;letter-spacing:.01em;background:linear-gradient(135deg,#285c78,#17384d);border-color:#285c78;min-height:46px;margin-top:0;font-size:.69rem;box-shadow:0 10px 22px #1a354629}.rush-new-game-top:hover{color:#fff;background:linear-gradient(135deg,#326e8e,#1d465f);border-color:#17384d}.game-quick-tools>button{border:0;border-right:1px solid var(--line);min-width:0;min-height:42px;color:var(--ink-soft);background:0 0;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:8px 6px;transition:background .14s,color .14s,box-shadow .14s,transform .14s;display:inline-flex}.game-quick-tools>button:last-child{border-right:0}.game-quick-tool-icon{width:21px;height:21px;color:var(--ui-accent-hover);box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;place-items:center;transition:color .14s,transform .14s;display:grid;position:relative}.game-quick-tool-icon>svg{width:19px;height:19px}.game-quick-tools>button:hover:not(:disabled){background:var(--surface-active);color:var(--ink);box-shadow:inset 0 -2px 0 var(--ui-accent)}@supports (color:color-mix(in lab, red, red)){.game-quick-tools>button:hover:not(:disabled){box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--ui-accent) 55%, transparent)}}.game-quick-tools>button:hover:not(:disabled) .game-quick-tool-icon{transform:translateY(-1px)}.game-quick-tools>button:active:not(:disabled) .game-quick-tool-icon{transform:translateY(0)}.game-quick-tools>button.is-active{background:var(--ui-accent-subtle);color:var(--ink);box-shadow:inset 0 -2px 0 var(--ui-accent)}.game-quick-tools>button.is-active .game-quick-tool-icon{color:var(--ui-accent-hover)}.game-quick-tools>button>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.62rem;font-weight:800;line-height:1.1;overflow:hidden}.game-quick-tool-badge{border:1px solid var(--surface-canvas);background:var(--ink-soft);color:#0000;width:6px;min-width:6px;height:6px;box-shadow:none;border-radius:999px;padding:0;font-size:0;font-weight:900;line-height:1;position:absolute;top:-1px;right:-3px;overflow:hidden}.game-quick-tools>button.is-active .game-quick-tool-badge{border-color:var(--surface-canvas);background:var(--ui-accent);color:#0000}.game-control-heading>span{color:var(--coral);letter-spacing:.13em;text-transform:uppercase;font-size:.62rem;font-weight:850}.game-control-heading h2{margin:5px 0;font-size:clamp(1.55rem,2.1vw,2rem)}.game-control-heading p{min-height:42px;color:var(--ink-soft);margin-bottom:18px;font-size:.75rem;line-height:1.55}.game-difficulty{border:1px solid var(--line);background:var(--surface-navigation);border-radius:999px;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:3px;display:grid}.game-difficulty button{min-width:0;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:7px 4px;font-size:.64rem;font-weight:800;display:inline-flex}.game-difficulty button svg{flex:none}.game-difficulty button:hover,.game-difficulty button.is-active{background:var(--surface-active);box-shadow:var(--control-shadow);color:var(--ink)}.game-secondary-tools button{border:1px solid var(--line);background:var(--surface-interactive);min-height:42px;color:var(--ink);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:.67rem;font-weight:800;display:inline-flex}.game-secondary-tools button:hover:not(:disabled){border-color:var(--ui-panel-border);background:var(--surface-active);color:var(--ink)}.game-notes-toggle:hover:not(.is-active),.game-resolution-toggle:hover:not(.is-active),.game-hint-action:hover:not(:disabled),.game-analysis-toggle:hover:not(.is-active),.game-progress-toggle:hover:not(.is-active){border-color:var(--ui-panel-border);background:var(--surface-hover);color:var(--ink)}.game-new-session{border-top:1px solid var(--line);padding-top:12px}.game-new-session summary{cursor:pointer;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.game-new-session summary::-webkit-details-marker{display:none}.game-new-session summary>span{color:var(--ink);align-items:center;gap:7px;font-size:.67rem;font-weight:850;display:inline-flex}.game-new-session summary>small{color:var(--ink-soft);font-size:.56rem;font-weight:750}.game-new-session summary:hover>span,.game-new-session[open] summary>span{color:var(--ui-accent)}.game-new-session-content{gap:9px;margin-top:10px;display:grid}.game-new-session-content>p{color:var(--ink-soft);margin:0;font-size:.61rem;line-height:1.45}.game-controls button:disabled{cursor:default;opacity:.42}.game-notes-toggle,.game-analysis-toggle,.game-progress-toggle{border:1px solid var(--line);background:var(--surface-interactive);width:100%;color:var(--ink);box-shadow:var(--control-shadow);text-align:left;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;display:grid}.game-entry-console+.game-notes-toggle{margin-top:10px}.game-resolution-toggle{border:1px solid var(--line);background:var(--surface-interactive);width:auto;color:var(--ink);box-shadow:var(--control-shadow);text-align:left;border-radius:999px;align-items:center;gap:7px;padding:3px 4px 3px 8px;display:inline-flex}.game-resolution-toggle>span{font-size:.59rem;font-weight:850}.game-resolution-toggle>i{border:1px solid var(--ui-panel-border);background:var(--toggle-track);border-radius:999px;width:31px;height:18px;position:relative}.game-resolution-toggle>i:after{background:var(--toggle-thumb);content:"";border-radius:50%;width:10px;height:10px;transition:transform .16s;position:absolute;top:3px;left:3px}.game-resolution-toggle.is-active{border-color:var(--ui-panel-border);background:var(--surface-active);color:var(--ink)}.game-resolution-toggle.is-active>i{border-color:var(--ui-accent);background:var(--ui-accent)}.game-resolution-toggle.is-active>i:after{transform:translate(13px)}.game-mode-tools{background:var(--surface-canvas);border:0;border-radius:0;gap:8px;margin-top:8px;display:grid;overflow:visible}.game-mode-tools .game-analysis-toggle,.game-mode-tools .game-progress-toggle{border:1px solid var(--line);background:var(--surface-interactive);box-shadow:var(--control-shadow);border-radius:9px;margin-top:0}.game-progress-toggle.is-active{background:var(--surface-active);color:var(--ink);box-shadow:none}.game-progress-toggle.has-match{background:var(--surface-active);color:var(--ink)}.game-notes-toggle.is-active{border-color:var(--ui-panel-border);background:var(--surface-active);color:var(--ink)}.game-analysis-toggle.is-active{background:var(--surface-active);color:var(--ink);box-shadow:none}.game-high-score-notice{color:var(--ink-soft);background:0 0;border:0;align-items:center;gap:6px;margin:7px 2px 2px;padding:0;line-height:1.3;display:flex}.game-high-score-notice>svg{flex:none}.game-high-score-notice>span{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.game-high-score-notice strong{font-size:.6rem;font-weight:850}.game-high-score-notice small{color:var(--ink-soft);font-size:.59rem;line-height:1.3}.game-notes-toggle>span,.game-analysis-toggle>span,.game-progress-toggle>span{gap:1px;display:grid}.game-notes-toggle>span strong,.game-analysis-toggle>span strong,.game-progress-toggle>span strong{font-size:.69rem}.game-notes-toggle>span small,.game-analysis-toggle>span small,.game-progress-toggle>span small{color:var(--ink-soft);font-size:.59rem;line-height:1.35}.game-notes-toggle kbd,.game-hint-action kbd,.game-analysis-toggle kbd,.game-progress-toggle kbd{border:1px solid var(--ui-panel-border);background:var(--surface-active);border-radius:4px;padding:2px 6px;font-size:.56rem;font-weight:800}.game-notes-toggle.is-active kbd{border-color:var(--ink-soft);background:var(--ink);color:var(--surface-canvas)}.game-notes-state{color:var(--ink-soft);align-items:center;font-size:.58rem;font-weight:800;gap:6px!important;display:inline-flex!important}.game-notes-state b{font-weight:850}.game-resolution-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 2px 7px;display:flex}.game-resolution-heading .game-control-group-label{margin:0}.game-analysis-panel{border:1px solid var(--line);background:var(--surface-raised);color:var(--ink-soft);border-radius:9px;gap:10px;margin-top:8px;padding:11px 12px;display:grid}.game-mode-tools .game-analysis-panel{border-width:1px 0;border-radius:0;margin-top:0}.game-analysis-panel.is-match{border-color:var(--status-success-border);background:var(--status-success-surface)}.game-analysis-panel.is-none{border-color:var(--status-danger-border);background:var(--status-danger-surface)}.game-analysis-panel>header,.game-analysis-panel>footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.game-analysis-panel>header>span{color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase;font-size:.57rem;font-weight:800}.game-analysis-panel>header button,.game-analysis-panel>footer button{color:var(--ink-soft);background:0 0;border:0;border-radius:5px;align-items:center;gap:5px;padding:4px 7px;font-size:.58rem;font-weight:800;display:inline-flex}.game-analysis-panel>header button:hover{background:var(--surface-hover);color:var(--ink)}.game-analysis-message{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;display:grid}.game-analysis-message>svg{color:var(--status-success-border);margin-top:1px}.game-analysis-panel.is-none .game-analysis-message>svg{color:var(--status-danger-border)}.game-analysis-message div{gap:3px;display:grid}.game-analysis-message strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:.82rem;font-weight:600}.game-analysis-message p{margin:0;font-size:.62rem;line-height:1.5}.game-analysis-panel>footer{border-top:1px solid var(--line);padding-top:9px}.game-analysis-panel>footer>span{border-radius:999px;padding:4px 7px;font-size:.54rem;font-weight:850}.game-analysis-panel>footer>span.is-actionable{background:var(--status-success-surface);color:var(--status-success-ink)}.game-analysis-panel>footer>span.is-structural{background:var(--status-warning-surface);color:var(--status-warning-ink)}.game-analysis-panel>footer button{border:1px solid var(--status-success-border);background:var(--surface-canvas);color:var(--status-success-ink)}.game-analysis-panel>footer button:hover{background:var(--status-success-surface)}.game-progress-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(135deg, var(--surface-raised), var(--surface-canvas));color:var(--ink-soft);gap:10px;padding:12px 14px;display:grid}.game-progress-panel>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.game-progress-heading{align-items:flex-start;gap:8px;min-width:0;display:flex}.game-progress-heading>svg{color:var(--ui-accent-hover);flex:none;margin-top:3px}.game-progress-heading>div{gap:2px;min-width:0;display:grid}.game-progress-heading small{color:var(--ink-soft);letter-spacing:.055em;text-transform:uppercase;font-size:.66rem;font-weight:850;line-height:1.2}.game-progress-heading h3{color:var(--ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:1rem;font-weight:600;line-height:1.2}.game-progress-header-actions,.game-progress-pagination{align-items:center;gap:4px;display:inline-flex}.game-progress-header-actions{flex:none;gap:6px}.game-progress-pagination{border:1px solid var(--line);background:var(--surface-interactive);border-radius:999px;padding:2px}.game-progress-pagination>span{min-width:38px;color:var(--ink-soft);text-align:center;font-size:.66rem;font-weight:850}.game-progress-header-actions button{width:28px;height:28px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.game-progress-header-actions button:hover{background:var(--surface-hover);color:var(--ink)}.game-progress-body{min-width:0}.game-progress-copy{gap:9px;display:grid}.game-progress-copy p{margin:0}.game-progress-copy p.is-result{border-left:3px solid var(--selection-border);background:var(--status-warning-surface);border-radius:6px;padding:8px 10px}@supports (color:color-mix(in lab, red, red)){.game-progress-copy p.is-result{background:color-mix(in srgb, var(--status-warning-surface) 55%, var(--surface-canvas))}}.game-progress-copy p.is-result{color:var(--ink);font-weight:700}.game-progress-copy-text{font-size:.77rem;line-height:1.56}.game-inline-cell-chip,.game-inline-unit-chip,.game-inline-digit-chip{min-height:23px;font:inherit;vertical-align:-.08em;white-space:nowrap;cursor:pointer;border:0;justify-content:center;align-items:center;margin:0 .08em;font-size:.94em;font-weight:900;line-height:1;transition:box-shadow .12s,filter .12s,transform .12s;display:inline-flex;overflow:hidden}.game-inline-cell-chip:hover,.game-inline-unit-chip:hover,.game-inline-digit-chip:hover{filter:brightness(.97);transform:translateY(-1px)}.game-inline-cell-chip:focus-visible,.game-inline-unit-chip:focus-visible,.game-inline-digit-chip:focus-visible{outline:2px solid var(--ui-accent);outline-offset:2px}.game-inline-cell-chip[aria-pressed=true],.game-inline-unit-chip[aria-pressed=true],.game-inline-digit-chip[aria-pressed=true]{box-shadow:0 0 0 2px var(--sheet), 0 0 0 4px var(--selection-border)}.game-inline-cell-chip{color:#48443b;background:#e8e4da;border-radius:999px;box-shadow:inset 0 0 0 1px #4f4a4140}.game-inline-cell-chip>span:not(.sr-only){justify-content:center;align-items:center;min-width:23px;min-height:23px;padding-inline:5px;display:inline-flex}.game-inline-column{background:var(--status-info-surface);color:var(--status-info-ink)}.game-inline-row{color:#7b352d;background:#f7e5e0;border-left:1px solid #4954522e}.game-inline-unit-chip{border-radius:999px;min-width:23px;padding-inline:6px}.game-inline-unit-chip.is-row{color:#7b352d;background:#f7e5e0;box-shadow:inset 0 0 0 1px #7b352d2e}.game-inline-unit-chip.is-column{background:var(--status-info-surface);box-shadow:inset 0 0 0 1px var(--status-info-border);color:var(--status-info-ink)}.game-inline-unit-chip.is-box{color:#405b47;background:#e4ebdf;box-shadow:inset 0 0 0 1px #405b472e}.game-inline-digit-chip{color:#5d4919;background:#f3e8bd;border-radius:50%;width:23px;height:23px;font-family:Georgia,Times New Roman,serif;box-shadow:inset 0 0 0 1px #70561d38}.game-progress-list-toggle{border:1px solid var(--line);background:var(--surface-interactive);width:100%;min-height:36px;color:var(--ink-soft);text-align:left;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:7px 9px;font-size:.68rem;font-weight:800;display:flex}.game-progress-list-toggle:hover{border-color:var(--ui-accent-border);background:var(--ui-accent-subtle);color:var(--ink)}.game-progress-list-toggle svg{flex:none;transition:transform .14s}.game-progress-list-toggle svg.is-open{transform:rotate(180deg)}.game-progress-list{border:1px solid var(--line);background:var(--surface-canvas);border-radius:8px;gap:2px;max-height:168px;margin:0;padding:6px;list-style:none;display:grid;overflow-y:auto}.game-progress-list[hidden]{display:none}.game-progress-list button{width:100%;min-height:38px;color:var(--ink-soft);text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 9px;display:grid}.game-progress-list button:hover{background:var(--surface-interactive)}.game-progress-list button.is-active{background:var(--ui-accent-soft);color:var(--ink);box-shadow:inset 3px 0 0 var(--ui-accent);border-color:#0000}.game-progress-list button>span{min-width:0;font-size:.78rem;font-weight:850}.game-progress-list button>small{color:var(--ink-soft);white-space:nowrap;font-size:.66rem}.game-progress-panel>footer{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;padding-top:9px;display:flex}.game-progress-panel>footer button{border:1px solid var(--ui-accent-border);background:var(--surface-interactive);min-height:34px;color:var(--ui-accent-hover);border-radius:6px;align-items:center;gap:5px;padding:7px 10px;font-size:.68rem;font-weight:800;display:inline-flex}.game-progress-panel>footer button:hover{background:var(--ui-accent-subtle)}.game-number-pad{border:1px solid var(--line);background:var(--line);box-shadow:var(--control-shadow);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:0;padding:0;display:grid;overflow:hidden}.game-entry-console{background:var(--surface-canvas);box-shadow:none;border:0;border-radius:0;padding:0}.game-entry-console .game-number-pad{margin-top:0}.game-number-pad button{background:var(--surface-canvas);min-width:0;min-height:60px;color:var(--ink);box-shadow:none;border:0;border-radius:0;place-items:center;gap:2px;padding:8px 6px 7px;transition:border-color .14s,background .14s,box-shadow .14s,transform .14s;display:grid;position:relative;overflow:hidden}.game-number-pad button.is-available{background:var(--surface-canvas)}.game-number-pad button:hover:not(:disabled){background:var(--surface-active);box-shadow:inset 0 -2px 0 var(--ui-accent)}.game-number-pad button:hover:not(:disabled) .game-number-value{color:var(--ui-accent-hover)}.game-number-pad button:active:not(:disabled){transform:translateY(1px)}.game-number-pad button.is-selected{background:var(--status-info-surface);box-shadow:inset 0 -2px 0 var(--status-info-border)}.game-number-pad button.is-selected .game-number-value{color:var(--status-info-ink)}.game-number-value{color:var(--ink);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.035em;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.6rem;font-weight:800;line-height:1}.game-number-remaining{color:var(--ink-soft);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:.7rem;font-weight:800;line-height:1;position:absolute;bottom:6px;right:7px}.game-entry-console[data-notes-mode=true] .game-number-pad{border-color:var(--status-info-border);background:var(--status-info-border);box-shadow:0 0 0 2px var(--status-info-border), var(--control-shadow)}@supports (color:color-mix(in lab, red, red)){.game-entry-console[data-notes-mode=true] .game-number-pad{box-shadow:0 0 0 2px color-mix(in srgb, var(--status-info-border) 16%, transparent), var(--control-shadow)}}.game-entry-console[data-notes-mode=true] .game-number-pad button{background:var(--status-info-surface);padding:8px 6px 7px}@supports (color:color-mix(in lab, red, red)){.game-entry-console[data-notes-mode=true] .game-number-pad button{background:color-mix(in srgb, var(--status-info-surface) 62%, var(--surface-canvas))}}.game-entry-console[data-notes-mode=true] .game-number-pad button .game-number-value{color:var(--status-info-ink)}.game-entry-console[data-notes-mode=true] .game-number-pad button:hover:not(:disabled),.game-entry-console[data-notes-mode=true] .game-number-pad button.is-selected{background:var(--status-info-surface);box-shadow:inset 0 -2px 0 var(--status-info-border)}.game-entry-console[data-notes-mode=true] .game-number-pad button:hover:not(:disabled) .game-number-value,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-selected .game-number-value{color:var(--status-info-ink)}.game-number-pad button:disabled,.game-number-pad button:disabled.is-selected,.game-number-pad button:disabled.is-exhausted.is-selected,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected{background:var(--surface-canvas);box-shadow:none;cursor:default;opacity:1}.game-number-pad button:disabled .game-number-value,.game-number-pad button:disabled .game-number-remaining,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected .game-number-value{color:var(--ink-soft)}.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected{background:var(--status-info-surface)}@supports (color:color-mix(in lab, red, red)){.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected{background:color-mix(in srgb, var(--status-info-surface) 42%, var(--surface-canvas))}}.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled .game-number-value,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected .game-number-value{color:var(--status-info-ink)}@supports (color:color-mix(in lab, red, red)){.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled .game-number-value,.game-entry-console[data-notes-mode=true] .game-number-pad button:disabled.is-selected .game-number-value{color:color-mix(in srgb, var(--status-info-ink) 58%, var(--ink-soft))}}.game-number-pad button.is-exhausted,.game-number-pad button.is-exhausted:disabled,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted{background:var(--status-success-surface)}@supports (color:color-mix(in lab, red, red)){.game-number-pad button.is-exhausted,.game-number-pad button.is-exhausted:disabled,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted{background:color-mix(in srgb, var(--status-success-surface) 62%, var(--surface-canvas))}}.game-number-pad button.is-exhausted,.game-number-pad button.is-exhausted:disabled,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted{box-shadow:none}.game-number-pad button.is-exhausted.is-selected,.game-number-pad button.is-exhausted:disabled.is-selected,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted.is-selected{background:var(--status-success-surface);box-shadow:inset 0 -2px 0 var(--status-success-border)}.game-number-pad button.is-exhausted .game-number-value,.game-number-pad button.is-exhausted .game-number-remaining,.game-number-pad button.is-exhausted:hover:not(:disabled) .game-number-value,.game-number-pad button.is-exhausted.is-selected .game-number-value,.game-number-pad button.is-exhausted:disabled .game-number-value,.game-number-pad button.is-exhausted:disabled .game-number-remaining,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted .game-number-value,.game-entry-console[data-notes-mode=true] .game-number-pad button.is-exhausted.is-selected .game-number-value{color:var(--status-success-ink)}.game-secondary-tools{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:0;padding-top:8px;display:grid}.game-control-group>.game-secondary-tools button{background:0 0;border-color:#0000;flex-direction:row;gap:6px;min-width:0;min-height:40px;padding-inline:5px;font-size:.59rem}.game-control-group>.game-secondary-tools button:hover:not(:disabled){background:var(--surface-hover)}.game-hint-action{border:1px solid var(--line);background:var(--surface-interactive);width:100%;color:var(--ink);box-shadow:var(--control-shadow);text-align:left;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.game-hint-action>span{gap:1px;display:grid}.game-hint-action strong{font-size:.75rem}.game-hint-action small{color:var(--ink-soft);font-size:.7rem;line-height:1.35}.game-hint-action em{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.62rem;font-style:normal;font-weight:850}.game-unique-note,.game-complete{border-left:3px solid var(--status-success-border);background:var(--status-success-surface);color:var(--status-success-ink);align-items:flex-start;gap:9px;margin-top:15px;padding:11px 12px;display:flex}.game-control-group .game-complete{margin-top:8px}.game-unique-note svg,.game-complete svg{flex:none;margin-top:1px}.game-unique-note p,.game-complete div{gap:2px;margin:0;display:grid}.game-unique-note strong,.game-complete strong{font-size:.65rem}.game-unique-note span,.game-complete span{color:var(--ink-soft);font-size:.58rem;line-height:1.4}.game-complete{border-left-color:var(--status-warning-border);background:var(--status-warning-surface);color:var(--status-warning-ink)}.progress-modal-backdrop{z-index:180;background:var(--scrim);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.progress-dialog{border:1px solid var(--ui-panel-border);background:var(--surface-raised);width:min(860px,100%);max-height:min(88vh,820px);color:var(--ink);box-shadow:var(--shadow);border-radius:20px;grid-template-rows:auto auto minmax(0,1fr) auto auto;display:grid;overflow:hidden}.progress-dialog>header{border-bottom:1px solid var(--line);background:linear-gradient(135deg, var(--ui-accent-soft), transparent 54%);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding:26px 30px 22px;display:grid}.progress-dialog>header>div{gap:5px;display:grid}.progress-dialog-eyebrow{background:var(--ui-accent-soft);width:fit-content;color:var(--ui-accent);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 7px;font-size:.57rem;font-weight:850;display:inline-flex}.progress-dialog h2{margin:0;font-size:clamp(1.45rem,2.5vw,2rem)}.progress-dialog>header p{max-width:650px;color:var(--ink-soft);margin:4px 0 0;font-size:.7rem;line-height:1.6}.progress-dialog>header>button{border:1px solid var(--line);background:var(--surface-interactive);width:36px;height:36px;color:var(--ink-soft);border-radius:50%;place-items:center;padding:0;display:grid}.progress-dialog>header>button:hover{background:var(--ui-panel-muted);color:var(--ink)}.progress-dialog-toolbar{background:var(--surface-navigation);color:var(--ink-soft);border-bottom:1px solid #cfc6b5b8;justify-content:space-between;align-items:center;gap:12px;padding:10px 30px;font-size:.63rem;font-weight:750;display:flex}.progress-selection-count{align-items:center;gap:7px;display:inline-flex}.progress-selection-count strong{background:var(--ui-accent-soft);width:22px;height:22px;color:var(--ui-accent);border-radius:50%;place-items:center;font-size:.58rem;display:inline-grid}.progress-dialog-toolbar button,.progress-method-group legend button{color:var(--ui-accent);background:0 0;border:0;border-radius:5px;padding:4px 7px;font-size:.59rem;font-weight:850}.progress-dialog-toolbar button:hover,.progress-method-group legend button:hover{background:var(--ui-accent-subtle)}.progress-method-groups{gap:0;padding:20px 30px 24px;display:grid;overflow-y:auto}.progress-method-group{border:0;min-width:0;margin:0;padding:0 0 22px}.progress-method-group+.progress-method-group{border-top:1px solid var(--line);padding-top:23px}.progress-method-group legend{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;padding:0;display:flex}.progress-method-group legend>span{gap:2px;display:grid}.progress-method-group legend strong{font-family:Georgia,Times New Roman,serif;font-size:.94rem;font-weight:600}.progress-method-group legend small{color:var(--ink-soft);font-size:.59rem;line-height:1.35}.progress-method-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:12px;display:grid}.progress-method-group label{border:1px solid var(--line);background:var(--surface-raised);min-height:42px;color:var(--ink-soft);cursor:pointer;border-radius:9px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;font-size:.62rem;font-weight:750;line-height:1.3;transition:border-color .15s,background .15s,box-shadow .15s,color .15s;display:grid}.progress-method-group label:hover{border-color:var(--ui-accent-border);background:var(--ui-accent-subtle);box-shadow:0 3px 9px #2b474f0f}.progress-method-group label.is-checked{border-color:var(--ui-accent-border);background:var(--ui-accent-soft);color:var(--ui-accent)}.progress-method-group label input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.progress-method-check{border:1px solid var(--ui-panel-border);background:var(--surface-navigation);width:18px;height:18px;color:var(--text-on-accent);border-radius:5px;place-items:center;display:grid}.progress-method-group label.is-checked .progress-method-check{border-color:var(--ui-accent);background:var(--ui-accent)}.progress-method-icon{width:18px;height:18px;color:var(--ink-soft);place-items:center;display:inline-grid}.progress-method-group label.is-checked .progress-method-icon{color:var(--ui-accent)}.progress-method-label{min-width:0}.progress-method-group label:has(input:focus-visible){outline:2px solid var(--ui-focus);outline-offset:2px}.progress-dialog-note{border-top:1px solid var(--line);background:var(--status-warning-surface);color:var(--status-warning-ink);align-items:center;gap:7px;margin:0;padding:11px 30px;font-size:.61rem;font-weight:750;display:flex}.progress-dialog>footer{border-top:1px solid var(--line);background:var(--surface-raised);justify-content:flex-end;gap:8px;padding:15px 30px 20px;display:flex}.progress-dialog>footer button{border:1px solid var(--line);background:var(--surface-interactive);min-height:42px;color:var(--ink-soft);border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:.66rem;font-weight:850;display:inline-flex}.progress-dialog>footer button.is-primary{border-color:var(--ui-accent);background:var(--ui-accent);color:var(--text-on-accent)}.completion-celebration{z-index:1000;background:var(--scrim);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);place-items:center;padding:24px;animation:.24s ease-out both completion-backdrop-in;display:grid;position:fixed;inset:0;overflow:hidden}.completion-confetti{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.completion-confetti i{top:-7vh;left:var(--confetti-left);width:var(--confetti-width);height:var(--confetti-height);background:var(--confetti-color);opacity:0;animation:completion-confetti-fall var(--confetti-duration) cubic-bezier(.15, .6, .4, 1) var(--confetti-delay) both;will-change:transform, opacity;border-radius:2px;position:absolute}.completion-confetti i:nth-child(3n){border-radius:50%}.completion-confetti i:nth-child(4n){clip-path:polygon(50% 0,100% 100%,0 100%)}.completion-dialog{z-index:1;border:1px solid var(--celebration-border);background:radial-gradient(circle at 50% -20%, var(--celebration-glow), transparent 48%), var(--celebration-surface);width:min(100%,640px);color:var(--ink);text-align:center;border-radius:24px;justify-items:center;padding:46px 48px 42px;animation:.42s cubic-bezier(.2,.85,.3,1.15) both completion-dialog-in;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 80px #1a150f57,inset 0 1px #ffffffe6}.completion-dialog:before,.completion-dialog:after{content:"";background:#d9574312;border-radius:50%;width:180px;height:180px;position:absolute}.completion-dialog:before{top:-92px;left:-82px}.completion-dialog:after{background:#2c6d8214;bottom:-106px;right:-92px}.completion-close{z-index:2;border:1px solid var(--celebration-stat-line);background:var(--celebration-control);width:38px;height:38px;color:var(--ink-soft);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:16px;right:16px}.completion-close:hover{border-color:var(--celebration-border);background:var(--surface-active);color:var(--ink)}.completion-trophy{color:#785812;background:linear-gradient(145deg,#ffe99d,#f1cf62);border:1px solid #d9ba54;border-radius:50%;place-items:center;width:88px;height:88px;margin-bottom:18px;animation:.6s cubic-bezier(.2,.85,.3,1.2) .18s both completion-trophy-in;display:grid;box-shadow:0 14px 28px #a4791338,inset 0 1px #ffffffbf}.completion-kicker{color:var(--coral);letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:900}.completion-dialog h2{margin:7px 0 8px;font-size:clamp(2.25rem,5vw,3.7rem);line-height:1}.completion-dialog>p{max-width:440px;color:var(--ink-soft);margin:0;font-size:.9rem;line-height:1.55}.completion-stats{z-index:1;border-block:1px solid var(--celebration-stat-line);grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-top:28px;display:grid;position:relative}.completion-stats span{gap:5px;padding:16px 10px;display:grid}.completion-stats span+span{border-left:1px solid var(--celebration-stat-line)}.completion-stats small{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:.58rem;font-weight:850}.completion-stats strong{color:var(--celebration-emphasis);font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:600}.completion-actions{z-index:1;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px;display:flex;position:relative}.completion-actions button{border:1px solid var(--celebration-stat-line);background:var(--celebration-control);min-height:46px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:.7rem;font-weight:850;display:inline-flex}.completion-actions button:hover{border-color:var(--celebration-border);background:var(--surface-active)}.completion-actions button.is-primary{border-color:var(--coral);background:var(--coral);color:var(--text-on-accent);box-shadow:0 8px 20px #d957433d}.completion-actions button.is-primary:hover{background:#c94a38}@keyframes completion-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes completion-dialog-in{0%{opacity:0;transform:translateY(22px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes completion-trophy-in{0%{opacity:0;transform:scale(.55)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes completion-confetti-fall{0%{opacity:0;transform:translateY(-8vh)rotate(0)}9%{opacity:1}86%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-drift), 114vh, 0) rotate(var(--confetti-turn))}}@media (width<=600px){.completion-celebration{padding:12px}.completion-dialog{border-radius:18px;padding:38px 18px 26px}.completion-trophy{width:72px;height:72px;margin-bottom:14px}.completion-trophy svg{width:40px;height:40px}.completion-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.completion-stats span:nth-child(3){border-left:0}.completion-stats span:nth-child(n+3){border-top:1px solid #7a5d142e}.completion-actions{width:100%;margin-top:22px;display:grid}.completion-actions button{width:100%}}.high-score-page{min-width:0}.high-score-result{border:1px solid var(--status-warning-border);background:linear-gradient(135deg, var(--status-warning-surface), var(--surface-raised));color:var(--status-warning-ink);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:14px 15px;display:grid}.high-score-result>svg{margin-top:3px}.high-score-result>div{display:grid}.high-score-result span{letter-spacing:.09em;text-transform:uppercase;font-size:.56rem;font-weight:850}.high-score-result strong{color:var(--status-warning-ink);margin-top:1px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:500;line-height:1.1}.high-score-result p{color:var(--status-warning-ink);margin:4px 0 0;font-size:.59rem;line-height:1.4}.high-score-awaiting{border-left:3px solid var(--status-success-border);background:var(--status-success-surface);color:var(--status-success-ink);align-items:flex-start;gap:10px;padding:12px 13px;display:flex}.high-score-awaiting div{gap:2px;display:grid}.high-score-awaiting strong{font-size:.68rem}.high-score-awaiting span{color:var(--ink-soft);font-size:.59rem;line-height:1.4}.high-score-ineligible{border-left:3px solid var(--status-warning-border);background:var(--status-warning-surface);color:var(--status-warning-ink);align-items:flex-start;gap:10px;padding:12px 13px;display:flex}.high-score-ineligible>svg{flex:none;margin-top:1px}.high-score-ineligible>div{gap:2px;display:grid}.high-score-ineligible strong{font-size:.68rem}.high-score-ineligible span{color:var(--status-warning-ink);font-size:.59rem;line-height:1.4}.high-score-form{border:1px solid var(--line);background:var(--surface-raised);border-radius:10px;gap:7px;margin-top:12px;padding:13px;display:grid}.high-score-form label{color:var(--ink);font-size:.65rem;font-weight:850}.high-score-form>div{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.high-score-form input{border:1px solid var(--line);background:var(--surface-interactive);min-width:0;min-height:40px;color:var(--ink);font:inherit;border-radius:7px;outline:0;padding:8px 10px;font-size:.7rem}.high-score-form input:focus{border-color:#6f876f;box-shadow:0 0 0 3px #6f876f24}.high-score-form button,.high-score-new-game{border:1px solid var(--status-success-border);background:var(--status-success-border);min-height:40px;color:var(--text-on-accent);border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:.63rem;font-weight:850;display:inline-flex}.high-score-form button:hover:not(:disabled),.high-score-new-game:hover{background:var(--status-success-ink)}.high-score-form small{color:var(--ink-soft);font-size:.54rem;line-height:1.4}.high-score-error{color:#aa3d31;margin:0;font-size:.58rem;font-weight:700}.high-score-saved{background:var(--status-success-surface);color:var(--status-success-ink);border-radius:8px;align-items:center;gap:8px;margin-top:11px;padding:9px 11px;font-size:.61rem;display:flex}.high-score-calculation{border-bottom:1px solid var(--line);margin-top:10px}.high-score-calculation summary{color:var(--ink-soft);cursor:pointer;padding:8px 0;font-size:.59rem;font-weight:800}.high-score-calculation p{color:var(--ink-soft);margin:0 0 10px;font-size:.57rem;line-height:1.5}.high-score-filter{border:1px solid var(--line);background:var(--surface-navigation);border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin-top:14px;padding:3px;display:grid}.high-score-filter button{min-width:0;color:var(--ink-soft);background:0 0;border:0;border-radius:6px;padding:6px 2px;font-size:.54rem;font-weight:800}.high-score-filter button:hover,.high-score-filter button.is-active{background:var(--surface-active);box-shadow:var(--control-shadow);color:var(--ink)}.high-score-ranking{border:1px solid var(--line);background:var(--surface-raised);border-radius:10px;margin-top:10px;overflow:hidden}.high-score-ranking-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:8px 10px 8px 13px;display:flex}.high-score-ranking-header>strong{color:var(--ink);font-size:.64rem}.high-score-ranking-header button{width:27px;height:27px;color:var(--ink-soft);background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.high-score-ranking-header button:hover{background:var(--surface-interactive);color:var(--ink)}.high-score-ranking ol{max-height:330px;margin:0;padding:0;list-style:none;overflow-y:auto}.high-score-ranking li{border-bottom:1px solid var(--line);grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:46px;padding:7px 12px;display:grid}.high-score-ranking li:last-child{border-bottom:0}.high-score-ranking li.is-current{background:var(--status-success-surface);box-shadow:inset 3px 0 0 var(--status-success-border)}.high-score-rank{background:var(--surface-active);width:23px;height:23px;color:var(--ink-soft);border-radius:50%;place-items:center;font-size:.58rem;font-weight:850;display:inline-grid}.high-score-ranking li:first-child .high-score-rank{background:var(--selection-surface);color:var(--status-warning-ink)}.high-score-ranking li:nth-child(2) .high-score-rank,.high-score-ranking li:nth-child(3) .high-score-rank{background:var(--surface-interactive);color:var(--ink-soft)}.high-score-player{gap:1px;min-width:0;display:grid}.high-score-player>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;overflow:hidden}.high-score-player small{color:var(--ink-soft);font-size:.52rem}.high-score-points{color:var(--status-info-ink);font-family:Georgia,Times New Roman,serif;font-size:.79rem;font-weight:600}.high-score-empty{color:var(--ink-soft);text-align:center;margin:0;padding:22px 15px;font-size:.61rem;line-height:1.5}.high-score-empty.is-error button{border:1px solid var(--line);background:var(--surface-interactive);color:var(--ink-soft);border-radius:6px;margin-top:7px;padding:5px 8px;font-size:.57rem;font-weight:800}.high-score-new-game{background:var(--surface-interactive);width:100%;color:var(--status-success-ink);margin-top:11px}.high-score-new-game:hover{color:var(--text-on-accent)}.game-loading{min-height:60vh;color:var(--ink-soft);place-items:center;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;display:grid}.lesson-grid{grid-template-columns:minmax(430px,1fr) minmax(380px,1fr);align-items:start;gap:clamp(22px,2.5vw,38px);margin-top:14px;display:grid}.board-panel,.explanation-panel{min-width:0}.board-panel{scroll-margin-top:12px}.legend-context-toggle{white-space:nowrap;min-height:19px;color:var(--ink-soft);font:inherit;font-weight:inherit;cursor:pointer;align-items:center;gap:6px;margin:0;display:inline-flex}.legend-context-toggle input{width:13px;height:13px;accent-color:var(--sage);margin:0}.grid-frame{grid-template-rows:22px minmax(0,1fr);grid-template-columns:26px minmax(0,1fr);width:min(100%,680px);display:grid}.grid-corner{grid-area:1/1}.column-labels{text-align:center;grid-area:1/2;grid-template-columns:repeat(9,1fr);font-size:clamp(.48rem,.7vw,.62rem);font-weight:800;display:grid}.column-labels>span,.row-labels>span{align-items:baseline;gap:1px;display:inline-flex}.column-labels>span{color:var(--status-info-ink);justify-content:center}.column-labels small,.row-labels small{color:currentColor;font-size:.82em;font-weight:900}.column-labels b,.row-labels b{color:currentColor;font-weight:850}.row-labels{text-align:right;grid-area:2/1;grid-template-rows:repeat(9,1fr);align-items:center;padding-right:5px;font-size:clamp(.48rem,.7vw,.62rem);font-weight:800;display:grid}.row-labels>span{color:#8a4035;justify-content:flex-end}.column-labels>span.is-cell-highlighted,.row-labels>span.is-cell-highlighted{align-items:center}.column-labels>span.is-cell-highlighted b,.row-labels>span.is-cell-highlighted b{border-radius:999px;place-items:center;width:19px;height:19px;font-weight:950;display:inline-grid;box-shadow:inset 0 0 0 1px #4954521f}.column-labels>span.is-cell-highlighted b{background:var(--status-info-surface);color:var(--status-info-ink)}.row-labels>span.is-cell-highlighted b{color:#7b352d;background:#f7e5e0}.column-labels>span.is-highlighted,.row-labels>span.is-highlighted{color:#5e4715;text-shadow:0 0 10px #e1b74fe6;font-weight:950}.column-labels>span.is-step-highlighted,.row-labels>span.is-step-highlighted{color:#7b5a13;text-shadow:0 0 10px #e1b74fb3}.column-labels>span.is-step-blocked{color:#b54d3f;text-shadow:0 0 10px #dc655473}.sudoku-grid{aspect-ratio:1;border:2px solid var(--line-dark);background:var(--sheet);grid-area:2/2;grid-template-columns:repeat(9,1fr);display:grid;position:relative;overflow:hidden}.sudoku-cell{aspect-ratio:1;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--sheet);place-items:center;min-width:0;transition:opacity .28s,background .28s,transform .28s;display:grid;position:relative}.sudoku-cell:nth-child(3n){border-right:2px solid var(--line-dark)}.sudoku-cell:nth-child(9n){border-right:0}.sudoku-cell:nth-child(n+19):nth-child(-n+27),.sudoku-cell:nth-child(n+46):nth-child(-n+54){border-bottom:2px solid var(--line-dark)}.sudoku-cell:nth-child(n+73){border-bottom:0}.sudoku-cell.is-anchor{background:var(--sage-soft)}.sudoku-cell.is-pivot{background:var(--gold-soft)}.sudoku-cell.is-link{background:var(--blue-soft)}.sudoku-cell.is-target{background:var(--coral-soft)}.grid-cell-action{z-index:8;background:0 0;border:0;border-radius:3px;padding:0;position:absolute;inset:2px}.sudoku-cell.is-interactive .grid-cell-action:hover{box-shadow:inset 0 0 0 2px #d956436b}.sudoku-cell.is-interactive .grid-cell-action:focus-visible{outline-offset:-2px;outline:3px solid #d956439e}.sudoku-cell.is-practice-selected{z-index:7;background:var(--selection-surface);box-shadow:inset 0 0 0 3px var(--selection-border)}.logic-path-overlay{z-index:6;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.logic-path-overlay line{fill:none;stroke:var(--ui-accent);stroke-linecap:round;stroke-width:7px;opacity:.88;filter:drop-shadow(0 1px 1px #fffdf7e6);stroke-dasharray:1200;stroke-dashoffset:1200px;animation:.62s cubic-bezier(.22,.72,.24,1) forwards logic-link-draw;animation-delay:calc(var(--path-order) * .14s)}.logic-path-overlay line.is-weak{stroke:#b9764e;stroke-dasharray:22 15}.logic-path-node{opacity:0;animation:.26s forwards logic-node-appear;animation-delay:calc(var(--path-order) * .14s + .12s)}.logic-path-halo{fill:#fffdf71a;stroke:var(--status-info-border);stroke-width:4px;filter:drop-shadow(0 1px 1px #fffdf7f2)}.logic-path-order-badge circle{fill:var(--surface-raised);stroke:var(--status-info-border);stroke-width:3px;filter:drop-shadow(0 1px 2px #3d372d2e)}.logic-path-order-badge text{fill:var(--status-info-ink);text-anchor:middle;dominant-baseline:middle;font-family:Inter,ui-sans-serif,sans-serif;font-size:13px;font-weight:900}.clear-grid-selection,.replay-logic{border:1px solid var(--line);background:var(--surface-interactive);min-height:30px;color:var(--ink-soft);border-radius:999px;align-items:center;gap:6px;margin:9px 0 0 26px;padding:4px 8px;font-size:.63rem;font-weight:750;display:inline-flex}.clear-grid-selection:hover,.replay-logic:hover{color:var(--ink);border-color:#d9564373}.replay-logic{margin-left:26px}.clear-grid-selection+.replay-logic{margin-left:8px}.clear-grid-selection kbd{border:1px solid var(--ui-panel-border);background:var(--surface-active);color:var(--ink-soft);border-radius:4px;padding:1px 5px;font-size:.54rem;font-weight:750}.sudoku-cell.is-cross-highlighted{z-index:5;background:var(--selection-surface)}.sudoku-cell.is-unit-highlighted{box-shadow:inset 0 0 0 999px #e1b74f2e}.sudoku-cell.has-highlighted-digit{box-shadow:inset 0 0 0 999px #e1b74f3d}.sudoku-cell.has-highlighted-digit .given,.sudoku-cell.has-highlighted-digit .resolved-value{color:#785618;font-weight:750}.sudoku-cell.is-step-unit-highlighted{box-shadow:inset 0 0 0 999px #e1b74f14}.sudoku-cell.is-step-blocked-column{box-shadow:inset 0 0 0 999px #dc65540e}.sudoku-cell.is-step-blocker{z-index:3;background:#f8ddd7;box-shadow:inset 0 0 0 999px #d956431a}.sudoku-cell.is-step-blocker .given{color:#c33e31;text-shadow:0 0 14px #d9564333;font-weight:800}.sudoku-cell.is-step-excluded{z-index:2;background:#fff4f1;box-shadow:inset 0 0 0 999px #d9564321}.sudoku-cell.is-step-excluded:before{z-index:0;content:"";pointer-events:none;background:linear-gradient(135deg,#0000 44%,#d956431c 44% 56%,#0000 56%);position:absolute;inset:0}.step-excluded-candidate{z-index:4;color:#bb4b3d;background:#fffdf7c2;border-radius:50%;place-items:center;width:1.72em;height:1.72em;font-size:clamp(.52rem,.84vw,.78rem);font-weight:900;line-height:1;display:grid;position:absolute;bottom:10%;left:12%}.step-excluded-candidate:after{content:"";background:#d75d4d;border-radius:2px;width:125%;height:2px;position:absolute;transform:rotate(-38deg)}.grid-frame[data-phase=discover] .sudoku-cell.is-target{opacity:.12}.grid-frame[data-placement=true][data-phase=discover] .sudoku-cell.is-target{opacity:.78}.grid-frame[data-phase=discover] .sudoku-cell.is-anchor,.grid-frame[data-phase=discover] .sudoku-cell.is-link,.grid-frame[data-phase=discover] .sudoku-cell.is-pivot{animation:.52s cubic-bezier(.2,.75,.25,1) both motif-reveal}.grid-frame[data-phase=discover] .sudoku-cell.is-link{animation-delay:.11s}.grid-frame[data-phase=discover] .sudoku-cell.is-pivot{animation-delay:.18s}.grid-frame[data-phase=reason] .sudoku-cell.is-target{opacity:.48}.grid-frame[data-phase=reason] .sudoku-cell.is-anchor,.grid-frame[data-phase=reason] .sudoku-cell.is-link,.grid-frame[data-phase=reason] .sudoku-cell.is-pivot{animation:.82s both logic-pulse}.grid-frame[data-phase=result] .sudoku-cell.is-target{z-index:3;animation:.72s cubic-bezier(.2,.8,.25,1) both target-reveal}.grid-frame[data-has-step-focus=true] .sudoku-cell:is(.is-anchor,.is-link,.is-pivot,.is-target):not(.is-step-focus){background:var(--sheet);opacity:1;filter:none}.grid-frame[data-has-step-focus=true] .sudoku-cell:is(.is-anchor,.is-link,.is-pivot,.is-target):not(.is-step-focus)>:is(.cell-label,.given,.resolved-value,.candidate-grid,.step-excluded-candidate){opacity:.32}.sudoku-cell.is-step-focus,.grid-frame[data-has-step-focus=true] .sudoku-cell:is(.is-cross-highlighted,.is-unit-highlighted,.has-highlighted-digit){opacity:1;filter:saturate(1.08)}.grid-frame[data-has-step-focus=true] .sudoku-cell.is-cross-highlighted{background:var(--selection-surface)}.grid-frame[data-has-step-focus=true] .sudoku-cell:is(.is-cross-highlighted,.is-unit-highlighted,.has-highlighted-digit)>:is(.cell-label,.given,.resolved-value,.candidate-grid,.step-excluded-candidate){opacity:1}.grid-frame .sudoku-cell:is(.is-cross-highlighted,.is-unit-highlighted,.has-highlighted-digit){filter:none;opacity:1!important}.grid-frame .sudoku-cell:is(.is-cross-highlighted,.is-unit-highlighted,.has-highlighted-digit)>:is(.cell-label,.given,.resolved-value,.candidate-grid,.step-excluded-candidate){opacity:1!important}.given,.resolved-value{font-variant-numeric:lining-nums tabular-nums;text-align:center;place-items:center;padding-bottom:.06em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.1rem,2.15vw,1.85rem);line-height:1;display:grid;position:absolute;inset:0}.given{font-weight:500}.resolved-value{color:var(--status-info-ink);font-weight:700;animation:.56s cubic-bezier(.2,.82,.25,1) both value-place}.candidate-grid{color:#525149;font-variant-numeric:tabular-nums;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);place-items:center;width:100%;height:100%;padding:7%;font-size:clamp(.48rem,.82vw,.76rem);font-weight:750;line-height:1;transition:opacity .16s;display:grid}.candidate{place-items:center;width:100%;height:100%;display:grid}.candidate.is-empty{visibility:hidden}.candidate.is-eliminated{position:relative}.candidate.is-digit-highlighted{z-index:1;color:#4c390e;font-weight:950;position:relative}.candidate.is-digit-highlighted:before{z-index:-1;content:"";background:#f1cf72;border-radius:50%;width:1.65em;height:1.65em;position:absolute;box-shadow:0 0 0 1px #7e5b1333}.candidate.is-eliminated:after{background:var(--coral);content:"";opacity:0;width:72%;height:2px;position:absolute;transform:rotate(-35deg)scaleX(0)}.grid-frame[data-phase=result] .candidate.is-eliminated{color:var(--coral);font-weight:900}.grid-frame[data-phase=result] .candidate.is-eliminated:after{animation:.42s ease-out .25s both candidate-strike}.context-hidden .candidate-grid{opacity:0}.context-tracked .candidate-grid{color:#66695f;font-weight:850}.grid-frame[data-show-context=true] .sudoku-cell:not(.is-anchor):not(.is-link):not(.is-pivot):not(.is-target) .candidate-grid{color:#777269;opacity:.68;font-weight:650}.cell-label{z-index:2;color:var(--ink-soft);letter-spacing:.02em;text-transform:uppercase;font-size:clamp(.39rem,.58vw,.57rem);font-weight:900;position:absolute;top:2px;left:3px}.legend{color:var(--ink-soft);flex-wrap:wrap;gap:8px 14px;margin:10px 0 0 26px;font-size:.64rem;font-weight:700;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border:1px solid var(--line);width:11px;height:11px;display:inline-block}.legend .legend-followed{border:1px solid var(--line);background:var(--surface-interactive);color:var(--ink);border-radius:999px;gap:7px;padding:2px 8px 2px 3px}.legend-followed b{width:19px;height:19px;color:var(--sheet);font-variant-numeric:tabular-nums;background:#66695f;border:0;border-radius:50%;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:.68rem;font-weight:700;line-height:1;display:grid}.legend-anchor{background:var(--sage-soft)}.legend-link{background:var(--blue-soft)}.legend-blocker{background:#e7a89d}.legend-excluded{color:#b44235;background:#fae3de;place-items:center;font-size:8px;font-style:normal;font-weight:900;position:relative;border:0!important;width:13px!important;height:13px!important;display:inline-grid!important}.legend-excluded:after{content:"";background:#d75d4d;width:14px;height:1.5px;position:absolute;transform:rotate(-38deg)}.legend-pivot{background:var(--gold-soft)}.legend-target{background:var(--coral-soft)}.explanation-panel{--explanation-subline:#4f4a4129;background:0 0;border:0;margin-top:18px;padding:0;overflow:visible;container:explanation/inline-size}.explanation-section{border-top:1px solid var(--line);padding:19px 0 21px}.explanation-section:first-child{border-top:0;padding-top:0}.section-heading{display:block}.principle-lead{color:#2b2923;max-width:none;margin:14px 0 0;font-family:Georgia,Times New Roman,serif;font-size:.98rem;line-height:max(1.54em,28px)}.application-intro{color:#4b473f;max-width:none;margin:12px 0 0;font-size:.84rem;line-height:max(1.62em,28px)}.lesson-glossary{color:#555149;margin-top:10px;padding-top:10px;font-size:.75rem}.lesson-glossary summary{color:#4b473f;cursor:pointer;width:fit-content;font-weight:800}.lesson-glossary dl{gap:7px;margin:10px 0 0;display:grid}.lesson-glossary dl>div{grid-template-columns:minmax(105px,.28fr) minmax(0,1fr);gap:12px;display:grid}.lesson-glossary dt{color:#3f3b34;font-weight:800}.lesson-glossary dd{margin:0;line-height:1.5}.rule-box .section-kicker{color:#5d574d}.application-section .section-heading{margin-bottom:0}.application-heading-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.explorer-variant-tabs{border:1px solid var(--ui-panel-border);background:var(--surface-raised);border-radius:9px;flex:none;align-items:center;gap:6px;min-height:32px;padding:2px 2px 2px 9px;display:inline-flex}.explorer-variant-label{color:var(--ink-soft);letter-spacing:.01em;white-space:nowrap;align-items:baseline;gap:4px;font-size:.68rem;font-weight:800;display:inline-flex}.explorer-variant-label strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:.82rem;font-weight:600}.explorer-variant-label>span{color:var(--line-dark);font-weight:500}.explorer-variant-controls{border-left:1px solid var(--ui-panel-border);gap:1px;padding-left:2px;display:inline-flex}.explorer-variant-tabs button{width:27px;height:27px;color:var(--ink-soft);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:inline-grid}.explorer-variant-tabs button:hover{background:var(--ui-accent-soft);color:var(--ui-accent)}.application-section{padding-bottom:0}.step-sequence{margin-top:8px}.explanation-step{border-top:1px solid var(--explanation-subline);padding:15px 0 16px;display:block}.explanation-step:first-child{border-top:0;padding-top:5px}.explanation-step.is-active{background:linear-gradient(90deg,#f3e8b42e,#0000 72%)}.step-copy>p{color:#4b473f;max-width:none;margin:0;font-size:.84rem;line-height:max(1.62em,28px)}.explanation-step-body{grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:16px;display:grid}.practice-panel{padding:4px 0 22px}.practice-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:18px;padding-bottom:16px;display:flex}.practice-header h2{margin:5px 0 0;font-size:1.34rem;line-height:1.15}.exercise-switcher{border:1px solid var(--ui-panel-border);background:var(--surface-raised);border-radius:9px;gap:2px;padding:2px;display:flex}.exercise-switcher button{width:32px;height:30px;color:var(--ink-soft);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;font-size:.72rem;font-weight:850;display:grid}.exercise-switcher button.is-active{background:var(--mode-practice);color:var(--text-on-accent);box-shadow:0 2px 7px var(--mode-practice)}@supports (color:color-mix(in lab, red, red)){.exercise-switcher button.is-active{box-shadow:0 2px 7px color-mix(in srgb, var(--mode-practice) 22%, transparent)}}.practice-prompt{color:var(--ink);margin:18px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.02rem;line-height:1.58}.practice-selection{border:1px solid var(--line);background:var(--surface-raised);border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:16px;display:grid;overflow:hidden}.practice-selection>span{background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:8px 11px;display:flex}.practice-selection>span+span{border-left:1px solid var(--line)}.practice-selection small{color:var(--ink-soft);text-transform:uppercase;font-size:.62rem;font-weight:750}.practice-selection strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1rem}.practice-digit-pad{grid-template-columns:repeat(9,1fr);gap:5px;margin-top:10px;display:grid}.practice-digit-pad button{border:1px solid var(--line);background:var(--surface-interactive);min-width:0;height:36px;color:var(--ink);border-radius:7px;place-items:center;padding:0;font-family:Georgia,Times New Roman,serif;font-size:.88rem;font-weight:700;display:grid}.practice-digit-pad button:hover,.practice-digit-pad button.is-active{border-color:var(--selection-border);background:var(--selection-surface);color:var(--status-warning-ink)}.practice-hints{border-left:3px solid var(--status-warning-border);background:var(--status-warning-surface);color:var(--status-warning-ink);gap:8px;margin:16px 0 0;padding:14px 14px 14px 34px;font-size:.75rem;line-height:1.55;display:grid}.practice-feedback{background:var(--status-danger-surface);color:var(--status-danger-ink);border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px;margin-top:15px;padding:12px;display:grid}.practice-feedback.is-correct,.practice-feedback.is-revealed{background:var(--status-success-surface);color:var(--status-success-ink)}.practice-feedback p{margin:0;font-size:.76rem;line-height:1.55}.practice-solution{border:1px solid var(--status-success-border);background:var(--surface-raised);color:var(--ink);border-radius:9px;margin-top:15px;overflow:hidden}.practice-solution-heading{background:var(--status-success-surface);color:var(--status-success-ink);align-items:center;gap:9px;padding:11px 13px;font-size:.75rem;display:flex}.practice-solution-step{border-top:1px solid var(--status-success-border);padding:11px 13px 12px}.practice-solution-step>strong{color:var(--status-success-ink);letter-spacing:.055em;text-transform:uppercase;margin-bottom:4px;font-size:.63rem;font-weight:850;display:block}.practice-solution-step p{color:var(--ink-soft);margin:0;font-size:.75rem;line-height:1.58}.practice-solution-step.is-result{background:linear-gradient(90deg, var(--status-warning-surface), transparent)}.practice-solution-step.is-result>strong{color:var(--status-warning-ink)}.practice-actions{justify-content:space-between;gap:10px;margin-top:17px;display:flex}.practice-actions button,.practice-secondary-actions button{border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;font-size:.69rem;font-weight:800;display:inline-flex}.practice-actions button{border:1px solid var(--line);background:var(--surface-interactive);padding:7px 12px}.practice-actions .validate-button{border-color:var(--mode-practice);background:var(--mode-practice);color:var(--text-on-accent)}.practice-actions button:disabled{cursor:default;opacity:.43}.practice-secondary-actions{gap:13px;margin-top:10px;display:flex}.practice-secondary-actions button{min-height:30px;color:var(--ink-soft);background:0 0;border:0;padding:4px 0;font-size:.61rem}.practice-secondary-actions button:hover{color:var(--coral)}.inline-cell-chip{--chip-background:#e8e4da;--chip-border:#4f4a4147;--chip-text:#48443b;--chip-muted:#777166;border:1px solid var(--chip-border);background:var(--chip-background);min-height:24px;color:var(--chip-text);cursor:pointer;font:inherit;vertical-align:.03em;white-space:nowrap;border-radius:999px;align-items:stretch;gap:0;margin:0 .12em;padding:0;font-size:.88em;font-weight:850;line-height:1;transition:background .15s,color .15s;display:inline-flex;overflow:hidden}.cell-coordinate{align-items:stretch;display:inline-flex}.coordinate-segment{align-items:center;gap:1px;padding:0 .42em;display:inline-flex}.coordinate-segment small{color:currentColor;letter-spacing:.02em;font-size:.68em;font-weight:900}.coordinate-segment b{color:currentColor;font-weight:900}.coordinate-row{color:#7b352d;background:#f7e5e0;border-left:1px solid #4954522e}.coordinate-column{background:var(--status-info-surface);color:var(--status-info-ink)}.coordinate-candidates{color:var(--chip-muted);align-self:center;padding:0 .42em;font-size:.82em;font-weight:750;line-height:1}.inline-cell-chip:hover{filter:brightness(.97)}.inline-cell-chip:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.inline-cell-chip[aria-pressed=true]{border-color:var(--coral);color:#433717;background:#f8e5ae}.inline-cell-chip[aria-pressed=true] .coordinate-row{background:#efc8be}.inline-cell-chip[aria-pressed=true] .coordinate-column{background:#cde1e8}.inline-cell-chip[aria-pressed=true] .coordinate-candidates{color:#6e5b27}.inline-unit-chip,.inline-digit-chip{cursor:pointer;min-height:24px;font:inherit;vertical-align:.03em;white-space:nowrap;border:0;justify-content:center;align-items:center;margin:0 .1em;font-size:.86em;font-weight:900;line-height:1;transition:background .15s,box-shadow .15s,filter .15s;display:inline-flex}.inline-unit-chip{border-radius:999px;gap:1px;padding:0 .42em}.inline-unit-chip small{color:currentColor;letter-spacing:.02em;font-size:.68em;font-weight:900}.inline-unit-chip b{font-weight:900}.inline-unit-chip.is-row{color:#7b352d;background:#f7e5e0;box-shadow:inset 0 0 0 1px #7b352d2e}.inline-unit-chip.is-column{background:var(--status-info-surface);box-shadow:inset 0 0 0 1px var(--status-info-border);color:var(--status-info-ink)}.inline-digit-chip{color:#5d4919;vertical-align:.03em;background:#f3e8bd;border-radius:50%;align-items:center;width:24px;height:24px;padding:0;font-family:Georgia,Times New Roman,serif;font-size:.8em;line-height:1;box-shadow:inset 0 0 0 1px #70561d38}.inline-unit-chip:hover,.inline-digit-chip:hover{filter:brightness(.97)}.inline-unit-chip:focus-visible,.inline-digit-chip:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.inline-unit-chip.is-row[aria-pressed=true]{background:#efc8be;box-shadow:inset 0 0 0 2px #7b352d75}.inline-unit-chip.is-column[aria-pressed=true]{background:#cde1e8;box-shadow:inset 0 0 0 2px #28576c6b}.inline-digit-chip[aria-pressed=true]{color:#49370e;background:#f1cf72;box-shadow:inset 0 0 0 2px #70561d6b}.inline-marker-chip{color:#48443b;cursor:pointer;min-width:1.62em;min-height:24px;font:inherit;vertical-align:.03em;white-space:nowrap;border:0;border-radius:999px;justify-content:center;align-items:center;margin:0 .1em;padding:0 .46em;font-size:.84em;font-weight:900;line-height:1;transition:filter .15s,box-shadow .15s;display:inline-flex;box-shadow:inset 0 0 0 1px #4f4a413d}.inline-marker-chip.is-anchor{background:var(--sage-soft);color:#405b47}.inline-marker-chip.is-link{background:var(--blue-soft);color:var(--status-info-ink)}.inline-marker-chip.is-pivot{background:var(--gold-soft);color:#6b5725}.inline-marker-chip.is-target{background:var(--coral-soft);color:#814138}.inline-marker-chip:hover{filter:brightness(.97)}.inline-marker-chip:focus-visible,.inline-marker-chip[aria-pressed=true]{outline:2px solid var(--coral);outline-offset:2px}.rule-box{--chip-background:var(--status-info-surface);--chip-border:var(--status-info-border);--chip-text:var(--status-info-ink);--chip-muted:var(--ink-soft)}.unit-checks>div>div{--chip-background:#e5ede2;--chip-border:#6f876f57;--chip-text:#304032;--chip-muted:#697267}.scope-note{--chip-background:#f3e8b4;--chip-border:#a0842a57;--chip-text:#5d4f1e;--chip-muted:#827343}.reasoning-box{--chip-background:var(--status-info-surface);--chip-border:var(--status-info-border);--chip-text:var(--status-info-ink);--chip-muted:var(--ink-soft)}.stage-view-button{border:1px solid var(--line);background:var(--surface-raised);width:32px;height:32px;color:var(--ink-soft);border-radius:50%;place-items:center;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-grid}.stage-view-button:hover{border-color:var(--coral);background:var(--surface-active);color:var(--coral);transform:translateY(-1px)}.stage-view-button.is-active{border-color:var(--coral);background:var(--coral-soft);color:var(--coral);box-shadow:0 2px 6px #4639271a}.return-to-explanation{border:1px solid var(--line);background:var(--surface-raised);width:fit-content;min-height:40px;color:var(--ink);border-radius:999px;justify-content:center;align-items:center;gap:7px;margin:13px auto 0;padding:7px 12px;font-size:.75rem;font-weight:800}.further-copy{border-bottom:1px solid var(--explanation-subline);width:100%;max-width:none;margin-top:0}.further-copy>.further-faq:first-child{border-top:0}.further-faq{border-top:1px solid var(--explanation-subline)}.further-faq h3{margin:0}.further-faq h3>button{color:#454139;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-height:48px;padding:13px 2px 13px 0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.76rem;font-weight:800;line-height:1.45;display:grid}.further-faq h3>button:hover{color:var(--coral)}.further-faq h3>button:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:7px}.further-faq h3>button svg{color:#817a6e;transition:color .15s,transform .18s}.further-faq.is-open h3>button svg{color:var(--coral);transform:rotate(90deg)}.further-answer{padding:0 34px 16px 0}.further-answer p{color:#5a554c;margin:0;font-size:.82rem;line-height:max(1.58em,28px)}@container explanation (width<=520px){.application-heading-row{align-items:center}.explorer-variant-tabs{align-self:auto}.further-faq h3>button{gap:10px;padding-block:12px}.further-answer{padding-right:24px}}@container explanation (width<=350px){.application-heading-row{flex-direction:column;align-items:flex-start}}.notes-grid{border-top:1px solid var(--line);background:0 0;grid-template-columns:1fr 1fr;gap:14px 20px;margin-top:0;padding:18px 0 20px;display:grid}.notes-title{color:#565147;letter-spacing:.12em;text-transform:uppercase;grid-column:1/-1;font-size:.66rem;font-weight:800}.notes-grid>div{grid-template-columns:22px 1fr;align-items:start;gap:10px;display:grid}.note-icon{color:#587058;border:1px solid #6f876f80;border-radius:50%;place-items:center;width:21px;height:21px;font-size:.68rem;font-weight:900;display:grid}.notes-grid>div:last-child .note-icon{color:var(--coral);border-color:#d956437a}.notes-grid strong{color:#302e29;font-size:.76rem}.notes-grid p{color:#615c53;margin:3px 0 0;font-size:.72rem;line-height:1.5}.game-control-flow{gap:12px}.game-control-group+.game-control-group,.game-resolution-section{padding-top:12px}.game-control-heading p{min-height:0;margin-bottom:14px;font-size:.82rem;line-height:1.55}.game-sidebar-score,.game-new-session-content>p,.game-analysis-message p,.game-unique-note span,.game-complete span{font-size:.72rem}.game-sidebar-session-title small,.game-sidebar-session dt,.game-sidebar-pause kbd,.game-new-session-heading small,.game-entry-shortcuts kbd,.game-shortcut-disclosure,.game-sidebar-ranking-identity small,.game-sidebar-ranking-headline small,.game-sidebar-ranking-player small,.game-control-group-label,.game-control-heading>span,.game-analysis-panel>header>span,.game-analysis-panel>header button,.game-analysis-panel>footer button,.game-analysis-panel>footer>span{font-size:.63rem}.game-sidebar-session-title strong,.game-sidebar-session dd,.game-sidebar-pause,.game-new-session-heading strong,.game-sidebar-new-session .game-new-session-content>p,.game-entry-shortcuts dd,.game-sidebar-ranking-identity strong,.game-sidebar-ranking-headline strong,.game-sidebar-ranking-player strong,.game-sidebar-ranking-points,.game-sidebar-high-scores,.game-difficulty button,.game-secondary-tools button,.game-new-session summary>span,.game-new-session summary>small,.game-notes-toggle small,.game-resolution-toggle small,.game-analysis-toggle small,.game-high-score-notice,.game-entry-console .game-secondary-tools button,.game-unique-note strong,.game-complete strong{font-size:.7rem}.game-sidebar-rank,.game-sidebar-new-session .game-difficulty button,.game-difficulty-copy small{font-size:.58rem}.game-difficulty-copy strong{font-size:.68rem}.game-notes-toggle strong,.game-resolution-toggle strong,.game-analysis-toggle strong{font-size:.75rem}.game-progress-toggle strong{font-size:.8rem}.game-progress-toggle small{font-size:.73rem}.game-analysis-message strong{font-size:.88rem}.practice-selection small,.practice-solution-step>strong,.practice-secondary-actions button{font-size:.68rem}.practice-hints,.practice-feedback p,.practice-solution-heading,.practice-solution-step p{font-size:.8rem}.practice-actions button,.practice-secondary-actions button{font-size:.72rem}.high-score-result span,.high-score-awaiting span,.high-score-ineligible span,.high-score-form small,.high-score-calculation p,.high-score-player small,.high-score-empty,.high-score-empty.is-error button{font-size:.64rem}.high-score-awaiting strong,.high-score-ineligible strong,.high-score-form label,.high-score-form button,.high-score-new-game,.high-score-calculation summary,.high-score-filter button,.high-score-ranking-header>strong,.high-score-player>strong{font-size:.7rem}.high-score-result p,.high-score-form input{font-size:.72rem}@keyframes motif-reveal{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes logic-pulse{0%{transform:scale(.94)}45%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes target-reveal{0%{opacity:.25;transform:scale(.9)}55%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes candidate-strike{0%{opacity:0;transform:rotate(-35deg)scaleX(0)}to{opacity:1;transform:rotate(-35deg)scaleX(1)}}@keyframes value-place{0%{opacity:0;transform:scale(.45)}65%{opacity:1;transform:scale(1.16)}to{opacity:1;transform:scale(1)}}@keyframes game-placement-value-pop{0%{transform:scale(.58)rotate(-5deg)}58%{transform:scale(1.28)rotate(2deg)}to{transform:scale(1)}}@keyframes game-placement-bloom{0%{opacity:0;transform:translate(-50%,-50%)scale(.18)}34%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes game-placement-digit{0%{opacity:1;transform:translate(-50%,-50%)scale(.72)rotate(-5deg)}42%{opacity:1;transform:translate(-50%,-50%)scale(1.16)rotate(2deg)}76%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes game-placement-spark{0%{opacity:0;transform:rotate(var(--spark-angle)) translateY(-5px) scaleY(.35)}24%{opacity:1}to{opacity:0;transform:rotate(var(--spark-angle)) translateY(calc(var(--burst-distance) * -1)) scaleY(.18)}}@keyframes game-placement-mistake{0%{opacity:0;transform:scale(.9);box-shadow:inset 0 0 #0000}32%{opacity:.82;box-shadow:inset 0 0 0 3px var(--status-danger-border);transform:scale(1)}to{opacity:0;box-shadow:inset 0 0 0 1px var(--status-danger-border);transform:scale(1)}}@keyframes logic-link-draw{to{stroke-dashoffset:0}}@keyframes logic-node-appear{0%{opacity:0;transform-origin:50%;transform:scale(.7)}to{opacity:1;transform-origin:50%;transform:scale(1)}}@media (width>=901px){.board-panel{align-self:start;position:sticky;top:0}.workbench[data-learning-mode=game] .technique-index{overflow:visible}}@media (width<=1450px){.lesson-header-actions{gap:8px}}@media (width<=1050px) and (width>=641px){.lesson-topline{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.lesson-title-row{grid-area:1/2;justify-self:center;max-width:clamp(132px,19vw,190px)}.lesson-topline>.learning-mode-switch{grid-area:1/1;justify-self:start}.lesson-header-actions{grid-area:1/3;justify-self:stretch}.learning-mode-switch{border-radius:8px;min-height:32px;padding:1px}.learning-mode-switch button{border-radius:6px;gap:4px;min-height:28px;padding:4px 6px;font-size:.68rem}.lesson-nav{border-radius:8px;padding:1px}.lesson-nav button,.lesson-nav .fullscreen-toggle{border-radius:6px;width:28px;height:28px}}@media (width<=1180px){.workbench{grid-template-columns:210px minmax(0,1fr)}.technique-index{padding-inline:10px}.lesson{padding-inline:28px}.lesson-grid,.game-shell{grid-template-columns:minmax(390px,1fr) minmax(280px,.82fr);gap:28px}.lesson-topline,.lesson-header-actions{align-items:center}.notes-grid{grid-template-columns:1fr}.notes-title{grid-column:1}}@media (width>=901px) and (width<=1000px){.lesson-grid,.game-shell{grid-template-columns:1fr}.game-controls{margin-top:0}.board-panel{position:static}}@media (width<=900px){.workbench{width:100%;height:100dvh;display:block;overflow-y:auto}.workbench:fullscreen{width:100%;height:100dvh;display:block;overflow-y:auto}.lesson{height:auto;overflow:visible}.workbench:fullscreen .lesson{height:auto;overflow:visible}.technique-index{z-index:30;border-right:1px solid var(--line);border-bottom:0;width:min(88vw,360px);height:100dvh;padding:0 16px 24px;display:none;position:fixed;inset:0 auto 0 0;overflow-y:auto;box-shadow:18px 0 44px #27251f2e}.workbench:fullscreen .technique-index{height:100dvh;overflow-y:auto}.technique-index.is-mobile-open{display:block}.mobile-menu-backdrop{z-index:25;background:#27251f57;border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}.mobile-index-header{z-index:2;border-bottom:1px solid var(--line);background:var(--surface-navigation);min-height:58px;color:var(--ink);letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0 -16px 12px;padding:0 16px;font-size:.76rem;font-weight:850;display:flex;position:sticky;top:0}.mobile-index-header button{background:var(--surface-active);border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:inline-grid}.technique-list{grid-template-columns:1fr}.technique-link{min-height:44px;padding-block:8px}.mobile-technique-trigger{border:1px solid var(--line);background:var(--surface-navigation);min-height:40px;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.lesson{padding:16px 24px 42px}.lesson-title-row{align-items:center;gap:12px;min-width:0;display:flex}.lesson-topline{gap:10px}.lesson-header-actions{justify-content:flex-end}.lesson-grid{grid-template-columns:1fr}.game-shell{grid-template-columns:1fr;gap:26px;margin-top:18px}.game-controls{margin-top:0;padding-top:0}.game-session-controls{display:block}.game-sidebar-session-header{align-items:flex-start}.game-session-actions{flex-direction:column;align-items:flex-end}.grid-frame{width:min(100%,650px);margin-inline:auto}.legend{justify-content:center;margin-left:26px}.explanation-panel{margin-top:14px}.category-guide{padding-top:40px}.category-guide-hero{grid-template-columns:1fr;align-items:start;gap:30px}.category-definition{max-width:680px}.return-to-explanation{display:inline-flex}.notes-grid{grid-template-columns:repeat(2,1fr)}.notes-title{grid-column:1/-1}}@media (width<=640px){.technique-index{padding:0 16px 24px}.technique-list{grid-template-columns:1fr}.lesson{padding-inline:16px}.lesson-topline{grid-template-columns:1fr;align-items:start;gap:12px}.lesson-title-row,.lesson-topline>.learning-mode-switch,.lesson-header-actions{grid-area:auto/1}.lesson-topline>.learning-mode-switch{justify-self:stretch;width:100%}.lesson-header-actions{flex-wrap:wrap;justify-content:flex-end;justify-self:stretch;align-items:start;gap:8px;width:100%;display:flex}.learning-mode-switch{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.learning-mode-switch button{width:100%;min-height:36px;padding-inline:5px}.learning-mode-switch button span{text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.workbench[data-learning-mode=game] .lesson{height:100%;padding:max(6px, env(safe-area-inset-top)) 10px max(6px, env(safe-area-inset-bottom));grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.workbench[data-learning-mode=game]{overscroll-behavior:none;height:100dvh;overflow:hidden}.workbench[data-learning-mode=game] .lesson-topline{grid-template-columns:minmax(0,1fr) auto;gap:7px 8px;min-height:0;padding:0 0 5px}.workbench[data-learning-mode=game] .lesson-title-row{grid-area:1/1;justify-self:start;gap:0}.workbench[data-learning-mode=game] .lesson-identity,.workbench[data-learning-mode=game] .lesson-topline>.learning-mode-switch{display:none}.game-mobile-mode-menu{border-bottom:1px solid var(--line);gap:7px;margin-bottom:12px;padding-bottom:12px;display:grid}.game-mobile-mode-menu>span{color:var(--ink-soft);letter-spacing:.09em;text-transform:uppercase;font-size:.56rem;font-weight:850}.game-drawer-mode-switch{min-height:34px;padding:2px}.game-drawer-mode-switch button{min-height:30px;padding-block:4px}.workbench[data-learning-mode=game] .lesson-header-actions{grid-area:1/2;width:auto}.workbench[data-learning-mode=game] .mobile-technique-trigger{min-height:32px;padding:5px 8px}.workbench[data-learning-mode=game] .lesson-nav{padding:1px}.workbench[data-learning-mode=game] .lesson-nav button,.workbench[data-learning-mode=game] .lesson-nav .fullscreen-toggle{border-radius:6px;width:30px;height:30px}.game-shell{grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:5px;height:100%;min-height:0;margin-top:5px;overflow:hidden}.game-board-panel{place-items:center;height:100%;min-height:0;display:grid;overflow:hidden;container-type:size}.game-grid-wrap{--game-grid-label-column:21px;--game-grid-label-row:18px;width:min(100%, calc(100dvh - 278px - env(safe-area-inset-top) - env(safe-area-inset-bottom)));min-width:0;margin-inline:0}.game-shell[data-play-variant=rush] .game-grid-wrap{width:min(100%, calc(100dvh - 365px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}@supports (width:1cqh){.game-grid-wrap,.game-shell[data-play-variant=rush] .game-grid-wrap{width:min(100cqw,100cqh)}}.game-controls,#game-controls-panel{min-height:0}.game-controls{margin-top:0}.game-control-flow{grid-template-columns:104px minmax(0,1fr);align-items:stretch;gap:5px}.game-control-flow>.game-variant-switch{grid-area:2/1}.game-control-flow>.game-session-controls{grid-area:2/2}.game-control-flow>.game-entry-section{order:-1;grid-area:1/1/auto/-1}.game-variant-switch{border-radius:9px}.game-variant-switch button{gap:3px;min-height:32px;padding:4px 3px;font-size:.56rem}.game-sidebar-session{border-radius:9px;gap:0;height:100%;padding:4px 6px}.game-sidebar-session-card{border-radius:10px;gap:5px;padding:5px}.game-sidebar-session-card .game-sidebar-session{height:auto;padding:1px}.game-sidebar-session-header,.game-session-actions{align-items:center;height:100%}.game-session-actions{flex-direction:row}.game-sidebar-session-title{gap:5px}.game-sidebar-session-icon{border-radius:7px;width:26px;height:26px}.game-sidebar-session-title small,.game-sidebar-rank{display:none}.game-sidebar-session-title strong{font-size:.63rem}.game-sidebar-new-session summary{gap:4px;min-height:30px;padding:4px 6px}.game-sidebar-controls .game-sidebar-new-session .game-new-session-content{z-index:60;top:auto;right:8px;bottom:max(8px, env(safe-area-inset-bottom));width:auto;max-height:calc(100dvh - max(16px, env(safe-area-inset-top)) - max(16px, env(safe-area-inset-bottom)));overscroll-behavior:contain;box-shadow:0 24px 60px var(--ink);border-radius:16px;position:fixed;left:8px;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.game-sidebar-controls .game-sidebar-new-session .game-new-session-content{box-shadow:0 24px 60px color-mix(in srgb, var(--ink) 28%, transparent)}}.game-sidebar-controls .game-sidebar-new-session .game-new-session-content:before{display:none}.game-new-session-heading{gap:4px}.game-new-session-heading strong{font-size:.54rem}.game-entry-section{box-shadow:0 6px 18px var(--ink);border-radius:12px;gap:4px;padding:6px}@supports (color:color-mix(in lab, red, red)){.game-entry-section{box-shadow:0 6px 18px color-mix(in srgb, var(--ink) 6%, transparent)}}.game-play-status{min-height:28px;padding-bottom:3px}.game-play-status dl{gap:16px}.game-play-status dt{font-size:.48rem}.game-play-status dd{font-size:.74rem}.game-play-pause{border-radius:8px;width:28px;height:28px}.game-quick-tools>button{min-height:34px;padding-block:4px}.game-number-pad{border-radius:10px;grid-template-columns:repeat(9,minmax(0,1fr));gap:1px}.game-number-pad button{min-height:40px;padding:5px 3px}.game-number-value{font-size:1.18rem}.game-number-remaining{font-size:.54rem;bottom:3px;right:3px}.game-entry-console[data-notes-mode=true] .game-number-pad button{padding:5px 3px}.game-entry-shortcuts{display:none}.rush-hud{gap:6px;padding-bottom:6px}.rush-hud-primary{min-height:38px}.rush-timer strong{font-size:1.55rem}.rush-score>strong{font-size:1.35rem}.rush-rhythm{padding-block:2px}#game-scores-panel,.game-resolution-section{z-index:45;right:8px;bottom:max(8px, env(safe-area-inset-bottom));overscroll-behavior:contain;border:1px solid var(--ui-panel-border);background:var(--surface-canvas);max-height:min(68dvh,590px);box-shadow:0 24px 60px var(--ink);border-radius:16px;padding:14px;position:fixed;left:8px;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){#game-scores-panel,.game-resolution-section{box-shadow:0 24px 60px color-mix(in srgb, var(--ink) 28%, transparent)}}#game-scores-panel{padding-top:14px}.game-scores-close{float:right;margin:0 0 8px 8px;position:sticky;top:0}.game-resolution-section{border-top:1px solid var(--ui-panel-border);padding-top:12px}.game-resolution-sheet-heading{z-index:2;border-bottom:1px solid var(--line);background:var(--surface-canvas);margin:-12px -14px 10px;padding:10px 14px 8px;position:sticky;top:-12px}.game-quick-tool-icon{width:20px;height:20px}.game-quick-tools>button{gap:4px;padding-inline:4px}.game-quick-tools>button>strong{font-size:.59rem}.game-secondary-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.game-secondary-tools button{min-height:46px}.game-progress-panel{gap:8px;padding:10px}.game-progress-header-actions button{width:32px;height:32px}.game-progress-list{max-height:158px}.progress-modal-backdrop{align-items:end;padding:0}.progress-dialog{border-bottom:0;border-left:0;border-right:0;border-radius:18px 18px 0 0;width:100%;max-height:94vh}.progress-dialog>header{gap:14px;padding:20px 18px 15px}.progress-dialog-toolbar,.progress-dialog-note,.progress-method-groups{padding-inline:18px}.progress-method-group>div{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-dialog>footer{padding:12px 18px max(16px, env(safe-area-inset-bottom))}.progress-dialog>footer button{flex:1 1 0}.lesson-identity h1{font-size:1rem}.explanation-panel{padding:0}.principle-lead{margin-left:0}.rule-box,.steps-block,.notes-grid{padding-inline:0}.notes-grid{grid-template-columns:1fr}.notes-title{grid-column:1}.grid-frame{grid-template-rows:18px minmax(0,1fr);grid-template-columns:22px minmax(0,1fr)}.candidate-grid{font-size:clamp(.42rem,2.3vw,.64rem)}.cell-label{background:#fffdf7d1;border-radius:2px;padding:1px 2px;font-size:.36rem;line-height:1;top:1px;left:1px}.lesson-nav{grid-template-columns:repeat(5,40px);padding:2px}.lesson-nav button,.lesson-nav .fullscreen-toggle{width:40px;height:40px}.explanation-step-body{grid-template-columns:minmax(0,1fr) 42px;gap:12px}.stage-view-button{width:40px;height:40px}.practice-digit-pad{gap:4px}.practice-digit-pad button{border-radius:6px;height:42px}.practice-actions{align-items:stretch}.practice-actions button{flex:1 1 0}.lesson-glossary dl>div{grid-template-columns:1fr;gap:2px}.category-guide{padding-top:32px}.category-guide-hero h2{font-size:clamp(2rem,12vw,3.15rem)}.category-definition{padding:17px 0 0 18px}.category-model,.category-example-grid,.category-method-grid{grid-template-columns:1fr}.category-model article{min-height:0;padding-block:20px}.category-model article+article{border-top:0;border-left:0}.category-model-arrow{top:auto;bottom:-9px;right:50%;transform:translate(50%)rotate(90deg)}.category-example{min-height:0}.category-example-flow{flex-direction:column}.category-example-flow>span{grid-template-columns:minmax(0,1fr);display:grid}.category-example-flow svg{margin:-1px auto -3px;transform:rotate(90deg)}.category-method-card,.category-method-card:nth-child(odd){border-right:0;min-height:0}}@media (width<=480px){.game-number-pad{grid-template-columns:repeat(10,minmax(0,1fr))}.game-number-pad button{grid-column:span 2;min-height:38px}.game-number-pad button:nth-child(6){grid-column:2/span 2}}@media (width<=420px){.lesson-header-actions{grid-template-columns:1fr}.lesson-nav{grid-column:1;justify-self:end}.learning-mode-switch button svg{display:none}.learning-mode-switch button span{font-size:.74rem}.practice-digit-pad{grid-template-columns:repeat(3,minmax(0,1fr))}.game-number-pad button{min-height:38px}.game-number-value{font-size:1.14rem}.game-entry-shortcuts dl{grid-template-columns:1fr}.game-quick-tools{gap:2px}.game-quick-tool-icon{width:22px;height:22px}.game-progress-list button{grid-template-columns:minmax(0,1fr);align-items:start;gap:2px}.game-progress-list button>small{white-space:normal}.practice-selection{grid-template-columns:1fr}.practice-selection>span+span{border-left:0;border-top:1px solid var(--line)}}@media (width<=900px) and (height<=600px) and (orientation:landscape){.workbench[data-learning-mode=game]{overscroll-behavior:none;height:100dvh;overflow:hidden}.workbench[data-learning-mode=game] .lesson{height:100%;padding:max(5px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(5px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.workbench[data-learning-mode=game] .lesson-topline{min-height:34px;padding-bottom:4px}.game-shell{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(250px,.78fr);align-items:start;gap:10px;height:100%;min-height:0;margin-top:4px;overflow:hidden}.game-board-panel{place-items:center;height:100%;min-height:0;display:grid}.game-grid-wrap,.game-shell[data-play-variant=rush] .game-grid-wrap{--game-grid-label-column:18px;--game-grid-label-row:16px;width:min(100%, calc(100dvh - 58px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.game-controls{max-height:100%;margin-top:0;overflow:hidden}.game-control-flow{gap:4px}.game-entry-section{gap:3px;padding:5px}.game-shell[data-play-variant=rush] .rush-hud-primary{min-height:34px}.game-shell[data-play-variant=rush] .rush-rhythm{padding-block:2px}#game-scores-panel,.game-resolution-section{max-height:calc(100dvh - 16px)}}html[data-theme=dark]{--paper:#13181c;--sheet:#1a2025;--surface-canvas:#1a2025;--surface-navigation:#20272d;--surface-raised:#222a30;--surface-interactive:#29323a;--surface-active:#33404a;--surface-hover:#ffffff0f;--ink:#f3f5f6;--ink-soft:#c1cbd1;--line:#46545e;--line-dark:#c9d2d7;--coral:#e58d7d;--coral-soft:#603834;--sage:#9fc49a;--sage-soft:#2d4935;--blue-soft:#294b60;--gold-soft:#5a4a20;--status-success-surface:#293d2b;--status-success-border:#668564;--status-success-ink:#cce2c5;--status-warning-surface:#51441f;--status-warning-border:#b89a4c;--status-warning-ink:#f2dca0;--status-danger-surface:#3d2726;--status-danger-border:#864e47;--status-danger-ink:#ffc1b7;--status-info-surface:#263e4e;--status-info-border:#5a7d91;--status-info-ink:#c7dde7;--selection-surface:#5b4920;--selection-border:#c2a14f;--toggle-track:#3a4852;--toggle-thumb:#d7e3e7;--text-on-accent:#f5fbfd;--control-shadow:0 1px 0 #ffffff06, 0 8px 18px #0000001f;--overlay-surface:#121c23eb;--overlay-border:#8bb4c833;--overlay-ink:#cbe1eb;--scrim:#0a0908b3;--celebration-surface:linear-gradient(145deg, #2d2a25 0%, #24211d 100%);--celebration-border:#806b2e;--celebration-glow:#806b2e6b;--celebration-stat-line:#e0c57038;--celebration-emphasis:#f1d985;--celebration-control:#34302a;--accent-surface:#263e4e;--accent-surface-strong:#31586c;--accent-border:#6691a6;--accent-ink:#d2e7ef;--accent-muted:#aec6d1;--ui-accent:#8bb4c8;--ui-accent-hover:#b0d1de;--ui-accent-soft:#263e4e;--ui-accent-subtle:#1e2b33;--ui-accent-border:#4f7183;--ui-panel:#222a30;--ui-panel-strong:#29323a;--ui-panel-muted:#252e35;--ui-panel-border:#46545e;--ui-divider:#46545e;--ui-icon-bg:#263e4e;--ui-focus:#8bb4c86b;--mode-explore:#466f87;--mode-practice:#5c745c;--mode-game:#a84f38;--game-primary-action-surface:#d7e3e7;--game-primary-action-hover:#f5fbfd;--game-primary-action-border:#d7e3e7;--game-primary-action-ink:#263e4e;--rush-rhythm-start:#27c8ff;--rush-rhythm-middle:#3de983;--rush-rhythm-end:#ffda4d;--rush-rhythm-glow:#3de98370;--shadow:0 20px 54px #00000061;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=dark] .workbench[data-learning-mode=game]{--ui-accent:#e09a7f;--ui-accent-hover:#f1b59f;--ui-accent-soft:#4b302a;--ui-accent-subtle:#2c2522;--ui-accent-border:#795044;--ui-icon-bg:#4b302a;--ui-focus:#e09a7f6b;--game-primary-action-surface:#e09a7f;--game-primary-action-hover:#f1b59f;--game-primary-action-border:#e09a7f;--game-primary-action-ink:#34231f}html[data-theme=dark] .category-guide-hero-copy>p,html[data-theme=dark] .category-practical-use>p,html[data-theme=dark] .category-model p,html[data-theme=dark] .category-example>p:not(.category-example-conclusion),html[data-theme=dark] .category-method-copy>span:not(.category-method-meta),html[data-theme=dark] .principle-lead,html[data-theme=dark] .application-intro,html[data-theme=dark] .step-copy>p,html[data-theme=dark] .further-answer p,html[data-theme=dark] .notes-grid p,html[data-theme=dark] .game-secondary-tools button,html[data-theme=dark] .practice-secondary-actions button{color:var(--ink-soft)}html[data-theme=dark] .sudoku-grid,html[data-theme=dark] .game-grid{background:var(--sheet)}html[data-theme=dark] .game-cell-notes i,html[data-theme=dark] .candidate-grid,html[data-theme=dark] .context-tracked .candidate-grid,html[data-theme=dark] .grid-frame[data-show-context=true] .sudoku-cell:not(.is-anchor):not(.is-link):not(.is-pivot):not(.is-target) .candidate-grid{color:#c4bcb0}html[data-theme=dark] .game-inline-cell-chip{background:#30383d;box-shadow:inset 0 0 0 1px #51616a}html[data-theme=dark] .game-inline-column,html[data-theme=dark] .game-inline-unit-chip.is-column{background:var(--status-info-surface);color:var(--status-info-ink)}html[data-theme=dark] .game-inline-row,html[data-theme=dark] .game-inline-unit-chip.is-row{color:#ffc2b8;background:#4b302e;border-color:#67413d}html[data-theme=dark] .game-inline-unit-chip.is-box{color:#c4e3c5;background:#304536}html[data-theme=dark] .game-inline-digit-chip{color:#f5dfa2;background:#55481e;box-shadow:inset 0 0 0 1px #8b7739}html[data-theme=dark] .practice-solution-step p,html[data-theme=dark] .practice-solution-step>strong{color:#d1e3cd}html[data-theme=dark] .practice-solution-step.is-result,html[data-theme=dark] .explanation-step.is-active{background:linear-gradient(90deg,#6691a647,#0000 72%)}html[data-theme=dark] .practice-prompt,html[data-theme=dark] .practice-selection strong,html[data-theme=dark] .lesson-glossary dt,html[data-theme=dark] .further-faq h3>button,html[data-theme=dark] .notes-grid strong,html[data-theme=dark] .category-method-copy>strong,html[data-theme=dark] .game-analysis-message strong{color:var(--ink)}html[data-theme=dark] .practice-selection small,html[data-theme=dark] .lesson-glossary,html[data-theme=dark] .lesson-glossary summary,html[data-theme=dark] .notes-title,html[data-theme=dark] .game-analysis-panel>header>span{color:var(--ink-soft)}html[data-theme=dark] .inline-cell-chip{--chip-background:var(--surface-interactive);--chip-border:var(--line);--chip-text:var(--ink);--chip-muted:var(--ink-soft)}html[data-theme=dark] .coordinate-row,html[data-theme=dark] .inline-unit-chip.is-row{color:#ffb7aa;background:#58312d}html[data-theme=dark] .coordinate-column,html[data-theme=dark] .inline-unit-chip.is-column{background:var(--status-info-surface);color:var(--status-info-ink)}html[data-theme=dark] .inline-digit-chip,html[data-theme=dark] .inline-cell-chip[aria-pressed=true]{background:var(--accent-surface-strong);color:var(--accent-ink)}html[data-theme=dark] .inline-cell-chip[aria-pressed=true] .coordinate-row,html[data-theme=dark] .inline-unit-chip.is-row[aria-pressed=true]{background:#794039}html[data-theme=dark] .inline-cell-chip[aria-pressed=true] .coordinate-column,html[data-theme=dark] .inline-unit-chip.is-column[aria-pressed=true]{background:var(--accent-surface-strong)}html[data-theme=dark] .inline-marker-chip.is-anchor{color:#c6e5c0}html[data-theme=dark] .inline-marker-chip.is-link{color:var(--status-info-ink)}html[data-theme=dark] .inline-marker-chip.is-pivot{color:var(--accent-ink)}html[data-theme=dark] .inline-marker-chip.is-target{color:#ffc2b8}html[data-theme=dark] .rule-box{--chip-background:var(--status-info-surface);--chip-border:var(--status-info-border);--chip-text:var(--status-info-ink);--chip-muted:var(--ink-soft)}html[data-theme=dark] .unit-checks>div>div{--chip-background:#2b3f2d;--chip-border:#9bbf9561;--chip-text:#d0e8cb;--chip-muted:#b5c8b1}html[data-theme=dark] .scope-note{--chip-background:var(--status-warning-surface);--chip-border:var(--status-warning-border);--chip-text:var(--status-warning-ink);--chip-muted:var(--ink-soft)}html[data-theme=dark] .reasoning-box{--chip-background:var(--status-info-surface);--chip-border:var(--status-info-border);--chip-text:var(--status-info-ink);--chip-muted:var(--ink-soft)}html[data-theme=dark] .logic-path-overlay line{filter:drop-shadow(0 1px 1px #000000bf)}html[data-theme=dark] .logic-path-overlay line.is-weak{stroke:#ebb078}html[data-theme=dark] .logic-path-halo,html[data-theme=dark] .logic-path-order-badge circle{fill:var(--surface-raised)}html[data-theme=dark] .logic-path-order-badge text{fill:var(--status-info-ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.completion-confetti{display:none}}@media print{body{background:#fff;height:auto;overflow:visible}.technique-index,.lesson-nav,.fullscreen-toggle,.mobile-technique-trigger,.mobile-menu-backdrop,.return-to-explanation{display:none!important}.workbench{width:100%;height:auto;box-shadow:none;border:0;display:block}main{height:auto}.lesson{padding:0}.lesson-grid{grid-template-columns:58% 42%;gap:24px}.legend-context-toggle{display:none}.sudoku-cell,.rule-box{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@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}
