@font-face{font-family:Mitr;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6c95ac971ee58d16-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Mitr;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/336a0ade8be726b0-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Mitr;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6576b35d0ede074a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mitr;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9f5b3cf6567c77df-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mitr;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/43837fdd8a8de38e-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Mitr;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c482b5f1f1cb2cd9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Mitr;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4f0e0d07bbaf3b6c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Mitr;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5b418db7594c03af-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Mitr Fallback;src:local("Arial");ascent-override:100.52%;descent-override:36.71%;line-gap-override:0.00%;size-adjust:114.40%}.__className_8bbf96{font-family:Mitr,Mitr Fallback;font-style:normal}.__variable_8bbf96{--font-display:"Mitr","Mitr Fallback"}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:Noto Sans Thai,Sarabun,system-ui,-apple-system,sans-serif;background:#0b1120;color:#e6ebf5;line-height:1.6}button{font-family:inherit;cursor:pointer}main{max-width:760px;margin:0 auto;padding:20px 16px 48px;display:flex;flex-direction:column;gap:18px}header.app-header{text-align:center;padding:12px 16px 0}header.app-header h1{font-family:var(--font-display),"Noto Sans Thai",sans-serif;font-weight:700;font-size:1.9rem;letter-spacing:.5px;margin:0 0 4px;background:linear-gradient(180deg,#ffe9b8,#e8b84b 55%,#b9791f);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 0 rgba(0,0,0,.3)}header.app-header h1:after{content:"";display:block;width:64px;height:4px;margin:10px auto 0;border-radius:2px;background:linear-gradient(90deg,#7c5228,#c69361,#7c5228)}header.app-header p{margin:0;color:#8b97b3;font-size:.85rem}.nav-buttons{display:flex;gap:8px;margin-top:12px}.btn,.nav-buttons{justify-content:center}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:10px;border:none;background:#1c2740;color:#dfe6f5;font-size:.9rem;font-weight:600;text-decoration:none}.btn.btn-outline{background:transparent;border:1.5px solid #33456b;color:#b9c6e6}.nav-buttons .btn.btn-outline{border-color:#7c5228;color:#e8b84b}.nav-buttons .btn.btn-outline:focus-visible,.nav-buttons .btn.btn-outline:hover{background:rgba(124,82,40,.2)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:12px;gap:12px;margin:12px 0}.stat-tile{background:#131b30;border:1px solid #253254;border-radius:12px;padding:14px;text-align:center}.stat-tile .stat-number{display:block;font-family:var(--font-display),"Noto Sans Thai",sans-serif;font-size:1.5rem;font-weight:700;color:#f0d9a8}.stat-tile .stat-label{font-size:.78rem;color:#8b97b3}.method-content h2{font-family:var(--font-display),"Noto Sans Thai",sans-serif;font-size:1.1rem;margin-top:28px;color:#f0d9a8}.method-content ul{padding-left:20px}footer.app-footer{text-align:center;padding:24px 16px 8px;font-size:.78rem;color:#566082}.market-scene{--sky-top:#bfe8ff;--sky-bottom:#fff3d6;--dusk-amount:0;--lamp-on:0;--lamp-glow-op:0;--canvas-a:#2e7a5c;--canvas-b:#1f5c44;--wood:#a9743f;--wood-dark:#7c5228;--wood-light:#c69361;--scene-w:2640px;--scene-h:560px;border-radius:20px;overflow:hidden;border:1px solid #1e2a4a;background:#0a0f1e;box-shadow:inset 0 0 0 6px #0e1526,inset 0 0 0 7px #2a3a5e,0 18px 40px rgba(0,0,0,.45)}.market-scene[data-time=dusk]{--sky-top:#1b1030;--sky-bottom:#6a2f2a;--dusk-amount:0.6;--lamp-on:1;--lamp-glow-op:0.95;--canvas-a:#173c2f;--canvas-b:#0f2921;--wood:#6b4423;--wood-dark:#4a2e17;--wood-light:#85572e}.scene-toolbar{display:flex;gap:8px;padding:10px;flex-wrap:wrap;background:#0e1526;border-bottom:1px solid #1e2a4a}.scene-toolbar .btn{position:relative;font-family:var(--font-display),"Noto Sans Thai",sans-serif;font-size:.82rem;font-weight:600;padding:9px 16px;color:#4a2e17;background:linear-gradient(180deg,#f0d9a8,#cfa85e);border:2px solid #7c5228;border-radius:4px 4px 10px 10px;transform:rotate(-1.5deg);box-shadow:0 4px 8px rgba(0,0,0,.35);transition:transform .15s ease,box-shadow .15s ease}.scene-toolbar .btn:nth-child(2){transform:rotate(1.5deg)}.scene-toolbar .btn:before{content:"";position:absolute;top:-5px;left:50%;width:8px;height:8px;border:2px solid #7c5228;border-radius:50%;background:#0e1526;transform:translateX(-50%)}.scene-toolbar .btn:focus-visible,.scene-toolbar .btn:hover{transform:rotate(0deg) translateY(-1px);box-shadow:0 6px 10px rgba(0,0,0,.4)}.scene-toolbar .btn[aria-pressed=true]{background:linear-gradient(180deg,#ffe9b8,#e0a83f);box-shadow:inset 0 0 0 2px #4a2e17,0 4px 8px rgba(0,0,0,.35)}.scene-hint{margin:0 10px 4px;font-size:.76rem;color:#6b7796;text-align:center}.scroll-marquee{overflow:hidden;white-space:nowrap;margin:0 10px 10px;padding:3px 0;border-top:1px dashed #253254;border-bottom:1px dashed #253254}.scroll-marquee .marquee-track{display:inline-flex;animation:marquee-scroll 7s linear infinite}.scroll-marquee .marquee-set{padding-right:28px;font-size:.72rem;letter-spacing:3px;color:#4a6fb0}@keyframes marquee-scroll{to{transform:translateX(-50%)}}.scene-viewport{position:relative;width:100%;height:clamp(340px,58vw,560px);overflow-x:auto;overflow-y:hidden;display:flex;align-items:flex-end;touch-action:pan-x;cursor:-webkit-grab;cursor:grab;scrollbar-width:thin;scrollbar-color:#3a4a72 transparent}.scene-viewport.dragging{cursor:-webkit-grabbing;cursor:grabbing;scroll-behavior:auto}.scene-track{position:relative;width:var(--scene-w);height:var(--scene-h);flex-shrink:0}.sky-layer{position:absolute;inset:0;background:linear-gradient(180deg,var(--sky-top) 0,var(--sky-bottom) 78%);transition:background .5s ease}.sky-layer .cloud{top:14%;width:90px;height:26px;border-radius:50px;background:rgba(255,255,255,.75);opacity:calc(1 - var(--dusk-amount))}.sky-layer .cloud,.sky-layer .star{position:absolute;transition:opacity .5s ease}.sky-layer .star{width:2px;height:2px;border-radius:50%;background:#f5e9c8;opacity:var(--dusk-amount)}.dusk-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0a0620,#2a1220 60%,#100a1c);opacity:var(--dusk-amount);mix-blend-mode:multiply;pointer-events:none;transition:opacity .5s ease}.roof-canvas{position:absolute;top:0;left:0;width:100%;height:124px;background:repeating-linear-gradient(100deg,var(--canvas-a) 0,var(--canvas-a) 54px,var(--canvas-b) 54px,var(--canvas-b) 108px);-webkit-clip-path:polygon(0 0,100% 0,100% 78%,96% 100%,92% 78%,88% 100%,84% 78%,80% 100%,76% 78%,72% 100%,68% 78%,64% 100%,60% 78%,56% 100%,52% 78%,48% 100%,44% 78%,40% 100%,36% 78%,32% 100%,28% 78%,24% 100%,20% 78%,16% 100%,12% 78%,8% 100%,4% 78%,0 100%);clip-path:polygon(0 0,100% 0,100% 78%,96% 100%,92% 78%,88% 100%,84% 78%,80% 100%,76% 78%,72% 100%,68% 78%,64% 100%,60% 78%,56% 100%,52% 78%,48% 100%,44% 78%,40% 100%,36% 78%,32% 100%,28% 78%,24% 100%,20% 78%,16% 100%,12% 78%,8% 100%,4% 78%,0 100%);box-shadow:0 6px 18px rgba(0,0,0,.4)}.roof-canvas .roof-seam{position:absolute;top:0;bottom:0;width:3px;background:rgba(0,0,0,.2)}.bulb-wire{left:2%;width:96%;height:22px;border-top:2px solid #2a2318;border-radius:50%;opacity:.85}.bulb,.bulb-wire{position:absolute;top:128px}.bulb{width:30px;height:42px;transform:translateX(-50%);transform-origin:top center}.bulb.animated{animation:bulb-sway 4.2s ease-in-out infinite}.bulb .bulb-cord{top:0;width:2px;height:12px;background:#2a2318}.bulb .bulb-cord,.bulb .bulb-glass{position:absolute;left:50%;transform:translateX(-50%)}.bulb .bulb-glass{top:12px;width:18px;height:22px;border-radius:50% 50% 60% 60%;background:radial-gradient(circle at 35% 30%,#fff4d0,#e8b84b 70%,#a97a1e 100%);box-shadow:0 0 4px rgba(0,0,0,.3)}.bulb .bulb-glow{position:absolute;top:8px;left:50%;width:60px;height:60px;transform:translate(-50%,-18px);border-radius:50%;background:radial-gradient(circle,rgba(255,214,120,.9) 0,rgba(255,190,90,0) 70%);opacity:var(--lamp-glow-op);mix-blend-mode:screen;pointer-events:none;transition:opacity .5s ease}.scene-el:focus-visible .bulb .bulb-glass,.scene-el:hover .bulb .bulb-glass{filter:brightness(1.3)}.scene-el:focus-visible .bulb,.scene-el:hover .bulb{animation:bulb-sway .9s ease-in-out}@keyframes bulb-sway{0%,to{transform:translateX(-50%) rotate(0deg)}50%{transform:translateX(-50%) rotate(6deg)}}.wet-floor{position:absolute;bottom:0;left:0;width:100%;height:90px;background:linear-gradient(180deg,#33404f,#232c37 40%,#171e26);overflow:hidden}.wet-floor .floor-sheen{position:absolute;inset:0;background:repeating-linear-gradient(100deg,rgba(255,255,255,.08),rgba(255,255,255,.08) 2px,transparent 0,transparent 140px);background-size:260% 100%;opacity:.7}.wet-floor .floor-sheen.animated{animation:floor-shimmer 9s linear infinite}@keyframes floor-shimmer{0%{background-position:0 0}to{background-position:-260% 0}}.wet-floor .floor-glow{position:absolute;top:0;width:90px;height:100%;filter:blur(6px);opacity:calc(.5 + var(--lamp-on) * .3);transition:opacity .5s ease}.stall{position:absolute;bottom:90px;width:380px;height:300px}.stall-table{position:absolute;bottom:0;left:6px;right:6px;height:100px}.stall-table .table-top{position:absolute;top:0;left:0;width:100%;height:18px;background:linear-gradient(180deg,var(--wood-light) 0,var(--wood) 100%);-webkit-clip-path:polygon(3% 0,97% 0,100% 100%,0 100%);clip-path:polygon(3% 0,97% 0,100% 100%,0 100%)}.stall-table .table-front{position:absolute;top:16px;left:2%;width:96%;height:84px;background:repeating-linear-gradient(90deg,var(--wood) 0,var(--wood) 30px,var(--wood-dark) 30px,var(--wood-dark) 32px);border-radius:0 0 6px 6px;box-shadow:0 8px 14px rgba(0,0,0,.35)}.contact-shadow{left:50%;bottom:-8px;width:84%;height:14px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.4) 0,rgba(0,0,0,0) 72%)}.contact-shadow,.stall-canopy{position:absolute;pointer-events:none}.stall-canopy{top:0;left:0;width:100%;height:34px}.stall-canopy .canopy-cloth{position:absolute;inset:0 0 8px 0;background:repeating-linear-gradient(90deg,var(--canopy-a) 0,var(--canopy-a) 22px,var(--canopy-b) 22px,var(--canopy-b) 44px);-webkit-clip-path:polygon(0 0,100% 0,100% 62%,91.7% 100%,83.3% 62%,75% 100%,66.7% 62%,58.3% 100%,50% 62%,41.7% 100%,33.3% 62%,25% 100%,16.7% 62%,8.3% 100%,0 62%);clip-path:polygon(0 0,100% 0,100% 62%,91.7% 100%,83.3% 62%,75% 100%,66.7% 62%,58.3% 100%,50% 62%,41.7% 100%,33.3% 62%,25% 100%,16.7% 62%,8.3% 100%,0 62%);box-shadow:0 4px 8px rgba(0,0,0,.3)}.stall-canopy.canopy-veg{--canopy-a:#2e7a5c;--canopy-b:#eef0e2}.stall-canopy.canopy-fruit{--canopy-a:#e0932f;--canopy-b:#fff3d6}.stall-canopy.canopy-pork{--canopy-a:#c0392b;--canopy-b:#fff3d6}.stall-canopy.canopy-fish{--canopy-a:#3a6a8a;--canopy-b:#dff0f7}.stall-canopy.canopy-flower{--canopy-a:#c05a8a;--canopy-b:#fff0f6}.stall-canopy.canopy-curry{--canopy-a:#b9832f;--canopy-b:#fff3d6}.stall-label-plate{position:absolute;bottom:84px;left:50%;transform:translateX(-50%);font-size:.72rem;color:var(--text-on-scene,#2b2018);background:rgba(255,246,224,.9);padding:3px 10px;border-radius:6px;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.25)}.scene-el,.scene-el:after{position:absolute}.scene-el:after{content:attr(data-label);bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(4px);background:#101828;color:#f2f5fb;font-size:.74rem;padding:4px 9px;border-radius:7px;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:0 4px 12px rgba(0,0,0,.4);transition:opacity .18s ease,transform .18s ease;z-index:40}.scene-el:focus-visible:after,.scene-el:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}.scene-el:focus-visible{outline:none}.scene-el.el-scale:focus-visible,.scene-el.el-scale:hover{transform:scale(1.08)}.market-scene.code-mode .scene-el{cursor:pointer}.market-scene.code-mode .scene-el:before{content:"";position:absolute;inset:-6px;border:2px dashed #5ec9ff;border-radius:10px;opacity:0;transition:opacity .15s ease;z-index:1}.market-scene.code-mode .scene-el:focus-visible:before,.market-scene.code-mode .scene-el:hover:before{opacity:.9}.code-popup-backdrop{position:fixed;inset:0;background:rgba(6,10,20,.65);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.code-popup{position:relative;background:linear-gradient(180deg,#f5e6c4,#dcb96f);border:3px solid #7c5228;border-radius:4px 4px 16px 16px;max-width:480px;width:100%;max-height:80vh;overflow-y:auto;padding:22px 18px 18px;box-shadow:0 20px 60px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.35)}.code-popup:before{content:"";position:absolute;top:-9px;left:50%;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd35c,#a3271f 90%);box-shadow:0 2px 4px rgba(0,0,0,.4);transform:translateX(-50%)}.code-popup h3{margin:0 0 4px;font-family:var(--font-display),"Noto Sans Thai",sans-serif;font-size:1.05rem;color:#3a2712}.code-popup .code-popup-id{margin:0 0 12px;font-size:.74rem;color:#6b4423;font-family:Courier New,monospace}.code-popup pre{margin:0 0 14px;background:#17100a;border:1px dashed #7c5228;border-radius:10px;padding:12px;overflow-x:auto;font-family:Courier New,monospace;font-size:.78rem;line-height:1.5;color:#a9e6c2}.code-popup .btn.btn-outline{background:transparent;border:1.5px solid #7c5228;color:#4a2e17}.veg-cabbage{width:62px;height:54px;border-radius:50%;background:repeating-radial-gradient(circle at 50% 55%,rgba(255,255,255,.18) 0,rgba(255,255,255,.18) 2px,transparent 0,transparent 8px),radial-gradient(circle at 35% 30%,#a8d873,#5f9c3a 60%,#3d6b23 100%);box-shadow:0 6px 8px rgba(0,0,0,.3)}.veg-chili-cluster{width:70px;height:46px}.veg-chili{position:absolute;width:40px;height:11px;border-radius:0 50% 50% 0/0 100% 100% 0;background:linear-gradient(90deg,#4a7a2c,#4a7a2c 12%,#e6412b 0,#ff6b45 60%,#c22a1e)}.veg-morning-glory{width:54px;height:64px}.veg-morning-glory .glory-stalk{position:absolute;bottom:0;width:5px;height:46px;border-radius:3px;background:linear-gradient(180deg,#7fbf5a,#4f8c33)}.veg-morning-glory .glory-leaf{position:absolute;width:16px;height:22px;border-radius:0 90% 0 90%;background:radial-gradient(circle at 30% 30%,#8fd66a,#4c8a30 90%)}.veg-basket{width:88px;height:54px}.veg-basket .basket-body{position:absolute;bottom:0;width:100%;height:34px;border-radius:0 0 40% 40%;background:repeating-linear-gradient(115deg,var(--wood-light) 0,var(--wood-light) 6px,var(--wood-dark) 6px,var(--wood-dark) 10px);box-shadow:inset 0 4px 6px rgba(0,0,0,.3)}.veg-basket .basket-rim{position:absolute;top:26px;width:100%;height:10px;border-radius:50%;background:var(--wood-dark)}.veg-garlic-braid{width:32px;height:120px}.veg-garlic-braid .braid-cord{position:absolute;top:0;left:50%;width:3px;height:16px;background:#6b5636;transform:translateX(-50%)}.veg-garlic-braid .garlic-bulb{position:absolute;left:50%;width:28px;height:26px;border-radius:50% 50% 45% 45%;transform:translateX(-50%);background:radial-gradient(circle at 35% 30%,#fbf6e6,#e7dcb8 65%,#c9b787 100%);box-shadow:0 2px 3px rgba(0,0,0,.25)}.scene-el:focus-visible .veg-garlic-braid .garlic-bulb,.scene-el:hover .veg-garlic-braid .garlic-bulb{animation:garland-sway .9s ease}.scene-el:focus-visible .veg-chili,.scene-el:hover .veg-chili{animation:veg-wiggle .5s ease}@keyframes veg-wiggle{0%,to{transform:rotate(var(--rot,0deg))}50%{transform:rotate(calc(var(--rot, 0deg) + 8deg))}}.fruit-durian{width:84px;height:78px}.fruit-durian .durian-body{position:absolute;inset:10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#d8dd7f,#93a83c 55%,#5c6e23 100%)}.fruit-mangosteen{width:46px;height:50px}.fruit-mangosteen .mango-body{position:absolute;bottom:0;width:44px;height:40px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#9b5fb0,#5c2d6e 65%,#3a1c46 100%);box-shadow:0 5px 7px rgba(0,0,0,.3)}.fruit-mangosteen .mango-calyx{position:absolute;top:0;left:50%;width:22px;height:22px;transform:translateX(-50%);background:#6d8a4a;-webkit-clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.fruit-banana-bunch{width:100px;height:80px}.fruit-banana{position:absolute;top:6px;left:50%;width:24px;height:62px;transform-origin:top center;border-radius:50% 50% 50% 50%/65% 65% 35% 35%;background:linear-gradient(180deg,#e9d35a,#d8b93f 70%,#7a6a2a)}.fruit-banana:after{content:"";position:absolute;bottom:-2px;left:50%;width:8px;height:8px;transform:translateX(-50%);border-radius:50%;background:#4a3a1c}.hanging-banana-bunch{width:110px;height:80px}.hanging-banana-bunch .hang-cord{position:absolute;top:0;left:50%;width:2px;height:14px;background:#33291c;transform:translateX(-50%)}.fruit-table.stall-table .table-front{background:repeating-linear-gradient(90deg,var(--wood) 0,var(--wood) 26px,var(--wood-dark) 26px,var(--wood-dark) 28px)}.fruit-crate{width:96px;height:44px}.fruit-crate .crate-box{position:absolute;inset:0;background:repeating-linear-gradient(0deg,var(--wood-light) 0,var(--wood-light) 8px,var(--wood-dark) 8px,var(--wood-dark) 10px);border:3px solid var(--wood-dark);border-radius:4px}.scene-el:focus-visible .fruit-durian .durian-body,.scene-el:hover .fruit-durian .durian-body{transform:scale(1.05)}.scene-el:focus-visible .fruit-banana,.scene-el:hover .fruit-banana{animation:banana-jiggle .6s ease}@keyframes banana-jiggle{0%,to{transform:rotate(var(--rot,0deg))}50%{transform:rotate(calc(var(--rot, 0deg) - 5deg))}}.pork-board{width:130px;height:60px}.pork-board .board-surface{position:absolute;bottom:0;width:100%;height:46px;border-radius:50%;background:repeating-radial-gradient(circle at 50% 120%,var(--wood-light) 0,var(--wood-light) 4px,var(--wood) 4px,var(--wood) 8px);box-shadow:0 6px 10px rgba(0,0,0,.35)}.pork-cuts{width:100px;height:40px}.pork-cuts .cut{position:absolute;width:34px;height:22px;border-radius:40%;background:repeating-linear-gradient(115deg,#e8897e,#e8897e 4px,#f4c7bd 0,#f4c7bd 6px);box-shadow:0 3px 4px rgba(0,0,0,.25)}.pork-lamp{width:60px;height:110px;transform-origin:top center}.pork-lamp.animated{animation:lamp-idle-sway 5.4s ease-in-out infinite}.pork-lamp .lamp-cord{top:0;width:2px;height:34px;background:#33291c}.pork-lamp .lamp-cord,.pork-lamp .lamp-shade{position:absolute;left:50%;transform:translateX(-50%)}.pork-lamp .lamp-shade{top:32px;width:46px;height:30px;-webkit-clip-path:polygon(28% 0,72% 0,100% 100%,0 100%);clip-path:polygon(28% 0,72% 0,100% 100%,0 100%);background:linear-gradient(180deg,#e04b3f,#a3271f);box-shadow:0 3px 6px rgba(0,0,0,.4)}.pork-lamp .lamp-cone{position:absolute;top:60px;left:50%;width:90px;height:90px;transform:translateX(-50%);background:radial-gradient(ellipse at top,rgba(255,120,90,.55) 0,rgba(255,120,90,0) 70%);opacity:var(--lamp-glow-op);transition:opacity .5s ease}.scene-el:focus-visible .pork-lamp,.scene-el:hover .pork-lamp{animation:lamp-hover-sway .8s ease}@keyframes lamp-idle-sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes lamp-hover-sway{0%,to{transform:rotate(0deg)}30%{transform:rotate(10deg)}70%{transform:rotate(-8deg)}}.hanging-sausages{position:absolute;width:20px;height:92px;pointer-events:none}.hanging-sausages .sausage-cord{position:absolute;top:0;left:50%;width:2px;height:10px;background:#33291c;transform:translateX(-50%)}.hanging-sausages .sausage-link{position:absolute;left:50%;width:18px;height:22px;border-radius:50%;transform:translateX(-50%);background:linear-gradient(180deg,#c76b4a,#8a3d24);box-shadow:0 2px 3px rgba(0,0,0,.3)}.fish-basin{width:150px;height:50px}.fish-basin .basin-body{position:absolute;bottom:0;width:100%;height:40px;border-radius:50%;background:linear-gradient(180deg,#9fb2c2,#6c7f90);box-shadow:inset 0 6px 10px rgba(0,0,0,.35),0 4px 6px rgba(0,0,0,.3)}.fish-ice{width:120px;height:34px}.fish-ice .ice-cube{position:absolute;width:22px;height:18px;border-radius:4px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(179,219,235,.65));box-shadow:inset 0 0 4px rgba(255,255,255,.8),0 1px 2px rgba(0,0,0,.2)}.fish-tilapia{width:70px;height:34px}.fish-tilapia .fish-body{position:absolute;inset:0;border-radius:50% 50% 45% 45%/60% 60% 40% 40%;background:repeating-linear-gradient(100deg,#9fb8c4,#9fb8c4 4px,#7d97a6 0,#7d97a6 7px)}.fish-tilapia .fish-tail{position:absolute;right:-14px;top:50%;width:18px;height:26px;transform:translateY(-50%);-webkit-clip-path:polygon(0 20%,100% 0,100% 100%,0 80%);clip-path:polygon(0 20%,100% 0,100% 100%,0 80%);background:#7d97a6}.fish-tilapia .fish-eye{position:absolute;left:8px;top:10px;width:5px;height:5px;border-radius:50%;background:#1a1a1a}.fish-table.stall-table .table-front{background:repeating-linear-gradient(90deg,#7c8a94,#7c8a94 30px,#5c6a74 0,#5c6a74 32px)}.scene-el:focus-visible .fish-tilapia,.scene-el:hover .fish-tilapia{animation:fish-flop .6s ease}@keyframes fish-flop{0%,to{transform:rotate(0deg)}50%{transform:rotate(-6deg)}}.fish-price-sign{width:56px;height:52px}.fish-price-sign .sign-cord{position:absolute;top:0;left:50%;width:2px;height:14px;background:#33291c;transform:translateX(-50%)}.fish-price-sign .sign-board{position:absolute;top:12px;width:100%;height:34px;background:linear-gradient(180deg,#f0d9a8,#cfa85e);border:2px solid #7c5228;border-radius:4px;transform:rotate(-4deg);transform-origin:top center;box-shadow:0 3px 5px rgba(0,0,0,.3);font-size:.58rem;line-height:1.15;color:#4a2e17;text-align:center;padding-top:4px}.scene-el:focus-visible .fish-price-sign .sign-board,.scene-el:hover .fish-price-sign .sign-board{animation:bag-swing .8s ease}.flower-rack{width:200px;height:14px;background:var(--wood-dark);border-radius:4px}.flower-garland{width:26px;height:130px}.flower-garland .garland-bead{position:absolute;left:50%;width:20px;height:20px;border-radius:50%;transform:translateX(-50%)}.flower-garland .garland-bead.jasmine{background:radial-gradient(circle at 35% 30%,#ffffff,#e7e3d4 70%);box-shadow:0 2px 3px rgba(0,0,0,.2)}.flower-garland .garland-bead.marigold{background:radial-gradient(circle at 35% 30%,#ffd35c,#e8930f 70%);box-shadow:0 2px 3px rgba(0,0,0,.2)}.flower-jasmine-bowl{width:74px;height:46px}.flower-jasmine-bowl .bowl-body{position:absolute;bottom:0;width:100%;height:28px;border-radius:0 0 50% 50%/0 0 90% 90%;background:linear-gradient(180deg,#e9c98a,#b9832f)}.flower-jasmine-bowl .bowl-flowers{position:absolute;top:0;width:100%;height:26px;border-radius:50%;background:repeating-radial-gradient(circle at 20% 30%,#fff 0,#fff 3px,transparent 0,transparent 9px),repeating-radial-gradient(circle at 70% 60%,#fff 0,#fff 3px,transparent 0,transparent 11px),#eef0e2}.scene-el:focus-visible .flower-garland .garland-bead,.scene-el:hover .flower-garland .garland-bead{animation:garland-sway .9s ease}@keyframes garland-sway{0%,to{transform:translateX(-50%) rotate(0deg)}50%{transform:translateX(calc(-50% + 4px)) rotate(3deg)}}.curry-counter.stall-table .table-front{background:repeating-linear-gradient(90deg,var(--wood-light) 0,var(--wood-light) 40px,var(--wood) 40px,var(--wood) 44px)}.curry-counter .counter-glass{position:absolute;top:16px;left:2%;width:96%;height:20px;background:linear-gradient(180deg,rgba(220,240,255,.35),rgba(220,240,255,.05));border-radius:4px}.curry-pot{width:84px;height:62px}.curry-pot .pot-lid{top:0;width:60px;height:14px;background:linear-gradient(180deg,#d6dde4,#9aa6b0)}.curry-pot .pot-knob,.curry-pot .pot-lid{position:absolute;left:50%;transform:translateX(-50%);border-radius:50%}.curry-pot .pot-knob{top:-6px;width:10px;height:10px;background:#b8c2ca}.curry-pot .pot-body{position:absolute;top:12px;width:100%;height:50px;border-radius:10px 10px 24px 24px;background:linear-gradient(180deg,#c7cfd6,#838f99 70%,#626d76);box-shadow:0 6px 10px rgba(0,0,0,.35)}.curry-pot .pot-handle{position:absolute;top:24px;width:12px;height:18px;border:3px solid #7c8891;border-radius:4px;background:transparent}.curry-pot .pot-handle.left{left:-8px}.curry-pot .pot-handle.right{right:-8px}.curry-steam{width:60px;height:70px}.curry-steam .wisp{position:absolute;bottom:0;width:12px;height:26px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(255,255,255,0) 70%);filter:blur(1px);opacity:.6}.curry-steam .wisp.animated{animation:steam-rise 3.6s ease-in infinite}.scene-el:focus-visible .curry-steam .wisp,.scene-el:hover .curry-steam .wisp{animation:steam-burst 1.1s ease-out}@keyframes steam-rise{0%{transform:translateY(0) scale(.8);opacity:0}30%{opacity:.6}to{transform:translateY(-46px) scale(1.3);opacity:0}}@keyframes steam-burst{0%{transform:translateY(0) scale(.8);opacity:.2}50%{opacity:.85}to{transform:translateY(-56px) scale(1.5);opacity:0}}.curry-bags{width:90px;height:96px}.curry-bags .bag{position:absolute;top:0;width:34px;height:56px}.curry-bags .bag .bag-knot{position:absolute;top:0;left:50%;width:8px;height:8px;transform:translateX(-50%);border-radius:50%;background:#d8d4c4}.curry-bags .bag .bag-body{position:absolute;top:6px;width:100%;height:50px;border-radius:40% 40% 55% 55%;background:linear-gradient(180deg,rgba(255,255,255,.55) 0,rgba(255,255,255,.15) 40%,var(--bag-color,#d4763a) 42%,var(--bag-color,#d4763a) 100%);box-shadow:inset 0 0 6px rgba(255,255,255,.4)}.scene-el:focus-visible .curry-bags .bag,.scene-el:hover .curry-bags .bag{animation:bag-swing .8s ease}@keyframes bag-swing{0%,to{transform:rotate(0deg)}40%{transform:rotate(4deg)}70%{transform:rotate(-3deg)}}.market-cat{width:96px;height:74px}.market-cat .cat-tail{position:absolute;bottom:6px;right:-4px;width:46px;height:14px;border-radius:40px 40px 40px 4px/60px 60px 20px 4px;background:linear-gradient(100deg,#d99655,#b06f34);transform-origin:left center;transform:rotate(8deg)}.market-cat .cat-tail.animated{animation:tail-idle 3.4s ease-in-out infinite}.market-cat .cat-body{position:absolute;bottom:0;left:6px;width:60px;height:44px;border-radius:50% 50% 40% 40%;background:radial-gradient(circle at 35% 25%,#f3c98a,#d99655 55%,#a4692f 100%);box-shadow:0 4px 6px rgba(0,0,0,.3)}.market-cat .cat-stripe{position:absolute;width:26px;height:5px;border-radius:3px;background:rgba(120,70,30,.5)}.market-cat .cat-head{position:absolute;top:4px;left:0;width:38px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#f6d29c,#d99655 60%,#a4692f 100%);box-shadow:0 3px 4px rgba(0,0,0,.25)}.market-cat .cat-ear{position:absolute;top:-6px;width:14px;height:14px;background:#d99655;-webkit-clip-path:polygon(50% 0,0 100%,100% 100%);clip-path:polygon(50% 0,0 100%,100% 100%)}.market-cat .cat-ear.left{left:2px}.market-cat .cat-ear.right{left:20px}.market-cat .cat-eye{position:absolute;top:14px;width:4px;height:5px;border-radius:50%;background:#2b1c0e}.scene-el:focus-visible .cat-tail,.scene-el:hover .cat-tail{animation:tail-flick .55s ease-in-out 2}@keyframes tail-idle{0%,to{transform:rotate(6deg)}50%{transform:rotate(14deg)}}@keyframes tail-flick{0%,to{transform:rotate(8deg)}50%{transform:rotate(-14deg)}}@media (prefers-reduced-motion:reduce){.scroll-marquee .marquee-track{animation:none!important}.bulb.animated,.curry-steam .wisp.animated,.market-cat .cat-tail.animated,.pork-lamp.animated,.scene-el.el-scale:focus-visible,.scene-el.el-scale:hover,.scene-el:focus-visible .bulb,.scene-el:focus-visible .cat-tail,.scene-el:focus-visible .curry-bags .bag,.scene-el:focus-visible .curry-steam .wisp,.scene-el:focus-visible .fish-price-sign .sign-board,.scene-el:focus-visible .fish-tilapia,.scene-el:focus-visible .flower-garland .garland-bead,.scene-el:focus-visible .fruit-banana,.scene-el:focus-visible .pork-lamp,.scene-el:focus-visible .veg-chili,.scene-el:focus-visible .veg-garlic-braid .garlic-bulb,.scene-el:hover .bulb,.scene-el:hover .cat-tail,.scene-el:hover .curry-bags .bag,.scene-el:hover .curry-steam .wisp,.scene-el:hover .fish-price-sign .sign-board,.scene-el:hover .fish-tilapia,.scene-el:hover .flower-garland .garland-bead,.scene-el:hover .fruit-banana,.scene-el:hover .pork-lamp,.scene-el:hover .veg-chili,.scene-el:hover .veg-garlic-braid .garlic-bulb,.wet-floor .floor-sheen.animated{animation:none!important;transform:none!important}}