@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#1b0d3f;--bg-deep:#10072a;--surface:#2c1766;--surface-2:#3b2085;--surface-3:#4a2aa0;--panel:#281460e6;--panel-solid:#2a1562;--line:#ffffff24;--shadow:#12072f;--text:#fff7ec;--muted:#c3b4ef;--ink:#241050;--pink:#ff4fa3;--pink-d:#c4277a;--yellow:#ffd23f;--yellow-d:#d19a00;--mint:#2ee6a8;--mint-d:#12a374;--sky:#45c4ff;--sky-d:#1886c2;--orange:#ff8a3d;--orange-d:#c75a14;--purple:#b98cff;--accent:var(--pink);--accent-2:#ff86c1;--danger:#ff5c7a;--radius:22px;--tap:48px;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--font:"Fredoka Variable", "Fredoka", ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--spring:cubic-bezier(.2, 1.5, .4, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg-deep);height:100%;color:var(--text);font-family:var(--font);overscroll-behavior:none;margin:0;font-weight:450}body{overflow:hidden}#app{position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h2,h3,strong,b{font-weight:650}.muted{color:var(--muted)}.small{font-size:.85rem}.block{display:block}.app{background:radial-gradient(60% 45% at 8% 0%, #ff4fa361, transparent 70%), radial-gradient(55% 45% at 100% 100%, #45c4ff52, transparent 70%), radial-gradient(50% 40% at 100% 10%, #b98cff40, transparent 70%), radial-gradient(circle, #ffffff12 1.2px, transparent 1.6px) 0 0 / 26px 26px, linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);position:absolute;inset:0;overflow:hidden}.bg-bits{pointer-events:none;position:absolute;inset:0;overflow:hidden}.bg-bits i{opacity:.16;border-radius:28%;animation:linear infinite drift;position:absolute;bottom:-80px}.bg-bits i:nth-child(3n){border-radius:50%}.screen-play .bg-bits i{opacity:.09}@keyframes drift{0%{transform:translateY(0)rotate(0)}to{transform:translateY(calc(-100vh - 160px))rotate(400deg)}}.bg-bits i:first-child{background:#ff4fa3;width:24px;height:24px;animation-duration:30s;animation-delay:-20s;left:2.9%}.bg-bits i:nth-child(2){background:#ffd23f;width:46px;height:46px;animation-duration:21s;animation-delay:-11s;left:9.3%}.bg-bits i:nth-child(3){background:#2ee6a8;width:46px;height:46px;animation-duration:24s;animation-delay:-1s;left:20.5%}.bg-bits i:nth-child(4){background:#45c4ff;width:38px;height:38px;animation-duration:20s;animation-delay:-7s;left:25.5%}.bg-bits i:nth-child(5){background:#ff8a3d;width:38px;height:38px;animation-duration:19s;animation-delay:-26s;left:33.5%}.bg-bits i:nth-child(6){background:#b98cff;width:24px;height:24px;animation-duration:19s;animation-delay:-18s;left:44.4%}.bg-bits i:nth-child(7){background:#ff4fa3;width:18px;height:18px;animation-duration:25s;animation-delay:-1s;left:52.5%}.bg-bits i:nth-child(8){background:#ffd23f;width:24px;height:24px;animation-duration:27s;animation-delay:-13s;left:60.3%}.bg-bits i:nth-child(9){background:#2ee6a8;width:18px;height:18px;animation-duration:27s;animation-delay:-17s;left:65.9%}.bg-bits i:nth-child(10){background:#45c4ff;width:24px;height:24px;animation-duration:21s;animation-delay:-18s;left:77.9%}.bg-bits i:nth-child(11){background:#ff8a3d;width:24px;height:24px;animation-duration:29s;animation-delay:-3s;left:84.4%}.bg-bits i:nth-child(12){background:#b98cff;width:18px;height:18px;animation-duration:19s;animation-delay:-19s;left:92.3%}.cube-host{visibility:hidden;pointer-events:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;inset:0}.cube-host.on{visibility:visible;pointer-events:auto}.cube-host canvas{touch-action:none;display:block}.screen-play{touch-action:none;-webkit-user-select:none;user-select:none}.screen{padding:var(--sat) var(--sar) var(--sab) var(--sal);animation:screen-in .4s var(--spring);flex-direction:column;display:flex;position:absolute;inset:0}.screen.scroll{-webkit-overflow-scrolling:touch;overflow:hidden auto}@keyframes screen-in{0%{opacity:0;transform:scale(.94)translateY(12px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.btn{--b:var(--surface-3);--bd:var(--shadow);--fg:var(--text);min-height:var(--tap);background:var(--b);color:var(--fg);letter-spacing:.01em;box-shadow:0 5px 0 var(--bd), 0 8px 18px #00000040;border:0;border-radius:16px;padding:0 24px;font-size:1.05rem;font-weight:650;transition:transform .1s,box-shadow .1s,filter .15s;position:relative;top:0}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn:active{box-shadow:0 1px 0 var(--bd), 0 2px 6px #00000040;transform:translateY(4px)}.btn.primary{--b:var(--yellow);--bd:var(--yellow-d);--fg:var(--ink)}.btn.big{min-height:68px;box-shadow:0 7px 0 var(--bd), 0 14px 34px #ffd23f59;border-radius:22px;padding:0 64px;font-size:1.6rem}.btn.big:active{box-shadow:0 1px 0 var(--bd), 0 4px 10px #ffd23f4d;transform:translateY(6px)}.btn.ghost{--b:#ffffff14;--bd:#00000059}.btn.danger{--b:var(--pink);--bd:var(--pink-d);--fg:#fff}.wiggle{animation:2.8s ease-in-out 1s infinite wiggle}@keyframes wiggle{0%,82%,to{transform:none}85%{transform:rotate(-4deg)scale(1.05)}88%{transform:rotate(4deg)scale(1.05)}91%{transform:rotate(-3deg)scale(1.04)}94%{transform:rotate(2deg)}}.wiggle:active{animation:none}.link{color:var(--muted);min-height:var(--tap);text-underline-offset:4px;background:0 0;border:0;padding:0 16px;font-weight:550;text-decoration:underline;text-decoration-thickness:2px}.link:hover{color:var(--text)}.icon-btn{width:var(--tap);height:var(--tap);color:var(--text);transition:transform .15s var(--spring), background .15s;background:#ffffff14;border:0;border-radius:16px;place-items:center;font-size:1.8rem;display:grid}.icon-btn:hover{background:#ffffff29;transform:scale(1.06)}.icon-btn:active{transform:scale(.9)}.row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.shake{animation:.45s shake}@keyframes shake{15%{transform:translate(-7px)rotate(-2deg)}35%{transform:translate(6px)rotate(2deg)}55%{transform:translate(-4px)}75%{transform:translate(3px)}}.start .corner{top:calc(var(--sat) + 10px);right:calc(var(--sar) + 10px);z-index:1;gap:8px;display:flex;position:absolute}.start-body{text-align:center;flex-direction:column;align-items:center;gap:16px;margin:auto;padding:24px;display:flex}.title{letter-spacing:-.01em;font-size:clamp(3rem,15vw,5rem);font-weight:700;line-height:1;display:flex}.title span{text-shadow:0 5px #0000004d;animation:2.6s ease-in-out infinite bob;display:inline-block}@keyframes bob{0%,to{transform:translateY(0)rotate(0)}30%{transform:translateY(-9px)rotate(-4deg)}55%{transform:translateY(2px)rotate(2deg)}}.tagline{color:var(--muted);max-width:22em;margin-bottom:10px;font-size:1.1rem}.next-up{color:var(--muted);font-size:.95rem}.next-up b{color:var(--yellow)}.version{left:0;right:0;bottom:calc(var(--sab) + 12px);text-align:center;color:var(--muted);opacity:.7;font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;font-size:.75rem;position:absolute}.logo3d{--s:108px;width:var(--s);height:calc(var(--s) + 34px);perspective:700px;margin-bottom:4px;position:relative}.cube3d{width:var(--s);height:var(--s);transform-style:preserve-3d;animation:10s linear infinite tumble,2.6s ease-in-out infinite hop;position:absolute}.cf{backface-visibility:hidden;background:#1d1236;border-radius:16px;grid-template-columns:repeat(3,1fr);gap:4px;padding:5px;display:grid;position:absolute;inset:0}.cf i{border-radius:7px;box-shadow:inset 0 -3px #0000002e,inset 0 2px #ffffff59}.cf0{transform:translateZ(calc(var(--s) / 2))}.cf1{transform:rotateY(90deg) translateZ(calc(var(--s) / 2))}.cf2{transform:rotateY(180deg) translateZ(calc(var(--s) / 2))}.cf3{transform:rotateY(-90deg) translateZ(calc(var(--s) / 2))}.cf4{transform:rotateX(90deg) translateZ(calc(var(--s) / 2))}.cf5{transform:rotateX(-90deg) translateZ(calc(var(--s) / 2))}.logo-shadow{filter:blur(6px);background:#00000073;border-radius:50%;height:14px;animation:2.6s ease-in-out infinite shadow;position:absolute;bottom:0;left:10%;right:10%}@keyframes tumble{0%{transform:rotateX(-24deg)rotateY(0)}to{transform:rotateX(-24deg)rotateY(360deg)}}@keyframes hop{0%,to{translate:0}50%{translate:0 -14px}}@keyframes shadow{0%,to{opacity:.9;transform:scaleX(1)}50%{opacity:.5;transform:scaleX(.75)}}.topbar{z-index:2;background:linear-gradient(var(--bg) 65%, transparent);align-items:center;gap:8px;padding:10px 10px 4px;display:flex;position:sticky;top:0}.topbar h2{font-size:1.6rem;font-weight:700}.content{flex-direction:column;gap:26px;width:100%;max-width:560px;margin:0 auto;padding:8px 16px 48px;display:flex}.stage h3{align-items:center;gap:10px;margin-bottom:4px;font-size:1.3rem;display:flex}.stage-n{background:var(--stage,var(--pink));width:34px;height:34px;color:var(--ink);border-radius:12px;place-items:center;font-size:1.05rem;font-weight:700;display:grid;transform:rotate(-6deg);box-shadow:0 4px #0000004d}.stage-count{background:#ffffff14;border-radius:999px;margin-left:auto;padding:3px 10px;font-weight:600}.content.wide{max-width:760px}.puzzle-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}@media (width>=700px){.puzzle-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}}.puzzle-grid li{animation:card-in .5s var(--spring) both}@keyframes card-in{0%{opacity:0;transform:translateY(18px)scale(.85)}to{opacity:1;transform:none}}.puzzle-card{text-align:center;background:var(--surface);width:100%;height:100%;box-shadow:0 5px 0 var(--shadow), inset 0 4px 0 var(--stage,var(--pink));transition:transform .18s var(--spring), box-shadow .1s, background .15s;border:0;border-radius:20px;flex-direction:column;gap:2px;padding:6px 6px 10px;display:flex}.puzzle-card:not(.locked):hover{background:var(--surface-2);transform:translateY(-3px)rotate(-1.5deg)}.puzzle-card:not(.locked):hover .pc-art svg.thumb{transform:scale(1.08)rotate(4deg)}.puzzle-card:not(.locked):active{box-shadow:0 1px 0 var(--shadow), inset 0 4px 0 var(--stage,var(--pink));transform:translateY(4px)}.puzzle-card.next{background:var(--surface-2);box-shadow:0 5px 0 var(--shadow), inset 0 4px 0 var(--stage), 0 0 0 3px var(--stage);animation:1.6s ease-in-out infinite glow}.puzzle-card.next .pc-sub{color:var(--stage);font-weight:650}.puzzle-card.next .pc-art svg.thumb{animation:1.6s ease-in-out infinite hover-bob}@keyframes glow{50%{box-shadow:0 5px 0 var(--shadow), inset 0 4px 0 var(--stage), 0 0 0 3px var(--stage), 0 0 26px var(--stage)}}@keyframes hover-bob{50%{transform:translateY(-5px)rotate(-3deg)}}.puzzle-card.locked{cursor:not-allowed;box-shadow:0 5px 0 var(--shadow)}.puzzle-card.locked .pc-art svg.thumb{opacity:.35;filter:grayscale(.7)}.puzzle-card.locked .pc-title,.puzzle-card.locked .pc-sub{opacity:.5}.pc-art{aspect-ratio:1;background:radial-gradient(circle at 50% 45%,#ffffff1f,#0000 70%);border-radius:14px;margin-bottom:4px;display:block;position:relative}.pc-art svg.thumb{width:100%;height:100%;transition:transform .3s var(--spring);display:block}.pc-idx{min-width:24px;height:24px;color:var(--muted);font-variant-numeric:tabular-nums;background:#00000040;border-radius:10px;place-items:center;padding:0 6px;font-size:.8rem;font-weight:700;display:grid;position:absolute;top:2px;left:2px}.puzzle-card.medal-gold .pc-idx,.puzzle-card.medal-silver .pc-idx,.puzzle-card.medal-bronze .pc-idx,.puzzle-card.next .pc-idx{background:var(--stage);color:var(--ink)}.pc-medal{filter:drop-shadow(0 3px #00000059);position:absolute;top:-4px;right:-4px}.puzzle-card.medal-gold .pc-medal{animation:2.4s ease-in-out infinite twinkle}@keyframes twinkle{0%,80%,to{transform:none}88%{transform:scale(1.25)rotate(-12deg)}}.pc-lock{color:var(--muted);place-items:center;display:grid;position:absolute;inset:0}.pc-lock svg{width:30px;height:30px}.pc-title{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;align-content:center;min-height:2.4em;font-size:.92rem;font-weight:650;line-height:1.2;display:-webkit-box;overflow:hidden}.pc-sub{color:var(--muted);font-size:.78rem}.thumb .t-shadow{fill:#00000059}.thumb .t-body{fill:#1d1236;stroke:#1d1236;stroke-width:3px;stroke-linejoin:round}.thumb .t-st{stroke-width:2.4px;stroke-linejoin:round}.thumb .t-st.sh-left{filter:brightness(.86)}.thumb .t-st.sh-right{filter:brightness(.7)}.thumb .t-body.sh-top{fill:#2a1a4d;stroke:#2a1a4d}.thumb .t-goal{stroke:#ffb800;stroke-width:3px;filter:drop-shadow(0 0 2px #ffd23fe6)}.thumb .t-dot{fill:#15171c;opacity:.85}.picker-bar{-webkit-backdrop-filter:blur(12px);background:#1b0d3fd1;border-radius:0 0 22px 22px;margin-bottom:6px;padding-bottom:10px;padding-left:max(10px,50% - 380px);padding-right:max(10px,50% - 380px);box-shadow:0 6px #0a041e73}.back-btn{background:var(--surface-3);box-shadow:0 4px 0 var(--shadow);font-size:2rem}.back-btn:active{box-shadow:0 1px 0 var(--shadow);transform:translateY(3px)}.tally{gap:8px;margin-left:auto;display:flex}.tally-item{background:var(--shadow);color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:.9rem;display:inline-flex}.tally-item b{color:var(--yellow);font-size:1.1rem}.stage-bar{background:#0000004d;border-radius:999px;height:10px;margin-top:10px;overflow:hidden;box-shadow:inset 0 2px 3px #00000059}.stage-bar i{border-radius:inherit;background:linear-gradient(180deg, #ffffff59, transparent 60%), var(--stage);transform-origin:0;height:100%;animation:bar-fill .9s var(--spring) .2s both;display:block}@keyframes bar-fill{0%{transform:scaleX(0)}}.card{background:var(--surface);border-radius:var(--radius);box-shadow:0 5px 0 var(--shadow);border:0;flex-direction:column;align-items:flex-start;gap:12px;padding:18px;display:flex}.toggle-row{width:100%;min-height:var(--tap);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;display:flex}.toggle-row input{appearance:none;background:var(--shadow);cursor:pointer;border-radius:17px;flex:none;width:58px;height:34px;transition:background .2s;position:relative;box-shadow:inset 0 2px 4px #0006}.toggle-row input:after{content:"";width:26px;height:26px;transition:transform .3s var(--spring);background:#fff;border-radius:50%;position:absolute;top:4px;left:4px;box-shadow:0 2px #00000040}.toggle-row input:checked{background:var(--mint)}.toggle-row input:checked:after{transform:translate(24px)}.about{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:.9rem;display:grid}.about dt{color:var(--muted)}.about dd{font-variant-numeric:tabular-nums;margin:0}.confirm{flex-direction:column;gap:12px;display:flex}.play{pointer-events:none;position:absolute;inset:0}.play button,.play details,.play .sheet{pointer-events:auto}.hud{padding-left:calc(var(--sal) + 12px);padding-right:calc(var(--sar) + 12px);flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;left:0;right:0}.hud-top{padding-top:calc(var(--sat) + 10px);top:0}.hud-bottom{padding-bottom:calc(var(--sab) + 12px);bottom:0}.hud-card{--occlude:top;background:var(--panel);-webkit-backdrop-filter:blur(12px);border:2px solid var(--line);border-radius:var(--radius);width:100%;max-width:520px;animation:drop-in .5s var(--spring);flex-direction:column;gap:4px;padding:6px 10px 6px 8px;display:flex;box-shadow:0 6px #0a041e8c}@keyframes drop-in{0%{opacity:0;transform:translateY(-30px)scale(.95)}to{opacity:1;transform:none}}.hud-title-row{align-items:center;gap:8px;display:flex}.brief-btn{min-width:0;min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:4px;padding:0 0 0 4px;display:flex}.brief-btn:disabled{cursor:default}.hud-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:1.1rem;font-weight:700;overflow:hidden}.chev{color:var(--muted);transition:transform .25s var(--spring);flex:none}.chev.up{transform:rotate(180deg)}.brief{flex-direction:column;gap:6px;padding:0 4px 4px;animation:.25s fade;display:flex}.moves{background:var(--shadow);border-radius:999px;flex:none;align-items:baseline;gap:5px;padding:3px 10px 4px;display:flex}.moves-n{font-variant-numeric:tabular-nums;color:var(--yellow);font-size:1.45rem;font-weight:700;line-height:1;display:inline-block}.moves-n.bump{animation:bump .35s var(--spring)}@keyframes bump{0%{transform:scale(1)}35%{color:#fff;transform:scale(1.55)rotate(-8deg)}to{transform:none}}.moves-l{color:var(--muted);font-size:.72rem;font-weight:550}.hud-card.compact{gap:0}.hud-instr{font-size:.95rem;line-height:1.35}.hint-btn{background:var(--sky);width:30px;height:30px;color:var(--ink);box-shadow:0 3px 0 var(--sky-d);transition:transform .15s var(--spring);border:0;border-radius:50%;flex:none;font-weight:700;position:relative}.hint-btn:active{box-shadow:0 1px 0 var(--sky-d);transform:translateY(2px)}.hint-btn:after{content:"";position:absolute;inset:-9px}.hint-btn[aria-pressed=true]{background:var(--yellow);box-shadow:0 3px 0 var(--yellow-d)}.meter{color:var(--yellow);white-space:nowrap;background:#ffd23f29;border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 9px 3px 4px;font-size:.78rem;font-weight:600;display:inline-flex}.meter b{font-variant-numeric:tabular-nums;font-size:1rem}.meter-silver{color:#e3e8ef;background:#e3e8ef24}.meter-bronze{color:#f0a868;background:#e0975a29}.legend{color:var(--muted);flex-wrap:wrap;gap:4px 14px;font-size:.8rem;display:flex}.lg{align-items:center;gap:6px;display:inline-flex}.mk{border-radius:3px;width:12px;height:12px;display:inline-block}.mk-target{background:#ffd23f59;border:2px solid #ffb800;box-shadow:0 0 6px 1px #ffb80099}.mk-home{background:repeating-linear-gradient(45deg,#ffd500 0 2px,#28203c 2px 4.5px);border:2px solid #ffb800}.mk-protected{background:radial-gradient(circle,#15171c 0 2px,#0000 2.5px),#5b8a5e;border:1.5px solid #fff}.tip{--occlude:top;background:var(--pink);color:#fff;text-align:center;max-width:520px;box-shadow:0 4px 0 var(--pink-d);animation:drop-in .5s var(--spring) .3s both, float 2.4s ease-in-out 1s infinite;border-radius:999px;padding:9px 16px;font-size:.88rem;font-weight:600}@keyframes float{50%{transform:translateY(-4px)}}.coach{--occlude:top;color:#fff;max-width:520px;animation:drop-in .5s var(--spring) .3s both;background:#140c288c;border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:5px 12px;font-size:.8rem;display:inline-flex}.coach b{font-weight:750}.coach .ok{opacity:.45;transition:opacity .3s}.coach .sep{opacity:.5}.hint-panel{--occlude:bottom;background:var(--panel);-webkit-backdrop-filter:blur(12px);width:100%;max-width:520px;animation:rise .4s var(--spring);border:2px solid #45c4ff73;border-radius:20px;flex-direction:column;gap:6px;padding:8px 10px 8px 12px;font-size:.92rem;line-height:1.35;display:flex;box-shadow:0 5px #0a041e8c}.hp-head{align-items:center;gap:8px;display:flex}.hp-label{color:var(--sky);flex:1;font-weight:700}.hp-steps{flex-wrap:wrap;flex:1;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.hp-steps li{color:var(--muted);background:#00000040;border-radius:999px;align-items:center;gap:5px;padding:2px 10px 2px 3px;font-size:.82rem;font-weight:600;display:inline-flex}.hp-steps li i{background:#ffffff1a;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.72rem;font-style:normal;display:grid}.hp-steps li.done{color:var(--mint)}.hp-steps li.done i{background:var(--mint);color:var(--ink)}.hp-steps li.cur{background:var(--sky);color:var(--ink);box-shadow:0 3px 0 var(--sky-d)}.hp-steps li.cur i{background:var(--ink);color:var(--sky)}.hp-ctl{min-height:32px;font:inherit;color:var(--sky);background:#ffffff14;border:0;border-radius:999px;flex:none;padding:0 10px;font-size:.8rem;font-weight:650}.hp-close{width:32px;height:32px;color:var(--muted);background:#ffffff14;border:0;border-radius:50%;flex:none;margin:-2px -4px -2px 0;font-size:1.3rem;line-height:1;position:relative}.hp-close:after{content:"";position:absolute;inset:-8px}.hp-text{margin:0}.hp-move{color:var(--text);margin:0}.hp-layer{color:var(--sky)}.hp-drift{border-left:4px solid var(--pink);background:#ff4fa329;border-radius:14px;align-items:center;gap:10px;padding:6px 6px 6px 10px;display:flex}.hp-drift p{flex:1;margin:0}.hp-row{align-items:center;gap:10px;display:flex}.hp-row .hp-text{flex:1}.hp-rungs{flex:1;align-items:center;gap:4px;display:inline-flex}.hp-rungs i{background:#ffffff29;border-radius:50%;width:8px;height:8px}.hp-rungs i.on{background:var(--sky)}.hp-togo{color:var(--muted);margin-left:8px;font-size:.8rem}.hp-btn,.hp-more{min-height:38px;font:inherit;background:var(--surface-3);color:var(--text);box-shadow:0 3px 0 var(--shadow);border:0;border-radius:12px;flex:none;padding:0 14px;font-weight:650}.hp-more{background:var(--sky);color:var(--ink);box-shadow:0 3px 0 var(--sky-d)}.hp-drift .hp-btn{background:var(--pink);color:#fff;box-shadow:0 3px 0 var(--pink-d)}.hp-btn:active,.hp-more:active{box-shadow:none;transform:translateY(2px)}.toast{left:50%;bottom:calc(var(--sab) + 104px);text-align:center;background:var(--surface-3);width:max-content;max-width:calc(100% - 32px);box-shadow:0 4px 0 var(--shadow);animation:toast-in .35s var(--spring);border-radius:999px;padding:9px 16px;font-size:.9rem;font-weight:600;position:absolute;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(16px)scale(.8)}to{opacity:1;transform:translate(-50%)}}.bar{--occlude:bottom;background:var(--panel);-webkit-backdrop-filter:blur(12px);border:2px solid var(--line);width:100%;max-width:520px;animation:rise .5s var(--spring);border-radius:24px;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px 6px 6px;display:grid;box-shadow:0 6px #0a041e8c}.bar-btn{--c:var(--sky);--cd:var(--sky-d);min-width:44px;min-height:62px;color:var(--text);background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.78rem;font-weight:600;display:flex}.bar-btn .bi{background:var(--c);width:46px;height:40px;color:var(--ink);box-shadow:0 4px 0 var(--cd);border-radius:14px;place-items:center;transition:transform .1s,box-shadow .1s;display:grid}.bar-btn:hover:not(:disabled) .bi{box-shadow:0 6px 0 var(--cd);transform:translateY(-2px)rotate(-4deg)}.bar-btn:active:not(:disabled) .bi{box-shadow:0 0 0 var(--cd);transform:translateY(4px)}.bar-btn:disabled{opacity:.35}.b-undo{--c:var(--yellow);--cd:var(--yellow-d)}.b-restart{--c:var(--pink);--cd:var(--pink-d)}.b-view{--c:var(--mint);--cd:var(--mint-d)}.b-path{--c:#6d5a9e;--cd:#3f3266}.b-path .bi{color:var(--text)}.b-path.on{--c:var(--yellow);--cd:var(--yellow-d)}.b-path.on .bi{color:var(--ink)}.b-restart:active .bi svg{animation:.4s spin-once}@keyframes spin-once{to{transform:rotate(-360deg)}}.result-dock{padding:calc(var(--sat) + 10px) calc(var(--sar) + 12px) calc(var(--sab) + 10px) calc(var(--sal) + 12px);pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.sheet{--occlude:bottom;background:linear-gradient(180deg, var(--surface-2), var(--panel-solid) 60%);border:2px solid var(--line);text-align:center;width:100%;max-width:520px;box-shadow:0 8px 0 var(--shadow), 0 -10px 50px #00000080;animation:rise .55s var(--spring);overscroll-behavior:contain;border-radius:28px;flex-direction:column;align-items:center;gap:10px;max-height:56%;padding:18px 18px 8px;display:flex;position:relative;overflow:hidden auto}@keyframes rise{0%{opacity:0;transform:translateY(80px)scale(.9)}to{opacity:1;transform:none}}.sheet-title{color:var(--muted);font-size:1.05rem;font-weight:650}.sheet.replay .sheet-title{color:var(--text);font-size:1.15rem}.shout{color:var(--yellow);text-shadow:0 4px 0 var(--pink-d), 0 0 24px #ffd23f66;animation:shout .7s var(--spring) .15s both;font-size:clamp(2rem,9vw,2.6rem);font-weight:700;line-height:1}@keyframes shout{0%{opacity:0;transform:scale(.2)rotate(-12deg)}60%{opacity:1;transform:scale(1.15)rotate(3deg)}to{transform:none}}.sheet .actions{background:var(--panel-solid);border-top:2px solid var(--line);z-index:1;flex-direction:column;align-items:center;width:calc(100% + 36px);margin:0 -18px -8px;padding:12px 18px 4px;display:flex;position:sticky;bottom:-8px}.sheet .row{width:100%;padding-bottom:8px}.sheet .row .btn{flex:1;min-width:120px}.result-head{justify-content:center;align-items:center;gap:14px;width:100%;display:flex}.result-words{text-align:left;flex-direction:column;align-items:flex-start;gap:4px;display:flex}.medal-pop{flex:none;place-items:center;width:96px;height:96px;margin-top:-2px;display:grid;position:relative}.medal-pop svg{animation:slam .75s var(--spring) both;filter:drop-shadow(0 6px #0000004d);position:relative}@keyframes slam{0%{opacity:0;transform:scale(3)rotate(-30deg)}55%{opacity:1;transform:scale(.9)rotate(4deg)}to{transform:none}}.rays{background:repeating-conic-gradient(from 0deg, var(--ray) 0 12deg, transparent 12deg 30deg);opacity:.55;border-radius:50%;animation:8s linear infinite rays,.6s .3s both fade;position:absolute;inset:-30px;-webkit-mask:radial-gradient(circle,#000 25%,#0000 70%);mask:radial-gradient(circle,#000 25%,#0000 70%)}.medal-gold{--ray:#ffd23fb3}.medal-silver{--ray:#e3e8ef80}.medal-bronze{--ray:#f0a86873}@keyframes rays{to{transform:rotate(360deg)}}.stars{align-items:flex-end;gap:6px;margin-top:2px;display:flex}.star{fill:#ffffff1a;stroke:#ffffff2e;stroke-width:1px;opacity:0;width:30px;height:30px;transition:opacity .2s;transform:scale(.3)}.star:nth-child(2){width:38px;height:38px;margin-bottom:4px}.star.in{opacity:1;animation:star-in .5s var(--spring) both}.star.on{fill:var(--yellow);stroke:var(--yellow-d);stroke-width:1.4px;filter:drop-shadow(0 0 8px #ffd23fb3)}@keyframes star-in{0%{transform:scale(.2)rotate(-90deg)}60%{transform:scale(1.35)rotate(10deg)}to{transform:none}}.stats{justify-content:center;gap:10px;width:100%;display:flex}.result.result{gap:8px}.stats div{background:#0003;border-radius:16px;flex-direction:column;flex:1;align-items:center;max-width:120px;padding:6px 4px;display:flex}.stats b{font-variant-numeric:tabular-nums;font-size:1.8rem;font-weight:700;line-height:1.1}.stats div:first-child b{color:var(--yellow)}.stats span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:600}.new-best{background:var(--pink);color:#fff;box-shadow:0 4px 0 var(--pink-d);animation:shout .6s var(--spring) 1.1s both, wobble 1.6s ease-in-out 1.8s infinite;border-radius:999px;padding:5px 16px;font-weight:700}@keyframes wobble{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)scale(1.04)}}.nudge{color:var(--text);font-size:1rem}.insight{text-align:left;background:#0003;border-radius:16px;width:100%;padding:0 14px}.insight summary{min-height:var(--tap);cursor:pointer;color:var(--sky);align-items:center;font-weight:650;display:flex}.insight p{padding-bottom:12px;font-size:.95rem;line-height:1.4}.sheet .link.small{min-height:36px;font-size:.85rem}.notation{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.step{min-width:42px;color:var(--muted);font-variant-numeric:tabular-nums;transition:all .25s var(--spring);background:#00000040;border-radius:12px;padding:6px 10px;font-weight:700}.step.done{color:var(--text);background:var(--surface-3)}.step.cur{background:var(--yellow);color:var(--ink);box-shadow:0 3px 0 var(--yellow-d);transform:scale(1.2)rotate(-4deg)}.fx-canvas{pointer-events:none;z-index:100;width:100vw;height:100vh;position:fixed;inset:0}.fx-flash{pointer-events:none;z-index:99;background:radial-gradient(circle at 50% 45%,#ffffffbf,#ffd23f40 40%,#0000 70%);animation:.6s ease-out forwards flash;position:fixed;inset:0}@keyframes flash{0%{opacity:1}to{opacity:0}}@media (width>=900px) and (height>=521px){.hud-top{align-items:flex-start}.result-dock{padding-right:calc(var(--sar) + 24px);justify-content:flex-end;align-items:center}.sheet{--occlude:right;width:400px;max-height:100%;animation-name:slide-in}.result-head{flex-direction:column;gap:8px}.result-words{text-align:center;align-items:center}.star{width:38px;height:38px}.star:nth-child(2){width:48px;height:48px;margin-bottom:6px}}@media (height<=520px) and (orientation:landscape){.hud-top,.hud-bottom{align-items:flex-start}.hud-card,.tip,.coach,.bar,.hint-panel{--occlude:left;max-width:320px}.hud-card.compact{--occlude:top}.hud-instr{font-size:.88rem}.bar-btn{min-height:52px}.bar-btn .bi{height:34px}.result-dock{justify-content:flex-end;align-items:stretch}.sheet{--occlude:right;gap:5px;width:340px;max-height:none;padding-top:10px;animation-name:slide-in}.medal-pop{width:64px;height:64px}.medal-pop svg{width:52px;height:52px}.shout{font-size:1.6rem}.result-head{gap:8px}.rays{inset:-24px}.star{width:28px;height:28px}.star:nth-child(2){width:34px;height:34px;margin-bottom:4px}.stats b{font-size:1.35rem}.start{overflow-y:auto}.start-body{grid-template-rows:repeat(5,auto);grid-template-columns:auto auto;place-items:center;gap:6px 40px;padding:12px 24px;display:grid}.logo3d{--s:96px;grid-row:1/span 5}.title{font-size:3.4rem}.tagline{margin-bottom:4px;font-size:1rem}.btn.big{min-height:56px;font-size:1.35rem}.version{left:calc(var(--sal) + 14px);right:auto;top:calc(var(--sat) + 12px);bottom:auto}}@keyframes slide-in{0%{opacity:0;transform:translate(80px)scale(.92)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) *,:root:not([data-motion=full]) :before,:root:not([data-motion=full]) :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:root:not([data-motion=full]) .bg-bits{display:none}}.fatal{z-index:50;text-align:center;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:absolute;inset:0}.stage-head{all:unset;cursor:pointer;box-sizing:border-box;border-radius:14px;width:100%;display:block}.stage-head:focus-visible{outline:3px solid var(--stage,var(--pink));outline-offset:2px}.stage-head h3{margin-bottom:4px}.stage-head .chev{transition:transform .25s var(--spring);flex:none}.stage-head .chev.up{transform:rotate(180deg)}.stage-locked .stage-head h3{opacity:.6}.puzzle-card.milestone{box-shadow:0 5px 0 var(--shadow), inset 0 4px 0 var(--stage,var(--pink)), 0 0 0 2px var(--stage,var(--pink))}.pc-star{width:24px;height:24px;color:var(--ink);background:var(--stage,var(--pink));border-radius:50%;place-items:center;font-size:.85rem;display:grid;position:absolute;bottom:2px;right:2px;box-shadow:0 2px #00000059}.slider-row{width:100%;min-height:var(--tap);align-items:center;gap:14px;font-weight:600;display:flex}.slider-row input[type=range]{min-width:0;accent-color:var(--mint);flex:1;height:28px}.seg{gap:6px;width:100%;display:flex}.seg-btn{min-height:var(--tap);background:var(--shadow);color:inherit;font:inherit;cursor:pointer;border:0;border-radius:12px;flex:1;font-weight:600}.seg-btn.on{background:var(--mint);color:var(--ink)}.tip.warn{color:#1b0d3f;background:#ff8a00;box-shadow:0 4px #b85f00}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:root[data-motion=reduce] .bg-bits{display:none}.mk-zone{background:0 0;border:2.5px solid #34d1c9;border-radius:50%}
