:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f1f2f6;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#111217;--surface:#1b1d25;--surface-hover:#252834;--line:#30323d;--text:#f1f2f6;--muted:#9699ab;--accent:#7bafff;--accent-ink:#111d32;--coral:#f69d8b;--blue:#8cb6ff;--violet:#bba5f6;--amber:#f3c675;--teal:#7bd5bc;background:#111217;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:300px;margin:0}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}a{color:inherit}button{border:0}h1,h2,h3,p{margin:0}p{line-height:1.65}svg{display:block}button svg{width:22px;height:22px}.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}.app-shell{max-width:940px;min-height:100dvh;margin:0 auto;padding:0 38px 60px}.app-header{z-index:5;justify-content:space-between;align-items:center;gap:16px;height:112px;display:flex;position:relative}.header-context{align-items:center;gap:14px;min-width:0;display:flex}.header-context h1{letter-spacing:-.5px;white-space:nowrap;font-size:19px;font-weight:550}.header-account{align-items:center;gap:10px;margin-left:auto;display:flex;position:relative}.icon-button{border:1px solid var(--line);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.icon-button:hover{background:var(--surface-hover)}.user-button{background:0 0;align-items:center;gap:10px;min-height:46px;padding:3px 0 3px 3px;font-size:13px;display:flex}.avatar{background:var(--surface-hover);border:1px solid var(--line);border-radius:50%;place-items:center;width:37px;height:37px;font-weight:600;display:grid}.user-button>svg{width:14px;height:14px;color:var(--muted)}.username{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.user-menu{background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:230px;max-width:min(310px,100vw - 40px);padding:8px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 16px 60px #0006}.menu-email{color:var(--muted);overflow-wrap:anywhere;border-bottom:1px solid var(--line);margin-bottom:5px;padding:12px;font-size:12px;display:block}.user-menu button{text-align:left;background:0 0;border-radius:9px;width:100%;min-height:46px;padding:10px 12px;font-size:14px;display:block}.user-menu button:hover{background:var(--surface-hover)}.offline-dot{background:var(--amber);border-radius:50%;width:8px;height:8px}.categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:12px 0;display:grid}.category-tile{text-align:left;color:#19202b;border-radius:23px;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:205px;padding:28px;transition:transform .15s,filter .15s;display:flex}.category-tile:hover{filter:brightness(1.05);transform:translateY(-2px)}.category-tile strong{letter-spacing:-1px;font-size:29px;font-weight:650}.category-tile>span{opacity:.75;font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.tile-mental-math{background:var(--coral)}.tile-math-reasoning{background:var(--blue)}.tile-logic{background:var(--violet)}.tile-patterns{background:var(--amber)}.tile-rotation{background:var(--teal)}.accent-mental-math{--accent:var(--coral);--accent-ink:#34201d}.accent-math-reasoning{--accent:var(--blue);--accent-ink:#18243a}.accent-logic{--accent:var(--violet);--accent-ink:#2a213a}.accent-patterns{--accent:var(--amber);--accent-ink:#342b19}.accent-rotation{--accent:var(--teal);--accent-ink:#18332a}.catalog{padding:12px 0}.catalog-heading{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;margin-bottom:28px;font-size:15px;display:flex}.continue-button{align-items:center;display:flex;color:var(--accent)!important;gap:14px!important}.level-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;display:grid}.level-tile{aspect-ratio:1;background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:22px;font-weight:500;display:flex;position:relative}.level-tile:hover{background:var(--surface-hover);border-color:var(--accent)}.level-tile.solved{background:var(--accent-ink);border-color:var(--accent);color:var(--accent)}.solved-mark{font-size:13px;position:absolute;top:9px;right:11px}.level-tile small{color:var(--muted);letter-spacing:1px;font-size:9px;position:absolute;top:8px;left:9px}.level-tile .category-icon{width:20px;height:20px;color:var(--accent);opacity:.8}.primary,.secondary{border-radius:12px;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:12px 21px;font-size:14px;font-weight:600;display:inline-flex}.primary{background:var(--accent);color:var(--accent-ink)}.secondary{background:var(--surface);border:1px solid var(--line);color:var(--text)}.primary:hover{filter:brightness(1.05)}.secondary:hover{background:var(--surface-hover)}.text-button{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;min-height:44px;padding:10px 0;font-size:13px;text-decoration:none;display:inline-flex}.text-button:hover{color:var(--text)}.actions{flex-wrap:wrap;gap:12px;margin:18px 0;display:flex}.puzzle{max-width:650px;margin:8px auto 0}.question{letter-spacing:-.65px;text-align:center;max-width:590px;margin:32px auto;font-size:clamp(21px,3.3vw,30px);font-weight:500;line-height:1.5}.pattern-question{font-variant-numeric:tabular-nums;font-size:46px}.numeric-answer{max-width:360px;margin:32px auto 0}.format-switch{background:var(--surface);border-radius:11px;justify-content:center;gap:4px;width:fit-content;margin:0 auto 18px;padding:4px;display:flex}.format-switch button{min-height:38px;color:var(--muted);background:0 0;border-radius:8px;padding:8px 15px;font-size:12px}.format-switch button[aria-pressed=true]{background:var(--surface-hover);color:var(--text)}label{color:var(--muted);margin:16px 0 8px;font-size:13px;display:block}input:not([type=checkbox]),select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:50px;color:var(--text);font:inherit;border-radius:11px;padding:12px 15px;font-size:16px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.numeric-answer input{text-align:center;font-variant-numeric:tabular-nums;min-height:62px;font-size:26px}.answer-unit{text-align:center;color:var(--muted);margin-top:12px;font-size:11px;display:block}.fraction-input{border:0;align-items:center;gap:15px;margin:0;padding:0;display:flex}.fraction-input label{flex:1;min-width:0;margin:0}.fraction-input>span{color:var(--muted);font-size:27px}.check-button{min-width:150px;margin:26px auto 0;display:flex}.puzzle-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:55px;margin:24px 0 0;padding-top:20px;display:flex}.answer-feedback{font-size:14px}.solved-text{color:var(--teal)}.wrong-text{color:var(--coral)}.next-button{color:var(--muted)}.next-button.ready{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.puzzle-tools{justify-content:center;gap:22px;margin:20px 0;display:flex}.puzzle-tools button{color:var(--muted);background:0 0;min-height:44px;padding:6px 0;font-size:12px}.puzzle-tools button:hover{color:var(--text)}.hints,.solution{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:12px;margin:15px 0;padding:18px;font-size:13px}.hints p+p{margin-top:10px}.answer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:25px 0;display:grid}.answer-option{background:var(--surface);border:1px solid var(--line);min-height:66px;color:var(--text);border-radius:14px;padding:15px;font-size:23px}.answer-option:hover{border-color:var(--muted)}.answer-option.selected,.shape-choice.selected{border-color:var(--accent);background:var(--accent-ink);box-shadow:inset 0 0 0 1px var(--accent)}.shape-options{gap:14px}.reference-shape{width:190px;color:var(--accent);margin:20px auto 30px}.cell-shape{width:100%;height:155px;color:var(--accent);overflow:visible}.reference-shape .cell-shape{height:180px}.shape-choice{border:1px solid var(--line);background:var(--surface);border-radius:15px;padding:12px 15px 4px;position:relative}.shape-choice .cell-shape{height:140px}.shape-select{width:100%;min-height:44px;color:var(--muted);background:0 0;justify-content:space-between;align-items:center;padding:8px 2px;font-size:12px;display:flex}.shape-select:after{content:"";border-radius:15px;position:absolute;inset:0}.selection-dot{border:1px solid var(--line);border-radius:50%;width:15px;height:15px}.selected .selection-dot{background:var(--accent);border:4px solid var(--accent-ink);box-shadow:0 0 0 1px var(--accent)}.voxel-view{position:relative}.rotate-view{z-index:2;background:var(--surface-hover);min-width:44px;min-height:44px;color:var(--accent);border-radius:50%;font-size:24px;position:absolute;bottom:0;right:0}.machine-examples{flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0;display:flex}.machine-examples>div{background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:12px;align-items:center;gap:15px;padding:15px 20px;font-size:18px;display:flex}.machine-examples>div>span:nth-child(2){color:var(--muted)}.machine-examples details{text-align:center;flex-basis:100%;font-size:11px}.machine-examples details p{max-width:400px;margin:0 auto}.logic-clues{flex-wrap:wrap;justify-content:center;gap:10px;margin:25px 0 10px;display:flex}.logic-clue{background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:center;align-items:center;gap:13px;min-width:120px;padding:10px 14px;font-size:19px;display:flex}.person-token{background:var(--accent-ink);width:31px;height:31px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:650;display:inline-grid}.logic-key{text-align:center;font-size:11px}.logic-key p{text-align:left;max-width:450px;margin:10px auto}.assignment-grid{justify-content:space-around;gap:5px;display:flex}.assignment-person{flex-direction:column;align-items:center;gap:10px;font-size:15px;display:flex}.assignment-person>span:nth-child(2){font-variant-numeric:tabular-nums}.sprint-panel{border-radius:20px;max-width:550px;margin:25px auto;padding:20px 0;transition:background .12s}.mode-switch{background:var(--surface);border-radius:12px;justify-content:center;gap:5px;width:fit-content;margin:auto;padding:5px;display:flex}.mode-switch button{color:var(--muted);background:0 0;border-radius:9px;min-height:44px;padding:11px 15px;font-size:13px}.mode-switch button[aria-pressed=true]{background:var(--surface-hover);color:var(--text)}.sprint-result{flex-direction:column;align-items:center;gap:13px;padding:65px 0 55px;display:flex}.sprint-result>strong{letter-spacing:-6px;font-variant-numeric:tabular-nums;font-size:110px;font-weight:550;line-height:1.1}.sprint-result>strong>span{color:var(--muted);letter-spacing:0;margin-left:8px;font-size:35px}.sprint-result>span,.sprint-result>p{color:var(--muted);font-size:14px}.sprint-start{justify-content:space-between;min-width:210px;margin:auto;display:flex}.sprint-scoreboard{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.sprint-clock{letter-spacing:-1px;font-size:42px}.sprint-clock small{color:var(--muted);margin-left:4px;font-size:18px}.sprint-count{text-align:right;font-size:28px}.sprint-count small{color:var(--muted);font-size:11px;font-weight:400;display:block}.timer-track{background:var(--line);border-radius:8px;height:4px;margin:20px 12px}.timer-track>div{background:var(--accent);transform-origin:0;border-radius:8px;height:100%}.sprint-question{letter-spacing:-1px;text-align:center;margin:75px 0 45px;font-size:clamp(32px,7vw,54px);font-weight:500;line-height:1.4}.sprint-panel form{max-width:420px;margin:auto}.sprint-panel input{text-align:center;min-height:66px;font-size:30px}.sprint-panel form>.primary{min-width:160px;margin:25px auto;display:flex}.sprint-panel.incorrect{background:#e1686324}.sprint-panel.incorrect input{border-color:var(--coral)}.sprint-panel.correct input{border-color:var(--teal)}.settings{max-width:650px;margin:auto}.practice-panel{border:1px solid var(--line);background:var(--surface);border-radius:17px;margin:15px 0 20px;padding:25px}.practice-panel h2{margin-bottom:18px;font-size:18px;font-weight:550}.practice-panel h3{margin:20px 0 10px;font-size:15px}.practice-panel p{color:var(--muted);overflow-wrap:anywhere;margin:10px 0;font-size:13px}.practice-panel select{background:var(--bg)}.checkbox{align-items:center;gap:12px;min-height:44px;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--accent)}.account-panel{max-width:440px;margin:35px auto}.account-panel .eyebrow{display:none}.account-panel .primary{width:100%;margin-top:22px}.account-panel .muted{font-size:13px}.login-screen{padding-top:10px}.login-screen>a{justify-content:center;display:flex}.error,.notice,.update-banner{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;padding:15px 17px;font-size:13px;display:flex}.error{color:var(--coral);border-color:#bd706866}.error>button,.notice>button{color:inherit;background:0 0;min-width:36px;min-height:36px;font-size:22px}.update-banner button{min-height:44px;color:var(--accent);background:0 0;font-size:13px}.update-banner small{color:var(--muted);flex-basis:100%}details{color:var(--muted);margin:15px 0;font-size:12px}summary{cursor:pointer;min-height:35px;padding:8px 0}details p{margin:8px 0}.file-button{color:var(--muted);border:1px dashed var(--line);border-radius:10px;margin:0;padding:12px;font-size:13px;display:block}.file-button input{margin-top:8px;font-size:12px}.danger{color:var(--coral)}.loading{min-height:50vh;color:var(--muted);place-items:center;font-size:13px;display:grid}.json-editor{min-height:350px;font-family:ui-monospace,monospace;font-size:12px}.pack-list{gap:10px;display:grid}.pack-list .secondary{text-align:left}.validation-ok{color:var(--teal);padding:15px;font-size:13px}.conflict{border-color:var(--amber)}.micro{color:var(--muted);font-size:11px!important}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f8;--surface:#fff;--surface-hover:#ededf3;--line:#dcdde5;--text:#20212b;--muted:#6a6d80;--accent-ink:#edf2fc;background:var(--bg);color:var(--text)}[data-theme=light] .accent-mental-math{--accent-ink:#fbe8e2}[data-theme=light] .accent-math-reasoning{--accent-ink:#eaf0fc}[data-theme=light] .accent-logic{--accent-ink:#eee9fb}[data-theme=light] .accent-patterns{--accent-ink:#fbf1db}[data-theme=light] .accent-rotation{--accent-ink:#e2f4ee}[data-theme=light] .primary,[data-theme=light] .next-button.ready{color:#18212a}[data-theme=light] .person-token{color:#494156}[data-theme=light] .cell-shape{color:#3b6c8c}[data-theme=light] .level-tile.solved{color:#314e68}@media (width<=700px){.app-shell{padding:0 22px 35px}.app-header{height:88px}.categories{gap:13px;padding-top:6px}.category-tile{border-radius:20px;min-height:180px;padding:23px}.category-tile strong{font-size:26px}.level-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.level-tile{border-radius:14px;font-size:20px}.question{margin:25px auto;font-size:23px}.shape-options{gap:11px}.puzzle{margin-top:0}.sprint-question{font-size:40px}.header-context{gap:9px}.header-context h1{font-size:17px}.username{max-width:105px}.reference-shape{width:160px}.reference-shape .cell-shape{height:155px}.shape-choice .cell-shape{height:125px}.practice-panel{padding:21px}.machine-examples>div{gap:10px;padding:13px;font-size:16px}}@media (width<=390px){.app-shell{padding-left:17px;padding-right:17px}.username{display:none}.category-tile{min-height:160px;padding:20px}.category-tile strong{font-size:24px}.category-tile>span{font-size:13px}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.question{font-size:21px}.shape-choice{padding:9px}.mode-switch button{padding:9px 12px;font-size:12px}.sprint-question{font-size:34px}.logic-clue{min-width:108px;padding:9px}.person-token{width:27px;height:27px}.assignment-grid{gap:2px}.machine-examples{gap:7px}.machine-examples>div{gap:8px;padding:11px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.reduce-motion *{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (width<=700px){.accent-rotation .question{margin:16px auto;font-size:20px}.reference-shape{margin:12px auto 20px}.reference-shape .cell-shape{height:130px}.shape-choice .cell-shape{height:100px}.shape-choice{padding:8px 12px 2px}.shape-options{margin:18px 0}.puzzle-tools{margin:12px 0}}.tile-opposites{background:#e9a1cb}.tile-sequences{background:#a9c99b}.tile-matrices{background:#a7b0ef}.tile-paper-folding{background:#e3bd99}.accent-opposites{--accent:#e9a1cb;--accent-ink:#352333}.accent-sequences{--accent:#a9c99b;--accent-ink:#263325}.accent-matrices{--accent:#a7b0ef;--accent-ink:#25293d}.accent-paper-folding{--accent:#e3bd99;--accent-ink:#342a24}.mask-glyph{width:100%;height:100%;min-height:50px;color:var(--accent);display:block}.mask-filled{fill:currentColor}.mask-empty{fill:var(--surface-hover);opacity:.45}.sequence-strip,.fold-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;max-width:600px;margin:24px auto;padding:0;list-style:none;display:grid}.sequence-strip li{background:var(--surface);border:1px solid var(--line);border-radius:10px;min-width:0;padding:9px}.sequence-strip small,.fold-strip small{text-align:center;color:var(--muted);margin-top:6px;font-size:10px;display:block}.missing-frame{place-items:center;min-height:65px;display:grid}.missing-frame strong{color:var(--muted);font-size:32px;font-weight:400}.sequence-strip .missing-frame{grid-template-rows:1fr auto}.matrix-board{grid-template-columns:repeat(3,1fr);gap:6px;width:min(100%,320px);margin:20px auto;display:grid}.matrix-board>div{background:var(--surface);border:1px solid var(--line);aspect-ratio:1;border-radius:9px;padding:9px}.visual-rules{text-align:center;max-width:500px;margin:10px auto;font-size:11px}.visual-rules p{text-align:left;line-height:1.65}.visual-options .answer-option{padding:9px 14px}.visual-options .mask-glyph{height:90px}.option-label{color:var(--muted);text-align:left;margin-top:5px;font-size:11px;display:block}.word-question{margin:60px auto;font-size:clamp(28px,5vw,42px)}.word-options{max-width:520px;margin:45px auto 30px}.word-options .answer-option{overflow-wrap:anywhere;min-height:76px;font-size:18px;line-height:1.3}.fold-strip{justify-content:center;gap:6px;display:flex}.fold-strip li{flex:1;min-width:0;max-width:150px}.paper-glyph{width:100%;height:auto;max-height:145px;display:block}.paper-outline{stroke:var(--muted);stroke-width:.6px;stroke-dasharray:2 2;fill:none;opacity:.45}.paper-sheet{fill:var(--accent);fill-opacity:.2;stroke:var(--accent);stroke-width:1px}.paper-grid{stroke:var(--accent);stroke-width:.3px;opacity:.25}.paper-hole{fill:var(--text);stroke:var(--surface);stroke-width:.5px}.fold-line{stroke:var(--accent);stroke-width:1.4px;stroke-dasharray:3 2}.fold-arrow{fill:none;stroke:var(--text);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}[data-theme=light] .accent-opposites{--accent-ink:#f9e9f2}[data-theme=light] .accent-sequences{--accent-ink:#eaf3e5}[data-theme=light] .accent-matrices{--accent-ink:#edeffc}[data-theme=light] .accent-paper-folding{--accent-ink:#f8eee3}@media (width<=700px){.sequence-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:330px}.sequence-strip .mask-glyph{height:65px}.word-question{margin:45px auto}.word-options .answer-option{min-height:68px;font-size:16px}.visual-options .mask-glyph{height:75px}.matrix-board{max-width:275px}.fold-strip{margin:22px auto}.fold-strip small{font-size:9px}}.tile-opposites strong,.tile-paper-folding strong{overflow-wrap:anywhere;font-size:clamp(18px,4.8vw,29px)}.matrix-board{grid-template-columns:repeat(3,minmax(0,1fr))}.matrix-board>div{min-width:0;min-height:0}.mask-glyph{min-width:0;max-width:100%}.fold-strip .paper-glyph{height:100px}.difficulty-switch{margin-top:12px}html{touch-action:pan-x pan-y}@media (hover:none),(width<=700px){.json-editor,.file-button input{font-size:16px}}html,body{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}.puzzle-complete{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.puzzle-navigation{z-index:4;left:50%;bottom:max(12px, env(safe-area-inset-bottom,0px));border:1px solid var(--line);background:var(--surface);border-radius:17px;width:min(650px,100% - 32px);min-height:76px;margin:0;padding:11px 14px;position:fixed;transform:translate(-50%);box-shadow:0 8px 35px #0004}.puzzle-navigation .answer-feedback{min-width:0;font-size:13px;line-height:1.35}.puzzle-navigation .next-button{border-radius:12px;justify-content:center;gap:16px;width:auto;min-width:142px;height:52px;padding:12px 18px;font-size:16px;font-weight:600;display:flex}.category-icon{flex-shrink:0;width:26px;height:26px}.category-tile{position:relative}.category-tile .category-icon{opacity:.7;position:absolute;top:20px;right:20px}.category-tile strong{margin-top:31px}.header-context .category-title{align-items:center;gap:9px;min-width:0;display:flex}.category-title>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.category-title .category-icon{width:22px;height:22px;color:var(--accent)}@media (width<=390px){.header-context .category-title{gap:7px;font-size:14px}.category-title .category-icon{width:18px;height:18px}}:root{--reward-accent:#7cd5be}[data-style=aurora]{--reward-accent:#bda2ff;--bg:#14121c;--surface:#201d2b;--surface-hover:#2b263a;--line:#393044}[data-style=ocean]{--reward-accent:#79c8ff;--bg:#10171d;--surface:#19232e;--surface-hover:#223242;--line:#2e4051}[data-style=sunset]{--reward-accent:#ffae93;--bg:#1b1315;--surface:#281e22;--surface-hover:#37282e;--line:#48333a}html[data-style]:not([data-style=default]){background:var(--bg)}[data-theme=light][data-style=aurora]{--bg:#f4f1fa;--surface:#fff;--surface-hover:#eee8fa;--line:#dbd2eb;--reward-accent:#7450af}[data-theme=light][data-style=ocean]{--bg:#edf5fa;--surface:#fff;--surface-hover:#e1eff7;--line:#c7dce8;--reward-accent:#207399}[data-theme=light][data-style=sunset]{--bg:#fcf1ed;--surface:#fff;--surface-hover:#f8e7e0;--line:#e8d0c8;--reward-accent:#a95136}.app-shell{isolation:isolate;position:relative}.neural-background{z-index:-1;pointer-events:none;opacity:.48;contain:strict;position:fixed;inset:0;overflow:hidden}.neural-background svg{width:100%;height:100%}.neural-lines{fill:none;stroke:var(--muted);stroke-width:.85px;opacity:.42}.neural-nodes{fill:var(--reward-accent)}.neural-nodes circle{animation:5s ease-in-out infinite node-breathe}.neural-pulse{fill:none;stroke:var(--reward-accent);stroke-width:2px;stroke-linecap:round;stroke-dasharray:12 240;animation:7s linear infinite neural-travel}.neural-background.paused .neural-pulse,.neural-background.paused circle{animation-play-state:paused}.neural-background.paused{opacity:.06}@keyframes neural-travel{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes node-breathe{0%,70%,to{opacity:.25}85%{opacity:1}}.page-content{animation:.24s ease-out page-arrive}@keyframes page-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.main-tabs{border-bottom:1px solid var(--line);gap:6px;margin:0 0 32px;display:flex}.main-tabs button{color:var(--muted);background:0 0;flex:1;padding:15px 8px;font-size:14px;position:relative}.main-tabs button[aria-current=page]{color:var(--text)}.main-tabs button[aria-current=page]:after{content:"";background:var(--reward-accent);border-radius:2px;height:2px;position:absolute;bottom:-1px;left:25%;right:25%}.home-platform{max-width:700px;margin:0 auto}.level-summary{margin:0 0 32px;padding:4px 0}.level-line{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.level-line strong{letter-spacing:-.6px;font-size:23px;font-weight:550}.gem-balance{font-variant-numeric:tabular-nums;align-items:center;gap:7px;display:inline-flex}.gem-icon{width:19px;height:19px;color:var(--reward-accent);vertical-align:middle;flex-shrink:0;display:inline-block}.xp-track{background:var(--line);border-radius:8px;height:6px;overflow:hidden}.xp-track i{border-radius:inherit;background:var(--reward-accent);height:100%;transition:width .5s;display:block}.xp-caption{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:9px;font-size:12px;display:flex}.platform-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.platform-tile{text-align:left;border:1px solid var(--line);background:linear-gradient(140deg, color-mix(in srgb, var(--tile-color) 9%, var(--surface)), var(--surface) 75%);border-radius:24px;flex-direction:column;align-items:flex-start;gap:6px;min-height:198px;padding:26px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.platform-tile-top{width:100%;color:var(--tile-color);justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.platform-tile-top>span{opacity:.6;font-size:20px;transition:transform .2s}.section-icon{width:32px;height:32px}.platform-tile strong{letter-spacing:-.6px;font-size:23px;font-weight:550}.platform-tile>span:last-child{color:var(--muted);font-size:12px}.platform-sprint{--tile-color:var(--coral)}.platform-puzzles{--tile-color:var(--blue)}.platform-learn{--tile-color:var(--violet)}.platform-daily{--tile-color:var(--teal)}@media (hover:hover){.platform-tile:hover{border-color:color-mix(in srgb, var(--tile-color) 60%, var(--line));transform:translateY(-3px);box-shadow:0 8px 28px #00000018}.platform-tile:hover .platform-tile-top>span{transform:translate(2px,-2px)}}.platform-tile:active,.category-tile:active,.level-tile:active{transform:scale(.975)}.category-tile{border:1px solid color-mix(in srgb, currentColor 28%, transparent);transition:transform .2s,border-color .2s,background .2s;box-shadow:inset 0 1px #ffffff13}.level-tile{transition:transform .15s,background .2s,border-color .2s}.platform-section{flex-direction:column;gap:24px;max-width:700px;margin:0 auto;display:flex}.platform-section>.level-summary{margin-bottom:0}.platform-section .practice-panel{margin:0}.stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:9px;padding:20px 14px;display:flex}.stat strong{letter-spacing:-.8px;font-variant-numeric:tabular-nums;font-size:28px;font-weight:550}.stat span{color:var(--muted);font-size:11px;line-height:1.5}.record-list{flex-direction:column;margin:12px 0;display:flex}.record-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:13px 0;font-size:14px;display:flex}.record-list>div:last-child{border:0}.category-stat{align-items:center;gap:12px;display:inline-flex}.category-stat svg{width:20px;height:20px;color:var(--accent)}.fine-print,.platform-section small{color:var(--muted);font-size:12px;line-height:1.7}.platform-section input:not([type=checkbox]){width:100%;min-height:48px;margin:14px 0;font-size:16px}.platform-section .primary{border-radius:12px;min-height:46px;padding:12px 22px}.reward-styles{flex-direction:column;gap:16px;margin:24px 0 12px;display:flex}.reward-style{align-items:center;gap:14px;display:flex}.reward-style>i{border-radius:50%;flex-shrink:0;width:32px;height:32px;box-shadow:inset 0 0 0 6px #0002}.reward-style>span{flex:1}.reward-style small{display:block}.reward-style button{min-height:40px;padding:10px 14px;font-size:12px}.platform-section form.practice-panel{flex-direction:column;gap:12px;display:flex}.platform-section .checkbox{align-items:center}.ranking{margin:0;padding:0;list-style:none}.ranking li{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:20px 14px;display:flex}.ranking li.is-me{background:var(--surface);border-radius:12px}.ranking li strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15px;font-weight:550}.ranking li>span:last-child{text-align:right;white-space:nowrap;font-size:14px}.ranking li small{font-size:11px;display:block}.rank-position{color:var(--muted);font-variant-numeric:tabular-nums;min-width:22px}.segmented{background:var(--surface);border:1px solid var(--line);border-radius:14px;gap:6px;padding:5px;display:flex}.segmented button{color:var(--muted);background:0 0;border-radius:9px;flex:1;padding:12px;font-size:14px}.segmented button[aria-pressed=true]{background:var(--surface-hover);color:var(--text)}.learning-0{color:var(--blue);background:var(--surface)}.learning-1{color:var(--violet);background:var(--surface)}.learning-2{color:var(--teal);background:var(--surface)}.learning-decks{gap:14px}.learning-decks .category-tile{min-height:155px}.learning-decks .section-icon{margin-bottom:16px}.learning-run{text-align:center;align-items:stretch}.learning-run>.text-button{align-self:flex-start}.eyebrow{color:var(--muted);font-size:12px}.recall-prompt{letter-spacing:-.7px;margin:22px 0 32px;font-size:clamp(24px,5vw,40px);font-weight:550}.learning-run input:not([type=checkbox]){text-align:center;max-width:420px;font-size:22px}.learning-run>.primary{align-self:center}.empty-state{gap:20px;padding:30px 0;display:grid}.daily-case{gap:24px}.daily-case h2{letter-spacing:-.8px;font-size:clamp(26px,5vw,36px);font-weight:550}.daily-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.daily-meta>span:last-child{align-items:center;gap:4px;display:inline-flex}.daily-facts{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin:0;padding:20px 24px 20px 42px;font-size:14px;line-height:1.7}.daily-facts li+li{margin-top:10px}.daily-case form{flex-direction:column;align-items:center;gap:8px;display:flex}.daily-case form label{text-align:center;font-size:18px;line-height:1.5}.daily-case form input{text-align:center;max-width:280px;font-size:24px!important}.daily-case .check-button{margin:10px auto}.daily-finished{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:16px;gap:12px;padding:22px;display:grid}.daily-finished>span{color:var(--muted);font-size:12px}.reward-earned{color:var(--muted);align-items:center;gap:5px;margin-top:6px;font-size:11px;display:flex}.reward-earned svg{width:14px;height:14px}.user-menu button:has(.gem-icon){align-items:center;gap:5px;display:flex}@media (width<=600px){.main-tabs{margin-bottom:28px}.platform-grid{gap:12px}.platform-tile{border-radius:20px;min-height:185px;padding:21px 18px}.platform-tile strong{font-size:20px}.platform-tile-top{margin-bottom:25px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{padding:18px}.learning-decks{grid-template-columns:1fr}.learning-decks .category-tile{min-height:110px}.platform-section{gap:20px}.neural-background{opacity:.36}.daily-case p{font-size:14px}.daily-facts{padding-left:32px;font-size:13px}.daily-meta{font-size:11px}.reward-style{gap:10px}.reward-style>i{width:26px;height:26px}.reward-style>span{font-size:14px}}@media (width<=350px){.platform-tile{min-height:165px;padding:18px 14px}.platform-tile strong{font-size:18px}.platform-tile>span:last-child{font-size:11px}.main-tabs button{font-size:12px}.daily-meta{flex-wrap:wrap}.reward-style button{padding:8px}}@media (prefers-reduced-motion:reduce){.neural-background{display:none}.page-content,.neural-pulse,.neural-nodes circle{animation:none!important}.xp-track i,.platform-tile,.category-tile,.level-tile{transition:none!important}}.reduce-motion .neural-background{display:none}.reduce-motion .page-content{animation:none}@media (width<=600px) and (height<=700px){[data-view=home] .app-header{height:70px}[data-view=home] .main-tabs{margin-bottom:22px}[data-view=home] .level-summary{margin-bottom:24px}[data-view=home] .platform-tile{min-height:150px;padding:17px}[data-view=home] .platform-tile-top{margin-bottom:12px}[data-view=home] .platform-tile strong{font-size:19px}}.solution ol{margin:16px 0 0;padding-left:22px;font-size:14px;line-height:1.8}.solution li+li{margin-top:6px}.learning-topics .category-tile{border-color:var(--line);min-height:180px;color:var(--text);background:linear-gradient(145deg, color-mix(in srgb, var(--topic-color) 12%, var(--surface)), var(--surface) 80%)}.learning-topics .category-icon{color:var(--topic-color)}.learning-topics .category-tile strong{letter-spacing:-.6px;font-size:clamp(19px,4.8vw,27px)}.learning-topics .category-tile>span{color:var(--muted);font-size:12px}.learning-topics .category-tile:last-child{grid-column:1/-1}.learning-topic-0{--topic-color:var(--blue)}.learning-topic-1{--topic-color:var(--violet)}.learning-topic-2{--topic-color:var(--teal)}.learning-topic-3{--topic-color:var(--amber)}.learning-topic-4{--topic-color:var(--coral)}html.learning-fullscreen,html.learning-fullscreen body{overscroll-behavior:none;overflow:hidden}.app-shell[data-view=learn-feed]{max-width:none;padding:0}.app-shell[data-view=learn-feed] .page-content{animation:none}.app-shell[data-view=learn-feed] .neural-background{display:none}.app-shell[data-view=learn-feed] .page-content>.error,.app-shell[data-view=learn-feed] .page-content>.notice,.app-shell[data-view=learn-feed] .page-content>.conflict{z-index:21;top:calc(65px + env(safe-area-inset-top,0px));max-width:700px;margin-inline:auto;position:fixed;left:16px;right:16px}.learning-player{z-index:10;background:var(--bg);width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden}.feed-meta{z-index:2;top:calc(12px + env(safe-area-inset-top,0px));left:max(16px, env(safe-area-inset-left,0px));right:max(16px, env(safe-area-inset-right,0px));color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex;position:absolute}.feed-meta>span:last-child{font-variant-numeric:tabular-nums;margin-left:auto}.feed-meta .icon-button{background:var(--surface);width:40px;height:40px;color:var(--text)}.recall-card{width:100%;height:100%;padding:calc(90px + env(safe-area-inset-top,0px)) max(24px, env(safe-area-inset-right,0px)) calc(160px + env(safe-area-inset-bottom,0px)) max(24px, env(safe-area-inset-left,0px));background:radial-gradient(ellipse at 50% 45%, color-mix(in srgb, var(--reward-accent) 4%, var(--bg)), var(--bg) 72%);color:var(--text);text-align:center;touch-action:pan-x;-webkit-user-select:none;user-select:none;overflow-wrap:anywhere;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:28px;margin:0;animation:.24s ease-out learning-card-enter;display:flex;position:absolute;inset:0}.recall-question{letter-spacing:-.6px;max-width:740px;font-size:clamp(28px,5vw,46px);font-weight:500;line-height:1.4}.recall-answer{color:var(--reward-accent);max-width:740px;font-size:clamp(36px,7vw,64px);font-weight:550;animation:.2s ease-out answer-arrive}.recall-card.is-revealed .recall-question{color:var(--muted);font-size:clamp(18px,3vw,28px)}.tap-label{color:var(--muted);font-size:12px}.feed-swipe-hint{bottom:calc(120px + env(safe-area-inset-bottom,0px));color:var(--muted);opacity:.65;font-size:11px;position:absolute}.feed-actions{z-index:2;bottom:calc(48px + env(safe-area-inset-bottom,0px));left:max(20px, env(safe-area-inset-left,0px));right:max(20px, env(safe-area-inset-right,0px));gap:12px;max-width:380px;margin-inline:auto;display:flex;position:absolute}.feed-actions>button{border-radius:24px;flex:1;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:12px 18px;font-size:13px;display:flex}.feed-actions .primary{background:var(--reward-accent);color:var(--bg)}.feed-feedback{z-index:1;pointer-events:none;bottom:calc(19px + env(safe-area-inset-bottom,0px));color:var(--muted);text-align:center;min-height:16px;font-size:11px;position:absolute;left:20px;right:20px}.learning-player .empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;max-width:650px;height:100%;margin-inline:auto;padding:100px 24px;display:flex}@keyframes learning-card-enter{0%{opacity:.6;transform:translateY(5vh)}to{opacity:1;transform:translateY(0)}}@keyframes answer-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.learning-topics .category-tile{min-height:160px}.learning-topics .category-tile strong{font-size:22px}}@media (width<=350px){.learning-topics .category-tile strong{font-size:19px}.learning-topics .category-tile>span{font-size:11px}}@media (height<=650px){.recall-card{padding-top:calc(75px + env(safe-area-inset-top,0px));padding-bottom:calc(145px + env(safe-area-inset-bottom,0px));gap:20px}.recall-question{font-size:clamp(24px,4vw,32px)}.recall-answer{font-size:clamp(30px,5vw,42px)}.recall-card.is-revealed .recall-question{font-size:clamp(16px,3vw,22px)}.feed-swipe-hint{bottom:calc(108px + env(safe-area-inset-bottom,0px))}}@media (prefers-reduced-motion:reduce){.recall-card,.recall-answer{animation:none}}.character-avatar{flex-shrink:0;display:block}.avatar .character-avatar{width:100%;height:100%}.avatar-shop>h2{margin-bottom:0}.avatar-preview{justify-content:center;margin:12px 0 2px;display:flex}.avatar-preview .character-avatar{width:140px;height:140px}.avatar-reset{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:24px;display:flex}.avatar-reset .text-button{font-size:11px}.avatar-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 28px;display:grid}.avatar-item{text-align:center;border:1px solid var(--line);background:var(--bg);border-radius:17px;flex-direction:column;align-items:center;gap:7px;padding:15px 9px;display:flex}.avatar-item>.character-avatar{width:82px;height:82px}.avatar-item strong{align-items:center;min-height:30px;font-size:12px;font-weight:500;display:flex}.avatar-item small{font-size:10px}.avatar-item button{width:100%;min-height:38px;margin-top:auto;padding:9px 6px;font-size:11px}.avatar-item.locked>.character-avatar{opacity:.5;filter:saturate(.5)}.daily-streak-summary{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 20px;display:flex}.daily-streak-summary strong{font-size:15px;font-weight:500}.daily-streak-summary span{color:var(--muted);font-size:11px}.ranking li>.character-avatar{width:40px;height:40px}@media (width<=600px){.avatar-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.avatar-shop.practice-panel{padding:20px 15px}.ranking li{gap:9px;padding:16px 6px}.ranking li>.character-avatar{width:36px;height:36px}.ranking .rank-position{min-width:18px}}.avatar-shop-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.avatar-shop-heading h2{margin:0}.avatar-shop-heading>span{color:var(--reward-accent);white-space:nowrap;font-size:12px}.more-sprints{margin:12px auto 0;display:block}.sprint-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.sprint-mode-grid button{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:15px 10px;font-size:13px}.sprint-mode-grid button[aria-pressed=true]{border-color:var(--accent)}.quick-sprint{flex-direction:column;align-items:center;gap:24px;display:flex}.quick-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:480px;display:grid}.quick-choices.three{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-choices button{min-height:76px;font-size:20px}.sprint-glyph{width:110px;height:110px}.quick-choices .sprint-glyph{width:80px;height:80px;margin:auto}.comparison-values{align-items:center;gap:24px;font-size:clamp(22px,5vw,38px);display:flex}.comparison-values>span{color:var(--muted);font-size:20px}.stroop-word{letter-spacing:2px;font-size:56px}.sprint-panel>.question{margin:24px 0}.sprint-panel .word-question{margin:30px auto}.sprint-panel .sequence-strip{margin:24px auto}.tile-shunting{background:#d7b49a}.tile-one-line{background:#9ebfd1}.tile-shunting strong{overflow-wrap:anywhere;font-size:clamp(20px,4vw,28px)}.accent-shunting{--accent:#e9a58c;--accent-ink:#39251f}.accent-one-line{--accent:#96d4cb;--accent-ink:#19332e}.arcade-player{max-width:620px;margin:0 auto}.arcade-caption{color:var(--muted);justify-content:space-between;gap:16px;margin:8px 0 30px;font-size:13px;display:flex}.arcade-caption>span:last-child{font-variant-numeric:tabular-nums}.rail-yard{border:1px solid var(--line);background:var(--surface);border-radius:22px;max-width:440px;margin:0 18px 28px 0;padding:10px;position:relative}.rail-yard:after{content:"";background:var(--bg);width:4px;height:calc(33.333% - 6px);position:absolute;top:calc(33.333% + 3px);right:-2px}.rail-exit{color:var(--accent);z-index:1;position:absolute;top:40%;right:-25px}.rail-exit svg{width:24px;height:24px}.rail-grid{aspect-ratio:1;background-color:var(--bg);background-image:linear-gradient(to right, var(--line) 1px, transparent 1px), linear-gradient(to bottom, var(--line) 1px, transparent 1px);background-size:16.6667% 16.6667%;border-radius:12px;position:relative;overflow:hidden}.train-car{touch-action:none;z-index:1;cursor:grab;background:0 0;padding:4px;transition:filter .15s;position:absolute}.train-car:active{cursor:grabbing;z-index:3;filter:brightness(1.12)}.train-car:disabled{opacity:1;cursor:default}.train-body{background:var(--train-color);border-radius:10px;justify-content:space-evenly;align-items:center;gap:7px;width:100%;height:100%;padding:8px;display:flex;box-shadow:inset 0 -4px #0002,inset 0 1px #fff4,0 2px 5px #0003}.train-v .train-body{flex-direction:column}.train-window{background:#20324460;border:1px solid #ffffff30;border-radius:3px;flex:1;min-width:8px;min-height:8px;max-height:65%;display:block}.train-v .train-window{width:100%;max-width:65%;max-height:27%}.train-target .train-body{background:#ed9d86}.train-target .train-body svg{color:#5a2d24;width:24px;height:24px}.train-target .train-window{max-width:22%}.hint-train .train-body{outline:3px solid var(--text);outline-offset:-3px}.has-departed .train-target{animation:.45s ease-in forwards train-depart}@keyframes train-depart{to{opacity:0;transform:translate(100%)}}.arcade-actions{justify-content:center;align-items:center;gap:24px;margin:20px 0;display:flex}.arcade-actions button{min-height:42px}.line-board{touch-action:none;width:100%;max-width:440px;margin:auto;display:block;overflow:visible}.line-board>line{stroke:var(--line);stroke-width:5px;stroke-linecap:round;transition:stroke .15s}.line-board>line.line-used{stroke:var(--accent)}.line-node>circle{fill:var(--surface);stroke:var(--muted);stroke-width:2px}.line-node>circle.line-hit{fill:#0000;stroke:none}.line-node{cursor:pointer;outline:none}.line-node:focus-visible>circle:last-child,.line-current>circle:last-child{stroke:var(--accent);fill:var(--accent)}.line-hint>circle:last-child{stroke:var(--text);stroke-width:4px}@media (width<=600px){.sprint-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.train-car{padding:3px}.train-body{border-radius:7px;gap:5px;padding:6px}.arcade-caption{margin-bottom:24px;font-size:12px}.quick-choices button{font-size:16px}.quick-sprint{gap:18px}}.statistics-page{gap:32px;display:grid}.statistics-page>.platform-section{width:100%;min-width:0}.leaderboard-section>h2{margin:0;font-size:18px;font-weight:550}.room-heading{color:var(--muted);justify-content:space-between;font-size:13px;display:flex}.room-heading strong{color:var(--reward-accent);font-weight:500}.room-scene{border-radius:22px;width:100%;height:auto;display:block}.room-scene .character-avatar{width:130px;height:130px}.room-inventory{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.room-item{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;padding:20px;display:flex}.room-item strong{font-size:14px;font-weight:500}.room-item>span{color:var(--muted);font-size:11px}.room-item button{margin-top:auto;padding:10px;font-size:12px}.quest-row{background:var(--surface);border:1px solid var(--line);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:20px;text-decoration:none;display:flex}.quest-row>div{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.quest-row strong{font-size:14px;font-weight:500}.quest-row div>span{color:var(--muted);font-size:11px}.quest-row>span{color:var(--reward-accent);text-align:center;font-size:18px}.quest-row small{font-size:10px;display:block}.quest-row progress{appearance:none;border:0;width:100%;height:4px}.quest-row progress::-webkit-progress-bar{background:var(--line);border-radius:4px}.quest-row progress::-webkit-progress-value{background:var(--reward-accent);border-radius:4px}.quest-row progress::-moz-progress-bar{background:var(--reward-accent)}.quest-done{opacity:.65}@media (width<=350px){.room-item{padding:15px}}.line-board{aspect-ratio:300/340;height:auto}[data-view=arcade-play] .page-content,[data-view=puzzle] .page-content{animation:none}.rail-yard:after{height:calc(16.667% - 3px)}.rail-yard{width:calc(100% - 30px);margin-left:auto;margin-right:auto}.comparison-values svg{width:24px;height:24px}.flag-image{aspect-ratio:4/3;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:6px;flex-shrink:0;width:min(240px,64vw);height:auto;margin:0 auto;display:block;box-shadow:0 0 0 1px #ffffff20}.recall-card .flag-image{width:min(240px,55vw)}.recall-card.is-revealed .flag-image{width:min(180px,45vw)}.completion-success{background:color-mix(in srgb, var(--surface) 89%, #7cd5be);border-color:#7cd5be8c;animation:.6s ease-out success-confirm}.puzzle-navigation .solved-text,.daily-finished .solved-text{color:#96e7c9;font-size:16px;font-weight:650}.daily-finished.completion-success{border:1px solid #7cd5be8c;border-radius:16px;padding:20px}.sprint-panel.correct{background:#7cd5be1c;border-radius:18px;animation:.22s ease-out success-confirm;box-shadow:0 0 0 2px #7cd5be80}@keyframes success-confirm{0%{box-shadow:0 0 #7cd5be75,0 0 25px #7cd5be30}55%{box-shadow:0 0 0 9px #7cd5be22,0 0 35px #7cd5be20}to{box-shadow:0 0 0 13px #7cd5be00,0 0 #7cd5be00}}.avatar-tabs{max-width:700px;margin:0 auto 24px}.flag-sprint{gap:16px}.flag-sprint .sprint-question{margin:0;font-size:clamp(23px,5vw,32px)}.flag-sprint .flag-image{width:min(200px,42vw)}.flag-sprint .quick-choices button{min-height:58px;font-size:16px}.admin-gems form{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.admin-gems input{width:110px}@media (height<=650px){.sprint-panel:has(.flag-sprint){margin-top:0;padding-top:4px}.flag-sprint{gap:12px}.flag-sprint .flag-image{width:min(150px,38vw)}}.platform-coding{--tile-color:#bca7ee;grid-column:1/-1;min-height:130px}.tile-robot-code{background:#c1addd}.tile-maze-code{background:#a7bfc4}.tile-debug-code{background:#e0b4a2}.tile-circuit-code{background:#b8c8a6}.tile-sort-code{background:#dbca9d}.tile-trace-code{background:#adbce0}.coding-categories .category-tile strong{font-size:clamp(18px,3vw,25px)}.coding-categories .category-tile>span:last-child{font-size:11px}.accent-robot-code,.accent-maze-code,.accent-debug-code,.accent-circuit-code,.accent-sort-code,.accent-trace-code{--accent:#bca7ee;--accent-ink:#262034}.coding-player{max-width:640px;margin:0 auto;padding-bottom:125px}.code-instruction{text-align:center;max-width:460px;margin:16px auto 22px;font-size:17px;line-height:1.5}.coding-grid{width:min(100%,300px);height:auto;margin:20px auto;display:block}.code-wall{fill:#383b49}.code-floor{fill:var(--surface)}.code-visited{fill:#497d736e}.code-goal{fill:none;stroke:#7cd5be;stroke-width:3px}.program-strip{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:7px;min-height:60px;max-height:138px;margin:20px 0 14px;padding:12px;display:flex;overflow:auto}.program-strip>span{background:#bca7ee14;border-radius:7px;padding:7px 9px;font-size:12px}.program-strip>.empty-program{color:var(--muted);background:0 0}.command-palette{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.command-palette button{background:var(--surface);border:1px solid var(--line);border-radius:11px;min-height:44px;padding:11px 14px;font-size:13px}.code-answers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0;display:grid}.code-answers button{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-height:66px;font-size:24px}.code-answers button[aria-pressed=true],.debug-blocks button[aria-pressed=true],.sort-numbers button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--surface) 80%, var(--accent));box-shadow:0 0 0 1px var(--accent)}.maze-strategies{grid-template-columns:1fr}.maze-strategies button{text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:15px 18px;display:flex}.maze-strategies strong{font-size:15px;font-weight:500}.maze-strategies small{color:var(--muted);font-size:11px}.maze-comparison{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:30px 0;display:grid}.maze-comparison>div{text-align:center;min-width:0}.maze-comparison strong,.maze-comparison span{overflow-wrap:anywhere;font-size:11px;line-height:1.5;display:block}.maze-comparison span{color:var(--muted)}.maze-comparison .coding-grid{margin:14px 0}.code-blocks{text-align:left;flex-direction:column;gap:7px;font-family:ui-monospace,monospace;display:flex}.code-line{background:var(--surface);border-left:3px solid #bca7ee70;border-radius:6px;padding:12px 14px;font-size:15px;line-height:1.6}.code-line .code-blocks{margin:10px 0 2px 8px}.code-line .code-line{background:#bca7ee09;padding:8px 10px;font-size:13px}.code-line small{color:var(--muted);font-family:inherit;font-size:11px}.code-spec{border:1px solid var(--line);color:var(--muted);border-radius:12px;flex-direction:column;gap:6px;margin-bottom:22px;padding:14px 16px;font-size:13px;line-height:1.6;display:flex}.debug-blocks{flex-direction:column;gap:10px;display:flex}.debug-blocks>button{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:10px;padding:10px;display:flex}.debug-blocks .code-blocks{flex:1;min-width:0}.code-line-number{color:var(--muted);padding:12px 2px;font-size:11px}.code-result{text-align:center;margin:24px 0;font-size:16px}.code-switches{justify-content:center;gap:12px;margin:28px 0;display:flex}.code-switches button{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:center;gap:6px;min-width:48px;display:flex}.code-switches button[aria-checked=true]{color:#96e7c9;background:#7cd5be1a;border-color:#7cd5be}.code-switches span{color:var(--muted);font-size:11px}.code-switches strong{font-size:23px}.circuit-outputs{flex-direction:column;gap:24px;display:flex}.circuit-output{border:1px solid var(--line);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:16px 8px;display:flex}.gate-tree{align-items:center;gap:5px;display:inline-flex}.gate-branches{border-right:1px solid var(--line);flex-direction:column;gap:6px;padding-right:5px;display:flex}.gate-operation,.wire-input{border:1px solid var(--line);background:var(--surface);border-radius:5px;justify-content:center;align-items:center;min-height:24px;padding:5px;font-size:9px;display:inline-flex}.wire-input{min-width:24px}.wire-on>.gate-operation,.wire-input.wire-on{color:#96e7c9;border-color:#7cd5be80}.circuit-lamp{border:1px solid var(--line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;display:inline-flex}.circuit-lamp.lamp-on{color:#18372e;background:#7cd5be;border-color:#7cd5be}.circuit-target{color:var(--muted);font-size:10px}.circuit-target strong{color:var(--text);text-align:center;font-size:17px;display:block}.sort-numbers{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:32px 0;display:grid}.sort-numbers button{background:var(--surface);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:14px;min-height:76px;font-size:28px}.code-notice{border-left:2px solid var(--accent);color:var(--muted);margin:20px 0;padding:12px 14px;font-size:13px;line-height:1.6}.coding-footer>span{font-size:13px}.coding-footer .check-button{min-width:142px;min-height:52px;font-size:16px}@media (width<=400px){.coding-categories .category-tile{min-height:160px;padding:18px 15px}.coding-categories .category-tile strong{font-size:18px}.code-line{padding:10px;font-size:13px}.gate-tree{gap:3px}.gate-branches{padding-right:3px}.gate-operation{padding:4px;font-size:8px}.circuit-output,.maze-comparison{gap:6px}.maze-comparison strong,.maze-comparison span{font-size:9px}}.neural-pulse-1{animation-duration:9s}.neural-pulse-2{animation-duration:8s;animation-direction:reverse}.neural-pulse-3{stroke:#bca7ee;animation-duration:6s}.quest-period{flex-direction:column;gap:12px;display:flex}.quest-period-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.quest-period h2{margin:12px 0;font-size:18px;font-weight:550}.quest-period-heading small{color:var(--muted);font-size:10px}.quest-milestones{gap:10px;display:flex}.quest-milestone{color:var(--muted);border:1px solid var(--line);text-align:center;border-radius:12px;flex:1;padding:12px 8px;font-size:11px}.quest-milestone strong{margin-top:5px;font-size:12px;font-weight:500;display:block}.quest-milestone.milestone-done{color:#96e7c9;background:#7cd5be0a;border-color:#7cd5be70}.maze-path-board{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;width:min(100%,400px);height:auto;margin:20px auto;display:block}.maze-direction-controls{justify-content:center;gap:10px;display:flex}.maze-direction-controls button{background:var(--surface);border:1px solid var(--line);border-radius:10px;min-width:44px;min-height:44px;font-size:22px}.maze-step-budget{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.compare-searches{margin:24px auto;display:block}.avatar-slots{gap:7px;margin:15px 0;padding:3px 2px 8px;display:flex;overflow-x:auto}.avatar-slots button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:18px;flex-shrink:0;padding:9px 13px;font-size:12px}.avatar-slots button[aria-pressed=true]{border-color:var(--reward-accent);color:var(--text)}.platform-coding,.platform-expedition{grid-column:auto}.platform-expedition{--tile-color:#d6be83;min-height:130px}.expedition-mode{max-width:700px;margin:0 auto;padding-bottom:110px}.expedition-mode h2{font-size:20px;font-weight:550}.expedition-overview{justify-content:space-between;align-items:flex-start;gap:16px;margin:14px 0;display:flex}.expedition-overview strong{font-size:21px;font-weight:550}.expedition-overview>div>span{color:var(--muted);margin-top:5px;font-size:11px;display:block}.expedition-overview>span{color:var(--reward-accent);white-space:nowrap;font-size:12px}.expedition-track{appearance:none;background:var(--line);border:0;border-radius:10px;width:100%;height:6px;display:block}.expedition-track::-webkit-progress-bar{background:var(--line);border-radius:10px}.expedition-track::-webkit-progress-value{background:#c9b280;border-radius:10px}.expedition-track::-moz-progress-bar{background:#c9b280;border-radius:10px}.expedition-rewards{color:var(--muted);justify-content:space-between;gap:18px;margin:16px 0 24px;font-size:10px;display:flex}.expedition-rewards>span:last-child{text-align:right}.expedition-rewards strong{color:var(--text);margin-top:5px;font-size:12px;font-weight:500;display:block}.expedition-earned{color:#96e7c9;background:#7cd5be12;border:1px solid #7cd5be40;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:14px;font-size:13px;display:flex}.expedition-stage-bar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:18px;padding:14px 0;display:flex}.expedition-stage-bar>span{color:var(--muted);font-size:12px}.expedition-skip{padding:8px 2px;font-size:11px}.expedition-category{justify-content:center;align-items:center;gap:10px;margin:24px 0;display:flex;font-size:17px!important}.expedition-category .category-icon{width:22px;height:22px}.expedition-mode .coding-player{padding-bottom:30px}.expedition-mode .arcade-caption{margin-bottom:22px}.expedition-mode .puzzle{padding-bottom:30px}.expedition-finish{text-align:center;padding:35px 0}[data-view=expedition] .page-content{animation:none}.puzzle{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.puzzle-navigation{bottom:calc(max(12px, env(safe-area-inset-bottom,0px)) + var(--keyboard-inset,0px))}.puzzle-navigation .check-button{justify-content:center;min-width:142px;min-height:52px;margin:0 0 0 auto;font-size:16px}.avatar-reset:empty{display:none}@media (width<=700px){.app-header{height:72px}.header-context{flex:1}.header-account{flex-shrink:0}.puzzle .question{margin:14px auto 18px;font-size:20px}.puzzle .pattern-question{font-size:36px}.puzzle .word-question{margin:32px auto;font-size:30px}.puzzle .reference-shape{margin:12px auto 16px}.puzzle .reference-shape .cell-shape{height:clamp(80px,15svh,126px)}.puzzle .shape-options{gap:10px}.puzzle .shape-choice{padding:6px 10px 2px}.puzzle .shape-choice .cell-shape{height:clamp(60px,11svh,96px)}.puzzle .shape-select{min-height:32px;padding:5px 0}.puzzle .sequence-strip{gap:6px;margin:14px auto}.puzzle .sequence-strip li{padding:5px}.puzzle .sequence-strip .mask-glyph{height:clamp(40px,8svh,60px)}.puzzle .sequence-strip .missing-frame{min-height:0}.puzzle .sequence-strip small{margin-top:3px}.puzzle .visual-rules{margin:8px auto 12px}.puzzle .visual-rules summary{place-content:center;min-height:32px;display:grid}.puzzle .visual-options{gap:8px}.puzzle .visual-options .answer-option{padding:6px 10px}.puzzle .visual-options .mask-glyph{height:clamp(44px,9svh,72px)}.puzzle .matrix-board{width:min(100%,29svh,250px);margin:12px auto}.puzzle .matrix-board>div{padding:5px}.puzzle .fold-strip{margin:14px auto}.puzzle .fold-strip .paper-glyph{height:clamp(60px,13svh,100px)}.coding-player .arcade-caption,.arcade-player .arcade-caption{margin:4px 0 12px}.code-instruction{margin:10px auto 12px;font-size:16px}.coding-grid{margin:12px auto}[data-coding-game=robot-code] .coding-grid{width:min(100%,clamp(130px,100svh - 480px,250px))}.program-strip{gap:5px;min-height:48px;max-height:88px;margin:12px 0;padding:8px}.program-strip>span{padding:5px 7px}.command-palette{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid}.command-palette button{min-width:0;padding:8px 2px;font-size:12px}.arcade-actions{gap:12px;margin:12px 0}.arcade-actions button{min-height:44px}.puzzle-tools{gap:16px;margin:12px 0}.puzzle-tools button{padding:6px 12px}.coding-player .code-blocks{gap:5px;margin:14px 0}.coding-player .code-line{padding:8px 10px;line-height:1.45}.coding-player .code-line .code-blocks{margin:6px 0 0 6px}.coding-player .code-line .code-line{padding:6px 8px}.coding-player .code-answers{gap:8px;margin:16px 0}.coding-player .code-answers button{min-height:52px}.code-switches{margin:16px 0}.circuit-outputs{gap:12px}.avatar-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid;overflow:visible}.avatar-slots button{min-width:0;min-height:44px;padding:8px 2px;font-size:11px}.avatar-reset button{min-height:44px}}@media (width<=700px) and (height<=500px){[data-view=sprint] .app-header{height:56px}.sprint-panel:has(.timer-track){margin:0 auto;padding:4px 0}.sprint-panel .sprint-question{margin:14px 0;font-size:30px}.sprint-clock{font-size:30px}.sprint-count{font-size:24px}.sprint-panel .timer-track{margin:10px 12px}.sprint-panel input{min-height:50px}.sprint-panel form>.primary{min-height:44px;margin:10px auto}}@media (width<=700px){.app-shell:is([data-view=puzzle],[data-view=arcade-play],[data-view=expedition]){height:calc(100dvh - var(--keyboard-inset,0px));min-height:0;padding-bottom:max(12px, env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;overflow:hidden}.app-shell:is([data-view=puzzle],[data-view=arcade-play],[data-view=expedition])>.app-header{flex-shrink:0}.app-shell:is([data-view=puzzle],[data-view=arcade-play],[data-view=expedition])>.page-content{overscroll-behavior-y:contain;scrollbar-width:none;flex:1;min-height:0;scroll-padding-block:12px;overflow-y:auto}.app-shell:is([data-view=puzzle],[data-view=arcade-play],[data-view=expedition]):has(.puzzle-navigation)>.page-content{margin-bottom:88px}.app-shell:is([data-view=puzzle],[data-view=arcade-play],[data-view=expedition])>.page-content::-webkit-scrollbar{display:none}.page-content :is(.puzzle,.coding-player,.arcade-player,.expedition-mode){padding-bottom:16px}.puzzle .answer-options{margin:10px 0}.puzzle[data-game=sequences] .question{margin:8px auto 12px}.puzzle[data-game=sequences] .sequence-strip{margin:10px auto}[data-coding-game=maze-code] .maze-path-board{width:min(100%,clamp(170px,100svh - 380px,300px))}.coding-player .program-strip:empty{display:none}}.shape-select:after{content:"";border-radius:inherit;z-index:1;position:absolute;inset:0}.program-strip{scrollbar-width:none}.program-strip::-webkit-scrollbar{display:none}@media (width<=700px){.puzzle .shape-choice .rotate-view{background:0 0;font-size:20px;bottom:-3px;right:-4px}.puzzle .matrix-board .mask-glyph,.puzzle .matrix-board>.missing-frame{min-height:0}.puzzle .visual-options .paper-glyph{height:clamp(64px,10svh,88px)}.puzzle .sequence-strip .mask-glyph{height:clamp(36px,7svh,54px);min-height:0}.puzzle[data-game=sequences] .visual-options .mask-glyph{height:clamp(40px,7.6svh,64px);min-height:0}.puzzle .visual-rules summary{list-style-position:inside;display:list-item}}
