:root{--dream-ink: #372445;--dream-board: #28243d;--dream-cream: #f5dfbd;--dream-lavender: #b294cd;--dream-plum: #77558e;--dream-gold: #f7c768;--dream-mint: #91d7c5;--dream-panel-top: #51405f;--dream-panel-bottom: #302a42;--dream-ring: rgba(245, 223, 189, 0.24);--color-text: #ffffff;--color-text-muted: rgba(255, 246, 232, 0.9);--color-text-quiet: rgba(250, 232, 206, 0.76);--color-accent: #f0962a;--color-accent-soft: #ffd08a;--color-good: #66d8b3;--color-warn: #ffc76a;--color-bad: #ff8d9a;--color-stage: #000000;--color-glow-a: rgba(224, 128, 43, 0.2);--color-glow-b: rgba(200, 150, 70, 0.13);--surface-panel-top: rgb(96, 66, 38);--surface-panel-bottom: rgb(54, 36, 21);--surface-control-top: rgb(112, 78, 45);--surface-control-bottom: rgb(68, 45, 26);--surface-action-top: #e0841f;--surface-action-bottom: #a85512;--surface-danger-top: rgba(150, 52, 70, 0.9);--surface-danger-bottom: rgba(92, 27, 42, 0.92);--surface-field-top: rgb(112, 78, 45);--surface-field-bottom: rgb(68, 45, 26);--focus-top: rgb(176, 104, 34);--focus-bottom: rgb(120, 64, 20);--focus-border: #ffd08a;--focus-ring: rgba(255, 184, 90, 0.45);--focus-scale: 1.03;--radius-sm: 12px;--radius-md: 18px;--radius-lg: 28px;--radius-pill: 999px;--border-width: 2px;--shadow-raised: 0 18px 42px rgba(25, 13, 5, 0.3);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font-family: "Roboto", "Segoe UI", system-ui, sans-serif;--font-family-sign: "Axera Round", var(--font-family);--font-size-caption: 14px;--font-size-body: 16px;--font-size-control: 22px;--font-size-title: 32px;--font-size-display: 40px;--line-height-tight: 1.15;--line-height-body: 1.35;--motion-fast: 150ms;--motion-base: 230ms;--motion-slow: 380ms;--motion-ease-out: cubic-bezier(0.22, 0.75, 0.3, 1);--motion-ease-spring: cubic-bezier(0.16, 1, 0.3, 1);--motion-nudge-distance: 7px;--crop-tomato: #ff5a4f;--crop-tomato-dark: #c42638;--crop-carrot: #ff9b2f;--crop-carrot-dark: #b8520c;--crop-corn: #ffd94d;--crop-corn-dark: #d99a12;--crop-lettuce: #86e45c;--crop-lettuce-light: #d2f8ae;--crop-lettuce-dark: #3c9437;--crop-eggplant: #b070ff;--crop-eggplant-dark: #6d36c2;--crop-berry: #5aa2ff;--crop-berry-dark: #23408c;--nut-ink: rgb(46, 30, 18);--nut-slab-top: rgb(96, 92, 88);--nut-slab-bottom: rgb(58, 54, 52);--nut-slab-edge: rgba(200, 196, 190, 0.45);--pumpkin: #ff9a36;--pumpkin-rib: #b9560f;--pumpkin-flesh: #ffd27a;--pumpkin-stem: #7d8f2e;--hive-wood: #e9b44c;--hive-wood-dark: #9c6418;--hive-lid: #a0602a;--honey: #ffb81c;--honey-label: #fff1cf;--gold-apple: #ffc93a;--gold-apple-dark: #e09a12;--gold-apple-shine: #fff6c8;--gold-apple-leaf: #6fbf3c;--gold-apple-glow: rgba(255, 214, 90, 0.45);--hard-sign: #d9472b;--hard-sign-text: #ffb59e;--farm-furrow: rgba(30, 16, 8, 0.45);--weed: #3f9d3a;--weed-light: #8fd45a;--weed-patch: rgba(70, 150, 50, 0.55);--crop-leaf: #46c35c;--crop-shine: rgba(255, 255, 255, 0.62);--special-gold: #ffcc33;--special-gold-dark: #e8890c;--special-ivory: #fff8e1;--special-ink: rgb(46, 30, 18);--special-spark: #fff3a0;--special-seed: #8a5520;--beam-core: rgba(255, 246, 214, 0.95);--beam-glow: rgba(255, 196, 80, 0.55);--beam-edge: rgba(255, 196, 80, 0);--blast-core: rgba(255, 236, 170, 0.85);--blast-mid: rgba(255, 150, 60, 0.5);--blast-edge: rgba(255, 120, 40, 0);--select-border: #ffd166;--sign-ink: rgb(58, 28, 6);--sign-text: #fff8e8;--sign-gold: #f8e04a;--coin-top: #ffe684;--coin-bottom: #e39a17;--coin-rim: #fff4c4;--stall-awning-a: rgb(166, 58, 50);--stall-awning-b: rgb(196, 172, 128);--stall-awning-roof: rgb(110, 40, 36);--stall-wood: rgb(140, 98, 54);--stall-wood-dark: rgb(92, 62, 34);--stall-wood-deep: rgb(62, 42, 24);--stall-sign-face: rgb(52, 40, 26);--stall-ground: rgb(34, 40, 28);--stall-metal: rgb(156, 166, 176);--stall-metal-dark: rgb(92, 100, 112);--stall-register: rgb(54, 120, 140);--stall-register-dark: rgb(30, 70, 84);--stall-register-key: rgb(200, 214, 220);--stall-register-screen: rgb(22, 36, 30);--stall-register-lit: rgb(150, 255, 170);--stall-chalk: rgb(30, 52, 40);--stall-chalk-text: rgb(236, 242, 226);--stall-chalk-quiet: rgb(180, 200, 176);--stall-badge: #ffd84d;--stall-badge-ink: rgb(46, 30, 18);--stall-play-top: rgb(84, 170, 72);--stall-play-bottom: rgb(38, 112, 40);--stall-play-border: rgb(170, 236, 140);--street-sky-top: rgb(16, 20, 44);--street-sky-bottom: rgb(38, 36, 74);--street-sky-horizon: rgb(70, 50, 82);--street-star: rgb(190, 196, 230);--street-moon: rgb(246, 236, 200);--street-moon-dark: rgb(214, 202, 168);--street-far: rgb(34, 36, 66);--street-near: rgb(46, 44, 74);--street-near-roof: rgb(58, 54, 86);--street-window-dark: rgb(56, 58, 88);--street-window-warm: rgb(232, 182, 96);--street-sidewalk: rgb(86, 78, 76);--street-sidewalk-hi: rgb(116, 106, 98);--street-seam: rgb(66, 60, 60);--street-curb: rgb(108, 100, 96);--street-curb-top: rgb(156, 146, 132);--street-road-top: rgb(42, 40, 54);--street-road-bottom: rgb(26, 26, 38);--street-pool: rgb(255, 196, 110);--street-halo: rgb(255, 214, 130);--street-shade: rgba(10, 8, 20, 0.45);--street-shade-soft: rgba(10, 8, 20, 0.28);--street-brick-top: rgb(160, 84, 60);--street-brick-bottom: rgb(112, 54, 44);--street-brick-hi: rgba(255, 190, 150, 0.12);--street-brick-dark: rgb(92, 46, 40);--street-mortar: rgba(30, 14, 12, 0.32);--street-trim: rgb(214, 190, 146);--street-trim-light: rgb(240, 222, 184);--street-trim-dark: rgb(150, 128, 96);--street-glass-top: rgb(255, 214, 140);--street-glass-bottom: rgb(214, 132, 64);--street-glass-hi: rgba(255, 246, 220, 0.4);--street-curtain: rgba(160, 60, 64, 0.75);--street-shelf-in: rgb(132, 82, 44);--street-goods-0: rgb(240, 96, 80);--street-goods-1: rgb(250, 160, 60);--street-goods-2: rgb(130, 200, 90);--street-goods-3: rgb(250, 214, 90);--street-door: rgb(104, 64, 40);--street-door-dark: rgb(80, 48, 30);--street-wood-top: rgb(170, 120, 70);--street-wood-bottom: rgb(118, 78, 42);--street-wood-light: rgb(206, 160, 104);--street-wheel-in: rgb(52, 46, 54);--street-sign: rgb(48, 34, 26);--street-sign-hi: rgba(255, 220, 160, 0.14);--street-sign-text: #ffd84d;--street-gold-dark: rgb(196, 132, 30);--street-cloth-a-dark: rgb(120, 40, 38);--street-cloth-hi: rgba(255, 236, 210, 0.35);--street-cloth-fold: rgba(120, 96, 70, 0.4);--street-cardboard: rgb(198, 156, 100);--street-cardboard-dark: rgb(150, 112, 68);--street-ink: rgb(58, 36, 22);--street-string: rgb(206, 196, 176);--street-bulb: rgb(255, 238, 170);--street-lamp: rgb(255, 224, 140);--street-leaf: rgb(96, 182, 80);--street-leaf-dark: rgb(52, 120, 58);--street-flower: rgb(242, 116, 146);--street-flower-b: rgb(255, 214, 80);--street-pot: rgb(186, 98, 62);--street-pot-rim: rgb(214, 124, 84);--street-tire: rgb(58, 54, 62);--street-metal-hi: rgb(220, 226, 232);--street-basket: rgb(196, 146, 84);--street-basket-weave: rgb(150, 104, 56);--street-water: rgb(130, 200, 236);--street-van: rgb(226, 220, 206);--street-van-shade: rgb(186, 178, 164);--street-clock-face: rgb(250, 242, 218);--street-skin: rgb(236, 194, 156);--street-skin-b: rgb(196, 140, 100);--street-skin-c: rgb(150, 100, 70);--street-hair-a: rgb(70, 46, 34);--street-hair-b: rgb(214, 170, 90);--street-hair-c: rgb(120, 60, 40);--street-legs: rgb(64, 78, 120);--street-legs-b: rgb(96, 88, 80);--street-shoe: rgb(70, 54, 50);--street-shirt-a: rgb(232, 104, 88);--street-shirt-b: rgb(84, 168, 224);--street-shirt-c: rgb(242, 196, 82);--street-shirt-d: rgb(130, 204, 112);--street-shirt-e: rgb(186, 130, 220);--street-shirt-hi: rgba(255, 255, 255, 0.22);--street-bubble: rgb(248, 242, 228);--street-dust: rgb(226, 212, 186);--street-ghost: #ffd84d;--farm-hill-far: rgb(36, 50, 62);--farm-meadow-top: rgb(44, 72, 52);--farm-meadow-bottom: rgb(30, 50, 40);--farm-soil-top: rgb(96, 64, 42);--farm-soil-bottom: rgb(122, 80, 50);--farm-mound: rgb(84, 56, 36);--farm-grass: rgb(26, 46, 34);--farm-stalk: rgb(92, 150, 70);--farm-barn: rgb(150, 56, 46);--farm-barn-dark: rgb(104, 38, 34);--farm-barn-roof: rgb(84, 52, 46);--farm-trim: rgb(226, 210, 180);--farm-leaf: rgb(70, 140, 70);--farm-trail: rgb(70, 54, 40);--farm-trail-done: rgb(176, 136, 60);--hud-panel-top: rgb(76, 56, 36);--hud-panel-bottom: rgb(44, 32, 22);--hud-panel-edge: rgba(255, 226, 180, 0.16);--hud-cost-top: rgba(255, 216, 77, 0.22);--hud-cost-bottom: rgba(255, 216, 77, 0.06);--work-crowd: rgb(44, 86, 128);--work-price: rgb(120, 84, 26);--work-crate: rgb(54, 100, 50);--work-crop: rgb(88, 110, 34);--work-expand: rgb(136, 62, 48);--shop-wall-top: rgb(96, 64, 38);--shop-wall-bottom: rgb(52, 34, 22);--shop-plank-seam: rgba(20, 10, 4, 0.35);--shop-light: rgb(255, 210, 140);--shop-floor: rgb(70, 52, 40);--shop-floor-tile: rgb(84, 64, 48);--stage-size: 600px;--safe-bottom: 576px;--safe-inset: 32px;}:root[data-theme="aurora"]{--color-accent: #25efff;--color-accent-soft: #f8fdff;--color-text-muted: #d8e8ff;--color-text-quiet: #aebfdf;--color-good: #79f2d5;--color-glow-a: rgba(193, 72, 255, 0.22);--color-glow-b: rgba(37, 239, 255, 0.14);--surface-panel-top: rgba(102, 181, 255, 0.3);--surface-panel-bottom: rgba(15, 43, 118, 0.32);--surface-control-top: rgba(100, 177, 255, 0.3);--surface-control-bottom: rgba(37, 88, 177, 0.22);--surface-action-top: #20e9ef;--surface-action-bottom: #1268f4;--focus-top: rgba(47, 160, 255, 0.58);--focus-bottom: rgba(63, 59, 220, 0.52);--focus-border: #f4feff;--focus-ring: rgba(37, 239, 255, 0.5);}:root[data-theme="minimal"]{--color-accent: #e8eef6;--color-accent-soft: #ffffff;--color-glow-a: rgba(255, 255, 255, 0.05);--color-glow-b: rgba(255, 255, 255, 0.03);--surface-panel-top: rgba(46, 50, 56, 0.9);--surface-panel-bottom: rgba(28, 30, 34, 0.92);--surface-control-top: rgba(52, 55, 60, 0.92);--surface-control-bottom: rgba(34, 36, 40, 0.94);--surface-action-top: #5a6270;--surface-action-bottom: #3a4049;--focus-top: rgba(92, 100, 112, 0.96);--focus-bottom: rgba(60, 66, 76, 0.98);--focus-border: #ffffff;--focus-ring: rgba(255, 255, 255, 0.35);}:root[data-motion="reduced"]{--motion-fast: 1ms;--motion-base: 1ms;--motion-slow: 1ms;--motion-nudge-distance: 0px;--focus-scale: 1;}@font-face{font-family: "Roboto";font-style: normal;font-weight: 700;font-stretch: 75%;font-display: swap;src: url("../assets/fonts/roboto-latin-variable.woff2") format("woff2");}@font-face{font-family: "Axera Round";font-style: normal;font-weight: 400;font-display: swap;src: url("../assets/fonts/axera-round.woff2") format("woff2");}*{box-sizing: border-box;margin: 0;padding: 0;}html, body{width: var(--stage-size);height: var(--stage-size);overflow: hidden;background: var(--color-stage);color: var(--color-text);font-family: var(--font-family);font-weight: 700;font-stretch: 75%;-webkit-font-smoothing: antialiased;user-select: none;}button, input{font: inherit;color: inherit;}#stage{position: relative;isolation: isolate;width: var(--stage-size);height: var(--stage-size);overflow: hidden;background: var(--color-stage);}#bg{position: absolute;inset: 0;z-index: 0;pointer-events: none;}#bg::before, #bg::after{content: "";position: absolute;width: 360px;height: 360px;border-radius: 50%;filter: blur(18px);}#bg::before{left: -110px;top: 330px;background: radial-gradient(closest-side, var(--color-glow-a), transparent);}#bg::after{right: -120px;top: -90px;background: radial-gradient(closest-side, var(--color-glow-b), transparent);}body[data-screen="street"] #bg, body[data-screen="shop"] #bg{display: none;}#app{position: absolute;inset: 0 0 calc(var(--stage-size) - var(--safe-bottom)) 0;z-index: 1;display: flex;outline: none;transition: opacity var(--motion-fast) ease;}#app.is-leaving{opacity: 0;}.screen{flex: 1;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: var(--space-4);padding: var(--safe-inset);text-align: center;animation: screen-settle var(--motion-slow) var(--motion-ease-out);}@keyframes screen-settle{from{opacity: 0;transform: translateY(7px);}to{opacity: 1;transform: none;}}.ui-title{font-size: var(--font-size-display);line-height: var(--line-height-tight);letter-spacing: 0;}h2.ui-title{font-size: var(--font-size-title);}.eyebrow{font-size: var(--font-size-body);color: var(--color-text-quiet);text-transform: uppercase;letter-spacing: 0.08em;}.lede{max-width: 440px;font-size: 20px;line-height: var(--line-height-body);color: var(--color-text-muted);}.footnote{font-size: var(--font-size-caption);color: var(--color-text-quiet);}.hint{font-size: var(--font-size-body);color: var(--color-text-quiet);}.ui-button{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 2px;min-height: 64px;min-width: 160px;padding: var(--space-3) var(--space-5);border: var(--border-width) solid transparent;border-radius: var(--radius-md);background: linear-gradient(180deg, var(--surface-control-top), var(--surface-control-bottom));box-shadow: var(--shadow-raised);font-size: var(--font-size-control);line-height: var(--line-height-tight);cursor: pointer;outline: none;transition: transform var(--motion-fast) var(--motion-ease-spring), background var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;}.ui-button-detail{font-size: var(--font-size-body);color: var(--color-text-quiet);}.ui-button--primary{background: linear-gradient(180deg, var(--surface-action-top), var(--surface-action-bottom));}.ui-button--danger{background: linear-gradient(180deg, var(--surface-danger-top), var(--surface-danger-bottom));}.ui-button[aria-disabled="true"]{opacity: 0.55;}.focusable.nav-on{border-color: var(--focus-border);background: linear-gradient(180deg, var(--focus-top), var(--focus-bottom));box-shadow: 0 0 0 4px var(--focus-ring), var(--shadow-raised);transform: scale(var(--focus-scale));}.ui-button--primary.nav-on{background: linear-gradient(180deg, var(--surface-action-top), var(--surface-action-bottom));}.ui-button--danger.nav-on{background: linear-gradient(180deg, var(--surface-danger-top), var(--surface-danger-bottom));}.ui-button .ui-button-detail{pointer-events: none;}.ui-menu{display: flex;flex-direction: column;gap: var(--space-3);width: 400px;}.ui-menu .ui-button{width: 100%;min-height: 72px;}.ui-menu--settings .ui-button{flex-direction: row;justify-content: space-between;min-height: 64px;}.screen--setup{position: relative;gap: var(--space-3);}.ui-menu--settings{gap: 6px;}.ui-menu--settings .ui-button{min-height: 44px;padding-top: 4px;padding-bottom: 4px;}.screen--setup{gap: var(--space-2);}.ui-menu--tools{flex-direction: row;gap: var(--space-3);}.ui-menu--tools .ui-button{flex: 1;min-width: 0;min-height: 64px;padding: var(--space-2) var(--space-3);font-size: 20px;}.setup-confirm{position: absolute;z-index: 6;inset: 40px;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: var(--space-4);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-lg);background: var(--stall-sign-face);box-shadow: var(--shadow-raised);}.setup-confirm[hidden]{display: none;}.setup-divider{height: 2px;margin: 0 var(--space-6);border-radius: 1px;background: var(--hud-panel-edge);}.ui-button--setting .ui-button-detail{font-size: 20px;color: var(--color-text-muted);}.ui-button--setting.nav-on .ui-button-detail::before{content: "‹  ";}.ui-button--setting.nav-on .ui-button-detail::after{content: "  ›";}.screen-actions{display: flex;flex-direction: column;gap: var(--space-3);}.screen-actions--row{flex-direction: row;}.carousel-frame{display: flex;align-items: center;gap: var(--space-3);}.carousel-chevron{width: 32px;font-size: var(--font-size-title);color: var(--color-text-quiet);text-align: center;}.carousel-chevron[data-active="false"]{opacity: 0.2;}.carousel-viewport{width: 380px;padding: var(--space-3) 0;overflow: hidden;}.carousel{--card-width: 340px;--card-gap: 40px;--carousel-index: 0;display: flex;gap: var(--card-gap);padding-left: 20px;transform: translateX(calc(var(--carousel-index) * -1 * (var(--card-width) + var(--card-gap))));transition: transform var(--motion-base) var(--motion-ease-spring);}.ui-button--card{flex: 0 0 var(--card-width);min-height: 220px;border-radius: var(--radius-lg);background: linear-gradient(180deg, var(--surface-panel-top), var(--surface-panel-bottom));font-size: 28px;}.ui-button--card .ui-button-detail{max-width: 280px;font-size: 18px;line-height: var(--line-height-body);}.carousel-counter{font-size: var(--font-size-body);color: var(--color-text-quiet);}.detail-image{width: 96px;height: 96px;border-radius: var(--radius-md);}.detail-image-fallback{font-size: var(--font-size-caption);color: var(--color-text-quiet);}.composer-field{width: 440px;min-height: 72px;padding: 0 var(--space-5);border: var(--border-width) solid transparent;border-radius: var(--radius-md);background: linear-gradient(180deg, var(--surface-field-top), var(--surface-field-bottom));font-size: 24px;text-align: center;outline: none;}.composer-field::placeholder{color: var(--color-text-quiet);}.composer-result{min-height: 28px;font-size: 20px;color: var(--color-text-muted);}.animation-host{position: relative;width: 200px;height: 200px;display: grid;place-items: center;}.animation-state{font-size: 20px;color: var(--color-text-muted);}.rive-canvas{position: absolute;inset: 0;width: 100%;height: 100%;}.rive-host[data-rive="available"] .fallback-glyph{display: none;}.fallback-glyph{width: 160px;height: 160px;transition: transform var(--motion-base) var(--motion-ease-spring);}.fallback-glyph-body{fill: var(--surface-panel-bottom);stroke: var(--color-accent);stroke-width: 6;transition: stroke var(--motion-base) ease;}.fallback-glyph-core{fill: var(--color-accent-soft);transform-origin: 50px 50px;transition: transform var(--motion-base) var(--motion-ease-spring), fill var(--motion-base) ease;}.rive-host:not([data-rive-state]) .fallback-glyph, .rive-host[data-rive-state="idle"] .fallback-glyph{animation: glyph-breathe 3.2s steps(96, end) infinite;}.rive-host[data-rive-state="attention"] .fallback-glyph-core{transform: scale(1.25);}.rive-host[data-rive-state="attention"] .fallback-glyph{animation: glyph-breathe 1.6s steps(48, end) infinite;}.rive-host[data-rive-state="thinking"] .fallback-glyph-body{stroke-dasharray: 24 12;}.rive-host[data-rive-state="thinking"] .fallback-glyph{animation: glyph-spin 2.4s steps(72, end) infinite;}.rive-host[data-rive-state="success"] .fallback-glyph-body{stroke: var(--color-good);}.rive-host[data-rive-state="success"] .fallback-glyph-core{fill: var(--color-good);transform: scale(1.15);}.rive-host[data-rive-state="fail"] .fallback-glyph-body{stroke: var(--color-warn);}.rive-host[data-rive-state="fail"] .fallback-glyph-core{fill: var(--color-warn);transform: scale(0.8);}.rive-host[data-rive-state="celebrate"] .fallback-glyph-body{stroke: var(--color-accent-soft);}.rive-host[data-rive-state="celebrate"] .fallback-glyph{animation: glyph-pulse var(--motion-slow) var(--motion-ease-spring) 2;}.rive-host[data-rive-visible="false"] .fallback-glyph{transform: scale(0.6);opacity: 0;}.rive-host[data-rive-pulse="react"] .fallback-glyph-core{animation: glyph-pulse var(--motion-slow) var(--motion-ease-spring);}.rive-host[data-rive-pulse="nudge-up"] .fallback-glyph{animation: nudge-up 320ms ease-out;}.rive-host[data-rive-pulse="nudge-down"] .fallback-glyph{animation: nudge-down 320ms ease-out;}.rive-host[data-rive-pulse="nudge-left"] .fallback-glyph{animation: nudge-left 320ms ease-out;}.rive-host[data-rive-pulse="nudge-right"] .fallback-glyph{animation: nudge-right 320ms ease-out;}@keyframes glyph-breathe{0%, 100%{transform: scale(1);}50%{transform: scale(1.04);}}@keyframes glyph-spin{to{transform: rotate(360deg);}}@keyframes glyph-pulse{0%{transform: scale(1);}40%{transform: scale(1.12);}100%{transform: scale(1);}}.crop-sprite{position: absolute;width: 0;height: 0;overflow: hidden;}.crop{display: block;overflow: visible;}.crop-body{fill: var(--crop-main);}.crop-dark{fill: var(--crop-dark);}.crop-light{fill: var(--crop-light, var(--crop-main));}.crop-leaf{fill: var(--crop-leaf);}.crop-shine{fill: var(--crop-shine);}.crop[data-kind="tomato"]{--crop-main: var(--crop-tomato);--crop-dark: var(--crop-tomato-dark);}.crop[data-kind="carrot"]{--crop-main: var(--crop-carrot);--crop-dark: var(--crop-carrot-dark);}.crop[data-kind="corn"]{--crop-main: var(--crop-corn);--crop-dark: var(--crop-corn-dark);}.crop[data-kind="lettuce"]{--crop-main: var(--crop-lettuce);--crop-light: var(--crop-lettuce-light);--crop-dark: var(--crop-lettuce-dark);}.crop[data-kind="eggplant"]{--crop-main: var(--crop-eggplant);--crop-dark: var(--crop-eggplant-dark);}.crop[data-kind="berry"]{--crop-main: var(--crop-berry);--crop-dark: var(--crop-berry-dark);}.pk-body{fill: var(--pumpkin);stroke: var(--nut-ink);stroke-width: 4.5;}.pk-rib, .pk-crack{fill: none;stroke: var(--pumpkin-rib);stroke-width: 3.5;stroke-linecap: round;stroke-linejoin: round;}.pk-crack{stroke: var(--nut-ink);stroke-width: 4;}.pk-flesh{fill: var(--pumpkin-flesh);stroke: var(--nut-ink);stroke-width: 3;}.pk-stem{fill: var(--pumpkin-stem);stroke: var(--nut-ink);stroke-width: 4;stroke-linejoin: round;}.ap-badge{fill: var(--special-ivory);stroke: var(--nut-ink);stroke-width: 3.5;}.ap-arrow{fill: var(--nut-ink);}.hv-box{fill: var(--hive-wood);stroke: var(--nut-ink);stroke-width: 4;}.hv-slot, .hv-door{fill: var(--nut-ink);}.hv-stand{fill: var(--hive-wood-dark);stroke: var(--nut-ink);stroke-width: 3;}.hv-lid{fill: var(--hive-lid);stroke: var(--nut-ink);stroke-width: 4;stroke-linejoin: round;}.hv-honey{fill: var(--honey);}.hn-jar{fill: var(--honey);stroke: var(--nut-ink);stroke-width: 4.5;stroke-linejoin: round;}.hn-lid{fill: var(--hive-lid);stroke: var(--nut-ink);stroke-width: 4;}.hn-label{fill: var(--honey-label);}.hn-drip{fill: var(--honey);}.ga-body{fill: var(--gold-apple);stroke: var(--nut-ink);stroke-width: 4.5;stroke-linejoin: round;}.ga-dark{fill: var(--gold-apple-dark);}.ga-shine{fill: var(--gold-apple-shine);}.ga-stem{fill: var(--hive-wood-dark);stroke: var(--nut-ink);stroke-width: 3;}.ga-leaf{fill: var(--gold-apple-leaf);stroke: var(--nut-ink);stroke-width: 3;stroke-linejoin: round;}.ga-spark{fill: var(--gold-apple-shine);}.wd-blade{fill: var(--weed);}.wd-blade-light{fill: var(--weed-light);}.special-gold, .special-gold-dark, .special-seed, .special-petal{stroke: var(--special-ink);stroke-width: 5;stroke-linejoin: round;}.special-gold{fill: var(--special-gold);}.special-gold-dark{fill: var(--special-gold-dark);}.special-shine{fill: var(--special-ivory);}.special-wing{fill: var(--special-ivory);stroke: var(--special-ink);stroke-width: 4;opacity: 0.92;}.special-split{fill: none;stroke: var(--special-ink);stroke-width: 4;stroke-linecap: round;}.special-crown{fill: var(--special-spark);stroke: var(--special-ink);stroke-width: 3;stroke-linejoin: round;}.special-ink{fill: var(--special-ink);}.special-spark{fill: var(--special-spark);stroke: var(--special-ink);stroke-width: 3;stroke-linejoin: round;}.special-seed{fill: var(--special-seed);}.special-petal{stroke-width: 3;}.special-petal--tomato{fill: var(--crop-tomato);}.special-petal--carrot{fill: var(--crop-carrot);}.special-petal--corn{fill: var(--crop-corn);}.special-petal--lettuce{fill: var(--crop-lettuce);}.special-petal--eggplant{fill: var(--crop-eggplant);}.special-petal--berry{fill: var(--crop-berry);}.m3-coin{display: inline-block;flex: none;width: 22px;height: 22px;border: 3px solid var(--coin-rim);border-radius: 50%;background: linear-gradient(180deg, var(--coin-top), var(--coin-bottom));}.m3-coin--large{width: 40px;height: 40px;border-width: 5px;}.screen--game{position: relative;justify-content: flex-start;gap: var(--space-2);padding: var(--space-2) 0 0;background: url("../assets/game/bkg.webp") center top / 600px 600px no-repeat;}.m3-hud, .m3-banner, body[data-screen="game"] .toast{font-family: var(--font-family-sign);font-weight: 400;font-stretch: normal;--sign-outline: 2px 0 0 var(--sign-ink), -2px 0 0 var(--sign-ink), 0 2px 0 var(--sign-ink), 0 -2px 0 var(--sign-ink), 2px 2px 0 var(--sign-ink), -2px 2px 0 var(--sign-ink), 2px -2px 0 var(--sign-ink), -2px -2px 0 var(--sign-ink), 0 4px 0 var(--sign-ink);}.m3-jar{position: absolute;z-index: 6;left: 0;top: 0;width: 44px;height: 44px;opacity: 0;pointer-events: none;}.m3-jar .crop{width: 100%;height: 100%;}.m3-hud{display: flex;align-items: center;justify-content: center;gap: var(--space-2);width: 568px;height: 56px;}.m3-goals{display: flex;flex: none;align-items: center;justify-content: center;gap: var(--space-3);min-width: 200px;height: 60px;padding: 0 22px 10px;background: url("../assets/game/sign-goals.webp") 0 0 / 100% 100% no-repeat;}.m3-goal{display: flex;align-items: center;gap: 2px;}.m3-goal-crop{width: 36px;height: 36px;}.m3-goals.is-many{gap: var(--space-2);padding: 0 16px 10px;}.m3-goals.is-many .m3-goal-crop{width: 30px;height: 30px;}.m3-goals.is-many .m3-goal-count{min-width: 22px;font-size: 21px;}.m3-goal-count{min-width: 26px;font-size: 24px;line-height: 1;text-align: left;color: var(--sign-text);text-shadow: var(--sign-outline);}.m3-goal-check{display: none;width: 11px;height: 20px;margin: 0 var(--space-2) 6px;border: solid var(--color-good);border-width: 0 5px 5px 0;rotate: 45deg;}.m3-goal.is-done .m3-goal-count{display: none;}.m3-goal.is-done .m3-goal-check{display: block;}.m3-stat{display: flex;align-items: center;justify-content: center;gap: var(--space-3);height: 56px;min-width: 190px;padding: 0 var(--space-4) 9px;background: url("../assets/game/sign-moves.webp") 0 0 / 100% 100% no-repeat;}.m3-stat-caption{font-size: 24px;line-height: 1;text-transform: uppercase;color: var(--sign-gold);text-shadow: var(--sign-outline);}.m3-stat-value{display: inline-block;min-width: 30px;font-size: 26px;line-height: 1;color: var(--sign-text);text-shadow: var(--sign-outline);}.m3-stat--moves.is-low .m3-stat-value{color: var(--color-warn);}.m3-frame{position: relative;isolation: isolate;padding: 14px;}.m3-frame::before{content: "";position: absolute;z-index: -1;left: calc(100% * -23 / 488);top: calc(100% * -23 / 482);width: calc(100% * 528 / 488);height: calc(100% * 528 / 482);background: url("../assets/game/container.webp") 0 0 / 100% 100% no-repeat;}.m3-grid{position: relative;overflow: hidden;contain: strict;border-radius: 8px;outline: none;background: url("../assets/game/board-checker.webp") 0 0 / calc(var(--cell) * 2) calc(var(--cell) * 2) repeat;}.m3-tile{position: absolute;left: 0;top: 0;width: var(--cell);height: var(--cell);padding: calc(var(--cell) * 0.03);}.m3-tile[data-special]{padding: calc(var(--cell) * 0.08);}.m3-tile[data-obstacle]{padding: calc(var(--cell) * 0.09);}.m3-crop{width: 100%;height: 100%;transition: scale var(--motion-fast) var(--motion-ease-spring);}.m3-tile.is-selected{z-index: 2;}.m3-tile[data-special]::before{content: "";position: absolute;inset: 2.5%;background: url("../assets/game/square-special.webp") 0 0 / 100% 100% no-repeat;opacity: 0.55;}.m3-tile[data-special] .m3-crop{position: relative;}.m3-tile[data-obstacle="walnut"]::before, .m3-tile[data-obstacle="pumpkin"]::before{content: "";position: absolute;inset: 6%;border-radius: 22%;background: linear-gradient(180deg, var(--nut-slab-top), var(--nut-slab-bottom));box-shadow: inset 0 3px 0 var(--nut-slab-edge);}.m3-tile[data-obstacle] .m3-crop{position: relative;}.m3-tile[data-obstacle="rock"], .m3-tile[data-obstacle="egg"]{padding: calc(var(--cell) * 0.03);}.m3-tile[data-obstacle="golden-apple"]::before{content: "";position: absolute;inset: 4%;border-radius: 50%;background: radial-gradient(closest-side, var(--gold-apple-glow), transparent);}.m3-tile.is-fixed{z-index: 1;}.m3-weed{position: absolute;left: 0;top: 0;width: var(--cell);height: var(--cell);padding: 2px;pointer-events: none;}.m3-weed::before{content: "";position: absolute;inset: 3px;border-radius: 30%;background: radial-gradient(closest-side, var(--weed-patch), transparent);}.m3-weed .crop{position: relative;}.m3-weed[hidden]{display: none;}.m3-weed .crop{width: 100%;height: 100%;}.m3-basket{position: absolute;left: 18px;right: 18px;bottom: -9px;height: 18px;border: 3px solid var(--nut-ink);border-radius: 6px 6px 10px 10px;background: repeating-linear-gradient(90deg, var(--hive-wood) 0 8px, var(--hive-wood-dark) 8px 10px);}.m3-basket[hidden]{display: none;}.m3-shell{position: absolute;z-index: 4;left: 0;top: 0;width: var(--cell);height: var(--cell);padding: calc(var(--cell) * 0.09);opacity: 0;pointer-events: none;}.m3-shell .crop{width: 100%;height: 100%;}.m3-shell .crop[data-kind="rock"]{scale: 1.15;}.m3-beam, .m3-blast, .m3-flyer{position: absolute;z-index: 4;left: 0;top: 0;opacity: 0;pointer-events: none;}.m3-beam{border-radius: var(--radius-pill);background: linear-gradient(180deg, var(--beam-edge), var(--beam-glow) 30%, var(--beam-core) 50%, var(--beam-glow) 70%, var(--beam-edge));}.m3-beam--col{background: linear-gradient(90deg, var(--beam-edge), var(--beam-glow) 30%, var(--beam-core) 50%, var(--beam-glow) 70%, var(--beam-edge));}.m3-blast{border-radius: 50%;background: radial-gradient(closest-side, var(--blast-core), var(--blast-mid) 55%, var(--blast-edge));}.m3-flyer{z-index: 5;width: var(--cell);height: var(--cell);padding: calc(var(--cell) * 0.06);}.m3-flyer .crop{width: 100%;height: 100%;}.m3-tile.is-selected .m3-crop{scale: 1.16;}.m3-cursor{position: absolute;z-index: 3;left: 0;top: 0;width: var(--cell);height: var(--cell);pointer-events: none;transition: transform 120ms var(--motion-ease-spring), opacity var(--motion-fast) ease;}.m3-cursor::before{content: "";position: absolute;inset: -6%;background: url("../assets/game/frame-cursor.webp") 0 0 / 100% 100% no-repeat;}.m3-cursor.is-selected::before{inset: -2%;background-image: url("../assets/game/frame-picked.webp");}.m3-cursor.is-hidden{opacity: 0;}.m3-arrow{position: absolute;display: none;width: 14px;height: 16px;background: url("../assets/game/arrow.webp") 0 0 / 100% 100% no-repeat;}.m3-cursor.is-selected[data-up="true"] .m3-arrow--up{display: block;left: calc(50% - 7px);top: -17px;rotate: 90deg;}.m3-cursor.is-selected[data-down="true"] .m3-arrow--down{display: block;left: calc(50% - 7px);bottom: -17px;rotate: -90deg;}.m3-cursor.is-selected[data-left="true"] .m3-arrow--left{display: block;top: calc(50% - 8px);left: -15px;}.m3-cursor.is-selected[data-right="true"] .m3-arrow--right{display: block;top: calc(50% - 8px);right: -15px;scale: -1 1;}.m3-hint{position: absolute;z-index: 3;left: 0;top: 0;width: var(--cell);height: var(--cell);background: url("../assets/game/frame-picked.webp") 0 0 / 100% 100% no-repeat;opacity: 0;pointer-events: none;}.m3-hint.is-visible{opacity: 1;}.m3-hint-arrow{position: absolute;width: 0;height: 0;border: 20px solid transparent;}.m3-hint[data-direction="right"] .m3-hint-arrow{top: calc(50% - 20px);right: -42px;border-left-color: var(--select-border);}.m3-hint[data-direction="left"] .m3-hint-arrow{top: calc(50% - 20px);left: -42px;border-right-color: var(--select-border);}.m3-hint[data-direction="down"] .m3-hint-arrow{left: calc(50% - 20px);bottom: -42px;border-top-color: var(--select-border);}.m3-hint[data-direction="up"] .m3-hint-arrow{left: calc(50% - 20px);top: -42px;border-bottom-color: var(--select-border);}.m3-pop{position: absolute;z-index: 4;left: 0;top: 0;display: grid;place-items: center;width: var(--cell);height: var(--cell);font-size: 24px;color: var(--coin-top);opacity: 0;pointer-events: none;}.m3-combo{position: absolute;z-index: 4;left: 0;right: 0;top: calc(50% - 30px);width: fit-content;margin: 0 auto;padding: var(--space-2) var(--space-5);border-radius: var(--radius-pill);background: linear-gradient(180deg, var(--surface-action-top), var(--surface-action-bottom));font-size: 30px;opacity: 0;pointer-events: none;}.m3-banner{position: absolute;z-index: 5;left: 50%;top: 50%;width: max-content;min-width: 260px;max-width: 420px;padding: 22px 40px 34px;background: url("../assets/game/sign-harvest.webp") 0 0 / 100% 100% no-repeat;text-align: center;opacity: 0;transform: translate(-50%, -50%) scale(0.94);transition: opacity var(--motion-base) ease, transform var(--motion-base) var(--motion-ease-spring);pointer-events: none;}.m3-banner.is-visible{opacity: 1;transform: translate(-50%, -50%);}.m3-banner-title{font-size: 30px;line-height: var(--line-height-tight);text-transform: uppercase;color: var(--sign-text);text-shadow: var(--sign-outline);}.m3-banner-number{font-size: 60px;line-height: 1;color: var(--sign-gold);text-shadow: var(--sign-outline);}.m3-banner-line{margin-top: var(--space-1);font-size: 18px;line-height: var(--line-height-body);color: var(--sign-text);text-shadow: var(--sign-outline);}.screen--game[data-field="bonus"] .m3-banner{box-shadow: 0 0 0 4px var(--gold-apple), 0 0 28px var(--gold-apple-glow);border-radius: 18px;}.screen--game[data-field="bonus"] .m3-banner-title{color: var(--gold-apple);}.screen--game[data-field="hard"] .m3-banner{box-shadow: 0 0 0 4px var(--hard-sign);border-radius: 18px;}.screen--game[data-field="hard"] .m3-banner-title{color: var(--hard-sign-text);}.m3-goals.is-bonus .m3-goal-count{min-width: 40px;color: var(--gold-apple);}.m3-gold-burst{position: absolute;z-index: 3;border-radius: 50%;border: 5px solid var(--gold-apple);box-shadow: 0 0 18px var(--gold-apple-glow);opacity: 0;pointer-events: none;}.m3-apple-fly{z-index: 7;}.m3-prompt-wallet{display: flex;align-items: center;gap: var(--space-2);font-size: 22px;color: var(--color-text);}body[data-screen="game"] .toast{bottom: calc(var(--stage-size) - var(--safe-bottom) + 2px);max-width: 590px;padding: 0;background: none;font-size: 17px;line-height: 20px;text-transform: uppercase;color: var(--sign-text);text-shadow: var(--sign-outline);}body[data-screen="game"] .toast[data-tone="good"]{color: var(--color-good);}body[data-screen="game"] .toast[data-tone="warn"]{color: var(--color-warn);}.m3-prompt{position: absolute;z-index: 6;inset: 40px;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: var(--space-3);border-radius: var(--radius-lg);background: linear-gradient(180deg, var(--surface-panel-top), var(--surface-panel-bottom));box-shadow: var(--shadow-raised);}.m3-prompt[hidden]{display: none;}.m3-prompt .ui-button{width: 260px;}.m3-prompt--debug{gap: var(--space-2);border: var(--border-width) solid var(--stall-wood);background: var(--stall-sign-face);}.m3-prompt--debug .ui-button{min-height: 48px;padding: var(--space-1) var(--space-4);font-size: 20px;}.m3-debug{position: relative;flex: none;width: 50px;height: 55px;padding: 0;border: var(--border-width) solid transparent;border-radius: 50%;background: none;outline: none;}.m3-debug::before{content: "";position: absolute;inset: 0;background: url("../assets/game/gear.webp") center / 46px 51px no-repeat;}.m3-debug.nav-on{border-color: var(--focus-border);background: none;box-shadow: 0 0 0 4px var(--focus-ring);}.screen--game.dream-board{gap: 4px;padding-top: 0;background-image: url("../assets/dream/background.webp");--surface-panel-top: var(--dream-panel-top);--surface-panel-bottom: var(--dream-panel-bottom);--surface-control-top: var(--dream-panel-top);--surface-control-bottom: var(--dream-panel-bottom);--surface-action-top: var(--dream-plum);--surface-action-bottom: var(--dream-panel-top);--focus-border: var(--dream-cream);--focus-ring: var(--dream-ring);--stall-sign-face: var(--dream-panel-bottom);--stall-wood: var(--dream-lavender);--sign-ink: var(--dream-ink);--beam-core: var(--dream-cream);--beam-glow: var(--dream-gold);--blast-core: var(--dream-cream);--blast-mid: var(--dream-lavender);}.dream-brand{flex: none;height: 18px;font-size: 16px;line-height: 18px;letter-spacing: 0.18em;text-transform: uppercase;color: var(--dream-cream);}.dream-board .m3-hud, .dream-board .m3-banner{font-family: var(--font-family);font-weight: 900;--sign-outline: none;}.dream-board .m3-hud{height: 54px;gap: 10px;}.dream-board .m3-goals{min-width: 234px;height: 54px;padding: 0 20px;gap: 12px;background-image: url("../assets/dream/hud-plaque.webp");}.dream-board .m3-goal-count{color: var(--dream-ink);font-size: 28px;text-shadow: none;}.dream-board .m3-goal-check{border-color: var(--dream-ink);}.dream-board .m3-goals.is-many{padding: 0 16px;gap: 8px;}.dream-board .m3-goals.is-many .m3-goal-count{font-size: 22px;}.dream-board .m3-stat{min-width: 176px;height: 54px;padding: 0 18px;gap: 10px;background-image: url("../assets/dream/hud-plaque.webp");}.dream-board .m3-stat-caption{font-size: 20px;color: var(--dream-ink);text-shadow: none;}.dream-board .m3-stat-value{font-size: 28px;color: var(--dream-ink);text-shadow: none;}.dream-board .m3-stat.is-low{outline: 3px solid var(--dream-gold);border-radius: 18px;}.dream-board .m3-debug{width: 48px;height: 48px;border-radius: 17px;}.dream-board .m3-debug::before{inset: 4px;background: none;border: 7px dotted var(--dream-cream);border-radius: 50%;box-shadow: inset 0 0 0 4px var(--dream-plum);}.dream-board .m3-frame{border-radius: 24px;background: var(--dream-board);}.dream-board .m3-frame::before{inset: 0;width: auto;height: auto;background: none;border: 14px solid transparent;border-image: url("../assets/dream/board-frame.webp") 58 / 18px stretch;}.dream-board .m3-grid{background: url("../assets/dream/cell.webp") 0 0 / var(--cell) var(--cell) repeat;border-radius: 14px;}.dream-board .m3-tile{padding: calc(var(--cell) * 0.035);}.dream-board .m3-tile[data-special]{padding: calc(var(--cell) * 0.08);}.dream-board .m3-tile[data-obstacle]{padding: calc(var(--cell) * 0.09);}.dream-board .m3-tile[data-special]::before{background: var(--dream-plum);border: 3px solid var(--dream-gold);border-radius: 22%;opacity: 0.7;}.dream-board .m3-cursor::before, .dream-board .m3-hint{inset: 1%;background: none;border: 5px solid var(--dream-cream);border-radius: 24% 21% 25% 22%;box-shadow: inset 0 2px 0 var(--dream-gold), 0 3px 0 var(--dream-ink);}.dream-board .m3-cursor.is-selected::before{inset: 1%;background: none;border-color: var(--dream-gold);border-width: 7px;}.dream-board .m3-hint{inset: auto;border-color: var(--dream-gold);}.dream-board .m3-arrow{width: 14px;height: 16px;background: var(--dream-gold);clip-path: polygon(0 50%, 100% 0, 100% 100%);}.dream-board .m3-hint-arrow{border-width: 12px;}.dream-board .m3-hint[data-direction="right"] .m3-hint-arrow{top: calc(50% - 12px);right: -26px;border-left-color: var(--dream-gold);}.dream-board .m3-hint[data-direction="left"] .m3-hint-arrow{top: calc(50% - 12px);left: -26px;border-right-color: var(--dream-gold);}.dream-board .m3-hint[data-direction="down"] .m3-hint-arrow{left: calc(50% - 12px);bottom: -26px;border-top-color: var(--dream-gold);}.dream-board .m3-hint[data-direction="up"] .m3-hint-arrow{left: calc(50% - 12px);top: -26px;border-bottom-color: var(--dream-gold);}.dream-board .m3-banner{min-width: 280px;padding: 16px 22px;background: none;border: 20px solid transparent;border-image: url("../assets/dream/hud-plaque.webp") 24 fill / 20px stretch;border-radius: 24px;}.dream-board .m3-banner-title, .dream-board .m3-banner-number, .dream-board .m3-banner-line{color: var(--dream-ink);text-shadow: none;}.dream-board .m3-banner-title{font-size: 28px;}.dream-board .m3-banner-number{font-size: 48px;}.dream-board .m3-pop{color: var(--dream-cream);text-shadow: 0 2px 0 var(--dream-ink);}.dream-board .m3-prompt--debug{gap: 5px;inset: 26px;}.dream-board .m3-prompt--debug .ui-button{min-height: 40px;padding: 4px 14px;}.dream-board .m3-prompt--debug .ui-button[data-action="piece-motion"]{flex-direction: row;gap: 12px;}.dream-board .m3-prompt--debug .ui-button-detail{font-size: 16px;}.dream-board[data-piece-motion="stop"] .m3-tile.is-selected .m3-crop{transition-timing-function: steps(2, end);}.dream-board[data-piece-motion="stop"] .m3-cursor{transition: transform 160ms steps(2, end), opacity var(--motion-fast) ease;}.dream-board[data-piece-motion="stop"] .m3-cursor::before{transform-origin: center;animation: dream-cursor-idle 2400ms steps(1, end) infinite;}@keyframes dream-cursor-idle{0%, 100%{transform: rotate(0deg) scale(1);}12.5%{transform: rotate(-0.6deg) scale(1.012, 0.994);}25%{transform: rotate(-0.3deg) scale(1.018, 0.992);}37.5%{transform: rotate(0.2deg) scale(1.01, 1.002);}50%{transform: rotate(0.6deg) scale(0.996, 1.012);}62.5%{transform: rotate(0.3deg) scale(0.992, 1.018);}75%{transform: rotate(-0.2deg) scale(1.002, 1.01);}87.5%{transform: rotate(0deg) scale(1.006, 1.002);}}body[data-app-visibility="hidden"] .dream-board .m3-cursor::before, .dream-board .m3-grid:not(:focus) .m3-cursor::before, .dream-board .m3-cursor.is-hidden::before{animation-play-state: paused;}:root[data-motion="reduced"] .dream-board .m3-cursor{transition: none;}:root[data-motion="reduced"] .dream-board .m3-cursor::before{animation: none;}@media (prefers-reduced-motion: reduce){.dream-board .m3-cursor{transition: none;}.dream-board .m3-cursor::before{animation: none;}}body[data-screen="game"] .toast{font-family: var(--font-family);font-size: 16px;font-weight: 700;text-transform: none;color: var(--dream-cream);text-shadow: 0 2px 2px var(--dream-ink);}.dream-refuge, .dream-shop, .screen--result{--surface-panel-top: var(--dream-panel-top);--surface-panel-bottom: var(--dream-panel-bottom);--surface-control-top: var(--dream-panel-top);--surface-control-bottom: var(--dream-panel-bottom);--surface-action-top: var(--dream-plum);--surface-action-bottom: var(--dream-panel-top);--focus-border: var(--dream-cream);--focus-ring: var(--dream-ring);--color-text: var(--dream-cream);}.screen--street.dream-refuge{position: relative;display: block;overflow: hidden;padding: 0;background: var(--dream-board) url("../assets/dream/background.webp") center top / 600px 600px no-repeat;animation: none;text-align: center;}.refuge-header{position: absolute;inset: 8px 14px auto;height: 58px;}.refuge-logo{position: absolute;left: 160px;width: 252px;height: 58px;padding: 2px 10px;border-radius: 36% 40% 32% 38%;background: var(--dream-plum);box-shadow: inset 0 3px 0 var(--dream-lavender);text-align: center;font-size: 25px;line-height: 25px;letter-spacing: 0.06em;text-transform: uppercase;color: var(--dream-gold);text-shadow: 0 3px 0 var(--dream-ink);}.refuge-logo span{display: block;}.refuge-wallet{position: absolute;left: 0;top: 12px;display: flex;align-items: center;justify-content: center;gap: 8px;min-width: 108px;height: 40px;padding: 0 14px;background: url("../assets/dream/hud-plaque.webp") center / 100% 100% no-repeat;color: var(--dream-ink);font-size: 23px;}.refuge-gear{position: absolute;right: 0;top: 8px;width: 44px;height: 44px;padding: 0;border: 3px solid transparent;border-radius: 15px;background: var(--dream-plum);outline: none;}.refuge-gear::before{content: "";position: absolute;inset: 6px;border: 6px dotted var(--dream-cream);border-radius: 50%;}.refuge-gear.nav-on{border-color: var(--dream-cream);box-shadow: 0 0 0 3px var(--dream-ring);}.refuge-place-title{position: absolute;z-index: 3;left: 180px;top: 76px;width: 240px;height: 46px;color: var(--dream-ink);background: url("../assets/dream/hud-plaque.webp") center / 100% 100% no-repeat;text-align: center;font-size: 27px;line-height: 44px;text-transform: uppercase;}.refuge-window{position: absolute;left: 54px;top: 116px;width: 492px;height: 294px;overflow: hidden;contain: paint;isolation: isolate;border-radius: 23px;background: var(--dream-board);}.refuge-window::after{content: "";position: absolute;z-index: 5;inset: 0;border: 12px solid transparent;border-image: url("../assets/dream/board-frame.webp") 58 / 12px stretch;pointer-events: none;}.refuge-track{display: flex;width: 1476px;height: 294px;transition: transform 400ms steps(5, end);}.refuge-page{position: relative;flex: none;width: 492px;height: 294px;overflow: hidden;background-color: var(--dream-board);background-position: center;background-size: 492px 294px;}.refuge-garden{background-image: url("../assets/dream/garden-room.webp");}.refuge-nursery{background-image: url("../assets/dream/nursery-room.webp");}.refuge-market{background-image: url("../assets/dream/market-room.webp");}.refuge-art{position: absolute;object-fit: contain;pointer-events: none;}.refuge-art[hidden], .refuge-plant[hidden], .refuge-stock[hidden], .refuge-flag[hidden], .refuge-extra[hidden], .refuge-guide[hidden], .refuge-food-icon[hidden]{display: none;}.refuge-nest{z-index: 1;left: 84px;bottom: 8px;width: 260px;height: 140px;}.refuge-nest--front{z-index: 4;clip-path: inset(56% 0 0);}.refuge-dragon{z-index: 2;transform-origin: 50% 90%;}.refuge-dragon--baby{left: 118px;bottom: 66px;width: 190px;height: 168px;}.refuge-dragon--young{left: 108px;bottom: 58px;width: 210px;height: 210px;}.refuge-incubator{z-index: 1;right: 16px;bottom: 18px;width: 150px;height: 210px;}.refuge-dragon.is-growing{animation: refuge-grow 1200ms steps(1, end) both;}@keyframes refuge-grow{0%{transform: scale(0.65) rotate(-4deg);opacity: 0;}20%{transform: scale(0.84) rotate(2deg);opacity: 1;}40%{transform: scale(1.05) rotate(-2deg);}60%{transform: scale(0.98) rotate(1deg);}80%, 100%{transform: scale(1) rotate(0deg);}}body[data-app-visibility="hidden"] .refuge-dragon, .refuge-page.is-away .refuge-dragon{animation-play-state: paused;}.refuge-plant{position: absolute;width: 52px;height: 52px;}.refuge-plant--0{left: 78px;top: 96px;}.refuge-plant--1{left: 168px;top: 108px;}.refuge-plant--2{left: 276px;top: 96px;}.refuge-plant--3{left: 366px;top: 108px;}.refuge-stock{position: absolute;top: 138px;width: 48px;height: 48px;}.dream-crate-icon[hidden]{display: none;}.refuge-stock--0{left: 106px;}.refuge-stock--1{left: 208px;}.refuge-stock--2{left: 310px;}.refuge-improvements{position: absolute;top: 78px;left: 122px;right: 120px;display: flex;justify-content: space-around;}.refuge-flag{display: block;width: 20px;height: 27px;background: var(--dream-gold);clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 75%, 0 100%);}.refuge-chevron{position: absolute;top: 219px;font-size: 67px;line-height: 70px;color: var(--dream-cream);text-shadow: 0 3px 0 var(--dream-plum);}.refuge-chevron--left{left: 16px;}.refuge-chevron--right{right: 16px;}.refuge-chevron.is-boundary{opacity: 0.35;}.refuge-tabs{position: absolute;left: 72px;right: 72px;top: 417px;height: 33px;display: flex;justify-content: space-between;}.refuge-tab{position: relative;min-width: 122px;height: 30px;color: var(--dream-ink);background: url("../assets/dream/hud-plaque.webp") center / 100% 100% no-repeat;font-size: 20px;line-height: 27px;text-transform: uppercase;}.refuge-tab.is-current{color: var(--dream-ink);}.refuge-tab.is-current::after{content: "";position: absolute;bottom: -1px;left: 18px;right: 18px;height: 5px;border-radius: 4px;background: var(--dream-cream);}.refuge-status{position: absolute;left: 40px;right: 40px;top: 451px;height: 27px;display: flex;align-items: center;justify-content: center;gap: 8px;font-size: 18px;color: var(--dream-cream);white-space: nowrap;}.refuge-food-icon{width: 27px;height: 27px;flex: none;}.refuge-primary{position: absolute;left: 140px;top: 482px;width: 320px;min-height: 50px;padding: 8px 20px;font-size: 27px;border-radius: 22px;border: 3px solid var(--dream-lavender);}.refuge-primary.nav-on{transform: none;border-color: var(--dream-cream);box-shadow: 0 0 0 4px var(--dream-ring), inset 0 2px 0 var(--dream-lavender);}.refuge-extra{position: absolute;left: 96px;right: 96px;top: 539px;display: flex;justify-content: center;gap: 16px;}.refuge-extra .ui-button{flex: 1;min-height: 34px;padding: 4px 10px;font-size: 19px;border-radius: 13px;}.refuge-guide{position: absolute;top: 545px;left: 30px;right: 30px;font-size: 16px;line-height: 21px;color: var(--dream-cream);}body[data-screen="street"] .toast{top: 416px;bottom: auto;max-width: 520px;padding: 4px 14px;font-size: 16px;line-height: 21px;}.screen--shop.dream-shop{position: relative;display: flex;justify-content: flex-start;padding: 16px 24px;gap: 8px;text-align: center;background: var(--dream-board) url("../assets/dream/background.webp") center / 600px 600px no-repeat;}.screen--shop.dream-shop > *{position: relative;}.screen--shop.dream-shop > .crop-sprite{position: absolute;}.dream-shop h2{font-size: 30px;}.dream-shop-wallet{font-size: 22px;color: var(--dream-gold);}.dream-crates{display: grid;grid-template-columns: repeat(3, 164px);grid-auto-rows: 166px;gap: 16px;width: 524px;margin-top: 16px;}.dream-crate.ui-button{width: 164px;min-height: 166px;padding: 10px 8px;gap: 8px;justify-content: center;font-size: 20px;border: 4px solid var(--dream-plum);background: var(--dream-panel-bottom);}.dream-crate.nav-on{border-color: var(--dream-cream);transform: none;}.dream-crate-icon{width: 76px;height: 76px;margin: 0 auto;}.dream-crate-icon[hidden]{display: none;}.dream-crate-time{font-size: 15px;color: var(--dream-cream);}.dream-shop-waiting{max-width: 520px;margin-top: 10px;font-size: 18px;line-height: 24px;}.dream-shop > .ui-button{min-height: 40px;padding: 4px 20px;font-size: 20px;}.screen--result{background: var(--dream-board) url("../assets/dream/background.webp") center / 600px 600px no-repeat;}.result-reserved{font-size: 19px;color: var(--dream-mint);}.screen--result{gap: var(--space-3);}.result-cards{display: flex;gap: var(--space-3);}.result-card{position: relative;display: flex;flex-direction: column;align-items: center;gap: 2px;width: 150px;padding: var(--space-3) var(--space-2);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-md);background: var(--stall-sign-face);}.result-card.is-waiting{visibility: hidden;}.result-card-crop{width: 72px;height: 72px;}.result-card-name{font-size: var(--font-size-body);color: var(--color-text-quiet);}.result-card-count{font-size: 36px;line-height: 1.1;font-variant-numeric: tabular-nums;}.result-card-bonus{min-height: 24px;padding: 0 var(--space-2);border-radius: var(--radius-pill);font-size: 17px;line-height: 24px;color: var(--stall-badge-ink);background: var(--stall-badge);}.result-card-bonus:empty{visibility: hidden;}.result-card.is-lost .result-card-crop{opacity: 0.5;}.result-card.is-lost .result-card-bonus{display: none;}.result-summary{display: flex;align-items: center;gap: var(--space-2);min-height: 44px;padding: var(--space-1) var(--space-5);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: 18px;}.result-summary.is-waiting{visibility: hidden;}.result-summary[hidden]{display: none;}.result-summary-value{font-size: 26px;}.result-summary-line{color: var(--color-text-muted);}.screen--shop, .screen--street{position: relative;display: block;padding: 0;text-align: left;}.screen--shop > *, .screen--street > *{position: absolute;}.stall-backdrop{left: 0;top: 0;width: 600px;height: 576px;}.stall-art{display: block;width: 100%;height: 100%;overflow: visible;}.stall-ground{fill: var(--stall-ground);}.stall-wall{fill: var(--stall-wood-deep);}.stall-post{fill: var(--stall-wood-dark);}.stall-shelf{fill: var(--stall-wood);}.stall-shelf-edge{fill: var(--stall-wood-dark);}.stall-awning-roof{fill: var(--stall-awning-roof);}.stall-awning-a{fill: var(--stall-awning-a);}.stall-awning-b{fill: var(--stall-awning-b);}.stall-wood{fill: var(--stall-wood);}.stall-wood-dark{fill: var(--stall-wood-dark);}.stall-rope{fill: var(--stall-wood-deep);}.stall-sign-board{fill: var(--stall-wood);}.stall-sign-inner{fill: var(--stall-sign-face);}.stall-metal{fill: var(--stall-metal);}.stall-metal-dark{fill: var(--stall-metal-dark);}.stall-scale-face{fill: var(--stall-register-key);}.stall-scale-needle{stroke: var(--stall-awning-a);stroke-width: 3;stroke-linecap: round;}.stall-gear{fill: var(--stall-metal);}.stall-gear-hole{fill: var(--stall-metal-dark);}.hub-obj{padding: 0;border: var(--border-width) solid transparent;border-radius: var(--radius-md);background: none;color: var(--color-text);cursor: pointer;outline: none;transition: transform var(--motion-fast) var(--motion-ease-spring), border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;}.hub-obj.nav-on{z-index: 2;border-color: var(--focus-border);background: none;box-shadow: 0 0 0 4px var(--focus-ring);transform: scale(1.06) translateY(-3px);}.hub-obj .stall-art{position: absolute;left: 0;top: 0;}.hub-badge{position: absolute;z-index: 3;left: -10px;top: -10px;width: 26px;height: 26px;border-radius: 50%;background: var(--stall-badge);}.hub-badge::after{content: "";position: absolute;left: 7px;top: 6px;border: 6px solid transparent;border-top: 0;border-bottom: 9px solid var(--stall-badge-ink);}.hub-badge[hidden]{display: none;}.hub-sign .hub-badge, .hub-scale .hub-badge{top: auto;bottom: -8px;}.hub-level{position: absolute;left: 50%;bottom: -8px;translate: -50% 0;padding: 0 var(--space-2);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: var(--font-size-caption);line-height: 20px;white-space: nowrap;}.hub-wallet{left: 16px;top: 12px;display: flex;align-items: center;gap: var(--space-2);height: 44px;padding: 0 var(--space-4) 0 var(--space-3);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: 22px;font-variant-numeric: tabular-nums;}.hub-sign{left: 205px;top: 0;width: 190px;height: 70px;}.hub-sign-title{position: absolute;left: 0;right: 0;top: 18px;font-size: 20px;line-height: 1.1;text-align: center;letter-spacing: 0.04em;}.hub-sign-tag{position: absolute;left: 0;right: 0;top: 40px;font-size: var(--font-size-caption);text-align: center;color: var(--stall-badge);}.hub-scale{left: 500px;top: 0;width: 62px;height: 70px;}.hub-cost{position: absolute;z-index: 3;left: 50%;top: calc(100% + 10px);translate: -50% 0;display: none;align-items: center;gap: var(--space-1);padding: 2px var(--space-3) 2px 4px;border: var(--border-width) solid var(--coin-bottom);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: 18px;line-height: 24px;color: var(--stall-badge);white-space: nowrap;}.hub-obj.nav-on .hub-cost{display: flex;}.hub-cost.is-short{border-color: var(--stall-wood);color: var(--color-text-quiet);}.hub-crate{width: 160px;height: 110px;}.hub-crate .stall-art{top: 44px;height: 62px;}.hub-pile{position: absolute;left: 0;right: 0;top: 0;height: 60px;}.hub-pile-crop{position: absolute;width: 46px;height: 46px;transition: opacity var(--motion-base) ease, scale var(--motion-base) ease;}.hub-pile-crop--0{left: 57px;top: 14px;}.hub-pile-crop--1{left: 22px;top: 18px;}.hub-pile-crop--2{left: 92px;top: 18px;}.hub-pile-crop--3{left: 40px;top: 0;}.hub-pile-crop--4{left: 74px;top: 0;}.hub-pile-crop.is-gone{opacity: 0;scale: 0.4;}.hub-crate.is-sold .hub-pile-crop{opacity: 0.8;}.hub-crate.is-sold .hub-crate-stock{color: var(--sign-gold);}.hub-crate-front{position: absolute;left: 10px;right: 10px;top: 62px;display: flex;justify-content: space-between;gap: var(--space-1);}.hub-crate-stock, .hub-crate-time{padding: 0 var(--space-2);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: 17px;line-height: 26px;font-variant-numeric: tabular-nums;white-space: nowrap;}.hub-crate-stock:empty, .hub-crate-time:empty{display: none;}.hub-crate-time{color: var(--color-text-muted);}.hub-crate-label{display: none;}.hub-crate.is-empty .hub-crate-label{position: absolute;left: 0;right: 0;top: 14px;display: flex;flex-direction: column;align-items: center;font-size: var(--font-size-caption);color: var(--color-text-quiet);}.hub-crate-icon{width: 36px;height: 36px;opacity: 0.55;}.hub-crate-closed{display: none;}.hub-crate.is-closed > :not(.hub-crate-closed):not(.hub-badge){visibility: hidden;}.hub-crate.is-closed .hub-crate-closed{position: absolute;inset: 10px 6px 4px;display: flex;align-items: center;justify-content: center;gap: var(--space-2);border: 3px dashed var(--stall-wood);border-radius: var(--radius-sm);font-size: 18px;color: var(--color-text-quiet);}.hub-crate-ghost{width: 44px;height: 44px;opacity: 0.35;}.hub-crate.is-next .hub-crate-closed{color: var(--stall-badge);}.hub-crate.is-next .hub-crate-ghost{opacity: 0.7;}.hub-crate-price{display: flex;align-items: center;gap: var(--space-1);white-space: nowrap;}.hub-coins{position: absolute;z-index: 3;right: -10px;top: -8px;display: flex;align-items: center;gap: var(--space-1);padding: 2px var(--space-2) 2px 4px;border: var(--border-width) solid var(--coin-bottom);border-radius: var(--radius-pill);background: var(--stall-sign-face);font-size: 18px;line-height: 22px;color: var(--stall-badge);font-variant-numeric: tabular-nums;}.hub-coins[hidden]{display: none;}.hub-board{left: 60px;top: 404px;width: 480px;height: 62px;padding: var(--space-1) var(--space-4);border: 4px solid var(--stall-wood);border-radius: var(--radius-sm);background: var(--stall-chalk);color: var(--stall-chalk-text);text-align: center;}.hub-board-title, .hub-board-line{overflow: hidden;white-space: nowrap;text-overflow: ellipsis;}.hub-board-title{font-size: 19px;line-height: 1.3;}.hub-board-line{font-size: var(--font-size-body);line-height: 1.4;color: var(--stall-chalk-quiet);}.hub-board-line.is-action{color: var(--stall-badge);}.hub-play{left: 190px;top: 474px;width: 220px;min-height: 68px;font-size: 26px;}.hub-play, .hub-play.nav-on{background: linear-gradient(180deg, var(--stall-play-top), var(--stall-play-bottom));}.hub-play.nav-on{border-color: var(--stall-play-border);}.hub-gear{left: 540px;top: 520px;width: 44px;height: 44px;border-radius: 50%;}.hub-gear .stall-art{left: 4px;top: 4px;width: 32px;height: 32px;}.hub-fx{inset: 0;z-index: 4;pointer-events: none;}.hub-fly-coin{position: absolute;left: 0;top: 0;opacity: 0;}.hub-arrival{position: absolute;left: 0;top: 0;font-size: 28px;color: var(--stall-badge);opacity: 0;text-shadow: 0 2px 0 var(--stall-wood-deep);}.shop-sign .stall-art{position: absolute;left: 0;top: 0;}.screen--shop .hub-crate.is-closed .hub-crate-closed{flex-direction: column;gap: 0;font-size: var(--font-size-caption);background: var(--hud-panel-bottom);}.street-scene{left: 0;top: 0;width: 600px;height: 576px;overflow: hidden;}.street-piece, .street-base, .street-old, .st-crate, .street-sign{transform-box: fill-box;transform-origin: 50% 100%;}.street-bubble{transform-box: fill-box;transform-origin: 50% 100%;}.street-camera{left: 0;top: 0;width: 600px;height: 576px;}.street-camera > *{position: absolute;}.street-walkers{inset: 0;overflow: hidden;pointer-events: none;}.street-walker{position: absolute;left: 0;top: 0;}.street-walker-art{position: absolute;overflow: visible;}.gs-sky-top{stop-color: var(--street-sky-top);}.gs-sky-bottom{stop-color: var(--street-sky-bottom);}.gs-sky-horizon{stop-color: var(--street-sky-horizon);}.gs-moon{stop-color: var(--street-moon);}.gs-brick-top{stop-color: var(--street-brick-top);}.gs-brick-bottom{stop-color: var(--street-brick-bottom);}.gs-glass-top{stop-color: var(--street-glass-top);}.gs-glass-bottom{stop-color: var(--street-glass-bottom);}.gs-wood-top{stop-color: var(--street-wood-top);}.gs-wood-bottom{stop-color: var(--street-wood-bottom);}.gs-road-top{stop-color: var(--street-road-top);}.gs-road-bottom{stop-color: var(--street-road-bottom);}.gs-pool{stop-color: var(--street-pool);}.gs-halo{stop-color: var(--street-halo);}.gs-wall-top{stop-color: var(--shop-wall-top);}.gs-wall-bottom{stop-color: var(--shop-wall-bottom);}.gs-light{stop-color: var(--shop-light);}.st-star{fill: var(--street-star);opacity: 0.55;}.st-star-bright{fill: var(--street-star);}.st-moon{fill: var(--street-moon);}.st-moon-dark{fill: var(--street-moon-dark);}.st-far{fill: var(--street-far);}.st-near{fill: var(--street-near);}.st-near-roof{fill: var(--street-near-roof);}.st-window-dark{fill: var(--street-window-dark);}.st-window-warm{fill: var(--street-window-warm);}.st-sidewalk{fill: var(--street-sidewalk);}.st-sidewalk-hi{fill: var(--street-sidewalk-hi);}.st-seam{fill: var(--street-seam);}.st-curb{fill: var(--street-curb);}.st-curb-top{fill: var(--street-curb-top);}.st-shade{fill: var(--street-shade);}.st-shade-soft{fill: var(--street-shade-soft);}.st-brick-hi{fill: var(--street-brick-hi);}.st-brick-dark{fill: var(--street-brick-dark);}.st-mortar{fill: var(--street-mortar);}.st-trim{fill: var(--street-trim);}.st-trim-light{fill: var(--street-trim-light);}.st-trim-dark{fill: var(--street-trim-dark);}.st-glass-hi{fill: var(--street-glass-hi);}.st-curtain{fill: var(--street-curtain);}.st-shelf-in{fill: var(--street-shelf-in);}.st-goods-0{fill: var(--street-goods-0);}.st-goods-1{fill: var(--street-goods-1);}.st-goods-2{fill: var(--street-goods-2);}.st-goods-3{fill: var(--street-goods-3);}.st-door{fill: var(--street-door);}.st-door-dark{fill: var(--street-door-dark);}.st-wood{fill: var(--stall-wood);}.st-wood-dark{fill: var(--stall-wood-dark);}.st-wood-deep{fill: var(--stall-wood-deep);}.st-wood-light{fill: var(--street-wood-light);}.st-wheel-in{fill: var(--street-wheel-in);}.st-spoke{stroke: var(--stall-wood);stroke-width: 3.5;stroke-linecap: round;}.st-tire{fill: var(--street-tire);}.st-metal{fill: var(--stall-metal);}.st-metal-dark{fill: var(--stall-metal-dark);}.st-metal-hi{fill: var(--street-metal-hi);}.st-sign{fill: var(--street-sign);}.st-sign-hi{fill: var(--street-sign-hi);}.st-sign-text{fill: var(--street-sign-text);font-weight: 700;letter-spacing: 0.1em;}.st-gold{fill: var(--stall-badge);}.st-soil{fill: var(--stall-wood-deep);}.st-stem, .st-sprout{fill: var(--crop-leaf);}.st-gold-dark{fill: var(--street-gold-dark);}.st-coin-dark{fill: var(--coin-bottom);}.st-cloth-a{fill: var(--stall-awning-a);}.st-cloth-b{fill: var(--stall-awning-b);}.st-cloth-a-dark{fill: var(--street-cloth-a-dark);}.st-cloth-hi{fill: var(--street-cloth-hi);}.st-cloth-fold{fill: var(--street-cloth-fold);}.st-cardboard{fill: var(--street-cardboard);}.st-cardboard-dark{fill: var(--street-cardboard-dark);}.st-crate-inner{fill: var(--stall-wood-deep);}.st-ink{fill: var(--street-ink);font-weight: 700;}.st-ink-fill{fill: var(--street-ink);}.st-ink-line{stroke: var(--street-ink);stroke-width: 2.5;stroke-linecap: round;}.st-string{fill: none;stroke: var(--street-string);stroke-width: 2;}.st-chain{stroke: var(--stall-metal);stroke-width: 2;stroke-dasharray: 3 2;}.st-needle{stroke: var(--stall-awning-a);stroke-width: 2;stroke-linecap: round;}.st-scale-face{fill: var(--street-clock-face);}.st-chalk{fill: var(--stall-chalk);}.st-chalk-text{fill: var(--stall-chalk-text);font-weight: 700;}.st-bulb{fill: var(--street-bulb);}.st-lamp{fill: var(--street-lamp);}.st-leaf{fill: var(--street-leaf);}.st-leaf-dark{fill: var(--street-leaf-dark);}.st-flower{fill: var(--street-flower);}.st-flower-b{fill: var(--street-flower-b);}.st-pot{fill: var(--street-pot);}.st-pot-rim{fill: var(--street-pot-rim);}.st-bike{fill: none;stroke: var(--stall-awning-a);stroke-width: 3.5;stroke-linecap: round;stroke-linejoin: round;}.st-basket{fill: var(--street-basket);}.st-basket-weave{fill: var(--street-basket-weave);}.st-basket-handle{fill: none;stroke: var(--street-basket-weave);stroke-width: 3;stroke-linecap: round;}.st-cart{fill: var(--stall-metal-dark);}.st-cart-line{fill: none;stroke: var(--stall-metal);stroke-width: 2;stroke-linecap: round;}.st-water{fill: var(--street-water);}.st-water-line{fill: none;stroke: var(--street-water);stroke-width: 2.5;stroke-linecap: round;}.st-straw{fill: var(--street-trim-light);}.st-van{fill: var(--street-van);}.st-van-shade{fill: var(--street-van-shade);}.st-clock-face{fill: var(--street-clock-face);}.st-skin{fill: var(--street-skin);}.st-skin-b{fill: var(--street-skin-b);}.st-skin-c{fill: var(--street-skin-c);}.st-hair-a{fill: var(--street-hair-a);}.st-hair-b{fill: var(--street-hair-b);}.st-hair-c{fill: var(--street-hair-c);}.st-legs{fill: var(--street-legs);}.st-legs-b{fill: var(--street-legs-b);}.st-shoe{fill: var(--street-shoe);}.st-shirt-a{fill: var(--street-shirt-a);}.st-shirt-b{fill: var(--street-shirt-b);}.st-shirt-c{fill: var(--street-shirt-c);}.st-shirt-d{fill: var(--street-shirt-d);}.st-shirt-e{fill: var(--street-shirt-e);}.st-shirt-hi{fill: var(--street-shirt-hi);}.st-bubble{fill: var(--street-bubble);}.st-bubble-mark{fill: var(--street-bubble);font-weight: 700;}.st-dust{fill: var(--street-dust);}.sh-plank-seam{fill: var(--shop-plank-seam);}.sh-floor{fill: var(--shop-floor);}.sh-floor-tile{fill: var(--shop-floor-tile);}.st-crate.is-empty .crop{display: none;}.street-ghost *{fill: none;stroke: var(--street-ghost);stroke-width: 2;stroke-dasharray: 5 4;}.street-ghost svg, .street-ghost text{display: none;}.street-ghost{opacity: 0;transition: opacity var(--motion-base) ease;}.street-stage.is-ghost-lit .street-ghost{opacity: 1;}.street-ghost--grow *{stroke-width: 3;stroke-dasharray: 10 8;}.street-stage-chip{right: 16px;top: 12px;display: flex;align-items: center;height: 44px;padding: 0 var(--space-3);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-md);background: var(--stall-sign-face);}.street-pips{display: flex;gap: 5px;}.street-pip{width: 12px;height: 12px;border: 2px solid var(--stall-badge);border-radius: 50%;}.street-pip.is-done{background: var(--stall-badge);}.street-door{border-radius: var(--radius-lg);}.street-door.nav-on{transform: none;}.street-waiting{left: 50%;right: auto;top: -14px;translate: -50% 0;}.street-work{left: 0;right: 0;top: 470px;width: max-content;max-width: 520px;margin: 0 auto;height: 80px;display: flex;align-items: center;gap: var(--space-3);padding: 0 var(--space-4) 0 var(--space-3);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-md);background: var(--stall-sign-face);text-align: left;}.street-work.nav-on{background: var(--stall-sign-face);transform: scale(1.03);}.street-work-iconbox{flex: none;width: 56px;height: 56px;border-radius: 50%;background: var(--stall-wood-deep);display: grid;place-items: center;}.street-work-icon{width: 44px;height: 44px;}.street-work-cost{flex: none;display: flex;align-items: center;gap: var(--space-1);padding: 2px var(--space-3) 2px 4px;border: var(--border-width) solid var(--coin-bottom);border-radius: var(--radius-pill);font-size: 22px;line-height: 30px;color: var(--stall-badge);font-variant-numeric: tabular-nums;}.street-work-cost[hidden]{display: none;}.street-work.is-done .street-work-iconbox{opacity: 0.5;}.street-work-name{font-size: 21px;line-height: 1.15;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.street-work-cost.is-short{border-color: var(--stall-wood);color: var(--color-text-quiet);}.street-work .hub-badge{left: -8px;top: -8px;}.screen--street{overflow: hidden;}.home-track{left: 0;top: 0;width: 1200px;height: 576px;}.home-page{position: absolute;top: 0;width: 600px;height: 576px;overflow: hidden;}.home-page > *{position: absolute;}.home-page--farm{left: 0;}.home-page--street{left: 600px;}.home-page.is-away{visibility: hidden;}.home-gear{left: 278px;top: 12px;}.farm-scene{left: 0;top: 0;width: 600px;height: 576px;overflow: hidden;}.farm-play, .farm-play.nav-on{border-color: transparent;box-shadow: none;transform: none;}.fm-sign-board{transform-box: fill-box;transform-origin: 50% 100%;transition: transform var(--motion-fast) var(--motion-ease-spring);}.is-sign-on .fm-sign-board{transform: translateY(-4px) scale(1.05);}.fm-sign-glow{fill: none;stroke: var(--focus-border);stroke-width: 4;opacity: 0;transition: opacity var(--motion-fast) ease;}.is-sign-on .fm-sign-glow{opacity: 1;}.fm-play-string{fill: var(--street-string);}.fm-play-tag{fill: var(--stall-wood);stroke: var(--stall-wood-dark);stroke-width: 3;transition: fill var(--motion-fast) ease;}.fm-play-mark{fill: var(--street-trim-light);}.is-sign-on .fm-play-tag{fill: var(--stall-badge);stroke: var(--street-trim-light);}.is-sign-on .fm-play-mark{fill: var(--stall-badge-ink);}.farm-crop{transform-box: fill-box;transform-origin: 50% 100%;}.gs-soil-top{stop-color: var(--farm-soil-top);}.gs-soil-bottom{stop-color: var(--farm-soil-bottom);}.gs-meadow-top{stop-color: var(--farm-meadow-top);}.gs-meadow-bottom{stop-color: var(--farm-meadow-bottom);}.fm-hill-far{fill: var(--farm-hill-far);}.fm-barn{fill: var(--farm-barn);}.fm-barn-dark{fill: var(--farm-barn-dark);}.fm-barn-roof{fill: var(--farm-barn-roof);}.fm-trim{fill: var(--farm-trim);}.fm-trim-line{fill: none;stroke: var(--farm-trim);stroke-width: 3;}.fm-leaf{fill: var(--farm-leaf);}.fm-mound{fill: var(--farm-mound);}.fm-grass{fill: var(--farm-grass);}.fm-stalk{fill: var(--farm-stalk);}.fm-sign-title{fill: var(--street-trim-light);font-weight: 700;letter-spacing: 0.22em;}.farm-sign[data-kind="bonus"] .fm-sign-title{fill: var(--gold-apple);}.farm-sign[data-kind="bonus"] .st-sign{stroke: var(--gold-apple);stroke-width: 4;}.farm-sign[data-kind="hard"] .fm-sign-title{fill: var(--hard-sign-text);letter-spacing: 0.12em;}.farm-sign[data-kind="hard"] .st-sign{stroke: var(--hard-sign);stroke-width: 4;}.fm-furrow{fill: var(--farm-furrow);}.fm-sign-number{fill: var(--street-sign-text);font-weight: 700;}.fm-trail{fill: var(--farm-trail);stroke: var(--stall-wood-dark);stroke-width: 2;}.fm-trail.is-done{fill: var(--farm-trail-done);}.fm-trail.is-now{fill: var(--stall-badge);stroke: var(--street-trim-light);stroke-width: 3;}.home-peek{top: 248px;width: 30px;height: 80px;display: grid;place-items: center;background: linear-gradient(180deg, var(--hud-panel-top), var(--hud-panel-bottom));box-shadow: inset 0 2px 0 var(--hud-panel-edge);}.home-peek--right{right: 0;border-radius: var(--radius-md) 0 0 var(--radius-md);}.home-peek--left{left: 0;border-radius: 0 var(--radius-md) var(--radius-md) 0;}.home-peek-chevron{width: 14px;height: 14px;border: solid var(--street-trim-light);border-width: 4px 4px 0 0;border-radius: 2px;}.home-peek--right .home-peek-chevron{rotate: 45deg;translate: -3px 0;}.home-peek--left .home-peek-chevron{rotate: -135deg;translate: 3px 0;}.home-peek-dot{position: absolute;top: -9px;left: -6px;width: 22px;height: 22px;border: 3px solid var(--hud-panel-bottom);border-radius: 50%;background: var(--stall-badge);}.home-peek-dot[hidden]{display: none;}.home-dots{left: 50%;top: 552px;translate: -50% 0;display: flex;gap: 10px;}.home-dot{width: 12px;height: 12px;border: 2px solid var(--street-trim-light);border-radius: 50%;background: var(--hud-panel-bottom);}.home-dots[data-page="farm"] .home-dot:first-child, .home-dots[data-page="street"] .home-dot:last-child{background: var(--street-trim-light);}.sh-spoke{stroke: var(--stall-wood);stroke-width: 7;stroke-linecap: round;}.hub-crate::before{content: "";position: absolute;left: 8px;right: 8px;bottom: -6px;height: 14px;border-radius: 50%;background: var(--street-shade);}.hub-crate.is-closed::before{display: none;}.screen--street .hub-wallet, .screen--shop .hub-wallet, .street-stage-chip, .street-work{background: linear-gradient(180deg, var(--hud-panel-top), var(--hud-panel-bottom));box-shadow: inset 0 2px 0 var(--hud-panel-edge), 0 4px 0 var(--street-shade-soft);}.street-work[data-type="crowd"] .street-work-iconbox{background: var(--work-crowd);}.street-work[data-type="price"] .street-work-iconbox{background: var(--work-price);}.street-work[data-type="crate"] .street-work-iconbox{background: var(--work-crate);}.street-work[data-type="expand"] .street-work-iconbox{background: var(--work-expand);}.street-work-iconbox{border: 3px solid var(--hud-panel-edge);}.street-work-cost:not(.is-short){background: linear-gradient(180deg, var(--hud-cost-top), var(--hud-cost-bottom));}.street-pip{width: 14px;height: 14px;}.street-pip.is-done{box-shadow: 0 0 0 2px var(--hud-panel-bottom), 0 0 8px var(--stall-badge);}[data-nudge="left"]{animation: nudge-left 320ms ease-out;}[data-nudge="right"]{animation: nudge-right 320ms ease-out;}[data-nudge="up"]{animation: nudge-up 320ms ease-out;}[data-nudge="down"]{animation: nudge-down 320ms ease-out;}@keyframes nudge-left{0%, 100%{translate: 0 0;}24%{translate: calc(var(--motion-nudge-distance) * -1) 0;}43%{translate: 4px 0;}62%{translate: -3px 0;}80%{translate: 1px 0;}}@keyframes nudge-right{0%, 100%{translate: 0 0;}24%{translate: var(--motion-nudge-distance) 0;}43%{translate: -4px 0;}62%{translate: 3px 0;}80%{translate: -1px 0;}}@keyframes nudge-up{0%, 100%{translate: 0 0;}24%{translate: 0 calc(var(--motion-nudge-distance) * -1);}43%{translate: 0 4px;}62%{translate: 0 -3px;}80%{translate: 0 1px;}}@keyframes nudge-down{0%, 100%{translate: 0 0;}24%{translate: 0 var(--motion-nudge-distance);}43%{translate: 0 -4px;}62%{translate: 0 3px;}80%{translate: 0 -1px;}}.toast{position: absolute;z-index: 5;left: 50%;bottom: calc(var(--stage-size) - var(--safe-bottom) + var(--space-4));width: max-content;max-width: 480px;padding: var(--space-2) var(--space-5);border-radius: var(--radius-pill);background: linear-gradient(180deg, var(--surface-panel-top), var(--surface-panel-bottom));font-size: 18px;opacity: 0;transform: translate(-50%, 8px);transition: opacity var(--motion-base) ease, transform var(--motion-base) var(--motion-ease-out);pointer-events: none;}.toast.is-visible{opacity: 1;transform: translate(-50%, 0);}.toast[data-tone="good"]{color: var(--color-good);}.toast[data-tone="warn"]{color: var(--color-warn);}.performance-overlay{position: absolute;z-index: 9;top: var(--space-3);left: 50%;transform: translateX(-50%);display: flex;gap: var(--space-2);padding: var(--space-1) var(--space-3);border-radius: var(--radius-pill);background: var(--surface-panel-bottom);font-size: var(--font-size-caption);pointer-events: none;}:root[data-motion="reduced"] *, :root[data-motion="reduced"] *::before, :root[data-motion="reduced"] *::after{animation-duration: 1ms !important;animation-iteration-count: 1 !important;transition-duration: 1ms !important;}@media (prefers-reduced-motion: reduce){*, *::before, *::after{animation-duration: 1ms !important;animation-iteration-count: 1 !important;transition-duration: 1ms !important;}}.shop-store{position: absolute;left: 50%;top: 470px;translate: -50% 0;display: flex;align-items: center;gap: var(--space-3);height: 68px;padding: 0 var(--space-4) 0 var(--space-3);border: var(--border-width) solid var(--stall-wood);border-radius: var(--radius-sm);background: linear-gradient(180deg, var(--hud-panel-top), var(--hud-panel-bottom));box-shadow: inset 0 2px 0 var(--hud-panel-edge), 0 4px 0 var(--street-shade-soft);}.shop-store[hidden], .shop-store-item[hidden]{display: none;}.shop-store-door{width: 30px;height: 26px;border: 3px solid var(--stall-wood);border-radius: 4px;background: linear-gradient(180deg, transparent 42%, var(--stall-wood) 42% 56%, transparent 56%);opacity: 0.85;}.shop-store-item{display: flex;align-items: center;gap: 2px;font-size: 20px;color: var(--color-text-muted);font-variant-numeric: tabular-nums;}.shop-store-crop{width: 44px;height: 44px;}.shop-gear{left: 540px;top: 14px;}.street-stage-chip{display: none;}.street-work[data-type="crop"] .street-work-iconbox{background: var(--work-crop);}
