@layer components{.game-utilities{align-items:center;gap:24px;display:flex}.sound-toggle{background:0 0;align-items:center;gap:6px;padding:7px 0 7px 8px;font-size:12px;display:flex}.sound-error{color:var(--muted);padding-top:12px;font-size:13px}.game-heading h1:focus{outline:none}.journey{border-bottom:1px solid var(--line);gap:32px;margin:0 0 30px;padding:0 0 25px;list-style:none;display:flex}.journey li{color:#83877e;align-items:center;gap:8px;font-size:13px;display:flex}.journey li>span{border:1px solid #d8dbd3;border-radius:50%;place-items:center;width:24px;height:24px;font:500 11px Arial,sans-serif;display:grid}.journey .step-active{color:var(--blue)}.journey .step-active>span{color:#fff;border-color:var(--blue);background:var(--blue)}.menu-caption{color:var(--muted);margin-top:28px;font-size:12px;line-height:1.8}.text-button{color:var(--muted);text-underline-offset:5px;background:0 0;justify-content:center;align-items:center;gap:7px;padding:8px 0;font-size:13px;text-decoration:underline;display:inline-flex}.clear-basket{margin:0 0 15px auto;font-size:11px;display:block}.tray-full{color:var(--blue);margin-block:8px;font-size:12px}.mobile-basket-button{display:none}.resident-preview .speech{padding:10px;font-size:11px;left:90px}.experience-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:40px;display:grid}.experience-stage{text-align:center;background:#eef1ff;border-radius:28px;min-height:595px;padding:36px;position:relative;overflow:hidden}.stage-kicker{color:var(--blue);letter-spacing:.04em;font-size:13px;display:block}.delivery-status h2{margin:12px 0 10px;font-size:27px;line-height:1.6}.delivery-status p{color:var(--muted);font-size:14px;line-height:1.7}.delivery-diagram{align-items:center;gap:12px;width:min(500px,100%);margin:70px auto 26px;display:flex}.route-building{color:var(--blue);flex-direction:column;align-items:center;gap:12px;display:flex}.route-building>span{white-space:nowrap;font-size:12px}.route-building>svg{background:#fff;border-radius:20px;width:66px;height:66px;padding:13px}.route-road{background:#d1d7ed;flex:1;height:5px;margin-bottom:29px;position:relative}.route-travel{background:var(--blue);border-radius:5px;height:5px;display:block}.route-rider{color:var(--blue);position:absolute;bottom:12px;transform:translate(-50%)}.delivery-progress{appearance:none;opacity:0;border:0;border-radius:5px;width:100px;height:4px;margin:0 auto;display:block}.waiting-resident{height:180px;margin-top:16px;position:relative}.waiting-resident .mochi{width:190px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.waiting-resident .speech{font-size:12px;top:25px;left:56%;transform:rotate(4deg)}.secondary-button{background:#fff;border:1px solid #d8deef;border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:12px 19px;font-size:13px;display:inline-flex}.skip-delivery{z-index:2;margin-top:10px;position:relative}.order-receipt{border:1px solid var(--line);background:#fff;border-radius:4px 4px 0 0;margin-bottom:15px;padding:29px 24px;position:relative}.order-receipt:after{content:"";background:linear-gradient(135deg,#fff 25%,#0000 25%) -6px 0/12px 12px,linear-gradient(225deg,#fff 25%,#0000 25%) -6px 0/12px 12px;height:10px;position:absolute;bottom:-9px;left:-1px;right:-1px}.receipt-top{color:var(--muted);align-items:center;gap:9px;font-size:12px;display:flex}.order-receipt h2{margin:19px 0 10px;font-size:20px}.receipt-number{color:var(--muted);font-size:11px}.order-receipt ul{border-block:1px dashed var(--line);margin:18px 0;padding:15px 0;list-style:none}.order-receipt li{align-items:center;gap:11px;margin-block:8px;font-size:12px;display:flex}.order-receipt li .food-art{flex:none;width:49px}.order-receipt li small{color:var(--muted);margin-top:5px;font-family:Arial,sans-serif;font-size:11px;display:block}.receipt-size{justify-content:space-between;align-items:center;gap:10px;padding:4px 0 18px;font-size:12px;display:flex}.receipt-size>span{color:var(--muted)}.receipt-size strong{font-weight:500}.receipt-zero{text-align:center;color:var(--muted);font-size:12px}.edit-order{margin:24px auto 0;display:flex}.experience-note{color:var(--muted);text-align:center;margin-top:30px;font-size:12px;line-height:1.8}.unboxing-scene{height:310px;position:relative}.unboxing-scene .mochi{width:270px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.packages{justify-content:center;gap:3px;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.package-token{color:#664b1c;width:91px;height:110px;transform:rotate(calc((var(--package-index) - 1) * 5deg));background:#ffdc65;border:2px solid #b68b2e;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 5px #00000004}.package-token small{font-size:10px}.packages{width:max-content;max-width:100%}.package-token{flex-shrink:1;min-width:0}.dream .package-token{width:105px;height:127px}.stage-action{min-width:230px;margin-top:32px}.feast{background:#f4f1e9;padding-bottom:28px}.feast-top{justify-content:space-between;align-items:center;display:flex}.eaten-count{color:var(--muted);border:1px solid #dedbd4;border-radius:20px;padding:7px 10px;font:500 12px Arial,sans-serif}.feast-scene{height:325px;position:relative}.feast-scene .mochi{z-index:2;width:280px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.feast-speech{z-index:4;padding:12px 20px;font-size:14px;top:19px;left:50%;transform:translate(-50%)}.table-line{background:#d7d1c3;width:100%;height:2px;position:absolute;bottom:20px;left:0}.flying-food{z-index:5;pointer-events:none;width:165px;position:absolute;bottom:-30px;left:50%;transform:translate(-50%)}.dream .flying-food{width:300px;bottom:-35px}.dream .feast-scene .mochi{width:245px}.serving-heading{border-top:1px solid #ded9cc;justify-content:space-between;align-items:center;gap:14px;margin-top:10px;padding-top:24px;display:flex}.serving-heading h2{font-size:16px}.serving-heading>span{color:var(--muted);font-size:12px}.serving-tray{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:13px;margin-top:20px;display:grid}.serving{background:#fffdf8;border:1px solid #e7e1d3;border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:8px 8px 12px;transition:transform .2s;display:flex}.serving:hover:not(:disabled){border-color:#a0a9ed;transform:translateY(-5px)}.serving .food-art{width:min(125px,100%)}.serving>span:last-child{font-size:11px;line-height:1.5}.serving:disabled{opacity:.6}.happy-resident{height:300px;position:relative}.happy-resident .mochi{width:330px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.happy-resident .speech{z-index:4;font-size:13px;top:32px;left:50%;transform:translate(-50%)rotate(-3deg)}.happy-heart{color:#ec6a73;position:absolute;top:150px;right:17%;transform:rotate(16deg)}.happy-sparkles{color:#bf961c;position:absolute;top:118px;left:17%}.done{background:#fff4cf}.reorder-button{margin:14px auto 0;display:flex}.phrase{max-width:100%;display:inline-block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.resident-preview .speech{white-space:normal;padding:10px;font-size:12px;line-height:1.65;top:15px;left:112px;right:0}.basket-items li>.food-art{flex:none;width:36px}.basket-items li>span:not(.food-art){flex:1;min-width:0}.basket-items li>button{flex:none}.mobile-tray-dock{display:none}.careful-cargo{width:28px;position:absolute;top:-24px;left:-3px}.waiting-resident .speech{white-space:normal;max-width:225px;line-height:1.6}.texture-word{color:#805124;z-index:6;pointer-events:none;font-size:25px;font-weight:700;position:absolute;bottom:105px;right:4%;transform:rotate(7deg)}.feast-scene{scroll-margin-top:16px}.texture-pudding .texture-word{color:#966a18}.texture-ramen .texture-word{color:#547b80}.texture-donut .texture-word{color:#ac5670}.texture-sushi .texture-word{font-size:18px}.meal-memory{max-width:440px;margin:14px auto 0}.meal-memory h3{color:#74663f;font-size:12px;font-weight:500}.meal-memory ol{flex-wrap:wrap;justify-content:center;gap:5px;margin:11px 0 15px;padding:0;list-style:none;display:flex}.meal-memory li{background:#fff9e6;border-radius:12px;width:44px;padding:3px}.meal-memory p{color:#74663f;font-size:13px;line-height:1.8}.ending-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.ending-actions .secondary-button{background:#fffdf5;border-color:#e0d5b3}.done .reorder-button{font-size:12px}}@layer responsive{@media (width<=380px){.food-bottom{flex-wrap:wrap;gap:10px}.food-bottom .quantity{margin-left:auto}.food-price{font-size:15px}}@media (prefers-reduced-motion:no-preference){.route-rider{transition:left .1s linear;animation:.35s ease-in-out infinite alternate rider-bounce}.is-eating .mochi{animation:.23s ease-in-out infinite alternate chew}.flying-food{animation:1.15s ease-in-out both food-bite}.dream .flying-food{animation-duration:1.55s}.unboxing-scene .packages{animation:.5s ease-out both package-arrive}.happy-resident .mochi{animation:.7s ease-out both happy-arrive}.happy-heart,.happy-sparkles{animation:.65s ease-out both sparkle-appear}@keyframes rider-bounce{to{translate:0 -3px}}@keyframes chew{0%{scale:1}to{scale:1.045 .95}}@keyframes food-bite{0%{opacity:1;transform:translate(-50%)scale(1)}50%{opacity:1;transform:translate(-50%,-150px)scale(.65)rotate(-10deg)}82%,to{opacity:0;transform:translate(-50%,-170px)scale(0)}}@keyframes package-arrive{0%{opacity:0;translate:0 25px}to{opacity:1;translate:0}}@keyframes happy-arrive{0%{opacity:.5;translate:0 12px}to{opacity:1;translate:0}}@keyframes sparkle-appear{0%{opacity:0;scale:.2}to{opacity:1;scale:1}}}@media (width<=1000px){.experience-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.experience-stage{padding:28px 22px}.waiting-resident .speech{top:2px;left:48%}.delivery-status h2{font-size:23px}.happy-heart{right:5%}.happy-sparkles{left:5%}.order-receipt{padding:24px 18px}.package-token{width:65px;height:90px}.dream .package-token{width:78px;height:105px}.package-token svg{width:45px}}@media (width<=620px){.game-utilities{gap:12px}.game-utilities>span{display:none}.sound-toggle{font-size:12px}.journey{justify-content:space-between;gap:0;margin-bottom:26px;padding-bottom:20px}.journey li{gap:6px;font-size:12px}.journey li>span{width:21px;height:21px;font-size:10px}.menu-caption{font-size:12px}.mobile-basket-button{z-index:20;background:var(--blue);color:#fff;border-radius:15px;justify-content:center;align-items:center;gap:12px;padding:16px;font-size:14px;display:flex;position:fixed;bottom:16px;left:18px;right:18px;box-shadow:0 4px 25px #244bea26}.mobile-basket-button>span{background:#ffffff25;border-radius:9px;padding:2px 8px;font-size:12px}.resident-preview .speech{font-size:12px;top:18px;left:137px}.experience-layout{display:block}.experience-stage{border-radius:22px;min-height:560px;padding:28px 20px}.delivery-status h2{font-size:23px}.delivery-status p{font-size:13px}.stage-kicker{font-size:12px}.delivery-diagram{gap:8px;margin-top:65px}.route-building>svg{border-radius:17px;width:55px;height:55px;padding:12px}.route-building>span{font-size:11px}.route-rider svg{width:32px}.waiting-resident .speech{font-size:11px;top:8px;left:38%}.waiting-resident{margin-top:10px}.secondary-button{padding:12px;font-size:12px}.order-receipt{margin-top:28px;padding:25px}.order-receipt li{font-size:14px}.order-receipt ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;display:grid}.order-receipt li .food-art{width:40px}.order-receipt li>span{font-size:12px}.experience-note{text-align:left;font-size:12px}.unboxing-scene{height:280px}.unboxing-scene .mochi{width:255px}.package-token{width:60px;height:84px}.dream .package-token{width:70px;height:100px}.package-token small{font-size:9px}.stage-action{min-width:225px;margin-top:24px}.feast-scene{height:300px}.feast-scene .mochi{width:260px}.feast-speech{white-space:normal;width:max-content;max-width:100%;font-size:12px;line-height:1.7;top:15px}.serving-heading{flex-direction:column;align-items:flex-start;gap:10px;padding-top:20px}.serving-heading h2{font-size:16px}.serving-heading>span{font-size:12px}.serving-tray{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.serving{border-radius:13px;padding:5px 5px 10px}.serving>span:last-child{font-size:10px}.flying-food{width:145px}.dream .flying-food{width:245px}.dream .feast-scene .mochi{width:220px}.happy-resident{height:275px}.happy-resident .mochi{width:280px}.happy-resident .speech{padding:11px;font-size:11px;top:25px}.happy-heart{top:138px;right:0}.happy-sparkles{top:110px;left:0}}@media (width<=380px){.resident-preview .mochi{width:120px}.resident-preview .speech{white-space:normal;max-width:calc(100% - 105px);font-size:11px;line-height:1.6;left:105px}}@media (prefers-reduced-motion:no-preference){.choice-bob{animation:.45s ease-out choice-bob}.basket-items li{animation:.28s ease-out tray-settle}.count-badge{animation:.25s ease-out count-pop}.route-careful .route-rider{animation-duration:1.2s}.careful-cargo .food-art{animation:.8s ease-in-out infinite alternate pudding-wobble}.serving{animation:.4s ease-out both unwrap-food;animation-delay:var(--reveal-delay,0s)}.flying-food,.dream .flying-food{animation-duration:var(--bite-duration)}.texture-word{animation:.38s ease-out both texture-pop;animation-delay:calc(var(--bite-duration) * .25)}.texture-pudding .flying-food .food-art{animation:.17s ease-in-out infinite alternate pudding-wobble}.is-eating.texture-pudding .mochi{animation:.18s ease-in-out infinite alternate pudding-cheeks}.is-eating.texture-burger .mochi{animation:.29s ease-in-out infinite alternate chew}.texture-pizza .flying-food .food-art{animation:pizza-pull var(--bite-duration) ease-in-out both}.is-eating.texture-ramen .mochi{animation:.32s ease-in-out infinite alternate slurp}.texture-ramen .flying-food .food-art{animation:noodle-lift var(--bite-duration) ease-in-out both}.is-eating.texture-sushi .mochi{animation:.5s ease-in-out 3 sushi-nod}.is-eating.texture-donut .mochi{animation:.34s ease-in-out infinite alternate donut-bounce}.done .happy-resident .mochi{animation:.7s ease-out both happy-arrive,5s ease-in-out .7s infinite restful-breath}@keyframes choice-bob{0%,to{translate:0}35%{translate:0 -9px;rotate:-3deg}65%{translate:0 1px;rotate:2deg}}@keyframes tray-settle{0%{opacity:.4;translate:0 6px}to{opacity:1;translate:0}}@keyframes count-pop{40%{scale:1.22}}@keyframes unwrap-food{0%{opacity:0;translate:0 16px;scale:.93}to{opacity:1;translate:0;scale:1}}@keyframes pudding-wobble{0%{rotate:-4deg;scale:1.06 .94}to{rotate:4deg;scale:.95 1.05}}@keyframes pudding-cheeks{0%{rotate:-2deg;scale:1.06 .96}to{rotate:2deg;scale:.98 1.04}}@keyframes pizza-pull{0%,20%{scale:1}50%{rotate:-8deg;scale:.82 1.25}to{scale:1}}@keyframes slurp{0%{rotate:-3deg;scale:1 .98}to{rotate:2deg;scale:.98 1.04}}@keyframes noodle-lift{0%,20%{rotate:-7deg}50%{rotate:8deg;scale:.86 1.13}to{rotate:0deg}}@keyframes sushi-nod{0%,to{translate:0;rotate:0deg}50%{translate:0 7px;rotate:3deg}}@keyframes donut-bounce{0%{translate:0 1px}to{translate:0 -5px}}@keyframes texture-pop{0%{opacity:0;scale:.6}to{opacity:1;scale:1}}@keyframes restful-breath{50%{scale:1.015 1.025}}}@media (width<=1000px){.resident-preview .speech{font-size:11px;left:105px}.texture-word{font-size:22px;right:0}}@media (width<=620px){.game-heading h1{font-size:clamp(24px,7vw,28px)}.resident-preview .speech{max-width:none;font-size:12px;left:137px}.mobile-tray-dock{z-index:20;bottom:max(12px,env(safe-area-inset-bottom));display:block;position:fixed;left:18px;right:18px}.mobile-choice-reply{background:#fffef8;border:1px solid #e7e5dc;border-radius:16px;align-items:center;gap:7px;margin:0 6px 6px;padding:6px 12px 6px 5px;display:flex;box-shadow:0 3px 14px #24252a0a}.mobile-choice-reply .mochi{flex:none;width:38px}.mobile-choice-reply>span{font-size:12px;line-height:1.6}.mobile-tray-dock .mobile-basket-button{width:100%;padding:14px;position:static}.menu-layout{padding-bottom:20px}.waiting-resident .speech{max-width:170px}.texture-word{font-size:21px;bottom:108px;right:0}.texture-sushi .texture-word{font-size:15px}.happy-resident .speech{white-space:normal;width:max-content;max-width:100%;line-height:1.65}.meal-memory p{font-size:12px}.ending-actions{gap:10px}.ending-actions .secondary-button{min-height:45px}}@media (width<=380px){.resident-preview .speech{max-width:calc(100% - 105px);font-size:11px;left:105px}.basket-items li{font-size:12px}.basket-items li>.food-art{width:30px}.ending-actions{flex-direction:column}.mobile-choice-reply>span{font-size:11px}}}
