@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(./baloo-2-latin-500-normal-CmLZ27r7.woff2) format("woff2"),url(./baloo-2-latin-500-normal-BSdEhq8m.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:600;src:url(./baloo-2-latin-600-normal-tIfxVoAe.woff2) format("woff2"),url(./baloo-2-latin-600-normal-B4tNaogw.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(./baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(./baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:800;src:url(./baloo-2-latin-800-normal-BbF3Etk1.woff2) format("woff2"),url(./baloo-2-latin-800-normal-B8BXfZF7.woff) format("woff")}:root{--clay: #f3efe4;--clay-hi: #fffdf6;--clay-low: #e9e3d3;--clay-shade: #d9d2bf;--ink: #23331e;--muted: #5f6f58;--faint: #7c8a74;--leaf: #8bcf6e;--leaf-deep: #5a9e43;--leaf-text: #3a7428;--leaf-pale: #eaf7df;--on-leaf: #1f4716;--butter: #f6cf6a;--butter-deep: #d9a62f;--butter-pale: #fcf0c8;--beacon: #ffe03d;--beacon-rim: #3d2c06;--on-butter: #6b4706;--sky: #93cdf2;--sky-deep: #5ea4d6;--on-sky: #17476b;--brick: #e98b6d;--brick-deep: #a8431f;--on-brick: #5c1d0c;--money: #8f5c10;--haze: #c5d9ad;--scrim: rgba(28, 42, 22, .32);--clay-panel: inset 6px 6px 10px rgba(255, 255, 255, .75), inset -6px -7px 12px rgba(120, 105, 70, .22), 0 12px 20px rgba(30, 45, 20, .28);--clay-chip: inset 4px 4px 8px rgba(255, 255, 255, .75), inset -4px -5px 9px rgba(120, 105, 70, .22), 0 6px 14px rgba(30, 45, 20, .26);--clay-card: inset 3px 3px 5px rgba(255, 255, 255, .9), inset -3.5px -4.5px 7px rgba(120, 105, 70, .2), 0 5px 9px rgba(60, 50, 30, .18);--clay-sheet: inset 6px 6px 10px rgba(255, 255, 255, .75), 0 -8px 28px rgba(30, 45, 20, .25);--puff: inset 5px 5px 8px rgba(255, 255, 255, .55), inset -5px -6px 9px rgba(0, 0, 0, .18), 0 8px 14px rgba(30, 45, 20, .3);--puff-small: inset 3px 3px 5px rgba(255, 255, 255, .55), inset -3px -4px 6px rgba(0, 0, 0, .16), 0 4px 8px rgba(30, 45, 20, .24);--puff-pressed: inset 3px 3px 6px rgba(255, 255, 255, .4), inset -3px -4px 7px rgba(0, 0, 0, .22), 0 2px 4px rgba(30, 45, 20, .28);--sunk: inset 3px 3px 6px rgba(120, 105, 70, .28), inset -3px -3px 6px rgba(255, 255, 255, .8);--r-xs: 8px;--r-sm: 14px;--r-md: 20px;--r-lg: 27px;--r-xl: 34px;--pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--icon-xs: 12px;--icon-s: 15px;--icon-m: 20px;--icon-l: 22px;--icon-xl: 32px;--font: "Baloo 2", "Arial Rounded MT Bold", ui-rounded, "Helvetica Neue", system-ui, sans-serif;--fs-xs: 11px;--fs-s: 13px;--fs-m: 15px;--fs-l: 18px;--fs-xl: 28px;--caps: .06em;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.45, .55, 1);--give: 1;--dur-press: .08s;--dur-fast: .16s;--dur-med: .24s;--dur-slow: .34s;--safe-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));--safe-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--safe-left: var(--safe-area-inset-left, env(safe-area-inset-left, 0px));--safe-right: var(--safe-area-inset-right, env(safe-area-inset-right, 0px));--gutter-left: max(12px, var(--safe-left));--gutter-right: max(12px, var(--safe-right));--column: 560px;--column-left: max(var(--gutter-left), calc((100% - var(--column)) / 2));--column-right: max(var(--gutter-right), calc((100% - var(--column)) / 2));color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}html{background:var(--haze)}body{background:var(--haze);color:var(--ink);font-family:var(--font);font-weight:500;overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%}button{font-family:var(--font)}h1,h2,b{font-weight:800}button:focus-visible,a:focus-visible{outline:3px solid var(--sky-deep);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}#app{position:fixed;inset:0;z-index:1}.world{position:absolute;inset:0;z-index:0}.world.inert canvas{pointer-events:none}.veil{position:absolute;inset:0;z-index:50;pointer-events:none;background:radial-gradient(circle at 50% 45%,#e6f0d8 0%,var(--haze) 75%);opacity:0;transition:opacity .6s ease-out}.veil.shown{opacity:1;transition:opacity .38s ease-in}html[data-travel=out] .veil,html[data-travel=in] .veil{pointer-events:auto}.screen{position:absolute;inset:0;z-index:3;pointer-events:none}.screen[hidden]{display:none}.box{background:var(--clay);border-radius:var(--r-lg);box-shadow:var(--clay-chip)}.lbl{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:var(--caps);text-transform:uppercase;color:var(--muted)}.num{font-variant-numeric:tabular-nums}.icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.icon .solid{fill:currentColor}.icon .dot{fill:currentColor;stroke:none}.icon .beacon{fill:var(--beacon);stroke:var(--beacon-rim);stroke-width:1.4}.icon.medal{width:var(--icon-s);height:var(--icon-s)}.badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-xs);font-weight:800;line-height:1.5;letter-spacing:var(--caps);text-transform:uppercase;padding:0 7px;border-radius:var(--pill);vertical-align:middle}.badge .icon{width:var(--icon-xs);height:var(--icon-xs);stroke-width:3.2}.badge.test{background:var(--sky);color:var(--on-sky)}.badge.ok{background:var(--leaf);color:var(--on-leaf)}.badge.lock{background:var(--clay-shade);color:var(--muted)}.btn{--fill: var(--clay);--on: var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);font-size:16px;font-weight:700;min-height:44px;padding:var(--s-2) var(--s-4);border:none;border-radius:var(--pill);background:var(--fill);color:var(--on);box-shadow:var(--puff);cursor:pointer;text-align:center;touch-action:manipulation;white-space:nowrap;pointer-events:auto;transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) ease,filter var(--dur-fast) ease,opacity var(--dur-med) ease}.btn .icon{width:var(--icon-m);height:var(--icon-m)}.btn .icon.lead{margin-left:-2px}.btn .icon.trail{margin-right:-2px}.btn.play,.btn.gold,.btn.red,.btn.blue{font-weight:800}.btn.play{--fill: var(--leaf);--on: var(--on-leaf)}.btn.play.running,.btn.gold{--fill: var(--butter);--on: var(--on-butter)}.btn.red{--fill: var(--brick);--on: var(--on-brick)}.btn.blue{--fill: var(--sky);--on: var(--on-sky)}.btn.small{min-height:36px;font-size:var(--fs-s);padding:var(--s-1) var(--s-3);box-shadow:var(--puff-small)}.btn.small .icon{width:18px;height:18px}.btn[aria-pressed=true]{--fill: var(--leaf-pale);--on: var(--on-leaf)}.btn:active:not(:disabled){transform:scale(calc(1 - .05 * var(--give)));box-shadow:var(--puff-pressed);filter:brightness(.97);transition-duration:var(--dur-press)}.btn:disabled{opacity:.45;box-shadow:var(--puff-small);filter:saturate(.6);cursor:not-allowed}.btn[hidden]{display:none}.btn.round{width:48px;height:48px;min-height:0;padding:0;border-radius:50%}.btn.round .icon{width:var(--icon-l);height:var(--icon-l)}.btn.round.small{width:40px;height:40px}.btn.round.small .icon{width:var(--icon-m);height:var(--icon-m)}.title-screen>*{pointer-events:auto}.title-screen>.title-shade{pointer-events:none;position:absolute;left:0;right:0;bottom:0;height:calc(var(--safe-bottom) + 220px);background:linear-gradient(to top,#1c2a1652 20%,#1c2a1600);transition:opacity .3s ease}.title-safe-top{position:absolute;top:var(--safe-top);left:0;width:0;height:0}.title-menu{position:absolute;bottom:calc(max(var(--safe-bottom),12px) + 8px);left:max(var(--gutter-left),calc((100% - 440px)/2));right:max(var(--gutter-right),calc((100% - 440px)/2));display:flex;flex-direction:column;gap:12px;animation:rise-in .5s .1s var(--ease-out) both}.title-screen .title-menu{transition:opacity var(--dur-med) ease}.title-screen.covered .title-menu,.title-screen.covered .title-shade{opacity:0;pointer-events:none;transition:opacity .2s ease}.title-screen.arriving .title-menu,.title-screen.arriving .title-shade{opacity:0;animation:none;pointer-events:none}.title-menu .btn{--puff: inset 5px 5px 9px rgba(255, 255, 255, .5), inset -5px -7px 11px rgba(0, 0, 0, .16), 0 10px 17px rgba(30, 45, 20, .3);min-height:52px;font-size:19px;font-weight:800}.stack{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;text-align:left}.stack>small{font-size:12px;font-weight:600;line-height:1.2;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.stack>.name{display:flex;align-items:baseline;gap:8px;line-height:1}.title-menu .title-play{min-height:68px;justify-content:flex-start;gap:12px;padding-left:18px}.title-play .icon{width:34px;height:34px}.title-play .name{font-size:30px;line-height:1.05}.title-daily{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.title-daily-play{justify-content:flex-start;gap:10px;padding-left:16px;min-width:0}.title-daily-play{--icon-m: 24px}.title-daily-play .name{font-size:20px;line-height:1.05}.title-daily-play .streak{align-self:center;font-size:var(--fs-xs);font-weight:800;line-height:1.6;padding:0 7px;border-radius:var(--pill);background:var(--brick);color:var(--on-brick);box-shadow:var(--puff-small)}.title-daily-play .streak[hidden]{display:none}.title-menu .btn.round.title-round{--icon-l: 24px;width:52px;height:52px;border-radius:50%}@keyframes drop-in{0%{transform:translateY(-14px);opacity:0}}@keyframes rise-in{0%{transform:translateY(24px);opacity:0}}.hud-top,.hud-bottom{position:absolute;left:var(--column-left);right:var(--column-right);display:flex;flex-direction:column;gap:6px;pointer-events:none}.hud-top{top:calc(var(--safe-top) + 8px);animation:drop-in .4s .15s var(--ease-out) both}.hud-bottom{bottom:calc(var(--safe-bottom) + 8px);gap:8px;animation:rise-in .4s .15s var(--ease-out) both}.hud-top>*,.hud-bottom>*{pointer-events:auto}.screen:has(>.results-overlay:not([hidden]))>.hud-top{z-index:11}.hud-bar{display:flex;gap:8px;align-items:center;pointer-events:none!important}.hud-bar>*{pointer-events:auto}.hud-bar{align-items:stretch}.hud-bar .btn.round{width:44px;height:auto;min-height:44px;border-radius:var(--r-md)}.level-chip{flex:1;min-width:0;min-height:44px;padding:4px 10px 5px;display:flex;flex-direction:column;justify-content:center;gap:3px;text-align:left;border:none;border-radius:var(--r-md);background:var(--clay);color:var(--ink);box-shadow:var(--clay-chip);cursor:pointer;font:inherit;touch-action:manipulation;transition:transform var(--dur-fast) var(--ease-spring),filter var(--dur-fast) ease}.level-chip:active{transform:scale(calc(1 - .02 * var(--give)));filter:brightness(.97);transition-duration:var(--dur-press)}.chip-name{display:flex;align-items:baseline;gap:6px;min-width:0}.chip-name .slot{flex:none;font-size:var(--fs-xs);font-weight:700;line-height:1;color:var(--leaf-text)}.level-chip b{min-width:0;font-size:16px;line-height:1.1;overflow-wrap:anywhere}.level-chip .badge{margin-right:6px;font-size:10px;padding:0 5px;position:relative;top:-2px}.info-mark{flex:none;margin-left:auto;align-self:center;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:2px solid currentColor;color:var(--money)}.info-mark svg{width:var(--icon-xs);height:var(--icon-xs);stroke-width:3.2}.stats{display:flex;align-items:center;gap:12px}.stats[data-count="5"]{gap:9px}.stats[data-count="6"]{gap:7px}.stat{position:relative;display:flex;align-items:center;gap:4px;min-width:0}.stat[hidden]{display:none}.stats .stat svg.icon{width:var(--icon-s);height:var(--icon-s);color:var(--stat-icon, var(--muted));stroke-width:2.6}.stat b{font-size:var(--stat-size, 15px);font-weight:700;line-height:1.2;white-space:nowrap;color:var(--stat-ink, var(--ink))}.stat.cost{--stat-ink: var(--money)}.stat.stars{--stat-ink: var(--money);--stat-icon: var(--money)}.stat.scares.hit{--stat-ink: var(--brick-deep);--stat-icon: var(--brick-deep)}.stats .stat.scored{--stat-ink: var(--leaf-text);--stat-icon: var(--leaf-text)}.stat .predicted{color:var(--muted)}.stats[data-count="6"]{--stat-size: 14px}.stat .tag{display:none;margin-left:2px;padding:0 6px;border-radius:var(--pill);font-size:9px;font-weight:800;line-height:1.6;letter-spacing:.04em;background:var(--leaf);color:var(--on-leaf);text-transform:uppercase;box-shadow:var(--puff-small)}.stats[data-count="5"] .stat.scored .tag,.stats[data-count="6"] .stat.scored .tag{display:none}.stat.scored .tag{display:inline-block;animation:stamp .5s cubic-bezier(.2,1.8,.4,1) both}.ring{width:18px;height:18px;flex:none;overflow:visible}.ring circle{fill:none;stroke-width:6;transform:rotate(-90deg);transform-origin:18px 18px}.ring .track{stroke:var(--clay-shade)}.ring .ghost{stroke:var(--muted);opacity:.4}.ring .fill{stroke:var(--leaf-deep);transition:stroke-dasharray .12s linear}.ring.reached .fill{stroke:var(--butter-deep)}.ring .mark{stroke:var(--butter-deep);stroke-width:3.5;stroke-linecap:round}.tilde{font-weight:800;margin-right:1px}.note{align-self:center;max-width:100%;padding:7px 12px;border-radius:var(--r-md);background:var(--clay);box-shadow:var(--clay-chip);font-size:var(--fs-s);font-weight:700;line-height:1.35;text-align:center;pointer-events:none!important}.note[hidden]{display:none}.note.in{animation:note-in var(--dur-med) var(--ease-out)}.note.warn{background:var(--butter-pale);color:var(--on-butter);box-shadow:inset 0 0 0 2px var(--butter),var(--clay-chip)}@keyframes note-in{0%{transform:translateY(-6px);opacity:0}}.dock{position:relative;display:flex;flex-direction:column;gap:8px;padding:8px 8px 10px;border-radius:var(--r-xl);background:var(--clay);box-shadow:var(--clay-panel)}.tray-wrap{display:grid;grid-template-rows:1fr;transition:grid-template-rows var(--dur-slow) cubic-bezier(.3,0,.3,1),margin var(--dur-slow) cubic-bezier(.3,0,.3,1)}.puzzle.running .tray-wrap{grid-template-rows:0fr;margin-bottom:-8px}.tray-fold{min-height:0;overflow:hidden;margin:0 -8px}.tray{display:flex;justify-content:safe flex-end;min-height:0;gap:8px;overflow-x:auto;overflow-y:hidden;padding:8px 12px 6px;border-radius:var(--r-md);touch-action:pan-x;will-change:transform;scrollbar-width:none;transition:opacity var(--dur-med) ease,background-color var(--dur-fast) ease}.tray::-webkit-scrollbar{display:none}.tray.drop-target{background-color:#e98b6d24;box-shadow:inset 0 0 0 2px var(--brick)}.puzzle.running .tray{opacity:0;pointer-events:none}.tool{flex:0 0 auto;min-width:66px;min-height:72px;padding:4px 6px 5px;border:none;border-radius:var(--r-md);background:var(--clay-hi);color:var(--ink);box-shadow:var(--clay-card);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;touch-action:pan-x;position:relative;transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) ease,filter var(--dur-fast) ease}.tool:active:not(:disabled){filter:brightness(.97)}.tool .art{width:36px;height:36px;display:grid;place-items:center;color:var(--brick-deep)}.tool .art img{width:42px;height:42px}.tool .art>svg{width:26px;height:26px}.tool .nm{font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}.tool .pr{font-size:13px;font-weight:800;line-height:1.2;color:var(--brick-deep);font-variant-numeric:tabular-nums}.tool .spd{position:absolute;left:5px;top:8px;width:6px;height:28px;border-radius:3px;overflow:hidden;background:linear-gradient(to top,var(--leaf) calc(var(--speed) * 100%),var(--clay-shade) 0);box-shadow:inset 1px 1px 2px #78694659}.tool .spd:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to top,transparent 0 6px,var(--clay-hi) 6px 7px)}.tool .left,.tool .wild{position:absolute;top:-3px;min-width:20px;height:20px;font-size:11px;font-weight:800;line-height:20px;text-align:center;border-radius:var(--pill);padding:0 5px;background:var(--ink);box-shadow:0 2px 4px #1e2d144d;font-variant-numeric:tabular-nums}.tool .left{right:-6px;color:var(--clay-hi)}.tool .wild{left:-6px;color:var(--butter)}.tool[aria-pressed=true]{background:var(--leaf-pale);transform:translateY(-3px) rotate(-1.5deg);box-shadow:inset 0 0 0 3px var(--leaf),var(--clay-card),0 8px 14px #1e2d1433}.tool.bin{position:sticky;left:0;z-index:1;color:var(--brick-deep);max-width:80px;transition:transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) ease,max-width var(--dur-med) var(--ease-out),min-width var(--dur-med) var(--ease-out),padding var(--dur-med) var(--ease-out),margin var(--dur-med) var(--ease-out),opacity var(--dur-fast) ease}.tool.bin .art>svg{width:26px;height:26px}.tool.bin.tucked{max-width:0;min-width:0;padding-left:0;padding-right:0;margin-right:-8px;opacity:0;transform:scale(.6);pointer-events:none}.tray.drop-target .tool.bin{background:var(--brick);color:var(--clay-hi);transform:translateY(-3px) scale(1.06);box-shadow:var(--clay-card),0 8px 14px #1e2d1433}.tool:disabled,.tool.spent{opacity:.45;filter:saturate(.5);box-shadow:inset 3px 3px 5px #ffffffe6,inset -3.5px -4.5px 7px #78694633}.controls{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 2px}.cluster{display:flex;gap:8px;align-items:center}.puzzle:not(.running) .run-only{display:none}.controls .btn.round{width:44px;height:44px}.dock .more-menu .btn svg.icon{width:var(--icon-m);height:var(--icon-m)}.dock .controls .btn.round svg.icon{width:var(--icon-m);height:var(--icon-m)}.controls .btn.round[aria-expanded=true]{--fill: var(--clay-low);box-shadow:var(--puff-pressed)}.controls .btn.round.play{width:64px;height:64px;margin:-4px 0}.controls .btn.round.play .icon{width:var(--icon-xl);height:var(--icon-xl)}.controls .speed{font-size:16px;font-weight:800}.more-menu{position:absolute;left:6px;bottom:calc(100% + 8px);z-index:6;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:var(--r-lg);background:var(--clay);box-shadow:var(--clay-panel);transform-origin:20px 100%;animation:menu-in var(--dur-fast) var(--ease-out)}.more-menu[hidden]{display:none}@keyframes menu-in{0%{transform:translateY(6px) scale(.96);opacity:0}}.dock .more-menu .btn{justify-content:flex-start;gap:8px;min-height:44px;font-size:14px;padding:6px 14px 6px 10px}.controls .hint-btn{position:relative}.controls .hint-btn[hidden]{display:inline-flex;visibility:hidden}.hint-tag{position:absolute;top:-9px;right:-10px;font-size:10px;font-weight:800;line-height:1;padding:4px 6px 3px;border-radius:var(--pill);background:var(--ink);color:var(--butter);text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 4px #1e2d144d}.hud-bottom>.edits{display:flex;gap:8px;padding-left:4px;pointer-events:none}.edits .btn.round{width:44px;height:44px;pointer-events:auto;transition:transform var(--dur-med) var(--ease-spring),opacity var(--dur-fast) ease,width var(--dur-med) var(--ease-out),margin var(--dur-med) var(--ease-out),box-shadow var(--dur-fast) ease}.edits .btn.round.tucked{width:0;margin-right:-8px;opacity:0;transform:scale(.4) translateY(12px);pointer-events:none}.hint-bar{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:var(--r-lg);box-shadow:inset 0 0 0 2px var(--butter),var(--clay-panel);animation:rise-in var(--dur-med) var(--ease-out)}.hint-bar[hidden]{display:none}.hint-bar p{margin:0;font-size:14px;font-weight:600;line-height:1.3}.hint-bar-btns{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}.chip{position:absolute;z-index:4;display:flex;gap:4px;padding:4px;border-radius:var(--r-md);background:var(--clay);box-shadow:var(--clay-chip);transform:translate(-50%);animation:chip-in var(--dur-med) var(--ease-spring);pointer-events:auto}@keyframes chip-in{0%{transform:translate(-50%,4px) scale(.85);opacity:0}}.chip[hidden]{display:none}.chip .btn.small{min-height:36px;min-width:52px;font-size:13px;padding:2px 9px;gap:4px}.chip .btn.nudge{animation:nudge .9s var(--ease-out)}@keyframes nudge{0%,to{transform:scale(1);box-shadow:var(--puff-small),0 0 #ffe03d00}40%{transform:scale(1.16);box-shadow:var(--puff-small),0 0 0 6px #ffe03dd9}}.banner{position:absolute;left:50%;top:42%;z-index:5;transform:translate(-50%,-50%) scale(0);font-size:clamp(40px,13vw,64px);font-weight:800;color:var(--butter);text-shadow:0 4px 0 var(--butter-deep),0 12px 24px rgba(30,45,20,.35);-webkit-text-stroke:5px var(--clay-hi);paint-order:stroke fill;white-space:nowrap;pointer-events:none;opacity:0}.banner[data-tone=red]{color:var(--brick);text-shadow:0 4px 0 var(--brick-deep),0 12px 24px rgba(30,45,20,.35)}.banner.show{animation:banner 1.3s cubic-bezier(.2,1.6,.4,1) forwards}.banner[data-tone=rainbow].show{animation:banner 1.3s cubic-bezier(.2,1.6,.4,1) forwards,rainbow .3s steps(6) infinite}@keyframes banner{0%{transform:translate(-50%,-50%) scale(0) rotate(-14deg);opacity:1}25%{transform:translate(-50%,-50%) scale(1.15) rotate(4deg);opacity:1}40%{transform:translate(-50%,-50%) scale(1) rotate(-3deg)}80%{opacity:1}to{transform:translate(-50%,-60%) scale(1.05) rotate(-3deg);opacity:0}}@keyframes rainbow{0%{color:#2fd3c4}17%{color:#ff6fb0}33%{color:#f7b733}50%{color:#b46cff}67%{color:#7ee081}83%{color:#1e9bff}}.pop{animation:pop .24s cubic-bezier(.2,1.8,.4,1)}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.22) rotate(-3deg)}to{transform:scale(1)}}.shake{animation:shake .28s ease-out}.shake-big{animation:shake-big .45s ease-out}@keyframes shake{20%{transform:translate(-3px,1px)}40%{transform:translate(3px,-1px)}60%{transform:translate(-2px)}80%{transform:translate(1px,1px)}}@keyframes shake-big{10%{transform:translate(-6px,3px) rotate(-.6deg)}30%{transform:translate(6px,-3px) rotate(.6deg)}50%{transform:translate(-4px,2px)}70%{transform:translate(3px,-1px)}90%{transform:translate(-1px)}}.overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:flex-end;justify-content:center;padding:calc(12px + var(--safe-top)) 0 0;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto;animation:fade var(--dur-med) ease-out}.overlay[hidden]{display:none}@keyframes fade{0%{opacity:0}}.card{width:100%;max-width:520px;max-height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:8px max(18px,var(--safe-right)) calc(18px + var(--safe-bottom)) max(18px,var(--safe-left));display:flex;flex-direction:column;gap:12px;touch-action:pan-y;border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--clay);box-shadow:var(--clay-sheet);animation:sheet-in var(--dur-slow) var(--ease-out)}.card:before{content:"";flex:none;align-self:center;width:40px;height:6px;border-radius:3px;background:var(--clay-shade);box-shadow:inset 1px 1px 2px #7869464d;margin-bottom:2px}.card.sheet:before{position:sticky;top:0;z-index:2;margin:0 0 -6px}@keyframes sheet-in{0%{transform:translateY(100%)}}.card h2{margin:0;font-size:var(--fs-xl);line-height:1.05;color:var(--leaf-text);text-wrap:balance}.card h2 small{display:block;font-size:12px;font-weight:700;letter-spacing:var(--caps);text-transform:uppercase;color:var(--muted);margin-bottom:6px}.card h2.stamped{font-size:46px;color:var(--leaf);text-shadow:0 3px 0 var(--leaf-deep),0 8px 16px rgba(30,45,20,.22);-webkit-text-stroke:4px var(--clay-hi);paint-order:stroke fill;transform:rotate(-3deg);transform-origin:left center;animation:stamp-in .5s .15s cubic-bezier(.2,1.8,.4,1) both}.card h2.stamped small{-webkit-text-stroke:0;text-shadow:none;transform:rotate(3deg);transform-origin:left center}@keyframes stamp-in{0%{transform:scale(1.8) rotate(-12deg);opacity:0}}.card p{margin:0;font-size:var(--fs-m);font-weight:500;line-height:1.4}.card .small:not(.btn){font-size:var(--fs-s);line-height:1.4;color:var(--muted)}.btns{display:flex;gap:10px;flex-wrap:wrap}.btns .btn{flex:1;font-size:18px;padding:10px}.btns.column{flex-direction:column}.btns.column .btn{flex:none}.lawn{display:grid;grid-template-columns:1fr auto 96px;gap:12px;align-items:baseline;font-size:var(--fs-m);font-weight:700;padding-top:10px;border-top:2px solid var(--clay-low);color:var(--muted)}.lawn .v{font-size:20px;font-weight:800;color:var(--lawn-ink, var(--leaf-text))}.lawn.full{--lawn-ink: var(--money)}.gold-mark{display:inline-flex;align-items:center;gap:4px;background:var(--butter);color:var(--on-butter);box-shadow:var(--puff-small)}.badge.gold-mark{background:linear-gradient(160deg,var(--butter-pale),var(--butter) 55%,var(--butter-deep))}.lawn .b{font-size:12px;font-weight:600;text-align:right}.lawn .flourish{animation:stamp .5s .36s cubic-bezier(.2,1.8,.4,1) both,gold-shine 1.6s ease-in-out .9s infinite}@keyframes gold-shine{50%{background:var(--butter-pale)}}.score{display:flex;flex-direction:column;gap:8px;font-size:var(--fs-m);font-weight:700;color:var(--muted)}.score .row{display:grid;grid-template-columns:1fr auto 96px;gap:12px;align-items:center}.score .v{font-size:24px;font-weight:800;line-height:1.1;min-width:84px;text-align:center;color:var(--ink)}.score .metric-cost .v,.score .metric-stars .v{color:var(--money)}.score .metric-scares.hit .v{color:var(--brick-deep)}.score .b{font-size:12px;font-weight:600;color:var(--muted);text-align:right}.score .new,.lawn .flourish{justify-self:end;padding:0 8px;border-radius:var(--pill);font-size:var(--fs-xs);font-weight:800;line-height:1.7;letter-spacing:.04em;text-transform:uppercase;color:var(--on-leaf);background:var(--leaf);box-shadow:var(--puff-small)}.lawn .flourish.gold-mark{color:var(--on-butter);background:var(--butter)}.score .new{animation:stamp .5s cubic-bezier(.2,1.8,.4,1) both}.score .row:nth-child(2) .new{animation-delay:.12s}.score .row:nth-child(3) .new{animation-delay:.24s}.score .row:nth-child(4) .new{animation-delay:.36s}.score .row:nth-child(5) .new{animation-delay:.48s}@keyframes stamp{0%{transform:scale(2.2) rotate(-12deg);opacity:0}}.histogram-placeholder{border:2px dashed var(--clay-shade);border-radius:var(--r-md);padding:12px;font-size:12px;font-weight:600;color:var(--muted);text-align:center}.results-overlay{background:linear-gradient(to top,#1c2a1659 40%,#1c2a1600 75%);-webkit-backdrop-filter:none;backdrop-filter:none}.results-card{gap:10px}.results-card .histogram-placeholder{padding:8px}.sheet-bests{display:flex;flex-direction:column;gap:6px}.sheet-bests .row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;font-size:var(--fs-m);font-weight:700}.sheet-bests .lbl{margin-top:1px;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}.sheet-bests .gold-mark.pill{padding:0 10px 0 6px;border-radius:var(--pill);line-height:1.7}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.facts .box{padding:4px 8px;border-radius:var(--r-md);background:var(--clay-hi);box-shadow:inset 3px 3px 5px #ffffffe6,inset -3.5px -4.5px 7px #78694633}.facts b{font-size:17px;font-variant-numeric:tabular-nums}.streak-line{font-size:var(--fs-m);font-weight:800;color:var(--money)}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day{display:flex;flex-direction:column;align-items:center;gap:0;min-height:58px;padding:4px 0;border:none;border-radius:var(--r-sm);background:var(--clay-hi);color:var(--ink);box-shadow:var(--clay-card);cursor:pointer;touch-action:manipulation;transition:transform var(--dur-fast) var(--ease-spring),filter var(--dur-fast) ease}.day:active{transform:scale(calc(1 - .06 * var(--give)));filter:brightness(.97);transition-duration:var(--dur-press)}.day .wd{font-size:var(--fs-xs);font-weight:700;color:var(--muted)}.day b{font-size:20px;line-height:1.05}.day .mark{font-size:12px;min-height:14px;font-weight:800}.day.on-the-day{background:var(--leaf);color:var(--on-leaf);box-shadow:var(--puff-small)}.day.on-the-day .wd{color:var(--on-leaf)}.day.late{box-shadow:inset 0 0 0 2px var(--leaf),var(--clay-card)}.day.late .mark{color:var(--leaf-text)}.day.today{box-shadow:0 0 0 3px var(--butter),var(--clay-card)}.day.today.late{box-shadow:inset 0 0 0 2px var(--leaf),0 0 0 3px var(--butter),var(--clay-card)}.day.open .mark{color:var(--money);font-size:10px;text-transform:uppercase}.card h2 .badge{margin-left:8px;font-size:var(--fs-xs);position:relative;top:-6px}.card .link{font-size:13px;font-weight:600;word-break:break-all;-webkit-user-select:text;user-select:text}.sheet-head{display:flex;align-items:flex-start;gap:8px}.sheet-head h2{flex:1;min-width:0}.sheet-head .btn.round.small{flex:none;width:40px;height:40px;--fill: var(--clay-low);--on: var(--ink)}.sheet-head .btn.round.small svg.icon{width:var(--icon-m);height:var(--icon-m)}.toast{position:fixed;left:50%;top:calc(var(--safe-top) + 64px);transform:translate(-50%);z-index:60;padding:10px 14px;font-size:14px;font-weight:700;max-width:calc(100vw - 32px);border-radius:var(--r-md);background:var(--clay);box-shadow:var(--clay-chip);animation:note-in var(--dur-med) var(--ease-out)}.toast[hidden]{display:none}.debug{position:absolute;right:var(--column-right);top:calc(var(--safe-top) + 1px);z-index:3;font-size:11px;color:var(--clay-hi);text-shadow:0 1px 0 var(--ink),0 0 3px var(--ink);font-variant-numeric:tabular-nums;pointer-events:none}.sheet-overlay{z-index:20}.card.sheet{gap:14px;padding-top:0}.sheet-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:16px 0 10px;background:var(--clay);box-shadow:0 2px 0 var(--clay-low)}.sheet-head .btn:not(.round){min-width:72px;font-size:15px}.settings-group{display:flex;flex-direction:column;gap:10px;scroll-margin-top:72px}.settings-group+.settings-group{padding-top:12px;border-top:2px solid var(--clay-low)}.settings-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;min-height:40px}.settings-label{font-size:var(--fs-m);font-weight:600}.settings-row.slider{grid-template-columns:112px 1fr 44px}.slider-value{font-size:14px;font-weight:700;text-align:right;color:var(--muted)}.card .version{text-align:center;color:var(--faint)}.seg{display:inline-flex;gap:2px;padding:3px;border-radius:var(--pill);background:var(--clay-low);box-shadow:var(--sunk)}.seg-btn{min-height:36px;min-width:50px;padding:0 10px;font-size:14px;font-weight:700;background:transparent;color:var(--muted);border:none;border-radius:var(--pill);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.seg-btn[aria-checked=true]{background:var(--clay-hi);color:var(--ink);box-shadow:var(--puff-small)}.range{-webkit-appearance:none;appearance:none;width:100%;height:32px;margin:0;background:transparent;cursor:pointer;touch-action:none;--fill: 50%}.range::-webkit-slider-runnable-track{height:12px;border-radius:6px;background:linear-gradient(to right,var(--leaf) var(--fill),var(--clay-low) var(--fill));box-shadow:var(--sunk)}.range::-moz-range-track{height:12px;border-radius:6px;background:linear-gradient(to right,var(--leaf) var(--fill),var(--clay-low) var(--fill));box-shadow:var(--sunk)}.range::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-7px;border:none;border-radius:50%;background:var(--butter);box-shadow:var(--puff-small)}.range::-moz-range-thumb{width:24px;height:24px;border:none;border-radius:50%;background:var(--butter);box-shadow:var(--puff-small)}.confirm{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:var(--r-md);background:#fbe3da;box-shadow:inset 0 0 0 2px var(--brick);animation:fade var(--dur-fast) ease-out}.confirm .btns .btn{font-size:16px}.levels-card{height:calc(100% - 64px);max-height:none;padding-top:0}.campaign-inner{display:flex;flex-direction:column;gap:14px;padding-bottom:12px}.sheet-head.campaign-top{display:grid;grid-template-columns:44px 1fr 44px}.campaign-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:var(--fs-s);font-weight:600;color:var(--muted)}.dev-panel{padding:12px;display:flex;flex-direction:column;gap:8px;outline:2px dashed var(--sky-deep);outline-offset:-2px}.dev-panel h2{margin:0;font-size:18px;color:var(--on-sky)}.dev-panel pre{margin:0;font-size:11px;white-space:pre-wrap;color:var(--brick-deep);font-family:ui-monospace,monospace;user-select:text;-webkit-user-select:text}.chapter{padding:12px;display:flex;flex-direction:column;gap:8px;border-radius:var(--r-lg);background:var(--clay-low);box-shadow:var(--sunk)}.chapter h2{margin:0;font-size:22px;display:flex;align-items:baseline;gap:8px}.chapter h2 .lbl,.chapter.locked h2{color:var(--muted)}.chapter .note,.dev-panel .note{align-self:auto;margin:0;padding:0;background:none;box-shadow:none;text-align:left;font-size:var(--fs-s);font-weight:600;color:var(--muted)}.levels{display:flex;flex-direction:column;gap:8px}.lvl{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;width:100%;min-height:56px;text-align:left;padding:8px 10px;border:none;border-radius:var(--r-md);background:var(--clay-hi);color:var(--ink);box-shadow:var(--clay-card);cursor:pointer;touch-action:manipulation;transition:transform var(--dur-fast) var(--ease-spring),filter var(--dur-fast) ease}.lvl:active:not(:disabled){transform:scale(calc(1 - .02 * var(--give)));filter:brightness(.97);transition-duration:var(--dur-press)}.lvl:disabled{cursor:not-allowed;opacity:.5;filter:saturate(.5)}.lvl .n{font-size:18px;font-weight:800;color:var(--leaf-text)}.lvl .t{font-size:17px;font-weight:800;line-height:1.15;display:block}.lvl .s{font-size:12px;font-weight:600;color:var(--muted);display:block}.lvl.next{background:var(--leaf-pale);box-shadow:inset 0 0 0 3px var(--leaf),var(--clay-card)}.footnote{font-size:12px;font-weight:600;color:var(--muted);margin:0;text-align:center}.card h2.screen-title{text-align:center}.guide-overlay{z-index:25}.card.guide{max-width:440px;gap:12px}.guide-head{display:flex;justify-content:space-between;align-items:center}.guide-head .btn{min-width:64px}.guide-art{display:grid;place-items:center;padding:12px;border-radius:var(--r-lg);background:radial-gradient(ellipse 90% 70% at 50% 50%,#3f7a52,#2a5a3c);box-shadow:inset 4px 4px 8px #00000047,inset -3px -3px 6px #ffffff40}.guide-svg{display:block;width:100%;max-width:250px;height:auto;overflow:visible}.guide-pulse{animation:guide-pulse 1.1s ease-in-out infinite}.guide-ripple{transform-box:fill-box;transform-origin:center;animation:guide-ripple 1.1s ease-out infinite}@keyframes guide-pulse{50%{opacity:.35}}@keyframes guide-ripple{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.8);opacity:0}}.card.guide p{min-height:5.4em}.dots{display:flex;justify-content:center;align-items:center;gap:6px}.dots span{width:9px;height:9px;border-radius:5px;background:var(--clay-shade);box-shadow:inset 1px 1px 2px #7869464d;transition:width var(--dur-med) var(--ease-out),background-color var(--dur-med) ease}.dots .on{width:22px;background:var(--leaf);box-shadow:var(--puff-small)}.shop-overlay{z-index:25}.shop-card{padding-top:0}.shop-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:var(--r-md);background:var(--clay-hi);box-shadow:var(--clay-card)}.shop-item b{font-size:18px;color:var(--ink)}.shop-item p{margin-top:2px}.shop-item .btn{min-width:84px}.ad-overlay{z-index:30;align-items:center;background:#1c2a16e6;padding:calc(16px + var(--safe-top)) var(--gutter-right) calc(16px + var(--safe-bottom)) var(--gutter-left)}.ad-overlay .card{border-radius:var(--r-xl);box-shadow:var(--clay-panel);padding-bottom:18px;animation:card-in var(--dur-slow) var(--ease-spring)}.ad-overlay .card:before{display:none}@keyframes card-in{0%{transform:translateY(16px) scale(.96);opacity:0}}.ad-card{text-align:center;align-items:stretch}.ad-count{display:block;font-size:64px;font-weight:800;line-height:1;color:var(--butter);text-shadow:0 3px 0 var(--butter-deep)}@media(max-height:700px){.tool{min-height:64px;min-width:60px}.tool .art,.tool .art img{width:32px;height:32px}.tray{padding:6px 12px 4px}.controls .btn.round.play{width:58px;height:58px}.title-menu{gap:10px}.title-menu .btn{min-height:48px}.title-menu .title-play{min-height:60px}.results-card .explain,.results-card .histogram-placeholder{display:none}.results-card h2.stamped{font-size:38px}.results-card .score{gap:4px}}.reduced-motion .banner.show,.reduced-motion .banner[data-tone=rainbow].show{animation:banner-fade 1.2s ease forwards!important;transform:translate(-50%,-50%)}.reduced-motion .pop,.reduced-motion .shake,.reduced-motion .shake-big,.reduced-motion .card,.reduced-motion .chip,.reduced-motion .score .new,.reduced-motion .stat .tag,.reduced-motion .lawn .flourish,.reduced-motion .guide-svg *,.reduced-motion .title-screen .title-menu,.reduced-motion .hud-top,.reduced-motion .hud-bottom,.reduced-motion .note,.reduced-motion .hint-bar,.reduced-motion .card h2.stamped{animation:none!important}.reduced-motion .chip .btn.nudge{animation:none}.reduced-motion .tray,.reduced-motion .veil,.reduced-motion .tray .tool.bin,.reduced-motion .edits .btn.round{transition:none}.reduced-motion .dock .more-menu{animation:none}.reduced-motion .puzzle .tray-wrap{transition:none}.reduced-motion{--give: 0;--dur-press: 0s;--dur-fast: 0s;--dur-med: 0s;--dur-slow: 0s}@keyframes banner-fade{0%,70%{opacity:1}to{opacity:0}}
