:root{--bg:#fff4ec;--bg-2:#f1e9ff;--surface:#fff;--board:#fffaf4;--cell:#efd9c4;--cell-edge:#f5e8da;--text:#2a2340;--muted:#8d8079;--ink:#1f45d6;--outline:#2b0652;--piece-2:#fd9440;--on-ink:#fff;--piece:#ff7a5c;--piece-dark:#d4532c;--piece-arrow:#fff;--piece-stuck:#8b8fa6;--piece-stuck-dark:#5f6378;--preview:#fc7357;--danger:#e5484d;--danger-soft:#ffe3df;--success:#22a06b;--star:#ffbf2e;--star-dark:#e09a00;--star-empty:#f0dfcd;--shadow-sm:0 2px 0 #783c140f, 0 4px 12px #783c1414;--shadow:0 2px 0 #783c140d, 0 18px 40px -10px #d6452a47;--font:"Nunito", ui-rounded, system-ui, -apple-system, sans-serif;--font-display:"Nunito", ui-rounded, system-ui, sans-serif;--ink-width:18;--arrow-width:10;--grid-line-width:2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#17152b;--bg-2:#241e42;--surface:#2a2547;--board:#201c38;--cell:#3d3766;--cell-edge:#2b2649;--text:#f4f0ff;--muted:#a59ec6;--ink:#7d9bff;--outline:#120a2e;--piece-2:#fd9440;--on-ink:#17152b;--piece:#ff7a5c;--piece-dark:#b8431f;--piece-arrow:#fff;--piece-stuck:#6f6a8f;--piece-stuck-dark:#4d4869;--preview:#ff8a6e;--danger:#ff6b6b;--danger-soft:#3b2033;--success:#4fd29b;--star:#ffc94d;--star-dark:#c98f00;--star-empty:#3d3766;--shadow-sm:0 2px 0 #00000040, 0 4px 12px #00000040;--shadow:0 2px 0 #0000004d, 0 18px 40px -10px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#17152b;--bg-2:#241e42;--surface:#2a2547;--board:#201c38;--cell:#3d3766;--cell-edge:#2b2649;--text:#f4f0ff;--muted:#a59ec6;--ink:#7d9bff;--outline:#120a2e;--piece-2:#fd9440;--on-ink:#17152b;--piece:#ff7a5c;--piece-dark:#b8431f;--piece-arrow:#fff;--piece-stuck:#6f6a8f;--piece-stuck-dark:#4d4869;--preview:#ff8a6e;--danger:#ff6b6b;--danger-soft:#3b2033;--success:#4fd29b;--star:#ffc94d;--star-dark:#c98f00;--star-empty:#3d3766;--shadow-sm:0 2px 0 #00000040, 0 4px 12px #00000040;--shadow:0 2px 0 #0000004d, 0 18px 40px -10px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;color:var(--text);font-family:var(--font);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;font-weight:600}body{background:radial-gradient(45% 28% at 92% 6%, color-mix(in srgb, var(--piece) 18%, transparent), transparent 70%), radial-gradient(50% 30% at 0% 96%, color-mix(in srgb, var(--ink) 14%, transparent), transparent 70%), linear-gradient(180deg, var(--bg), var(--bg-2)) fixed;background-color:var(--bg)}#app{height:100%;position:relative}button{font:inherit;color:inherit;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .12s,background-color .15s,opacity .15s,box-shadow .12s}button:active:not(:disabled){transform:translateY(2px)scale(.97)}button:disabled{opacity:.35;cursor:default}.icon{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.screen{zoom:var(--ui-scale,1);height:calc(100vh / var(--ui-scale,1));height:calc(100dvh / var(--ui-scale,1));max-width:480px;padding:env(safe-area-inset-top) 16px 0;flex-direction:column;margin:0 auto;display:flex}*,:before,:after{touch-action:manipulation}.ios-safari .controls,.ios-safari .title-actions,.ios-safari .settings-list{padding-bottom:64px}.install-tip{color:var(--muted);margin:0;font-size:13px}.install-tip b{color:var(--text)}.select-head{padding:26px 2px 18px}.logo{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);margin:0;font-size:52px;font-weight:900;line-height:1;display:inline-block;position:relative}.logo span{color:var(--piece)}.swash{fill:none;width:60%;height:16px;stroke:var(--piece);stroke-width:6px;stroke-linecap:round;position:absolute;bottom:-12px;right:-4px}.tagline{color:var(--muted);margin:20px 0 0;font-size:15px}.segmented{background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}.segmented button{--btn-fill:var(--bg);--btn-text:var(--muted);--btn-depth:color-mix(in srgb, var(--outline) 35%, var(--bg));min-height:44px;font-size:16px;font-weight:800}.segmented button[aria-pressed=true]{--btn-fill:var(--ink);--btn-text:var(--on-ink);--btn-depth:color-mix(in srgb, var(--ink) 55%, black)}.rule-hint{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:14px 4px 12px;font-size:14px;display:flex}.star-line{align-items:center;gap:4px;display:flex}.star-line .icon{width:16px;height:16px;fill:var(--star);stroke:var(--star-dark);stroke-width:1.5px}.level-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:12px;margin:0 -8px;padding:6px 8px 16px;display:grid;overflow-y:auto}.level-card{background:var(--surface);box-shadow:0 4px 0 color-mix(in srgb, var(--cell) 70%, transparent), var(--shadow-sm);text-align:left;border:0;border-radius:20px;flex-direction:column;gap:6px;padding:7px 7px 10px;animation:.4s cubic-bezier(.2,.9,.3,1.2) both card-in;display:flex}.level-card:nth-child(2){animation-delay:30ms}.level-card:nth-child(3){animation-delay:60ms}.level-card:nth-child(4){animation-delay:90ms}.level-card:nth-child(5){animation-delay:.12s}.level-card:nth-child(6){animation-delay:.15s}.level-card:nth-child(n+7){animation-delay:.18s}@keyframes card-in{0%{opacity:0;transform:translateY(14px)scale(.96)}}.thumb-wrap{aspect-ratio:1;background:var(--board);border-radius:14px;place-items:center;padding:4px;display:grid}.thumb{width:100%;height:100%}.level-meta{justify-content:space-between;align-items:center;padding:0 5px;display:flex}.level-id{font-family:var(--font-display);font-size:22px;font-weight:900;line-height:1}.mini-stars{gap:1px;display:flex}.mini-stars .icon{width:14px;height:14px;fill:var(--star-empty);stroke:none}.mini-stars .on .icon{fill:var(--star)}.level-title{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;color:var(--muted);padding:0 5px;font-size:12px;line-height:1.25}.topbar{grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:14px 0 10px;display:grid}.icon-button{background:var(--surface);width:46px;height:46px;box-shadow:0 3px 0 color-mix(in srgb, var(--cell) 80%, transparent), var(--shadow-sm);border:0;border-radius:16px;place-items:center;display:grid}.icon-button .icon{width:24px;height:24px}.title{min-width:0}.level-name{font-family:var(--font-display);letter-spacing:-.01em;font-size:26px;font-weight:900;line-height:1.05}.level-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.left-pill{background:var(--surface);box-shadow:var(--shadow-sm);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:7px;padding:7px 14px 7px 10px;font-size:18px;font-weight:900;display:inline-flex}.left-dot{background:var(--piece);width:16px;height:16px;box-shadow:0 2px 0 var(--piece-dark);border-radius:5px}.progress{background:color-mix(in srgb, var(--cell) 70%, transparent);border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--piece), var(--star));border-radius:999px;width:0;height:100%;transition:width .35s cubic-bezier(.2,.9,.3,1.2)}.board-wrap{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.board-card{background:var(--board);width:100%;max-height:100%;box-shadow:0 6px 0 color-mix(in srgb, var(--cell) 75%, transparent), var(--shadow);border-radius:30px;padding:12px}.board{width:100%;max-height:calc(100dvh / var(--ui-scale,1) - 300px);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;display:block;overflow:visible}.grid-line{stroke:var(--cell-edge);stroke-width:var(--grid-line-width)}.grid-dot{fill:var(--cell)}.turn-pulse{fill:none;stroke:var(--star);stroke-width:6px;transform-box:fill-box;transform-origin:50%}.piece{cursor:pointer}.piece-base{fill:var(--skin-dark,var(--piece-dark))}.piece-top{fill:var(--piece)}.piece-arrow{fill:none;stroke:var(--skin-arrow,var(--piece-arrow));stroke-width:var(--arrow-width);stroke-linecap:round;stroke-linejoin:round}.piece.lifted .piece-top{filter:drop-shadow(0 12px 10px #00000038)}.piece.stuck .piece-base,.piece.bump .piece-base{fill:var(--piece-stuck-dark)}.piece.stuck .piece-top{stroke:var(--danger);stroke-width:5px}.piece.stuck{animation:1.6s ease-in-out infinite wobble}@keyframes wobble{0%,to{opacity:1}50%{opacity:.7}}.preview-path,.deadlock-path{fill:none;stroke:var(--preview);stroke-width:9px;stroke-dasharray:2 20;stroke-linecap:round;stroke-linejoin:round}.preview-path.blocked,.deadlock-path{stroke:var(--danger)}.deadlock-path{opacity:.8}.preview.cancelled{opacity:.2}.turn-mark circle{fill:var(--surface);stroke:var(--preview);stroke-width:4px}.turn-mark path{fill:none;stroke:var(--preview);stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round}.marks .turn-mark circle,.preview-path.blocked~.turn-mark circle,.marks .turn-mark path,.preview-path.blocked~.turn-mark path{stroke:var(--danger)}.hit-mark circle{fill:var(--danger)}.hit-mark path{stroke:#fff;stroke-width:4px;stroke-linecap:round}.message{min-height:84px;padding:12px 0 0;font-size:15px}.hint,.note{text-align:center;color:var(--muted);justify-content:center;align-items:center;gap:8px;display:flex}.note{color:var(--danger);font-weight:800;animation:.25s ease-out note-in}.note.turn{color:var(--ink)}.note.calm{color:var(--text)}.turn-icon{background:var(--star);width:26px;height:26px;color:var(--text);border-radius:50%;place-items:center;font-size:16px;font-weight:900;display:grid}@keyframes note-in{0%{opacity:0;transform:translateY(6px)}}.piece-tag{background:var(--piece-stuck);color:#fff;border-radius:7px;place-items:center;width:22px;height:22px;font-size:14px;display:grid}.coord{color:var(--muted);margin-left:auto;font-size:12px}.controls{padding:8px 0 calc(14px + env(safe-area-inset-bottom));gap:12px;display:flex}.controls.round{justify-content:center;gap:48px}.round-button{color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:800;display:flex}.round-icon{background:var(--surface);width:62px;height:62px;color:var(--text);box-shadow:0 4px 0 color-mix(in srgb, var(--cell) 85%, transparent), var(--shadow-sm);border-radius:50%;place-items:center;display:grid}.round-icon .icon{width:26px;height:26px}.control{background:var(--surface);min-height:54px;box-shadow:0 4px 0 color-mix(in srgb, var(--cell) 85%, transparent), var(--shadow-sm);border:0;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:800;display:inline-flex}.overlay{z-index:20;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:#1e143266;justify-content:center;align-items:flex-end;animation:.2s ease-out fade-in;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:528px;box-shadow:var(--shadow);border-radius:32px;flex-direction:column;align-items:center;gap:10px;padding:26px 20px 20px;animation:.32s cubic-bezier(.2,.9,.3,1.2) rise;display:flex}.overlay{overscroll-behavior:contain;overflow-y:auto}.overlay>.sheet{margin-top:auto}@media (height<=760px){.win-sheet{gap:8px;padding-top:18px}.win-sheet .big-star .icon{width:42px;height:42px}.win-sheet .big-star:nth-child(2) .icon{width:54px;height:54px}.win-sheet h2{margin:0;font-size:30px}.win-sheet .stats-row{margin:2px 0}.win-sheet .stat{padding:6px 0}.win-sheet .stat-value{font-size:20px}}.star-row{align-items:flex-end;gap:6px;display:flex}.big-star .icon{width:54px;height:54px;fill:var(--star-empty);stroke:none}.big-star:nth-child(2) .icon{width:70px;height:70px}.big-star.on .icon{fill:var(--star);stroke:var(--star-dark);stroke-width:1.2px}.big-star.on{animation:.5s cubic-bezier(.2,.9,.3,1.6) both star-pop}@keyframes star-pop{0%{transform:scale(0)rotate(-40deg)}}.sheet h2{font-family:var(--font-display);letter-spacing:-.02em;margin:4px 0 0;font-size:34px;font-weight:900}.sheet-sub{text-align:center;color:var(--muted);margin:0}.stats-row{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin:10px 0;display:grid}.stat{background:var(--bg);text-align:center;border-radius:18px;padding:10px 0}.stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:24px;font-weight:900}.stat-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.sheet button{width:100%;min-height:54px;font-size:17px;font-weight:800}.sheet button.primary{--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark)}.sheet-row{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.confetti{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti i{border-radius:2px;width:9px;height:14px;position:absolute;top:-10px}@keyframes fade-in{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){.piece.stuck,.overlay,.sheet,.big-star.on,.level-card,.note{animation:none}}.tweak-fab{z-index:40;border:1px solid var(--cell-edge);background:var(--surface);width:44px;height:44px;color:var(--piece);box-shadow:var(--shadow);border-radius:50%;place-items:center;display:grid;position:fixed;top:50%;right:12px}.tweak-panel{z-index:50;border-top:1px solid var(--cell-edge);background:var(--surface);border-radius:22px 22px 0 0;flex-direction:column;max-width:560px;max-height:58dvh;margin:0 auto;font-size:14px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #0000002e}.tweak-head{border-bottom:1px solid var(--cell-edge);align-items:center;gap:8px;padding:12px 12px 10px 18px;display:flex}.tweak-head strong{font-family:var(--font-display);flex:1;font-size:18px}.tweak-copy,.tweak-icon,.tweak-actions button,.tweak-seg button{border:1px solid var(--cell-edge);background:var(--surface);border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-weight:600;display:inline-flex}.tweak-copy{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.tweak-icon{width:40px;padding:0}.tweak-body{padding:4px 18px calc(18px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overflow-y:auto}.tweak-body h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:16px 0 8px;font-size:12px;font-weight:600}.tweak-status{color:var(--success);margin-top:8px;font-weight:600;display:block}.tweak-status:empty{display:none}.tweak-export{border:1px solid var(--cell-edge);background:var(--bg);width:100%;color:var(--text);border-radius:12px;margin-top:8px;padding:10px;font:12px/1.4 ui-monospace,Menlo,monospace}.tweak-seg{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tweak-seg button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.tweak-colors{grid-template-columns:1fr 1fr;gap:8px;display:grid}.tweak-color{align-items:center;gap:10px;display:flex}.tweak-color input{border:1px solid var(--cell-edge);background:0 0;border-radius:8px;flex:none;width:40px;height:32px;padding:0}.tweak-slider{grid-template-columns:1fr auto;align-items:center;gap:2px 8px;margin-bottom:6px;display:grid}.tweak-slider input{width:100%;accent-color:var(--piece);grid-column:1/-1}.tweak-value{font-variant-numeric:tabular-nums;color:var(--muted)}.tweak-body select{border:1px solid var(--cell-edge);background:var(--surface);width:100%;min-height:42px;color:var(--text);font:inherit;border-radius:12px;padding:0 10px}.tweak-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;display:grid}.title-screen{padding-bottom:calc(20px + env(safe-area-inset-bottom));text-align:center;justify-content:space-between}.logo.big{font-size:68px}.demo-card{width:min(72%, 300px, calc(34dvh / var(--ui-scale,1)));background:var(--board);box-shadow:0 6px 0 color-mix(in srgb, var(--cell) 75%, transparent), var(--shadow);border-radius:28px;margin:0 auto;padding:10px;transform:rotate(-3deg)}.demo-card .board{max-height:none}.demo-card{margin:10px auto 14px}@media (height<=760px){.title-hero{padding-top:3vh}.logo-art img{max-height:calc(18dvh / var(--ui-scale,1))}.demo-card{width:min(72%, 300px, calc(29dvh / var(--ui-scale,1)))}}@media (height<=640px){.title-hero{padding-top:2vh}.logo-art img{max-height:calc(17dvh / var(--ui-scale,1))}.title-hero .tagline{margin-top:4px;font-size:13px}.demo-card{width:min(72%, 300px, calc(26dvh / var(--ui-scale,1)));margin:6px auto 10px}.play-button{min-height:56px;font-size:22px}.title-actions{gap:10px}.title-actions .pill-button{min-height:46px}}.title-actions{gap:14px;display:grid}.play-button{--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark);justify-content:center;align-items:center;gap:10px;min-height:68px;font-size:26px;font-weight:900;animation:2.4s ease-in-out infinite breathe;display:inline-flex}.play-button .icon{fill:currentColor;width:26px;height:26px}@keyframes breathe{50%{transform:scale(1.03)}}.title-row,.setting-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pill-button{justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 14px;font-size:15px;font-weight:800;display:inline-flex}.head-actions{align-items:center;gap:8px;display:flex}.select .level-grid{margin-top:6px}.tutorial-card{background:var(--ink);color:var(--on-ink)}.tutorial-card .level-title{color:color-mix(in srgb, var(--on-ink) 75%, transparent)}.learn-tag{text-overflow:ellipsis;white-space:nowrap;background:var(--star);min-width:0;color:var(--text);text-transform:uppercase;border-radius:999px;margin-left:4px;padding:2px 7px;font-size:11px;font-weight:900;overflow:hidden}.settings-list{padding-bottom:calc(24px + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.settings-list h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:22px 4px 8px;font-size:12px;font-weight:900}.setting{background:var(--surface);box-shadow:var(--shadow-sm);border-radius:20px;align-items:center;gap:14px;margin-bottom:10px;padding:14px 16px;display:flex}.setting.column{flex-direction:column;align-items:stretch}.setting-text{flex:1}.setting-label{font-size:16px;font-weight:800}.setting-desc{color:var(--muted);margin-top:2px;font-size:13px}.switch{background:var(--cell);border:0;border-radius:999px;flex:none;width:54px;height:32px;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .2s cubic-bezier(.2,.9,.3,1.3);position:absolute;top:4px;left:4px;box-shadow:0 2px 4px #0003}.switch[aria-checked=true]{background:var(--success)}.switch[aria-checked=true]:after{transform:translate(22px)}.choice{gap:6px;display:flex}.choice button{--btn-fill:var(--bg);--btn-text:var(--muted);--btn-depth:color-mix(in srgb, var(--outline) 35%, var(--bg));flex:1;min-height:42px;font-weight:800}.choice button[aria-pressed=true]{--btn-fill:var(--ink);--btn-text:var(--on-ink);--btn-depth:color-mix(in srgb, var(--ink) 55%, black)}.setting-buttons{margin-top:6px}.step-dots{gap:6px;display:flex}.step-dots span{background:var(--cell);border-radius:50%;width:10px;height:10px}.step-dots span.on{background:var(--piece)}.coach{background:var(--surface);min-height:132px;box-shadow:var(--shadow-sm);border-radius:22px;align-content:start;gap:12px;margin-top:14px;padding:16px 18px;display:grid}.coach.pop{animation:.3s ease-out note-in}.coach.shake{animation:.35s ease-in-out shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.coach-text{margin:0;font-size:17px;font-weight:700;line-height:1.4}.coach-action:empty{display:none}.primary-button{--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark);width:100%;min-height:54px;font-size:17px;font-weight:900}.tutorial-foot{justify-content:center}.text-button{min-height:44px;color:var(--muted);background:0 0;border:0;font-weight:800}.piece.dim{opacity:.35}.piece.target .piece-top{stroke:var(--skin-glow,var(--star));stroke-width:6px;animation:1.1s ease-in-out infinite glow}@keyframes glow{50%{stroke-width:12px}}.note.aim{color:var(--ink)}.note.aim.bad{color:var(--danger)}@media (prefers-reduced-motion:reduce){.play-button,.coach.pop,.coach.shake,.piece.target .piece-top{animation:none}}.ghost-path{fill:none;stroke:var(--preview);stroke-width:5px;stroke-dasharray:1 13;stroke-linecap:round;stroke-linejoin:round;opacity:.45}.ghost-path.blocked{stroke:var(--danger)}.ghost-hit{fill:none;stroke:var(--danger);stroke-width:4px;stroke-linecap:round;opacity:.7}.round-button.pulse .round-icon{background:var(--piece);color:#fff;animation:1.2s ease-in-out infinite breathe}.controls.round{gap:34px}.controls.round.four{justify-content:space-evenly;gap:0;width:100%;max-width:400px;margin-inline:auto}.quick-settings{width:100%;max-width:528px;max-height:calc(100dvh / var(--ui-scale,1) - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));background:var(--surface);box-shadow:var(--shadow);border-radius:32px;flex-direction:column;gap:12px;padding:22px 16px 18px;animation:.32s cubic-bezier(.2,.9,.3,1.2) rise;display:flex}.quick-settings h2{font-family:var(--font-display);text-align:center;margin:0;font-size:28px;font-weight:900}.quick-settings .settings-list{flex:auto;min-height:0;margin:0 -4px;padding:0 4px}.quick-settings .setting{background:var(--bg);box-shadow:none}.quick-settings .setting:last-child{margin-bottom:0}.quick-settings .primary-button{flex:none}.logo-art{margin:0;line-height:0}.logo-art img{width:min(100%,440px);height:auto;max-height:calc(22dvh / var(--ui-scale,1));object-fit:contain;filter:drop-shadow(0 10px 18px #321e782e);animation:.6s cubic-bezier(.2,.9,.3,1.3) both logo-in}@keyframes logo-in{0%{opacity:0;transform:scale(.85)translateY(10px)}}.title-hero{padding-top:5vh}.title-hero .tagline{margin-top:10px}.piece-top{fill:var(--skin-fill,url(#piece-grad));stroke:var(--skin-outline,var(--outline));stroke-width:4px}.piece-base{stroke:var(--skin-outline,var(--outline));stroke-width:4px}.piece-pattern{fill:var(--skin-pattern,none);pointer-events:none}.piece-fx{pointer-events:none}.fx-shine{display:var(--fx-shine,none)}.fx-shine-move{animation:3s ease-in-out infinite fx-shine}.fx-shine-wide{fill:#fff;opacity:.28}.fx-shine-sharp{fill:#fff;opacity:.85}@keyframes fx-shine{0%{transform:translate(-90px)}40%,to{transform:translate(90px)}}.fx-lava{display:var(--fx-lava,none)}.fx-lava-move{animation:3.6s linear infinite fx-lava}.fx-lava-cracks{fill:none;stroke:#ffcf5a;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}@keyframes fx-lava{to{transform:translateY(60px)}}.piece.stuck .piece-fx,.piece.bump .piece-fx{display:none}@media (prefers-reduced-motion:reduce){.fx-shine-move,.fx-lava-move{animation:none}.fx-shine{opacity:.4}}.piece.stuck .piece-pattern,.piece.bump .piece-pattern{opacity:.25}.piece-gloss{fill:#fff;opacity:.8}.piece-shade{fill:url(#piece-shade);pointer-events:none}.piece.stuck .piece-shade,.piece.bump .piece-shade{opacity:.6}.piece-gloss-dot{fill:#fff;opacity:.7}.piece.stuck .piece-top,.piece.bump .piece-top{fill:var(--piece-stuck)}.left-dot{background:linear-gradient(135deg, var(--piece), var(--piece-2));box-shadow:0 0 0 2px var(--outline)}svg,.streak-screen{--trail:var(--trail-l,var(--ink))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) :is(svg,.streak-screen){--trail:var(--trail-d,var(--ink))}}:root[data-theme=dark] :is(svg,.streak-screen){--trail:var(--trail-d,var(--ink))}.ink-stroke{fill:none;stroke:var(--trail);stroke-width:var(--ink-width);stroke-linecap:round;stroke-linejoin:round}.ink-bleed{fill:none;stroke:var(--trail);stroke-width:calc(var(--ink-width) + 4);stroke-linecap:round;stroke-linejoin:round;opacity:.12}.ink-blot{fill:var(--trail)}.ink-drop{fill:var(--trail);transform-box:fill-box;transform-origin:50%}.round-icon{position:relative}.price-tag{background:var(--star);color:var(--text);box-shadow:0 2px 0 var(--star-dark);border-radius:999px;align-items:center;gap:1px;padding:2px 7px 2px 4px;font-size:12px;font-weight:900;display:inline-flex;position:absolute;top:-6px;right:-10px}.buy-icon{background:var(--star);width:64px;height:64px;color:var(--text);box-shadow:0 4px 0 var(--star-dark);border-radius:50%;place-items:center;display:grid}.buy-icon .icon{width:32px;height:32px}.buy-terms{background:var(--bg);border-radius:16px;gap:6px;width:100%;margin:6px 0 0;padding:12px 14px 12px 32px;font-size:14px;display:grid}.buy-price{margin:4px 0;font-size:34px;font-weight:900}.buy-note{color:var(--muted);text-align:center;margin:2px 0 0;font-size:12px}.price-tag .icon{width:12px;height:12px;fill:var(--ink);stroke:none}.drop-badge{background:var(--ink);width:22px;height:22px;color:var(--on-ink);border-radius:50%;place-items:center;display:inline-grid}.drop-badge .icon{fill:currentColor;stroke:none;width:13px;height:13px}.drop-badge.big{width:40px;height:40px;box-shadow:0 3px 0 color-mix(in srgb, var(--ink) 60%, black)}.drop-badge.big .icon{width:22px;height:22px}.wallet-chip{background:var(--surface);min-height:0;box-shadow:var(--shadow-sm);font:inherit;color:var(--text);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:5px;padding:3px 10px 3px 3px;font-weight:800;display:inline-flex}.wallet-chip .plus{color:var(--ink);margin-left:2px;font-weight:900}.wallet-chip:active{transform:translateY(1px)}.buy-cost{align-items:center;gap:8px;margin-top:4px;display:flex}.buy-cost .buy-price{margin:0}.buy-balance{background:var(--bg);color:var(--muted);border-radius:999px;margin-left:6px;padding:3px 10px;font-size:13px;font-weight:800}.packs{gap:8px;width:100%;margin:6px 0 0;padding:0;list-style:none;display:grid}.pack{background:var(--bg);border-radius:16px;align-items:center;gap:12px;padding:10px 10px 10px 12px;display:flex}.pack-info{text-align:left;flex:1;min-width:0}.pack-drops{font-weight:900}.pack-each{color:var(--muted);font-size:12px}.sheet button.pack-buy{--btn-fill:var(--ink);--btn-text:var(--on-ink);--btn-depth:color-mix(in srgb, var(--ink) 60%, black);width:auto;min-width:76px;min-height:44px;margin:0;padding:8px 14px}.sheet button.pack-buy:disabled{opacity:.6}.shop-earn{background:color-mix(in srgb, var(--star) 22%, transparent);border-radius:999px;align-items:center;gap:6px;margin:0;padding:6px 12px;font-size:13px;font-weight:700;display:flex}.shop-earn .icon{width:16px;height:16px;fill:var(--star);stroke:var(--star-dark);stroke-width:1.5px;flex:none}.skins-screen{gap:12px}.skin-stage{background:var(--surface);box-shadow:var(--shadow);border-radius:28px;justify-items:center;gap:4px;padding:16px 16px 18px;display:grid}.skin-preview{background:var(--board);border-radius:20px;width:min(100%,260px);padding:10px 14px 4px}.skin-preview .swatch{width:100%;display:block;overflow:visible}.skin-stage-name{font-family:var(--font-display);margin-top:6px;font-size:24px;font-weight:900}.skin-stage-sub{color:var(--muted);text-align:center;margin:0 0 8px;font-size:14px}.skin-stage button{--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark);justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font-size:17px;font-weight:800;display:inline-flex}.skin-stage button .drop-badge{color:var(--ink);background:#fff}.skin-grid{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:12px 10px;margin:0 -8px;padding:10px 8px 16px;display:grid;overflow-y:auto}.skin-card{background:var(--surface);box-shadow:0 3px 0 color-mix(in srgb, var(--cell) 70%, transparent), var(--shadow-sm);color:var(--text);font:inherit;border:0;border-radius:18px;justify-items:center;gap:2px;padding:10px 4px 8px;display:grid}.skin-card .swatch{width:100%;max-width:72px;overflow:visible}.skin-card.locked .swatch{opacity:.7;filter:saturate(.75)}.skin-card.focused{box-shadow:0 0 0 3px var(--piece), 0 3px 0 color-mix(in srgb, var(--cell) 70%, transparent)}.skin-name{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;text-align:center;max-width:100%;font-size:12px;font-weight:900;line-height:1.15}.skin-status{text-align:center;max-width:100%;min-height:18px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:800;display:inline-flex}.skin-status .icon{width:13px;height:13px}.skin-status>.icon{fill:var(--star);stroke:var(--star-dark);stroke-width:1.5px}.skin-card.equipped .skin-status{color:var(--success)}.skin-card.equipped .skin-status>.icon{fill:none;stroke:currentColor;stroke-width:3px}.skin-status .drop-badge{width:16px;height:16px}.skin-status .drop-badge .icon{width:10px;height:10px}.rewards{gap:8px;width:100%;display:grid}.sheet button.reward,.reward{background:color-mix(in srgb, var(--star) 20%, var(--surface));width:100%;min-height:0;color:var(--text);text-align:left;border:0;border-radius:16px;align-items:center;gap:12px;padding:8px 14px 8px 10px;font-size:15px;font-weight:400;animation:.4s cubic-bezier(.2,.9,.3,1.2) .7s both card-in;display:flex}.reward .swatch{flex:none;width:40px;overflow:visible}.reward-text{display:grid}.reward-text span{color:var(--muted);font-size:12px}.lang-setting .setting-label{align-items:center;gap:8px;display:flex}.lang-setting .setting-label .icon{width:20px;height:20px;color:var(--ink)}.lang-select{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238d8079' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center / 18px, var(--bg);width:100%;min-height:46px;color:var(--text);font:inherit;appearance:none;border:0;border-radius:999px;padding:0 40px 0 16px;font-size:16px;font-weight:800}.skin-tabs button{min-height:40px}.skin-grid.inks{grid-template-columns:repeat(3,minmax(0,1fr))}@media (height<=700px){.skins-screen{gap:8px}.skin-stage{border-radius:22px;gap:2px;padding:10px 14px 12px}.skin-preview{width:min(100%,190px);padding:6px 10px 2px}.skin-stage-name{margin-top:2px;font-size:20px}.skin-stage-sub{margin-bottom:4px;font-size:13px}.skin-stage button{min-height:44px;font-size:15px}}.skin-card .ink-swatch{max-width:84px;padding:4px 0}.skin-preview .swatch{overflow:visible}.lang-screen{padding-bottom:calc(16px + env(safe-area-inset-bottom));gap:12px}.lang-head{text-align:center;justify-items:center;gap:4px;padding-top:4vh;display:grid}.lang-globe{background:var(--ink);width:64px;height:64px;color:var(--on-ink);box-shadow:0 4px 0 color-mix(in srgb, var(--ink) 60%, black);border-radius:50%;place-items:center;margin-bottom:6px;animation:.6s cubic-bezier(.2,.9,.3,1.3) both logo-in;display:grid}.lang-globe .icon{width:34px;height:34px}.lang-title{font-family:var(--font-display);margin:0;font-size:28px;font-weight:900;line-height:1.15}.lang-sub{color:var(--muted);margin:0;font-size:14px}.lang-list{flex:1;align-content:start;gap:8px;margin:0 -8px;padding:4px 8px 8px;display:grid;overflow-y:auto}.lang-option{background:var(--surface);min-height:54px;box-shadow:0 3px 0 color-mix(in srgb, var(--cell) 70%, transparent), var(--shadow-sm);color:var(--text);font:inherit;text-align:left;border:0;border-radius:18px;align-items:center;gap:10px;padding:0 14px 0 18px;display:flex}.lang-name{flex:1;font-size:17px;font-weight:800}.lang-device{background:color-mix(in srgb, var(--ink) 14%, transparent);color:var(--ink);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.lang-check{width:26px;height:26px;box-shadow:inset 0 0 0 2px var(--cell);border-radius:50%;flex:none;place-items:center;display:grid}.lang-check .icon{stroke-width:3.5px;opacity:0;width:16px;height:16px}.lang-option[aria-checked=true]{box-shadow:0 0 0 3px var(--ink), 0 3px 0 color-mix(in srgb, var(--cell) 70%, transparent)}.lang-option[aria-checked=true] .lang-check{background:var(--ink);box-shadow:none;color:var(--on-ink)}.lang-option[aria-checked=true] .lang-check .icon{opacity:1}.lang-go{width:100%;animation:none}.level-card.locked{background:color-mix(in srgb, var(--surface) 70%, transparent);box-shadow:none;color:var(--muted)}.level-card.locked .thumb-wrap{position:relative}.level-card.locked .thumb{opacity:.35;filter:grayscale(.8)}.lock-badge{place-items:center;display:grid;position:absolute;inset:0}.lock-badge .icon{box-sizing:content-box;background:var(--surface);width:30px;height:30px;color:var(--muted);stroke-width:2.4px;box-shadow:var(--shadow-sm);border-radius:50%;padding:7px}.level-card.locked .level-id{color:var(--muted)}.level-card.shake{animation:.35s ease-in-out shake}.toast{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:50;background:var(--text);max-width:min(90vw,420px);color:var(--bg);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:800;animation:2.4s both toast-in;display:flex;position:fixed;transform:translate(-50%)}.toast .icon{flex:none;width:18px;height:18px}.ios-safari .toast{bottom:calc(88px + env(safe-area-inset-bottom))}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}10%,85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}@supports (container-type:size){.board-wrap{container-type:size}.board-wrap>.board-card{width:auto;max-width:100%}.board-wrap .board{width:min(100cqw / var(--cq-zoom,1) - 24px, (100cqh / var(--cq-zoom,1) - 24px) * var(--board-ratio,1));height:auto;max-height:none}}.ink-fx-sparkle,.ink-fx-water,.ink-fx-bubbles,.ink-fx-aurora,.ink-fx-stardust,.ink-fx-plasma,.ink-fx-sakura{pointer-events:none}.ink-fx-water polyline,.ink-fx-aurora polyline,.ink-fx-stardust polyline,.ink-fx-plasma polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.ink-fx-sparkle{display:var(--ink-fx-sparkle,none)}.ink-fx-sparkle path{fill:#fff;transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite ink-twinkle}@keyframes ink-twinkle{0%,to{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1)}}.ink-fx-water{display:var(--ink-fx-water,none)}.ink-fx-water polyline{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round}.water-wide{stroke-width:calc(var(--ink-width) * .8);stroke-dasharray:30 34;opacity:.16;animation:1.8s linear infinite water-wide}.water-fine{stroke-width:2.6px;stroke-dasharray:2 9 10 17 4 22;opacity:.6;animation:1.1s linear infinite water-fine}@keyframes water-wide{to{stroke-dashoffset:-64px}}@keyframes water-fine{to{stroke-dashoffset:-64px}}.ink-fx-bubbles{display:var(--ink-fx-bubbles,none)}.ink-fx-bubbles circle{fill:#ffffff40;stroke:#fff;stroke-width:1.6px;transform-box:fill-box;transform-origin:50%;animation:2.2s ease-out infinite ink-bubble}@keyframes ink-bubble{0%{opacity:0;transform:translateY(4px)scale(.2)}55%{opacity:.95;transform:translateY(-3px)scale(1)}72%{opacity:0;transform:translateY(-5px)scale(1.5)}to{opacity:0;transform:translateY(-5px)scale(1.5)}}.ink-fx-aurora{display:var(--ink-fx-aurora,none)}.aurora-halo-a,.aurora-halo-b{stroke-width:calc(var(--ink-width) * 1.7);opacity:0}.aurora-halo-a{stroke:#2bffb0;animation:4s ease-in-out infinite aurora-halo-a}.aurora-halo-b{stroke:#c77dff;animation:4s ease-in-out infinite aurora-halo-b}@keyframes aurora-halo-a{0%,55%,to{opacity:0}25%{opacity:.38}}@keyframes aurora-halo-b{0%,45%,to{opacity:0}72%{opacity:.38}}.aurora-ribbon-a,.aurora-ribbon-b{stroke-width:2.6px;stroke-dasharray:70 18}.aurora-ribbon-a{stroke:#b6ffe2;opacity:.95;animation:2.4s linear infinite aurora-ribbon}.aurora-ribbon-b{stroke:#f0c8ff;opacity:.85;animation:3.2s linear infinite reverse aurora-ribbon}@keyframes aurora-ribbon{to{stroke-dashoffset:-88px}}.ink-fx-stardust{display:var(--ink-fx-stardust,none)}.stardust-near{stroke:#fff;stroke-width:3.4px;stroke-dasharray:.1 14;animation:1.6s linear infinite stardust-near}.stardust-far{stroke:#ffe9a8;stroke-width:2.2px;stroke-dasharray:.1 23;animation:2.8s linear infinite stardust-far}@keyframes stardust-near{0%{stroke-dashoffset:0;opacity:.95}50%{opacity:.45}to{stroke-dashoffset:-14px;opacity:.95}}@keyframes stardust-far{0%{stroke-dashoffset:0;opacity:.3}50%{opacity:1}to{stroke-dashoffset:23px;opacity:.3}}.ink-fx-plasma{display:var(--ink-fx-plasma,none)}.plasma-glow{stroke:#e07bff;stroke-width:calc(var(--ink-width) * 1.9);animation:1.6s ease-in-out infinite plasma-glow}@keyframes plasma-glow{0%,to{opacity:.12}50%{opacity:.3}}.plasma-core{stroke:#fff;stroke-width:calc(var(--ink-width) * .26);animation:.5s step-end infinite plasma-core}@keyframes plasma-core{0%{opacity:.95}30%{opacity:.5}45%{opacity:1}70%{opacity:.7}}.plasma-arc{stroke:#bff6ff;stroke-width:1.8px;stroke-dasharray:3 7 1 16 6 11;animation:.4s steps(4,end) infinite plasma-arc}@keyframes plasma-arc{to{stroke-dashoffset:-44px}}.ink-fx-sakura{display:var(--ink-fx-sakura,none)}.ink-fx-sakura path{fill:#ffe1ee;stroke:#ff8fbf;stroke-width:1px;transform-box:fill-box;transform-origin:50%;animation:2.8s ease-in-out infinite sakura-petal}@keyframes sakura-petal{0%{opacity:0;transform:translate(0)rotate(0)scale(.5)}25%{opacity:1;transform:translate(3px,-4px)rotate(60deg)scale(1)}80%{opacity:.85;transform:translate(14px,-10px)rotate(220deg)scale(1)}to{opacity:0;transform:translate(18px,-12px)rotate(260deg)scale(.8)}}@media (prefers-reduced-motion:reduce){.ink-fx-sparkle path,.ink-fx-water polyline,.ink-fx-aurora polyline,.ink-fx-stardust polyline,.ink-fx-plasma polyline,.ink-fx-bubbles circle,.ink-fx-sakura path{animation:none}.ink-fx-sparkle path,.ink-fx-bubbles circle,.ink-fx-sakura path{opacity:.7}}.skin-card{position:relative}.tier-tag{color:#fff;letter-spacing:.04em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:calc(100% - 8px);padding:1px 6px;font-size:9px;font-weight:900;position:absolute;top:-7px;right:6px;overflow:hidden}.gesture-hint{pointer-events:none}.gesture-trail{stroke:var(--text);stroke-width:6px;stroke-linecap:round;stroke-dasharray:2 12;opacity:.25}.gesture-move{animation:1.8s ease-in-out infinite gesture-swipe}.gesture-touch{fill:#ffffff8c;stroke:var(--text);stroke-width:3px}.gesture-hand{filter:drop-shadow(0 3px #3c1e0a40)}.hand-fill,.hand-fill-only{fill:#fdd3aa}.hand-fill,.hand-line{stroke:#1a1410;stroke-width:30px;stroke-linejoin:round;stroke-linecap:round}.hand-fill-only{stroke:none}.hand-line{fill:none}.gesture-hint.faint{opacity:.85}@keyframes gesture-swipe{0%{opacity:0;transform:translate(0)scale(1.1)}15%{opacity:1;transform:translate(0)scale(1)}25%{transform:translate(0)scale(.9)}65%{opacity:1;transform:translate(var(--gx), var(--gy)) scale(.9)}85%,to{opacity:0;transform:translate(var(--gx), var(--gy)) scale(.9)}}@media (prefers-reduced-motion:reduce){.gesture-move{animation:none}}.game .board-wrap{position:relative}.tip-banner{pointer-events:none;z-index:5;background:var(--text);width:max-content;max-width:calc(100% - 16px);color:var(--bg);box-shadow:var(--shadow);cursor:pointer;border-radius:18px;align-items:center;gap:10px;padding:10px 16px 10px 12px;font-size:15px;font-weight:800;line-height:1.3;animation:4.2s both tip-in;display:flex;position:absolute;top:6px;left:50%;transform:translate(-50%)}.tip-mark{background:var(--star);width:32px;height:32px;color:var(--text);border-radius:50%;flex:none;place-items:center;font-size:18px;display:grid}@keyframes tip-in{0%{opacity:0;transform:translate(-50%,-10px)scale(.96)}8%,88%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-6px)}}@media (prefers-reduced-motion:reduce){.tip-banner{animation:none}}.upcoming-card{border:2px dashed color-mix(in srgb, var(--muted) 45%, transparent);box-shadow:none;color:var(--muted);background:0 0}.upcoming-thumb{background:color-mix(in srgb, var(--surface) 60%, transparent)}.upcoming-thumb .icon{width:34px;height:34px;color:var(--muted)}.upcoming-card .level-id{color:var(--muted);font-size:20px}.ghost-path.full{stroke-width:6px;stroke-dasharray:12 6;stroke-linecap:butt;opacity:.7;animation:.9s linear infinite ghost-flow}@keyframes ghost-flow{0%{stroke-dashoffset:18px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.ghost-path.full{animation:none}}.ghost-turn-mark circle{fill:var(--board);stroke:var(--preview);stroke-width:3px;opacity:.9}.ghost-turn-mark path{fill:none;stroke:var(--preview);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.ghost-exit{fill:none;stroke:var(--preview);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.sound-controls{align-items:center;gap:14px;width:100%;display:flex}.mute-box{background:var(--bg);width:48px;height:48px;color:var(--text);box-shadow:inset 0 0 0 2px var(--cell);border:0;border-radius:14px;flex:none;place-items:center;display:grid;position:relative}.mute-box .icon{width:26px;height:26px}.mute-x{display:none;position:absolute;inset:8px}.mute-x:before,.mute-x:after{content:"";background:var(--danger);border-radius:2px;height:4px;margin-top:-2px;position:absolute;top:50%;left:-2px;right:-2px}.mute-x:before{transform:rotate(45deg)}.mute-x:after{transform:rotate(-45deg)}.mute-box.muted .mute-x{display:block}.mute-box.muted .icon{opacity:.45}.volume-slider{appearance:none;background:0 0;flex:1;height:32px;margin:0}.volume-slider::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--ink) var(--fill,80%), var(--cell) var(--fill,80%));border-radius:999px;height:10px}.volume-slider::-moz-range-track{background:linear-gradient(90deg, var(--ink) var(--fill,80%), var(--cell) var(--fill,80%));border-radius:999px;height:10px}.volume-slider::-webkit-slider-thumb{background:var(--surface);width:28px;height:28px;box-shadow:0 0 0 3px var(--ink), var(--shadow-sm);appearance:none;border:0;border-radius:50%;margin-top:-9px}.volume-slider::-moz-range-thumb{background:var(--surface);width:28px;height:28px;box-shadow:0 0 0 3px var(--ink), var(--shadow-sm);border:0;border-radius:50%}.volume-slider:disabled{opacity:.4}.haptic-switch{opacity:0;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:0;overflow:hidden}.sheet button.ad-buy{--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark);align-items:center;gap:6px;display:inline-flex}.sheet button.ad-buy .icon{fill:currentColor;stroke:none;width:16px;height:16px}.ad-overlay{z-index:40;background:#0a0816eb;align-items:center}.ad-frame{color:#f4f0ff;text-align:center;background:#1c1733;border-radius:24px;flex-direction:column;align-items:center;gap:14px;width:min(100%,360px);padding:44px 20px 24px;display:flex;position:relative}.ad-tag{color:#2a1d00;background:#f4c84a;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:800;position:absolute;top:14px;left:16px}.ad-frame .ad-close{color:#fff;width:44px;height:44px;box-shadow:none;background:#ffffff1f;position:absolute;top:6px;right:6px}.ad-art{aspect-ratio:16/10;background:linear-gradient(135deg,#7b4dff,#1f6bff 55%,#11b5a4);border-radius:16px;place-items:center;width:100%;display:grid}.ad-count{font-family:var(--font-display);font-size:56px;font-weight:800;line-height:1}.ad-count .icon{fill:#fff;width:56px;height:56px}.ad-test{opacity:.6;margin:0;font-size:13px}.ad-status{min-height:1.4em;margin:0;font-weight:700}.ad-frame .ad-close[hidden]{display:none}.pack{flex-wrap:wrap}.pack-info{flex:7.5em}.pack-drops{overflow-wrap:break-word}.packs{min-width:0}.sheet button.pack-buy{margin-left:auto}.piece-nib{display:var(--skin-nib,none)}.nib-body{fill:url(#nib-grad);stroke:var(--skin-outline,var(--outline));stroke-width:4px;stroke-linejoin:round}.nib-slit{stroke:var(--skin-outline,var(--outline));stroke-width:3px;stroke-linecap:round}.nib-hole{fill:#e8622c;stroke:var(--skin-outline,var(--outline));stroke-width:2.5px}.nib-gloss{fill:#fff;opacity:.75;animation:2.6s ease-in-out infinite nib-glint}@keyframes nib-glint{0%,70%,to{opacity:.55}80%{opacity:1}}@media (prefers-reduced-motion:reduce){.nib-gloss{animation:none}}.noads-badge{background:var(--piece);color:#fff;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;display:grid}.noads-badge .icon{fill:none;stroke:currentColor;stroke-width:2px;width:26px;height:26px}.reward{flex-wrap:wrap}.sheet button.reward-ad{white-space:normal;--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark);flex:0 auto;align-items:center;gap:6px;width:auto;min-height:44px;margin:0 0 0 auto;padding:8px 14px;font-size:14px;display:inline-flex}.sheet button.with-icon{justify-content:center;align-items:center;gap:8px;display:flex}.sheet button.reward-ad .icon,.sheet button.with-icon .icon{fill:currentColor;stroke:none;width:16px;height:16px}.tier-common{background:color-mix(in srgb, var(--muted) 70%, var(--surface))}.tier-rare{background:#1f6bff}.tier-superRare{background:linear-gradient(90deg,#ff7cc8,#7b4dff,#1fb6d6)}.tier-special{color:#fff;background:linear-gradient(100deg,#e0143c 0%,#ff6b81 45%,#e0143c 55%,#b30d3a 100%) 0 0/250% 100%;animation:2.8s ease-in-out infinite tier-special-shine}@keyframes tier-special-shine{0%,60%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.tier-special{animation:none}}.skin-stage-name .tier-tag{vertical-align:middle;margin-left:8px;font-size:10px;display:inline-block;position:static}.ink-fx-signature{display:var(--ink-fx-signature,none);pointer-events:none}.signature-broad{fill:none;stroke:var(--trail);stroke-width:calc(var(--ink-width) * 1.5);stroke-linecap:round;stroke-linejoin:round}.signature-sheen{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;stroke-dasharray:22 200;opacity:.6;animation:2.6s linear infinite signature-sheen}@keyframes signature-sheen{0%{stroke-dashoffset:222px}to{stroke-dashoffset:0}}.signature-drop{fill:var(--trail)}@media (prefers-reduced-motion:reduce){.signature-sheen{opacity:.35;animation:none}}.skin-grid:has(.redeem-card){padding-top:4px;display:block}.redeem-card{border:3px solid var(--outline);background:var(--surface);box-shadow:0 5px 0 var(--outline);border-radius:24px;overflow:hidden}.redeem-head{border-bottom:3px solid var(--outline);background:linear-gradient(180deg, color-mix(in srgb, var(--ink) 78%, #fff), var(--ink));color:var(--on-ink);font:900 21px var(--font-display);align-items:center;gap:10px;padding:10px 16px;display:flex}.redeem-badge{border:3px solid var(--outline);background:var(--piece);color:#fff;border-radius:11px;flex:none;place-items:center;width:36px;height:36px;display:grid}.redeem-badge .icon{fill:none;stroke:currentColor;stroke-width:2.4px;width:22px;height:22px}.redeem-body{background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--ink) 6%, transparent) 0 2px, transparent 2px 14px), repeating-linear-gradient(-45deg, color-mix(in srgb, var(--ink) 6%, transparent) 0 2px, transparent 2px 14px), var(--surface);flex-direction:column;gap:12px;margin:0;padding:18px 16px 16px;display:flex}.redeem-hint{color:var(--text);text-align:center;margin:0;font-weight:800}.redeem-input{border:3px solid color-mix(in srgb, var(--ink) 35%, transparent);background:var(--bg);min-height:58px;color:var(--text);font:900 26px var(--font-display);letter-spacing:.08em;text-align:center;border-radius:14px;padding:0 14px;box-shadow:inset 0 3px #0000001f}.redeem-input::placeholder{color:var(--muted);letter-spacing:0;text-transform:none;font-size:20px;font-weight:700}.redeem-input:focus{border-color:var(--ink);outline:none}.redeem-button{min-height:56px;font:900 20px var(--font-display);letter-spacing:.06em;text-transform:uppercase;--btn-fill:var(--piece);--btn-text:#fff;--btn-depth:var(--piece-dark)}.redeem-button:active{transform:translateY(3px)}.redeem-button:disabled{opacity:.7}.redeem-msg{min-height:1.4em;color:var(--success);text-align:center;margin:0;font-weight:900}.redeem-msg.bad{color:var(--danger)}.skin-stage.code{display:none}.skin-stage-info{display:contents}.skin-trial{display:none}.ink-fx-pixel{display:var(--ink-fx-pixel,none);pointer-events:none}.pixel-march{fill:none;stroke:#fff;stroke-width:6px;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:6 12;opacity:.7;animation:.8s steps(3,end) infinite pixel-march}@keyframes pixel-march{0%{stroke-dashoffset:18px}to{stroke-dashoffset:0}}.pixel-spark{fill:#fff;opacity:0;animation:1.4s step-end infinite pixel-spark}@keyframes pixel-spark{0%{opacity:0}15%{opacity:.5}30%{opacity:1}45%{opacity:.5}60%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.pixel-march,.pixel-spark{animation:none}.pixel-spark{opacity:.7}}.title-screen{isolation:isolate;position:relative}.title-decor{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.decor{opacity:.55;transform:rotate(var(--r,0deg));animation:7s ease-in-out infinite alternate decor-float;display:block;position:absolute}.decor .swatch{width:100%;height:auto;display:block;overflow:visible}.decor-drop .icon{width:100%;height:auto;fill:var(--trail,var(--ink));stroke:none;display:block}.decor-drop{opacity:.35}@keyframes decor-float{0%{transform:translateY(0) rotate(var(--r,0deg))}to{transform:translateY(-14px) rotate(calc(var(--r,0deg) + 8deg))}}.logo-art{animation:4.5s ease-in-out .6s infinite logo-bob}@keyframes logo-bob{50%{transform:translateY(-5px)}}.title-stats{justify-content:center;gap:8px;margin-top:10px;display:flex}.title-stat{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--text);border-radius:999px;align-items:center;gap:5px;padding:4px 12px 4px 9px;font-size:15px;font-weight:900;display:inline-flex}.title-stat .icon{width:17px;height:17px;fill:var(--star);stroke:none}.title-stat.drops .icon{fill:var(--ink)}.demo-card{box-shadow:0 6px 0 color-mix(in srgb, var(--cell) 75%, transparent), var(--shadow), 0 0 0 10px color-mix(in srgb, var(--ink) 6%, transparent), 0 18px 60px -10px color-mix(in srgb, var(--ink) 35%, transparent)}@media (height<=640px){.title-stats{margin-top:4px}.title-stat{padding:2px 10px 2px 8px;font-size:13px}}@media (prefers-reduced-motion:reduce){.decor,.logo-art{animation:none}}.redeem-success{text-align:center;align-items:center;animation:.35s cubic-bezier(.2,.9,.3,1.3) both redeem-pop}@keyframes redeem-pop{0%{opacity:0;transform:scale(.85)}}.redeem-success-icon{border:3px solid var(--outline);background:var(--piece);width:72px;height:72px;box-shadow:0 5px 0 var(--piece-dark);color:#fff;border-radius:22px;place-items:center;margin:0 auto 4px;display:grid}.redeem-success-icon .icon{fill:none;stroke:currentColor;stroke-width:2.2px;width:38px;height:38px}.redeem-success-icon.drop .icon{fill:currentColor;stroke:none}:is(.play-button,.primary-button,.pill-button,.sheet button:not(.reward),.skin-stage button,.redeem-button,.choice button,.segmented button,.free-button,.daily-button){border:3px solid var(--outline);background:linear-gradient(180deg, color-mix(in srgb, var(--btn-fill,var(--surface)) 78%, #fff), var(--btn-fill,var(--surface)));color:var(--btn-text,var(--text));box-shadow:inset 0 3px 0 #ffffff4d, 0 5px 0 var(--btn-depth,color-mix(in srgb, var(--outline) 45%, var(--surface)));border-radius:16px;transition:transform 80ms,box-shadow 80ms}:is(.play-button,.primary-button,.pill-button,.sheet button:not(.reward),.skin-stage button,.redeem-button,.choice button,.segmented button,.free-button,.daily-button):active:not(:disabled){box-shadow:inset 0 3px 0 #ffffff4d, 0 2px 0 var(--btn-depth,color-mix(in srgb, var(--outline) 45%, var(--surface)));transform:translateY(3px)}:is(.primary-button,.pill-button,.sheet button:not(.reward),.skin-stage button,.redeem-button):disabled{border-color:color-mix(in srgb, var(--outline) 30%, transparent);background:var(--bg);color:var(--muted);box-shadow:none}.play-button{box-shadow:inset 0 3px 0 #ffffff4d, 0 6px 0 var(--piece-dark), 0 16px 30px -8px color-mix(in srgb, var(--piece) 60%, transparent)}.free-button{--btn-fill:var(--ink);--btn-text:var(--on-ink);--btn-depth:color-mix(in srgb, var(--ink) 55%, black);justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 16px;font-size:20px;font-weight:900;display:flex}.free-button-best{background:#ffffff38;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:800}.topbar .level-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mode-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mode-row>button{flex-direction:column;gap:3px;min-height:60px;padding:6px 8px;font-size:17px;line-height:1.1}.mode-row .free-button-name{align-items:center;gap:6px;display:inline-flex}.mode-row .free-button-best{font-size:12px}.daily-button{--btn-fill:var(--star);--btn-text:#3a2600;--btn-depth:var(--star-dark);justify-content:center;align-items:center;font-weight:900;display:flex}.daily-button .icon{fill:none;stroke:currentColor;stroke-width:2.4px;width:18px;height:18px}.daily-button.solved{--btn-fill:var(--surface);--btn-text:var(--text);--btn-depth:var(--cell)}.daily-button .free-button-best{background:#ffffff73}.streak-block{vertical-align:-.28em;flex:none;width:1.25em;height:auto}.free-button-best .streak-block{width:1.15em;margin-right:2px}.daily-streak{border:3px solid var(--outline);background:linear-gradient(color-mix(in srgb, var(--star) 55%, var(--surface)), color-mix(in srgb, var(--star) 35%, var(--surface)));box-shadow:0 4px 0 var(--outline);color:var(--text);border-radius:16px;align-items:center;gap:8px;padding:7px 16px 7px 10px;font-weight:900;display:inline-flex}button.title-stat.quests{font:inherit;border:0;font-size:15px;font-weight:900}.title-stat.quests .icon{fill:none;stroke:var(--success);stroke-width:3px}.title-stat.quests.ready{background:var(--star);color:#3a2600;animation:1.6s ease-in-out infinite breathe}.title-stat.quests.ready .icon{stroke:#3a2600}.free-score{justify-items:end;line-height:1;display:grid}.free-score-label{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.free-score-value{font:900 30px var(--font-display);color:var(--text)}.free-pop{z-index:6;pointer-events:none;color:var(--ink);font:900 26px var(--font-display);text-shadow:0 2px 0 var(--surface);opacity:0;animation:1.1s ease-out forwards free-pop;position:absolute;transform:translate(-50%,-50%)}.free-pop.turned{color:var(--star);-webkit-text-stroke:2px var(--outline);font-size:34px}@keyframes free-pop{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}20%{opacity:1;transform:translate(-50%,-60%)scale(1.1)}to{opacity:0;transform:translate(-50%,-160%)scale(1)}}.free-play .board-wrap{position:relative}.free-over{text-align:center}.free-final{justify-items:center;display:grid}.free-final-label{color:var(--muted);text-transform:uppercase;font-weight:800}.free-final-value{font:900 64px/1 var(--font-display);color:var(--text)}.free-best{color:var(--muted);font-weight:800}.free-best.new{background:var(--star);color:#3a2600;border-radius:999px;justify-self:center;padding:4px 14px}.quest-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.quest{background:var(--bg);text-align:left;border-radius:16px;align-items:center;gap:12px;padding:12px;display:flex}.quest-check{border:3px solid var(--outline);background:var(--surface);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.quest.done .quest-check{background:var(--success);color:#fff}.quest-check .icon{fill:none;stroke:currentColor;stroke-width:3px;width:18px;height:18px}.quest-info{flex:1;min-width:0}.quest-text{font-weight:800}.quest-bar{background:color-mix(in srgb, var(--muted) 25%, transparent);border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.quest-fill{border-radius:inherit;background:var(--ink);height:100%;display:block}.quest.done .quest-fill{background:var(--success)}.quest-count{color:var(--muted);flex:none;font-weight:900}.quest-note{color:var(--muted);text-align:center;margin:0;font-weight:800}.quest-note.done{color:var(--success)}@media (prefers-reduced-motion:reduce){.free-pop{animation-duration:10ms}.title-stat.quests.ready{animation:none}}a.link-button{justify-content:center;align-items:center;text-decoration:none;display:flex}html[data-fold]{--seg1:calc(var(--fold-a) / var(--ui-scale,1));--hinge:calc(var(--fold-gap) / var(--ui-scale,1));--seg2:calc(var(--fold-b) / var(--ui-scale,1))}html[data-fold] .screen.game{grid-template-columns:minmax(0,1fr);display:grid}html[data-fold=h] .screen.game{grid-template-columns:var(--seg1) var(--hinge) minmax(0, 1fr);grid-template-rows:auto auto minmax(0,1fr) auto;max-width:none;margin:0;padding-inline:0}html[data-fold=h] .screen.game>:is(.topbar,.progress,.message,.coach,.controls){grid-column:3;justify-self:center;width:min(480px,100% - 32px)}html[data-fold=h] .screen.game>.board-wrap{grid-area:1/1/-1;justify-self:stretch;width:auto;padding:16px}html[data-fold=h] .screen.game>.topbar{grid-row:1}html[data-fold=h] .screen.game>.progress{grid-row:2}html[data-fold=h] .screen.game>:is(.message,.coach){grid-row:3;align-self:center}html[data-fold=h] .screen.game>.controls{grid-row:4}html[data-fold=v] .screen.game{grid-template-rows:calc(var(--seg1) - env(safe-area-inset-top)) var(--hinge) minmax(0, 1fr) auto auto auto auto minmax(0, 1fr)}html[data-fold=v] .screen.game>.board-wrap{grid-row:1;padding:12px 0}html[data-fold=v] .screen.game>.topbar{grid-row:4}html[data-fold=v] .screen.game>.progress{grid-row:5}html[data-fold=v] .screen.game>:is(.message,.coach){grid-row:6}html[data-fold=v] .screen.game>.controls{grid-row:7}.free-big{display:none}html[data-fold] .free-play>.free-big{justify-items:center;gap:4px;line-height:1;display:grid}html[data-fold] .free-play .topbar .free-score{visibility:hidden}.free-big-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:14px;font-weight:800}.free-big-value{font:900 min(128px, var(--seg2,400px) * .28) var(--font-display);font-variant-numeric:tabular-nums;color:var(--text)}.free-big-value.best{color:var(--star);-webkit-text-stroke:3px var(--outline)}.free-big-value.bump{animation:.35s cubic-bezier(.2,.9,.3,1.4) free-big-bump}@keyframes free-big-bump{40%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.free-big-value.bump{animation:none}}html[data-fold=h] .screen.free-play{grid-template-rows:auto minmax(0,1fr) auto auto minmax(0,1fr) auto}html[data-fold=h] .screen.free-play>.free-big{grid-area:3/3}html[data-fold=h] .screen.free-play>.message{grid-row:4;align-self:start;min-height:0}html[data-fold=h] .screen.free-play>.controls{grid-row:6}html[data-fold=v] .screen.free-play>.free-big{grid-row:5;margin:2px 0 4px}html[data-fold=v] .free-big-value{font-size:clamp(40px, (var(--seg2) - 260px) * .55, 96px)}html[data-fold=v] .screen.free-play>.topbar{padding:8px 0 4px}html[data-fold=v] .screen.free-play>.controls{padding-top:4px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.title-main{display:contents}html[data-fold] .screen.title-screen{grid-template-columns:minmax(0,1fr);justify-content:normal;max-width:none;margin:0;padding-inline:0;display:grid}html[data-fold] .title-main{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:0;padding:0 16px;display:flex}html[data-fold] .title-main .title-hero{padding-top:0}html[data-fold] .title-main .demo-card{margin:0}html[data-fold] .title-screen>.title-actions{place-self:center;width:min(440px,100% - 32px)}html[data-fold=h] .screen.title-screen{grid-template-columns:var(--seg1) var(--hinge) minmax(0, 1fr)}html[data-fold=h] .title-screen>.title-actions{grid-column:3}html[data-fold=v] .screen.title-screen{grid-template-rows:calc(var(--seg1) - env(safe-area-inset-top)) var(--hinge) minmax(0, 1fr)}html[data-fold=v] .title-screen>.title-actions{grid-row:3}.title-decor.fold,html[data-fold] .title-decor:not(.fold){display:none}html[data-fold] .title-decor.fold{display:block}html[data-fold=h] .title-decor.first{width:var(--seg1);right:auto}html[data-fold=h] .title-decor.second{left:calc(var(--seg1) + var(--hinge));width:auto;right:0}html[data-fold=v] .title-decor.first{height:var(--seg1);bottom:auto}html[data-fold=v] .title-decor.second{top:calc(var(--seg1) + var(--hinge));height:auto;bottom:0}html[data-fold=v] .title-main .demo-card{width:min(72%, 300px, var(--seg1) * .42)}html[data-fold=v] .title-main .logo-art img{max-height:calc(var(--seg1) * .2)}html[data-fold] .screen.skins-screen{gap:0;max-width:none;margin:0;padding-inline:0;display:grid}html[data-fold] .skins-screen>:is(.topbar,.skin-tabs,.skin-grid){justify-self:center;width:min(480px,100% - 32px)}html[data-fold] .skins-screen>.skin-grid{min-height:0;margin:0}html[data-fold] .skins-screen>.skin-tabs{margin-bottom:4px}html[data-fold] .skin-stage,html[data-fold] .skin-stage.code{place-self:center;display:grid}html[data-fold] .skin-trial{background:var(--board);border-radius:22px;padding:10px;display:block}html[data-fold] .skin-trial .board{max-height:none}html[data-fold] .skin-stage .skin-preview{display:none}html[data-fold=h] .screen.skins-screen{grid-template-columns:var(--seg1) var(--hinge) minmax(0, 1fr);grid-template-rows:auto auto minmax(0,1fr)}html[data-fold=h] .skins-screen>:is(.topbar,.skin-tabs,.skin-grid){grid-column:1}html[data-fold=h] .skins-screen>.topbar{grid-row:1}html[data-fold=h] .skins-screen>.skin-tabs{grid-row:2}html[data-fold=h] .skins-screen>.skin-grid{grid-row:3}html[data-fold=h] .skins-screen>.skin-stage{grid-area:1/3/-1;gap:6px;width:min(420px,100% - 32px);padding:20px 20px 22px}html[data-fold=h] .skin-trial{width:min(100%, 100dvh / var(--ui-scale,1) - 260px);margin-bottom:6px}html[data-fold=v] .screen.skins-screen{grid-template-columns:minmax(0,1fr);grid-template-rows:calc(var(--seg1) - env(safe-area-inset-top)) var(--hinge) auto auto minmax(0, 1fr)}html[data-fold=v] .skins-screen>.skin-stage{grid-row:1;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:20px;width:min(640px,100% - 32px);max-height:calc(100% - 16px);padding:14px 20px 14px 14px}html[data-fold=v] .skin-trial{width:min(320px, var(--seg1) - 80px);grid-row:1/span 3}html[data-fold=v] .skin-stage-info>*{grid-column:2}html[data-fold=v] .skins-screen>.topbar{grid-row:3}html[data-fold=v] .skins-screen>.skin-tabs{grid-row:4}html[data-fold=v] .skins-screen>.skin-grid{grid-row:5}html[data-fold=h] .screen:not(.game,.title-screen,.skins-screen){max-width:min(480px, var(--seg1));margin-left:max(0px, (var(--seg1) - 480px) / 2)}html[data-fold=v] .screen:not(.game,.title-screen,.skins-screen){height:var(--seg1)}html[data-fold=h] .overlay{padding-left:calc(var(--seg1) + var(--hinge) + 16px)}html[data-fold=v] .overlay{padding-top:calc(var(--seg1) + var(--hinge) + 16px)}html[data-fold=v] .overlay>:is(.sheet,.ad-frame,.quick-settings){max-height:calc(var(--seg2) - 32px - env(safe-area-inset-bottom));overflow-y:auto}html[data-fold=h] .toast{left:calc(var(--seg1) + var(--hinge) + var(--seg2) / 2);max-width:calc(var(--seg2) - 32px)}html[data-fold=h] .tweak-panel{left:calc(var(--fold-a) + var(--fold-gap))}html[data-fold=v] .tweak-panel{max-height:var(--fold-b)}html[data-fold=v] .tweak-fab{top:calc(var(--fold-a) + var(--fold-gap) + 12px)}.streak-screen{z-index:25;padding:calc(28px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--piece) 18%, var(--bg)) 0%, var(--bg) 62%);text-align:center;flex-direction:column;align-items:center;gap:10px;animation:.25s ease-out fade-in;display:flex;position:fixed;inset:0;overflow-y:auto}.streak-hero{justify-items:center;margin-top:4vh;display:grid;position:relative}.streak-hero .swatch{z-index:1;width:118px;animation:.7s cubic-bezier(.2,.9,.3,1.4) both streak-shoot,2.6s ease-in-out .8s infinite streak-float;position:relative}.streak-hero-trail{background:var(--trail);transform-origin:top;border-radius:11px;width:22px;height:84px;animation:.6s ease-out .15s both streak-trail;position:absolute;top:70%}@keyframes streak-shoot{0%{opacity:0;transform:translateY(90px)scale(.6)}}@keyframes streak-float{50%{transform:translateY(-8px)rotate(-3deg)}}@keyframes streak-trail{0%{transform:scaleY(0)}}.streak-number{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--piece);-webkit-text-stroke:10px var(--outline);paint-order:stroke fill;text-shadow:0 9px 0 var(--outline);margin-top:60px;font-size:116px;font-weight:900;line-height:1}.streak-number.bump{animation:.45s cubic-bezier(.2,.9,.3,1.5) free-big-bump}.streak-label{font-family:var(--font-display);color:var(--piece);margin-top:-2px;font-size:26px;font-weight:900}.streak-week{background:color-mix(in srgb, var(--cell) 38%, transparent);width:min(100%,380px);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--cell) 55%, transparent);border-radius:22px;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:4px;padding:12px 10px 14px;display:grid}.streak-day{justify-items:center;gap:6px;display:grid}.streak-day-name{color:var(--muted);font-size:14px;font-weight:800}.streak-day.today .streak-day-name{color:var(--piece)}.streak-cell{place-items:center;width:100%;height:44px;display:grid;position:relative}.streak-cell .swatch{z-index:1;width:38px;position:relative}.streak-day.today .streak-cell .swatch{animation:.5s cubic-bezier(.2,.9,.3,1.5) .45s both streak-land}@keyframes streak-land{0%{opacity:0;transform:translateY(-40px)scale(.4)}}.streak-day.linked .streak-cell:before{content:"";background:var(--trail);transform-origin:0;border-radius:5px;width:calc(100% + 6px);height:9px;margin-top:-4.5px;position:absolute;top:50%;right:50%}.streak-day.today.linked .streak-cell:before{animation:.45s ease-out .75s both streak-ink}@keyframes streak-ink{0%{transform:scaleX(0)}}.streak-dot{background:color-mix(in srgb, var(--cell) 70%, transparent);border-radius:10px;width:34px;height:34px}.streak-day.future .streak-dot{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--cell) 80%, transparent);background:0 0}.streak-note{max-width:330px;color:var(--muted);margin:12px 0 0;font-size:15px}.streak-go{width:min(100%,420px);margin-top:auto}@media (height<=700px){.streak-screen{padding-top:calc(14px + env(safe-area-inset-top));gap:6px}.streak-hero{margin-top:0}.streak-hero .swatch{width:84px}.streak-hero-trail{height:54px}.streak-number{margin-top:34px;font-size:88px}.streak-label{font-size:22px}.streak-week{margin-top:0}.streak-note{margin-top:4px;font-size:14px}}@media (prefers-reduced-motion:reduce){.streak-screen,.streak-hero .swatch,.streak-hero-trail,.streak-number.bump,.streak-day.today .streak-cell .swatch,.streak-day.today.linked .streak-cell:before{animation:none}}
