.cafe-game .customer-card{overflow:visible}.cafe-game .customer-card.served.mood-love{background:#ffeef3;border-color:#e58aa6}.cafe-game .customer-card.served.mood-confused{background:#f3edfb;border-color:#a98cc9}.cafe-game .customer-card.served.mood-gross{background:#eef6d8;border-color:#8fb04e}.cafe-game .customer-card.served.mood-angry{background:#ffe6e0;border-color:#d9735f}.cafe-game .order-ticket{border-top:4px solid var(--tomato);-webkit-mask:linear-gradient(#000 0 0) top / 100% calc(100% - 5px) no-repeat, conic-gradient(from 135deg at top, #000 90deg, #0000 0) bottom / 10px 5px repeat-x;mask:linear-gradient(#000 0 0) top / 100% calc(100% - 5px) no-repeat, conic-gradient(from 135deg at top, #000 90deg, #0000 0) bottom / 10px 5px repeat-x;background:#fff;border-radius:3px 3px 0 0;align-items:center;gap:6px;margin:2px 0 3px;padding:5px 6px 9px;display:flex;position:relative;box-shadow:0 2px #e3d3bc}.cafe-game .order-ticket svg{flex:0 0 46px;width:46px;height:46px}.cafe-game .order-ticket ol{color:var(--ink);flex-direction:column-reverse;margin:0;padding:0;font-size:.66rem;font-weight:800;line-height:1.2;list-style:none;display:flex}.cafe-game .order-ticket b{background:var(--sun);border-radius:50%;place-items:center;width:13px;height:13px;font-size:.55rem;display:inline-grid}.cafe-game .order-bubble .speech{color:var(--green);font-size:.9rem;font-weight:900}.cafe-game .speech.mood-love{color:#d63c6b}.cafe-game .speech.mood-confused{color:#7a55a8}.cafe-game .speech.mood-gross{color:#4d8a2a}.cafe-game .speech.mood-angry,.cafe-game .speech.mood-left{color:var(--red)}.cafe-game .recipe-checklist ol{flex-wrap:wrap;gap:4px 10px;margin:0;padding:0;list-style:none;display:flex}.cafe-game .recipe-checklist li{align-items:center;gap:4px;font-weight:700;display:flex}.cafe-game .recipe-checklist li b{background:#fff;border:2px solid #9ab8ab;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.66rem;display:grid}.cafe-game .recipe-checklist .checked{color:#286736}.cafe-game .recipe-checklist .checked b{border-color:var(--green);background:#d2f0cc}.cafe-game .recipe-checklist .next b{background:var(--sun);border-color:#cc9c2d}.cafe-game .recipe-checklist .misplaced{color:#a33b2b}.cafe-game .ingredient-bin.recipe-next{background:#fff2c8;border-color:#cc9c2d;box-shadow:0 4px #cc9c2d}.cafe-game .ingredient-bin>span{width:40px;height:40px;display:block}.cafe-game .ingredient-bin>span svg{width:100%;height:100%}.cafe-game .plate-food{min-height:0;box-shadow:none;background:0 0;border:0;padding:0}.cafe-game .plate-food svg{width:96px;height:84px}.cafe-game .meal-icon,.cafe-game .meal-art{place-items:center;display:grid}.cafe-game .meal-icon svg{width:44px;height:40px}.cafe-game .tray-slot svg{width:100%;height:100%}.cafe-game .floor-table-meal svg{width:clamp(18px,4vw,30px);height:clamp(18px,4vw,30px)}.cafe-game .cafe-menu>div>svg{flex:0 0 30px;width:30px;height:30px}.food-flight svg{width:100%;height:100%}.cafe-game .lunchbox{position:relative}.cafe-game .lunchbox.grilling{background:#f3e1cf;border-color:#8c5a3b;box-shadow:inset 0 5px #d49f6a}.cafe-game .lunchbox.grilling .kitchen-label{color:#8c5a3b}.cafe-game .grill-pull{cursor:pointer;touch-action:manipulation;background:#fffbec;border:3px solid #795e48;border-radius:12px;justify-items:center;gap:2px;width:100%;padding:4px;display:grid;box-shadow:0 4px #7f573e}.cafe-game .grill-pull:active{translate:0 3px;box-shadow:0 1px #7f573e}.cafe-game .grill-pull svg{width:50px;height:40px}.cafe-game .grill-pull strong{align-items:center;gap:5px;font-size:.78rem;display:flex}.cafe-game .grill-meter{border:2px solid var(--ink);background:linear-gradient(90deg, #f3a9a0 0 var(--good), #b9dd8f var(--good) var(--gold), var(--sun) var(--gold) var(--gold-end), #b9dd8f var(--gold-end) var(--burnt), #3b3541 var(--burnt));border-radius:8px;width:100%;height:12px;display:block;position:relative}.cafe-game .grill-meter i{background:var(--ink);border-radius:2px;width:4px;height:20px;margin-left:-2px;transition:left .1s linear;position:absolute;top:-5px;box-shadow:0 0 0 2px #fff}.cafe-game .grade-pops{pointer-events:none;z-index:2;justify-items:center;gap:2px;display:grid;position:absolute;top:-8px;left:50%;translate:-50%}.cafe-game .grade-pop{border:2px solid var(--ink);white-space:nowrap;color:#286736;background:#d2f0cc;border-radius:999px;padding:1px 7px;font-size:.62rem;font-weight:900;animation:1.6s ease-out both grade-pop}.cafe-game .grade-pop.perfect{background:var(--sun);color:var(--ink)}.cafe-game .grade-pop.oops{color:var(--red);background:#ffd9d2}@keyframes grade-pop{0%{opacity:0;transform:translateY(14px)scale(.6)}15%{opacity:1;transform:translateY(0)scale(1.15)}25%{transform:scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-22px)}}@media (prefers-reduced-motion:reduce){.cafe-game .grade-pops{flex-wrap:wrap;justify-content:center;display:flex;position:static;translate:none}.cafe-game .grade-pop{font-size:.55rem;animation:none}}.cafe-game .floor-obstacle{z-index:4;border:2px solid var(--red);pointer-events:none;background:#fff6e8;border-radius:8px;width:20%;height:33.3333%;padding:3%;animation:.3s ease-out both obstacle-pop;position:absolute}.cafe-game .obstacle-art{width:100%;height:100%;display:block}.cafe-game .customer-row{position:relative}.cafe-game .stop-alert{z-index:5;border:3px solid var(--red);border-radius:var(--radius);background:#fff6e8f2;justify-content:center;align-items:center;gap:12px;padding:6px 12px;animation:.25s ease-out both obstacle-pop;display:flex;position:absolute;inset:0}.cafe-game .stop-alert .obstacle-art{aspect-ratio:1;flex:none;width:auto;height:min(72px,80%)}.cafe-game .stop-alert strong{text-transform:uppercase;color:var(--ink);font-size:clamp(.85rem,2.4vw,1.15rem);font-weight:900;line-height:1.1}.cafe-game .stop-button{aspect-ratio:1;border:4px solid var(--ink);background:var(--red);color:#fff;width:clamp(64px,12vw,88px);font:inherit;letter-spacing:.04em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;font-size:clamp(.95rem,2.4vw,1.2rem);font-weight:900;box-shadow:0 5px #7d2a1d}.cafe-game .stop-button:active{translate:0 3px;box-shadow:0 2px #7d2a1d}.cafe-game .stop-button:focus-visible{outline:4px solid var(--sun);outline-offset:3px}.cafe-game .stop-pop{z-index:5;top:40%}.cafe-game .stop-pop .grade-pop{padding:3px 10px;font-size:.85rem}.cafe-game .robot-ping{border:3px solid var(--red);border-radius:50%;animation:.8s ease-out infinite robot-ping;position:absolute;inset:0}.cafe-game .cafe-robot.bumped>div{animation:.4s ease-out robot-bump}@keyframes obstacle-pop{0%{opacity:0;transform:scale(.6)}}@keyframes robot-ping{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.35)}}@keyframes robot-bump{30%{scale:.85}}@media (prefers-reduced-motion:reduce){.cafe-game .floor-obstacle,.cafe-game .stop-alert,.cafe-game .cafe-robot.bumped>div{animation:none}.cafe-game .robot-ping{opacity:.8;animation:none}.cafe-game .stop-pop{display:none}}.cafe-game .debug-alert{z-index:5;border:3px solid var(--red);border-radius:var(--radius);background:#fff6e8f2;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;min-height:100%;padding:6px 10px 12px;animation:.25s ease-out both obstacle-pop;display:flex;position:absolute;inset:0 0 auto}.cafe-game .debug-alert p{max-width:230px;color:var(--ink);margin:0;font-size:.74rem;line-height:1.25;display:grid}.cafe-game .debug-alert p strong{text-transform:uppercase;color:var(--red);font-size:clamp(.95rem,2.4vw,1.2rem);font-weight:900}.cafe-game .debug-scrambled .route-block,.cafe-game .route-block.scrambled{outline:3px dashed var(--red);outline-offset:2px;animation:.5s ease-in-out infinite block-wobble}.cafe-game .debug-scrambled .route-block{white-space:nowrap;width:auto}.cafe-game .debug-choices{gap:8px;display:flex}.cafe-game .debug-choices .block-btn{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;min-width:78px;min-height:58px;font-size:.78rem;position:relative}.cafe-game .debug-choices .block-btn:disabled{opacity:.35;cursor:default;text-decoration:line-through}.cafe-game .debug-choices .block-btn:focus-visible{outline:4px solid var(--sun);outline-offset:3px}.cafe-game .debug-choices kbd{font:inherit;opacity:.85;font-size:.62rem;position:absolute;top:3px;left:5px}.cafe-game .debug-timer{border-radius:0 0 0 calc(var(--radius) - 3px);background:var(--red);height:6px;transition:width .1s linear;position:absolute;bottom:0;left:0}.cafe-game .ghost-path{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cafe-game .ghost-path polyline{fill:none;stroke:var(--red);stroke-width:5px;stroke-dasharray:2 9;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.cafe-game .ghost-path.fixed polyline{stroke:var(--green)}.cafe-game .ghost-crash{z-index:4}@media (width<=600px){.cafe-game .debug-alert p span{display:none}.cafe-game .debug-choices .block-btn{min-width:0;min-height:52px;padding:4px 8px}}@keyframes block-wobble{25%{rotate:-3deg}75%{rotate:3deg}}@media (prefers-reduced-motion:reduce){.cafe-game .debug-alert,.cafe-game .debug-scrambled .route-block,.cafe-game .route-block.scrambled{animation:none}.cafe-game .debug-timer{transition:none}}.cafe-game .match-bar{justify-content:flex-end;gap:3px;margin-bottom:2px;display:flex}.cafe-game .match-bar i{color:#796e68;letter-spacing:.06em;text-transform:uppercase;background:#eddfcd;border-radius:8px;padding:1px 6px;font-size:.62rem;font-style:normal;font-weight:900}.cafe-game .match-bar i.current{background:var(--teal);color:#fff}.cafe-game .cafe-header.endgame{background:#fff0ba;border-radius:14px;box-shadow:0 0 0 8px #fff0ba}.cafe-game .endgame .match-bar i.current{background:var(--sun);color:var(--ink);animation:1.2s ease-in-out infinite endgame-glow;box-shadow:0 0 0 2px #c99f3f}.cafe-game .x2-badge{border:2px solid var(--ink);background:var(--sun);border-radius:8px;margin-right:6px;padding:0 6px;font-size:.8em;display:inline-block}@keyframes endgame-glow{50%{box-shadow:0 0 0 2px #c99f3f,0 0 10px 3px #ffc93c}}.cafe-game .auto-banner{background:var(--teal);color:#fff;letter-spacing:.04em;border-radius:10px;padding:2px 10px;font-weight:900}.cafe-game .par-note{color:#3a6558;background:#eef7f4;border-radius:10px;margin:8px 0 0;padding:8px 10px;font-size:.8rem}.cafe-game .hot-streak{color:#796e68;background:#fffaf3;border:2px solid #e9dcc8;border-radius:24px;align-items:center;gap:6px;padding:6px 14px 6px 8px;font-size:.85rem;font-weight:800;display:inline-flex}.cafe-game .hot-streak .flame-art{opacity:.45;width:22px;height:22px}.cafe-game .hot-streak.on{border-color:var(--tomato);color:#a94c32;background:#fff0ba}.cafe-game .hot-streak.on .flame-art{opacity:1;animation:.8s ease-in-out infinite flame-flicker}@keyframes flame-flicker{50%{scale:1.12 1.18}}.cafe-game .match-score{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:14px 0 6px;display:grid}.cafe-game .match-score div{background:#eef7f4;border-radius:12px;padding:8px 4px;display:grid}.cafe-game .match-score div:nth-child(3){background:#fff0ba}.cafe-game .match-score span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:800}.cafe-game .match-score b{font-variant-numeric:tabular-nums;font-size:1.5rem}.cafe-game .perfect-result{color:#a94c32;justify-content:center;align-items:center;gap:6px;font-weight:900;display:flex}.cafe-game .perfect-result .flame-art{width:24px;height:24px}@media (width<=600px){.cafe-game .match-bar i{padding:1px 4px;font-size:.55rem}.cafe-game .match-score span{font-size:.6rem}}@media (prefers-reduced-motion:reduce){.cafe-game .endgame .match-bar i.current,.cafe-game .hot-streak.on .flame-art{animation:none}}:root:has(.stage-game){overscroll-behavior:none;overflow:hidden}:root:has(.stage-game) body{overscroll-behavior:none;overflow:hidden}.cafe-game.stage-game{max-width:none;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left);background:var(--bg);flex-direction:column;margin:0;display:flex;position:fixed;inset:0}.stage-frame{flex-direction:column;flex:1;min-height:0;display:flex}.stage-bar{padding:calc(6px + env(safe-area-inset-top)) 12px 6px;background:var(--card);border-bottom:3px solid var(--ink);align-items:center;gap:12px;display:flex}.stage-bar.endgame{background:#fff0ba}.stage-bar .cafe-scoreboard{text-align:left;flex:none;gap:14px}.stage-bar .cafe-scoreboard .match-bar{justify-content:flex-start}.cafe-game .stage-bar .hot-streak{white-space:nowrap;flex:none;padding:4px 12px 4px 6px}.stage-bar .hot-streak svg{flex:none}.stage-bar .streak-short{display:none}.stage-title{text-align:right;min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;font-weight:800;overflow:hidden}.fullscreen-toggle{border:2px solid var(--ink);background:var(--card);width:44px;height:44px;box-shadow:0 3px 0 var(--ink);touch-action:manipulation;border-radius:12px;flex:none;place-items:center;padding:0;display:grid}.fullscreen-toggle:active{box-shadow:0 1px 0 var(--ink);translate:0 2px}.fullscreen-toggle svg{fill:none;width:22px;height:22px;stroke:var(--ink);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.stage-bar .leave-challenge{flex:none;min-height:44px}.stage-view{flex:1;min-height:0;position:relative;overflow:hidden;container-type:size}.stage-track{width:200%;height:100%;transition:transform .35s cubic-bezier(.3,.7,.4,1);display:flex}.stage-track.at-kitchen{transform:translate(-50%)}.stage-game .stage-screen{--side:max(14px, (100cqw - 1040px) / 2);overscroll-behavior:contain;flex-direction:column;width:50%;height:100%;display:flex;overflow-y:auto}.dining-wall{padding:44px var(--side) 14px;background:var(--bg);border-bottom:3px solid var(--ink);flex:none;position:relative;box-shadow:0 8px #c68b59}.dining-wall:before,.dining-wall:after,.results-screen:before,.results-screen:after{content:"";height:32px;position:absolute;inset:0 0 auto;-webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 12px) no-repeat,radial-gradient(circle at 50% 0,#000 13px,#0000 13.5px) bottom/28px 12px repeat-x;mask:linear-gradient(#000 0 0) top/100% calc(100% - 12px) no-repeat,radial-gradient(circle at 50% 0,#000 13px,#0000 13.5px) bottom/28px 12px repeat-x}.dining-wall:before,.results-screen:before{background:var(--ink);top:3px}.dining-wall:after,.results-screen:after{background:repeating-linear-gradient(90deg, var(--tomato) 0 28px, #fff 28px 56px)}.stage-game .customer-row{min-height:110px}.dining-floor{min-height:0;padding:16px var(--side);background:repeating-conic-gradient(#d3e8e3 0 25%, #e8f3f0 0 50%) 0 0 / 56px 56px;flex:1;justify-content:center;align-items:flex-start;gap:16px;margin-top:8px;display:flex;container-type:size}.stage-game .restaurant-floor-wrap{flex:none;width:min(100cqw,max(240px,166.667cqh - 93.3333px));max-width:none;margin:0}.robot-panel{flex:260px;gap:10px;max-width:340px;display:grid}.stage-game .robot-job{border:3px solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:0 4px 0 var(--ink);padding:8px 12px}.stage-game .robot-panel .cafe-program{background:var(--card);border-color:var(--ink);min-height:0;max-height:260px}@container (width>=700px){.stage-game .restaurant-floor-wrap{width:min(100cqw - 356px,max(240px,166.667cqh - 93.3333px))}}@container (width<=699px){.dining-floor{flex-direction:column;flex:1 0 auto;align-items:center;gap:12px;padding-top:12px;padding-bottom:10px;container-type:inline-size}.robot-panel{flex:none;width:100%}.stage-game .robot-job{padding:4px 10px}}.stage-game .floor-caption{color:var(--ink);font-size:.7rem}.stage-game .floor-caption>span:not(.auto-banner){white-space:nowrap;background:var(--card);border-radius:999px;padding:1px 8px}.stage-game .restaurant-floor{border-color:var(--ink);box-shadow:0 4px 0 var(--ink)}.floor-planter{padding:8%}.floor-planter svg{width:100%;height:100%}.floor-customer{aspect-ratio:9/10;height:60%;position:absolute;bottom:4%;right:0}.floor-customer svg{width:100%;height:100%}.kitchen-wall{padding:15px var(--side) 12px;background:conic-gradient(from 90deg at 3px 3px, #0000 25%, var(--line) 0) 0 0 / 44px 44px, var(--bg);flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid;position:relative}.kitchen-wall:before{content:"";border-bottom:3px solid var(--ink);background:#9aa7b0;height:12px;position:absolute;inset:0 0 auto}.stage-game .kitchen-wall>.cook-launch{border:3px solid var(--ink);background:var(--card);max-width:440px;box-shadow:0 4px 0 var(--ink);margin:10px 0 0}.counter-top{padding:12px var(--side);border-top:3px solid var(--ink);background:#c9d6de;flex-direction:column;flex:1;gap:10px;display:flex;box-shadow:inset 0 8px #e4ecf0}.stage-game .counter-top .cooking-line{flex:1;min-height:0;margin:0}.stage-game .counter-top .assembly-plate,.stage-game .counter-top .cafe-station{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);justify-content:center}.stage-game .counter-top .ingredient-bin{border-color:var(--ink);box-shadow:0 4px 0 var(--ink)}.stage-game .ingredient-bin>span{width:clamp(40px,min(9cqh,11cqw),80px);height:clamp(40px,min(9cqh,11cqw),80px)}.stage-game .counter-top .plate-food,.stage-game .counter-top .cooker-food,.stage-game .counter-top .grill-pull svg{flex:1 1 0;width:100%;height:auto}.stage-game .counter-top .plate-food{min-height:84px;max-height:175px}.stage-game .counter-top .cooker-food{min-height:40px;max-height:90px}.stage-game .counter-top .grill-pull svg{min-height:40px;max-height:104px}.stage-game .plate-food svg,.stage-game .cooker-food>svg{width:100%;height:100%}.stage-game .counter-top .grill-pull{flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;min-height:0;display:flex}.stage-game .counter-top .cooker-food{position:relative}.stage-game .cooker-food .meal-art{aspect-ratio:16/9;width:auto;height:60%;margin:auto;position:absolute;inset:0}.stage-game .meal-art .meal-lid{aspect-ratio:1;width:auto;height:166%}.stage-game .meal-art .meal-icon{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.stage-game .meal-art .meal-icon svg{aspect-ratio:44/40;width:auto;height:130%}.ticket-rail{flex-wrap:wrap;align-items:flex-start;gap:8px 10px;display:flex}.stage-game .ticket-rail>*{background:var(--card);box-shadow:none;-webkit-mask:linear-gradient(#000 0 0) top / 100% calc(100% - 6px) no-repeat, conic-gradient(from 135deg at top, #000 90deg, #0000 0) bottom / 12px 6px repeat-x;mask:linear-gradient(#000 0 0) top / 100% calc(100% - 6px) no-repeat, conic-gradient(from 135deg at top, #000 90deg, #0000 0) bottom / 12px 6px repeat-x;border:0;border-top:6px solid #9aa7b0;border-radius:0;margin:0;padding:8px 12px 14px}.stage-game .ticket-rail .recipe-checklist{border-top-color:var(--tomato);flex:320px;font-size:.9rem}.ticket-rail .recipe-checklist>svg,.ticket-tab>svg{flex:none;width:40px;height:40px}.ticket-tab{text-align:left;align-items:center;gap:8px;min-height:58px;font-size:.8rem;font-weight:700;display:flex}.ticket-tab strong{font-size:.9rem;display:block}.ticket-empty{font-weight:800}.stage-game .delivery-choices{margin-top:0}.lunchbox .deliver-dish{width:90%;min-height:44px;padding:6px 8px;font-size:.95rem}.lunchbox .deliver-dish kbd{margin-left:8px}.stage-game .workshop-screen{width:100%;padding:14px max(14px, (100cqw - 1280px) / 2) calc(24px + env(safe-area-inset-bottom));background:radial-gradient(circle,#b98a5e 2.5px,#0000 3px) 0 0/24px 24px,#e8c9a0;grid-template:"shift board bench""shift board open"1fr/180px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px 16px;display:grid}.workshop-back{border:2px solid var(--ink);background:var(--card);min-height:44px;box-shadow:0 3px 0 var(--ink);touch-action:manipulation;border-radius:12px;flex:none;align-items:center;gap:6px;padding:2px 12px 2px 4px;font-weight:900;display:flex}.workshop-back:active{box-shadow:0 1px 0 var(--ink);translate:0 2px}.workshop-title{font-size:1.2rem;font-weight:900}.shift-board{border:3px solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:0 4px 0 var(--ink);grid-area:shift;gap:8px;padding:12px;display:grid}.shift-board h2,.whiteboard h2{margin:0;font-size:1.1rem;font-weight:900}.shift-board button{border:2px solid var(--ink);background:var(--bg);min-height:52px;box-shadow:0 3px 0 var(--ink);text-align:left;touch-action:manipulation;border-radius:12px;grid-template-columns:28px auto;align-items:center;column-gap:8px;padding:6px 10px;font-size:.85rem;font-weight:800;display:grid}.shift-board button>span{border:2px solid var(--ink);background:var(--card);border-radius:50%;grid-row:span 2;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.shift-board small{color:var(--muted);font-size:.72rem;font-weight:700}.shift-board .picked{background:var(--sun);box-shadow:0 3px #cc9c2d}.shift-board button:active:not(:disabled){box-shadow:0 1px 0 var(--ink);translate:0 2px}.whiteboard{border:3px solid var(--ink);background:var(--card);min-width:0;box-shadow:inset 0 0 0 7px #c9d6de, 0 4px 0 var(--ink);border-radius:10px;grid-area:board;gap:10px;margin-bottom:12px;padding:18px;display:grid;position:relative}.whiteboard:after{content:"";border:3px solid var(--ink);background:#9aa7b0;border-radius:4px;height:12px;position:absolute;bottom:-14px;left:18%;right:18%}.whiteboard>*{margin:0}.whiteboard>p{color:var(--muted);font-size:.85rem}.whiteboard .block-palette{grid-template-columns:repeat(5,minmax(0,1fr))}.whiteboard .block-palette .cmd-repeat{grid-column:auto}.whiteboard .cafe-program{min-height:110px;max-height:260px}.whiteboard .test-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.whiteboard .test-controls .clear-route{grid-column:auto}.whiteboard .edit-bar{gap:5px}.whiteboard .small-btn{min-height:36px;box-shadow:0 2px 0 var(--ink);border-width:2px;border-radius:8px;padding:3px 8px;font-size:.75rem}.workbench{border:3px solid var(--ink);box-shadow:inset 0 6px 0 #d9a877, 0 4px 0 var(--ink);background:#c68b59;border-radius:12px;grid-area:bench;padding:12px 14px 16px}.stage-game .workshop-screen .restaurant-floor-wrap{width:100%;margin:0}.workbench .forward-preview-text{background:var(--card);border-radius:10px;margin:8px 0 0;padding:4px 10px}.stage-game .open-kitchen{border:3px solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:0 4px 0 var(--ink);grid-area:open;padding:12px}.stage-game .open-kitchen>span{font-size:.85rem}.stage-game .open-kitchen .btn{min-height:56px;font-size:1.1rem}@media (width<=999px){.stage-game .workshop-screen{grid-template:"shift shift""board bench""board open"1fr/minmax(0,1fr) minmax(0,1fr)}.shift-board{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.shift-board h2{grid-column:1/-1}}@media (width<=699px){.stage-game .workshop-screen{padding:10px 10px calc(20px + env(safe-area-inset-bottom));grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"shift""bench""board""open"}.workshop-title{font-size:1rem}.whiteboard .test-controls{grid-template-columns:1fr 1fr}.whiteboard .test-controls .clear-route{grid-column:1/-1}}.title-card{z-index:90;background:#2d2a32b3;place-content:center;justify-items:center;gap:10px;animation:.2s ease-out both title-fade;display:grid;position:fixed;inset:0}.title-card strong{border:4px solid var(--ink);border-radius:var(--radius);background:var(--sun);box-shadow:0 6px 0 var(--ink);letter-spacing:.02em;padding:12px 30px;font-size:clamp(2rem,9vw,4.5rem);font-weight:900;animation:.4s cubic-bezier(.3,1.6,.5,1) both title-pop}.title-card span{color:#fff;font-weight:800}.kitchen-open{color:inherit;font:inherit;cursor:pointer;border:0}.kitchen-open strong{background:var(--green);color:#fff}.shift-over strong{background:var(--tomato);color:#fff}.title-card.endgame-card{inset:calc(env(safe-area-inset-top) + 4px) 0 auto;pointer-events:none;background:0 0;justify-content:center;align-items:center;gap:8px;animation:1.2s ease-out both endgame-drop;display:flex}.endgame-card strong{padding:6px 18px;font-size:clamp(1.4rem,5vw,2.2rem);animation:none}.endgame-card b{border:4px solid var(--ink);background:var(--card);box-shadow:0 4px 0 var(--ink);border-radius:12px;padding:4px 12px;font-size:clamp(1.2rem,4vw,1.8rem);font-weight:900}@keyframes title-fade{0%{opacity:0}}@keyframes title-pop{0%{transform:scale(.6)}}@keyframes endgame-drop{0%{transform:translateY(-120%)}25%{transform:none}80%{opacity:1}to{opacity:0}}.results-screen{z-index:80;overscroll-behavior:contain;padding:calc(env(safe-area-inset-top) + 52px) 14px calc(env(safe-area-inset-bottom) + 20px);background:linear-gradient(var(--bg) 0 45%, var(--ink) 0 calc(45% + 3px), #c68b59 0 calc(45% + 11px), #0000 0), repeating-conic-gradient(#d3e8e3 0 25%, #e8f3f0 0 50%) 0 0 / 56px 56px;animation:.35s cubic-bezier(.3,.7,.4,1) both results-in;position:fixed;inset:0;overflow-y:auto}.results-board{border:3px solid var(--ink);border-radius:var(--radius);background:var(--card);max-width:640px;box-shadow:0 5px 0 var(--ink);text-align:center;gap:12px;margin:0 auto;padding:20px;display:grid}.results-board>*{margin:0}.results-board h2{font-size:clamp(1.5rem,5vw,2rem)}.results-board .stat-row div{border:2px solid var(--ink);background:var(--bg)}.results-board .stat-row b{font-size:2.4rem}.cafe-game .results-board .match-score{background:var(--ink);border-radius:14px;padding:8px}.cafe-game .results-board .match-score div{background:#3b3541}.cafe-game .results-board .match-score span{color:var(--line)}.cafe-game .results-board .match-score b{color:var(--sun);font-size:2rem}.cafe-game .results-board .match-score div:nth-child(3){background:var(--sun)}.cafe-game .results-board .match-score div:nth-child(3) :is(span,b){color:var(--ink)}.results-board .modal-buttons{justify-content:center}@keyframes results-in{0%{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.title-card{display:none}.results-screen{animation:none}}.stage-frame>.practice-coach{border-width:3px 0 0;border-radius:0;margin:0}.stage-alerts{z-index:6;pointer-events:none;justify-items:center;display:grid;position:absolute;top:8px;left:12px;right:12px}.cafe-game .stage-alerts .stop-alert{width:min(560px,100%);min-height:96px;box-shadow:0 4px 0 var(--ink);pointer-events:auto;position:relative;inset:auto}.cafe-game .stage-alerts .stop-alert .obstacle-art{width:72px;height:72px}.cafe-game .stage-alerts .stop-pop{top:100%}.stage-tabs{padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--card);border-top:3px solid var(--ink);grid-template-columns:1fr 1fr;gap:8px;display:grid}.stage-tabs button{border:3px solid var(--ink);background:var(--bg);min-height:52px;box-shadow:0 4px 0 var(--ink);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:1rem;font-weight:900;display:flex;position:relative}.stage-tabs button.current{background:var(--sun);box-shadow:0 4px #cc9c2d}.stage-tabs button:active{box-shadow:0 1px 0 var(--ink);translate:0 3px}.stage-tabs svg{flex:none;width:30px;height:30px}.tab-dot{border:3px solid var(--ink);background:var(--red);border-radius:50%;width:18px;height:18px;position:absolute;top:-6px;right:-6px}@media (width<=760px){.stage-title{visibility:hidden}.stage-bar{gap:6px;padding-inline:8px}.stage-bar .cafe-scoreboard{gap:8px}.stage-bar .hot-streak{padding:4px 8px 4px 4px}.fullscreen-toggle{width:40px}.stage-bar .streak-long,.lunchbox .deliver-dish kbd{display:none}.stage-bar .streak-short{display:inline}.stage-bar .cafe-scoreboard strong{font-size:1.05rem}.stage-game .stage-screen{--side:10px}.kitchen-wall{grid-template-columns:minmax(0,1fr);gap:8px;padding-bottom:8px}.counter-top{padding:10px var(--side)}.stage-game .ticket-rail>*{padding:6px 10px 12px}.stage-game .kitchen-wall>.cook-launch{max-width:none;margin:0}.stage-game .customer-row{min-height:0}.stage-game .ticket-rail .recipe-checklist{font-size:.8rem}.ingredient-bins,.stage-game .cooking-line{gap:6px}}@media (prefers-reduced-motion:reduce){.stage-track{transition:none}}@media (width<=400px){.stage-bar{gap:4px}.stage-bar .leave-challenge{padding-inline:2px}.cafe-game .stage-bar .match-bar i{letter-spacing:.02em;padding:1px 4px}}.play-join{text-align:left;max-width:360px;margin:0 auto;display:grid}.play-join input{width:100%}.play-join .btn{margin-top:14px}.play-players{flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}.play-players li{border:2px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 6px;font-weight:800;display:flex}.play-players .me{background:#eef8ee;border-color:#428575}.play-stats{flex-wrap:wrap}.play-subhead{margin-top:24px}.play-ranking{text-align:left;margin:12px 0 0;padding:0;list-style:none}.play-ranking li{border-radius:12px;align-items:center;gap:8px;padding:7px 10px;display:flex}.play-ranking li>b{background:#f4dfb3;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:.8rem;display:grid}.play-ranking li>svg{flex:none}.play-ranking li>span{overflow-wrap:anywhere;flex:1;font-weight:700}.play-ranking li>strong{white-space:nowrap;color:#437644}.play-ranking .me{background:#fff0c8}.play-podium{justify-content:center;align-items:flex-end;gap:10px;margin:24px 0;padding:0;list-style:none;display:flex}.play-podium li{flex:1;justify-items:center;min-width:0;max-width:170px;display:grid}.play-podium strong{overflow-wrap:anywhere}.play-podium span{color:#437644;font-size:.85rem;font-weight:800}.play-podium b{color:#916124;background:#f4dfb3;border-radius:12px 12px 0 0;place-items:center;width:100%;height:60px;margin-top:6px;font-size:1.8rem;display:grid}.play-podium li:first-child{order:2}.play-podium li:first-child b{background:var(--sun);height:112px}.play-podium li:nth-child(2){order:1}.play-podium li:nth-child(2) b{height:84px}.play-podium li:nth-child(3){order:3}.host{max-width:1400px;margin:0 auto;padding:16px 24px 40px}.host .room-session-header{margin-bottom:16px}.host .host-phases{display:contents}.host .host-pill{border:3px solid var(--line);background:#fff;border-radius:999px;padding:6px 18px;font-size:clamp(1rem,1.8vw,1.5rem);font-weight:800}.host .host-pill b{letter-spacing:.08em}.host .host-error{z-index:5;position:sticky;top:8px}.host .host-loading{text-align:center;color:var(--muted);margin:20vh 0;font-size:1.4rem;font-weight:800}.host .host-intro{text-align:center;max-width:640px;margin:6vh auto;padding:32px}.host .host-intro h1{color:var(--tomato);margin:8px 0 16px;font-size:2.4rem}.host .host-intro .btn{margin-top:12px}.host .host-join{background:#fffaf0;border-color:#d7c2a6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;display:flex}.host .host-join>div{flex:320px}.host .host-join p{margin:8px 0;font-size:clamp(1.1rem,2.2vw,1.9rem)}.host .host-join .small{font-size:clamp(.9rem,1.4vw,1.2rem)}.host .host-link{color:var(--ink);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-weight:800}.host .host-code{border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.06em;background:#fff3c9;border-radius:24px;padding:.1em .25em;font-size:clamp(3.4rem,12vw,10rem);line-height:1.1}.host .host-qr{border:4px solid var(--ink);width:clamp(140px,18vw,260px);height:auto;box-shadow:0 6px 0 var(--ink);border-radius:16px}.host .host-players{flex-wrap:wrap;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.host .player-chip{padding-right:8px;font-size:clamp(1rem,1.5vw,1.35rem);animation:.35s ease-out pop}.host .host-check{background:var(--green);color:#fff;border-radius:50%;flex:none;place-items:center;width:1.5em;height:1.5em;font-size:.75em;font-weight:900;display:inline-grid}.host .host-remove{border:2px solid var(--line);width:34px;height:34px;color:var(--muted);background:#fff;border-radius:50%;flex:none;place-items:center;padding:0;font-size:.85rem;font-weight:900;display:grid}.host .host-remove:hover{border-color:var(--red);color:var(--red)}.host .room-briefing h2{font-size:clamp(1.5rem,2.6vw,2.2rem)}.host .room-briefing p{font-size:clamp(.9rem,1.5vw,1.25rem)}.host .room-briefing strong{font-size:clamp(.85rem,1.4vw,1.15rem)}.host .room-launch small{font-size:.85rem}.host .room-countdown{max-width:900px}.host .room-countdown h1{font-size:clamp(1.8rem,4vw,3rem)}.host .room-countdown>strong{font-size:clamp(7rem,24vw,16rem);line-height:1}.host .room-countdown p{font-size:clamp(1rem,1.8vw,1.5rem)}.host .host-clock{background:#fffaf0;border-color:#d7c2a6;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px 24px;display:grid}.host .host-clock h1{color:#9c472e;margin:4px 0;font-size:clamp(1.6rem,3.4vw,3rem)}.host .host-clock p{color:#745f4e;margin:0}.host .host-timer{font-variant-numeric:tabular-nums;font-size:clamp(4.5rem,13vw,10rem);line-height:1}.host .host-timer.hurry{color:var(--red)}.host .host-collecting{text-align:center;color:#9c472e;font-size:clamp(1.4rem,3vw,2.4rem)}.host .host-clock-side{justify-items:end;gap:12px;font-size:clamp(1.1rem,2.2vw,1.9rem);display:grid}.host .host-board{overflow-x:auto}.host .host-board table{font-variant-numeric:tabular-nums;font-size:clamp(1rem,1.9vw,1.6rem)}.host .host-board th{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.6em}.host .host-board td:last-child{width:1%}.host .host-board .lb-player svg{flex:none;width:1.9em;height:1.9em}.host .route-tabs{max-width:420px}.host .route-tabs button{min-height:44px;font-size:1rem}.host .host-results{text-align:center;background:#fffaf0;border-color:#d7c2a6}.host .host-results h1{color:#9c472e;margin:8px 0;font-size:clamp(1.8rem,4vw,3.2rem)}.host .host-results .modal-buttons{margin-top:20px}.host .host-podium{justify-content:center;align-items:flex-end;gap:clamp(8px,2vw,24px);margin:16px 0 0;padding:0;list-style:none;display:flex}.host .host-podium li{flex-direction:column;flex:0 260px;align-items:center;min-width:0;font-size:clamp(1rem,2.1vw,1.8rem);display:flex}.host .host-podium svg{aspect-ratio:1;width:clamp(56px,9vw,120px);height:auto}.host .host-podium strong{overflow-wrap:anywhere}.host .host-podium span{color:#47814c;font-weight:900}.host .host-podium b{border:3px solid var(--ink);background:#f0c9a0;border-bottom:0;border-radius:14px 14px 0 0;place-items:center;width:100%;height:clamp(50px,7vw,80px);margin-top:8px;font-size:1.6em;display:grid}.host .host-podium li:first-child{order:2}.host .host-podium li:first-child svg{width:clamp(72px,12vw,160px)}.host .host-podium li:first-child b{background:var(--sun);height:clamp(100px,14vw,170px)}.host .host-podium li:nth-child(2){order:1}.host .host-podium li:nth-child(2) b{background:#dfe3e8;height:clamp(74px,10vw,120px)}.host .host-podium li:nth-child(3){order:3}@media (width<=760px){.host{padding:12px 12px 32px}.host .host-join{text-align:center;justify-content:center}.host .host-clock{text-align:center;grid-template-columns:1fr}.host .host-clock-side{justify-items:center}.host .host-board{padding:12px 8px}.host .host-board th,.host .host-board td{padding:8px 5px}}.admin{max-width:1000px;margin:0 auto;padding:16px 16px 40px}.admin .room-session-header{margin-bottom:16px}.admin .admin-error{z-index:5;position:sticky;top:8px}.admin .row{justify-content:space-between;margin-bottom:8px}.admin .route-tabs{flex-wrap:wrap}.admin .route-tabs button{flex:130px;min-height:44px;font-size:.9rem}.admin .table-scroll{position:relative;overflow-x:auto}.admin table{font-variant-numeric:tabular-nums;min-width:720px}.admin .email{overflow-wrap:anywhere}.admin .admin-actions{white-space:nowrap;text-align:right}.admin .admin-actions .btn+.btn{margin-left:8px}.admin .admin-people{margin:0 0 16px;padding:0;list-style:none}.admin .admin-people li{border-bottom:2px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;display:flex}.admin .admin-people .email{flex:240px;font-weight:800}.admin .admin-add{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.admin .admin-add label{gap:4px;font-weight:800;display:grid}.admin input,.admin select{border:3px solid var(--ink);min-height:44px;font:inherit;background:#fff;border-radius:12px;padding:6px 12px}.admin .admin-add input{min-width:260px}:root{--bg:#fff6e8;--card:#fff;--ink:#2d2a32;--muted:#6b6470;--line:#e9dcc8;--tomato:#e8553e;--teal:#1f8a84;--sun:#ffc93c;--green:#2f9a4a;--red:#c62828;--radius:16px;color:var(--ink);background:var(--bg);font-family:Nunito,Trebuchet MS,system-ui,sans-serif;line-height:1.4}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}body{min-height:100vh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:radial-gradient(circle at 10% 0%, #ffe3c2 0, transparent 40%), radial-gradient(circle at 100% 100%, #d9f0c4 0, transparent 40%), var(--bg);margin:0}h1,h2{margin:0 0 8px;line-height:1.15}h1{font-size:1.8rem}h2{font-size:1.15rem}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline-offset:2px;outline:4px solid #3a86ff}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.small{color:var(--muted);margin:4px 0 8px;font-size:.9rem}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{border:3px solid var(--ink);min-height:48px;box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:14px;padding:10px 18px;font-weight:800;transition:transform 80ms,box-shadow 80ms}.btn:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.btn.big{min-height:60px;padding:10px 24px;font-size:1.2rem}.btn.run{background:var(--green);color:#fff}.btn.stop,.btn.danger{background:var(--red);color:#fff}.btn.ghost{box-shadow:none;border-color:var(--line);background:0 0}.page{max-width:1000px;margin:0 auto;padding:16px}.brand{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.brand-button{text-align:left;background:0 0;border:0;align-items:center;gap:10px;font-size:1.4rem;font-weight:900;display:flex}.brand-button small{color:var(--tomato);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem;display:block}.brand nav{gap:8px;display:flex}.card{background:var(--card);border:3px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:20px}.hero{background:linear-gradient(135deg,#fff 0%,#fff1dc 100%)}.hero h1{color:var(--tomato);font-size:2.2rem}.nick-form label{margin:16px 0 8px;font-weight:800;display:block}.nick-form input{min-width:200px;min-height:52px;font:inherit;border:3px solid var(--ink);border-radius:14px;flex:1;padding:8px 14px;font-size:1.2rem}.form-error{color:var(--red);font-weight:700}.player-list{flex-wrap:wrap;gap:10px;display:flex}.player-chip{border:3px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;min-height:56px;padding:6px 14px 6px 8px;font-weight:800;display:flex}.player-chip small{color:var(--muted);font-weight:600}.about{background:#f2f8ea;border-color:#cfe3b8}.link-button{color:var(--muted);background:0 0;border:0;min-height:44px;padding:0;text-decoration:underline}.app-loading{text-align:center;color:var(--muted);margin:30vh 16px 0;font-weight:800}.customize-grid{grid-template-columns:auto 1fr;align-items:center;gap:24px;margin:12px 0 20px;display:grid}.preview{background:#f3e6d2;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.propeller-blades{transform-box:fill-box;transform-origin:50%;animation:1.6s linear infinite propeller-spin}@keyframes propeller-spin{to{transform:rotate(360deg)}}.options{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.option{border:3px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:6px 14px;font-weight:700;display:flex}.option.picked{border-color:var(--ink);background:#fff3c9}.option.picked:after{content:"✓"}.swatch{border:2px solid var(--ink);border-radius:50%;width:22px;height:22px}.map-head{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.map-head div{flex:1}.map-head p{color:var(--muted);margin:0;font-weight:700}.stages{gap:14px;margin:0;padding:0;list-style:none;display:grid}.stages li:nth-child(2n){padding-left:12%}.stage-card{border:3px solid var(--ink);text-align:left;width:100%;box-shadow:0 5px 0 var(--ink);background:#fff;border-radius:20px;align-items:center;gap:16px;padding:14px 18px;display:flex}.stage-card.next{background:#fff3c9;animation:1.6s ease-in-out infinite pulse}.stage-card.done{background:#e6f5dd}.stage-card.locked{box-shadow:none;border-style:dashed}.stage-badge{border:3px solid var(--ink);background:var(--sun);border-radius:50%;flex:none;place-items:center;width:52px;height:52px;font-size:1.4rem;font-weight:900;display:grid}.stage-card.done .stage-badge{background:var(--green);color:#fff}.stage-text{display:grid}.stage-text small{color:var(--muted);font-weight:700}.stage-text strong{font-size:1.25rem}@keyframes pulse{50%{transform:scale(1.02)}}.leaderboard table{border-collapse:collapse;width:100%}.leaderboard th,.leaderboard td{text-align:left;border-bottom:2px solid var(--line);padding:8px 10px}.leaderboard tr.leader{background:#fff3c9}.leaderboard tr.me{outline-offset:-3px;outline:3px solid #3a86ff}.lb-player{align-items:center;gap:8px;font-weight:800;display:flex}.tag{background:var(--ink);color:#fff;border-radius:999px;padding:2px 8px;font-size:.75rem}.rank,.score{font-weight:900}.confirm{border:3px solid var(--red);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:12px;display:flex}.confirm p{width:100%;margin:0 0 4px;font-weight:700}.game{max-width:1280px;margin:0 auto;padding:12px 16px 24px}.game-top{align-items:center;gap:16px;display:flex}.game-title{flex:1}.game-title h1{margin:0}.stage-num{color:var(--tomato);text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:800}.best-pill{border:3px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;font-weight:800}.goal{border:3px solid var(--sun);background:#fff3c9;border-radius:14px;margin:10px 0 14px;padding:12px 16px;font-size:1.15rem}.game-main{grid-template-columns:minmax(0,1.1fr) minmax(340px,1fr);align-items:start;gap:20px;display:grid}.board-wrap{position:sticky;top:12px}.note{color:var(--muted);margin:10px 0 0;font-size:.95rem}.board{border:5px solid var(--ink);border-radius:18px;margin:0 auto;display:grid;position:relative;overflow:hidden;box-shadow:0 8px #2d2a3240}.tile{border:1px dashed #2d2a3226;position:relative}.tile.spot{box-shadow:inset 0 0 0 4px #ffc93ce6}.tile-art{width:100%;height:100%;position:absolute;inset:0}.tile-label{border:2px solid var(--ink);white-space:nowrap;background:#ffffffeb;border-radius:8px;padding:0 6px;font-size:clamp(.6rem,1.3vw,.85rem);font-weight:800;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.robot{z-index:2;pointer-events:none;transition:left .45s ease-in-out,top .45s ease-in-out;position:absolute}.robot-shake,.robot-body{width:100%;height:100%}.robot-body{padding:6%;transition:transform .35s ease-in-out}.robot-body svg{filter:drop-shadow(0 4px 2px #00000040);width:100%;height:100%}.robot-shake.bump{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-8%)}40%,80%{transform:translate(8%)}}.carry-bubble{border:2px solid var(--ink);background:#fff;border-radius:999px;padding:2px;display:flex;position:absolute;top:-8%;right:-8%}.carry-bubble svg{width:clamp(18px,3vw,30px);height:clamp(18px,3vw,30px)}.valve-wheel{transition:transform .6s ease-out}.valve-wheel.on{transform:rotate(180deg)}.grow{transform-box:fill-box;transform-origin:bottom;animation:.6s ease-out grow}@keyframes grow{0%{transform:scale(.4)}}.panel{background:var(--card);border:3px solid var(--line);border-radius:var(--radius);flex-direction:column;min-height:480px;max-height:calc(100vh - 150px);padding:14px 16px;display:flex}.panel h2{justify-content:space-between;align-items:baseline;margin:10px 0 6px;display:flex}.count{color:var(--muted);font-size:.95rem}.checklist{gap:2px;font-weight:700;display:grid}.check{align-items:center;gap:8px;display:flex}.check .box{border:3px solid var(--ink);background:#fff;border-radius:8px;place-items:center;width:24px;height:24px;font-weight:900;display:grid}.check.done{color:var(--green)}.check.done .box{background:var(--green);border-color:var(--green);color:#fff}.carrying{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.carry-item{color:var(--ink);align-items:center;gap:4px;display:inline-flex}.palette{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;display:grid}.block-btn{border:3px solid var(--ink);color:#fff;min-height:66px;box-shadow:0 4px 0 var(--ink);border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:6px;font-size:1rem;font-weight:900;display:flex}.block-btn:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.block-btn .cmd-icon{width:28px;height:28px}.cmd-forward{background:#3a86ff}.cmd-left{background:#9b5de5}.cmd-right{background:#d9480f}.cmd-action{background:#2f9a4a}.cmd-repeat{background:#1f8a84}.program{border:3px dashed var(--line);background:#faf4ea;border-radius:14px;flex-wrap:wrap;flex:auto;align-content:flex-start;gap:8px;min-height:64px;margin:0;padding:10px;list-style:none;display:flex;overflow-y:auto}.program .empty{color:var(--muted);align-self:center}.chip{border:3px solid var(--ink);background:#fff;border-radius:12px;align-items:center;gap:4px;min-height:44px;padding:4px 10px 4px 6px;font-size:.95rem;font-weight:800;display:inline-flex}.chip .cmd-icon{width:22px;height:22px}.chip:disabled{opacity:1;cursor:default}.chip .num{background:var(--ink);color:#fff;border-radius:8px;place-items:center;min-width:24px;height:24px;font-size:.8rem;display:grid}.chip.selected{background:#dbe9ff;outline:3px solid #3a86ff}.chip.active{background:var(--sun);transform:scale(1.1)}.chip.failed{border-color:var(--red);background:#ffd6d6;border-style:dashed}.chip.failed:after{content:"⚠";color:var(--red)}.loop{border:3px solid var(--teal);background:#dff3f1;border-radius:14px;flex-wrap:wrap;align-items:center;gap:6px;padding:6px;display:flex}.loop.open{border-style:dashed;box-shadow:0 0 0 4px #1f8a8440}.loop-body{border-left:4px solid var(--teal);flex-wrap:wrap;align-items:center;gap:6px;padding-left:8px;display:flex}.loop-empty{color:var(--teal);font-size:.9rem;font-weight:700}.small-btn{min-height:40px;padding:4px 12px}.edit-bar{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.status{border-radius:12px;min-height:48px;margin:10px 0;padding:10px 14px;font-weight:800}.status.hint{color:#2b4c8c;background:#eef4ff}.status.info{background:#fff3c9}.status.good{color:#1f6b33;background:#e6f5dd}.status.error{color:#8e1c10;background:#ffe1dc}.controls{flex-wrap:wrap;gap:10px;display:flex}.controls .run,.controls .stop{flex:1}.modal-backdrop{z-index:10;background:#2d2a328c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{border:4px solid var(--ink);text-align:center;background:#fff;border-radius:24px;width:min(520px,100%);max-height:100%;padding:24px;animation:.35s ease-out pop;overflow-y:auto}.stars{color:var(--sun);-webkit-text-stroke:2px var(--ink);letter-spacing:.15em;font-size:2.6rem}.done-list{color:var(--green);margin:0 0 12px;padding:0;font-weight:800;list-style:none}.stat-row{justify-content:center;gap:12px;display:flex}.stat-row div{background:#faf4ea;border-radius:14px;padding:10px 18px;display:grid}.stat-row span{color:var(--muted);font-size:.9rem;font-weight:700}.stat-row b{font-size:2rem}.celebrate{color:var(--tomato);font-size:1.1rem;font-weight:800}.lesson{text-align:left;background:#eef4ff;border-radius:12px;padding:12px}.modal-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.85)}}@media (width<=860px){.game-main{grid-template-columns:1fr}.board-wrap{position:static}.panel{min-height:0;max-height:none}.board{max-width:560px}.customize-grid{grid-template-columns:1fr;justify-items:center}.stages li:nth-child(2n){padding-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.cafe-game{max-width:1440px;margin:auto;padding:18px 28px}.cafe-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.cafe-logo{text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:1.25rem;font-weight:900;display:flex}.cafe-logo:disabled{opacity:1;cursor:default}.cafe-logo small{color:#9b614d;letter-spacing:.12em;font-size:.65rem;display:block}.cafe-phase{background:#eddfcd;border-radius:30px;gap:8px;padding:6px;font-size:.85rem;font-weight:800;display:flex}.cafe-phase span{color:#796e68;padding:8px 14px}.cafe-phase .current{color:#3a6558;background:#fff;border-radius:24px;box-shadow:0 2px 5px #533c2612}.cafe-phase .complete{color:#337854}.cafe-scoreboard{text-align:right;gap:18px;display:flex}.cafe-scoreboard small{color:#7b675b;font-size:.75rem;font-weight:700;display:block}.cafe-scoreboard strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.cafe-intro{justify-content:space-between;align-items:center;gap:20px;margin:22px 0 16px;display:flex}.cafe-kicker,.eyebrow{color:#a94c32;letter-spacing:.13em;text-transform:uppercase;font-size:.68rem;font-weight:900;display:block}.cafe-intro h1{margin:3px 0 5px;font-size:1.7rem}.cafe-intro p{color:#746153;max-width:520px;margin:0;font-size:.88rem}.shift-picker{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.shift-picker button{text-align:left;background:#fffaf3;border:2px solid #e4d5c2;border-radius:12px;grid-template-columns:24px auto;align-items:center;column-gap:7px;padding:8px 12px;font-size:.8rem;font-weight:800;display:grid}.shift-picker button>span{background:#e9ddce;border-radius:50%;grid-row:span 2;place-items:center;width:24px;height:24px;display:grid}.shift-picker small{color:#887366;font-weight:600}.shift-picker .picked{background:#edf7ec;border-color:#3d8265}.shift-picker .picked>span{color:#fff;background:#3d8265}.served-pill{color:#3b6b3e;background:#dfeedd;border:1px solid #c2d8b9;border-radius:24px;padding:9px 18px;font-size:.85rem;font-weight:800}.cafe-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:22px;display:grid}.training .kitchen-counter{display:none}.training .restaurant-floor-wrap{max-width:540px}.forward-preview{z-index:2;pointer-events:none;background:#d9fff2b8;border:3px dashed #1f8a84;border-radius:10px;place-items:center;width:20%;height:33.3333%;display:grid;position:absolute}.forward-preview span{color:#14766f;font-size:clamp(1.4rem,4vw,3rem);font-weight:900}.forward-preview.blocked{background:#ffd9cdb8;border-color:#b64430}.forward-preview.blocked span{color:#b64430}.forward-preview-text{color:#206f66;margin:12px 0 0;font-size:.76rem;font-weight:700}.forward-preview-text.blocked{color:#a33b2b}.practice-choice{cursor:pointer;background:#fff6df;border:1px solid #dfc892;border-radius:10px;align-items:center;gap:10px;padding:10px;font-size:.8rem;font-weight:800;display:flex}.practice-choice input{accent-color:#1f8a84;width:22px;height:22px}.practice-choice small{font-size:.68rem;font-weight:500;display:block}.practice-coach{background:#fff2bb;border:2px solid #c29b29;border-radius:12px;align-items:center;gap:10px;margin-bottom:10px;padding:8px 10px;display:flex}.practice-coach img{object-fit:contain;width:52px;height:48px}.practice-coach>div{flex:1}.practice-coach strong{font-size:.95rem;display:block}.practice-coach span{color:#765c28;margin-top:3px;font-size:.72rem;display:block}.practice-skip{color:#715b2b;background:#fffaf0;border:0;border-radius:8px;min-height:44px;padding:8px;font-size:.72rem;font-weight:800}.recipe-checklist{background:#f0fff7;border:2px solid #4b9582;border-radius:10px;flex-wrap:wrap;align-items:center;gap:5px 12px;margin-bottom:10px;padding:8px 10px;font-size:.76rem;display:flex}.recipe-checklist li{font-weight:700}.recipe-checklist .checked{color:#286736}.recipe-extra{color:#a33b2b;margin-top:5px;font-weight:800;display:block}.customer-card.recipe-selected{outline-offset:2px;outline:3px solid #1f8a84}.ingredient-bin.recipe-needed{background:#eefff8;border-color:#1f8a84;box-shadow:0 4px #1f8a84}.ingredient-bin.recipe-needed.in-dish{background:#d2f0cc}.guide-target{outline-offset:3px;outline:4px solid #ffd34b;animation:1.4s ease-in-out infinite guide-glow}@keyframes guide-glow{50%{outline-color:#e78725;box-shadow:0 0 0 7px #ffd34b66}}.restaurant{background:#f7e9d7;border:3px solid #705042;border-radius:20px;overflow:hidden;box-shadow:0 7px #d8c6ad}.restaurant-awning{background:repeating-linear-gradient(90deg,#ce604d 0 38px,#fff0da 38px 76px);border-bottom:4px solid #ac4838;justify-content:center;align-items:center;gap:10px;height:52px;display:flex;position:relative}.restaurant-awning span{color:#733e31;letter-spacing:.12em;background:#fff8e8;border-radius:7px;padding:5px 16px;font-size:.94rem;font-weight:900;box-shadow:0 2px #683e3340}.restaurant-awning small{color:#805943;background:#fff8e8;border-radius:5px;padding:4px 8px;font-size:.7rem}.dining-room{background:linear-gradient(#f7e3c7 0 110px,#e8d4b9 110px);padding:14px 20px 12px}.customer-row{justify-content:center;gap:12px;min-height:100px;display:flex}.customer-card{text-align:left;background:#fff9ec;border:2px solid #dbc4a5;border-radius:14px;flex:1;align-items:center;min-width:0;max-width:330px;padding:8px;transition:background .15s,transform .15s;display:flex;box-shadow:0 3px #c1a98c}.customer-card:disabled{opacity:1;cursor:default}.customer-card.chosen{background:#fff2c8;border-color:#cc9c2d}.customer-card.waiting:not(:disabled):hover{background:#fff5d5}.customer-card.order-ready{background:#eaf8df;border-color:#2d965b;animation:1.8s ease-in-out infinite ready-pulse;box-shadow:0 3px #4c8a54}.customer-card.served{background:#edf8e8;border-color:#89bc7c}.customer-card.left{opacity:.6}.customer-avatar{flex:0 0 72px;align-self:end;height:90px;position:relative}.customer-avatar svg{width:100%;height:100%}.customer-avatar b{text-align:center;background:#fff1c1;border:2px solid #846c52;border-radius:50%;width:21px;height:21px;font-size:.7rem;position:absolute;bottom:-1px;left:-2px}.order-bubble{flex:1;gap:2px;min-width:0;padding:3px 4px 3px 8px;display:grid}.order-bubble strong{font-size:.82rem;line-height:1.25}.order-bubble>span{color:#7f6856;font-size:.72rem}.order-bubble progress{accent-color:#679b4e;width:100%;height:7px}.order-bubble .order-action{color:#4c7651;font-size:.7rem;font-weight:800}.order-bubble .order-points{color:#387743;font-size:1.05rem;font-weight:900}.restaurant-floor-wrap{max-width:390px;margin:10px auto 0}.floor-caption{color:#836b57;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;font-size:.62rem;font-weight:800;display:flex}.restaurant-floor{aspect-ratio:5/3;border:3px solid #ad8a69;border-radius:10px;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:relative;overflow:hidden;box-shadow:0 4px #bea181}.floor-tile{background:#f5e4cd;border:1px solid #b8926a40;min-width:0;min-height:0;position:relative}.floor-tile.alternate{background:#dfc4a3}.floor-tile.dock{background:#8dbec2;box-shadow:inset 0 0 0 3px #497f89}.floor-tile.serve-tile{background:#f4d786;box-shadow:inset 0 0 0 2px #d7ae49}.floor-tile.target{outline-offset:-3px;outline:2px solid #ce9d25}.floor-tile .tile-art{width:100%;height:100%}.table-marker{background:#fff7d9;border:2px solid #8c6b39;border-radius:50%;place-items:center;width:21px;height:21px;font-size:.68rem;display:grid;position:absolute;top:3px;left:5px}.floor-planter{background:#8f775e;place-items:center;height:100%;font-size:2rem;display:grid}.floor-dock-label{text-align:center;color:azure;z-index:2;background:#487c85;width:100%;font-size:.62rem;font-weight:900;position:absolute;bottom:0}.cafe-robot{z-index:3;pointer-events:none;width:20%;height:33.3333%;padding:5px;transition-property:left,top;transition-timing-function:ease-in-out;position:absolute}.cafe-robot>div{height:100%;transition:transform .3s ease-in-out}.cafe-robot svg{filter:drop-shadow(0 3px 1px #5b453b40);width:100%;height:100%}.robot-meal{white-space:nowrap;text-align:center;background:#fffbea;border:2px solid #907356;border-radius:16px;min-width:30px;height:30px;padding:0 4px;font-size:1.3rem;position:absolute;bottom:2px;right:3px}.robot-tray{align-items:center;gap:2px;min-width:0;height:24px;padding:1px 3px;font-size:.85rem;display:flex;right:auto}.tray-slot{border:1px dashed #bea98a;border-radius:5px;place-items:center;width:17px;height:18px;display:grid}.tray-slot.filled{background:#edf7d9;border-color:#a8bd7b}.floor-table-meal{font-size:clamp(.8rem,2vw,1.25rem);line-height:1;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.food-flight-layer{z-index:80;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}.food-flight{filter:drop-shadow(0 3px 2px #3b35412e);place-items:center;width:40px;height:40px;font-size:32px;line-height:1;display:grid;position:absolute}.kitchen-counter{background:#b57b51;border-top:7px solid #8c5a3b;padding:12px 20px 18px;box-shadow:inset 0 5px #d49f6a}.counter-label{color:#fff6dd;flex-wrap:wrap;justify-content:space-between;gap:5px;margin-bottom:10px;display:flex}.counter-label strong{font-size:.84rem}.counter-label span{font-size:.73rem}.cook-launch{background:#fff3df;border:2px solid #805638;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:9px 12px;display:flex}.cook-launch>div{gap:3px;display:grid}.cook-launch strong{font-size:.86rem}.cook-launch span{color:#746153;font-size:.72rem}.cook-main{color:#454b53;background:#d6d9dc;border-color:#4d5360;border-radius:16px;flex-shrink:0;justify-content:center;min-width:156px;min-height:56px;padding:4px 15px;font-size:1.4rem;font-weight:900;box-shadow:0 4px #4d5360}.cook-main:disabled{opacity:1}.cook-main img{object-fit:contain;filter:grayscale();width:48px;height:48px}.cook-main.can-cook{color:#fff;background:#2f9a4a;border-color:#244e32;box-shadow:0 4px #244e32}.cook-main.can-cook img{filter:none}.cook-main.can-cook:hover{background:#27833f}.delivery-choices{gap:8px;margin-top:16px;display:flex}.delivery-choices .btn{min-height:58px;box-shadow:0 3px 0 var(--ink);background:#f8f1e6;border-width:2px;flex-direction:column;flex:1;justify-content:center;gap:2px;padding:8px 6px;font-size:.8rem;display:flex}.delivery-choices .has-meal{background:#e7f4d9;border-color:#497844;box-shadow:0 3px #497844}.delivery-choices .double-deliver{background:#fff0be;border-color:#8e6928;box-shadow:0 3px #8e6928}.delivery-choices small{font-size:.63rem;line-height:1.3}.double-route-lesson,.bonus-result{color:#665125;background:#fff0be;border-radius:10px;padding:10px;font-size:.78rem;font-weight:800}.ingredient-bins{grid-template-columns:repeat(5,1fr);gap:9px;display:grid}.ingredient-bin{background:#fffbec;border:3px solid #795e48;border-radius:12px;justify-items:center;padding:5px;display:grid;position:relative;box-shadow:0 4px #7f573e}.ingredient-bin:disabled{opacity:.65}.ingredient-bin.in-dish{opacity:1;background:#e5f0d3;border-color:#5e814c}.ingredient-bin>span{font-size:1.9rem;line-height:1.25}.ingredient-bin strong{font-size:.7rem}.ingredient-bin b{color:#427344;position:absolute;top:2px;right:5px}.cooking-line{grid-template-columns:1.1fr 1fr 1fr;gap:10px;margin-top:12px;display:grid}.assembly-plate,.cafe-station{text-align:center;background:#f9e9ce;border:2px solid #8b6346;border-radius:13px;flex-direction:column;align-items:center;gap:4px;min-width:0;min-height:145px;padding:8px;display:flex}.kitchen-label{color:#856d55;letter-spacing:.08em;font-size:.59rem;font-weight:900}.plate-food{background:#fffdfa;border:3px solid #e6d8c4;border-radius:50%;flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;width:90%;min-height:44px;padding:4px;font-size:1.3rem;display:flex;box-shadow:0 3px #d7c8b3}.plate-food>span{font-size:1.8rem}.assembly-plate strong,.cafe-station strong{font-size:.76rem}.undo-ingredient,.discard-dish{color:#856952;background:0 0;border:0;min-height:44px;margin-top:auto;padding:5px;font-size:.8rem;text-decoration:underline}.cooker-food{flex-shrink:0;place-items:center;width:64px;height:36px;font-size:2rem;line-height:1.1;display:grid}.meal-art{place-items:center;width:64px;height:36px;display:grid;position:relative}.meal-lid{object-fit:contain;transform-origin:50% 65%;width:64px;height:64px;position:absolute;top:50%;left:50%;translate:-50% -50%}.is-cooking .meal-icon{opacity:0}.is-cooking .meal-lid{animation:.8s ease-in-out infinite cooking-wobble}.is-ready .meal-lid{opacity:0;animation:.45s ease-out both cooking-uncover}.is-ready .meal-icon{animation:.6s ease-out both meal-ready}.cooking-steam{pointer-events:none;gap:5px;display:flex;position:absolute;top:-7px;left:50%;translate:-50%}.cooking-steam i{border-left:3px solid #795e48;border-radius:50%;width:7px;height:14px;animation:1.5s ease-out infinite cooking-steam}.cooking-steam i:nth-child(2){animation-delay:-.5s}.cooking-steam i:nth-child(3){animation-delay:-1s}.lunchbox-lid{transform-box:fill-box;transform-origin:bottom}.lunchbox.ready .cooker-status{animation:.6s ease-out ready-label}@keyframes cooking-wobble{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)translateY(-1px)}}@keyframes cooking-steam{0%{opacity:0;transform:translateY(4px)scaleX(.8)}25%{opacity:.8}to{opacity:0;transform:translateY(-13px)scaleX(1.3)}}@keyframes cooking-uncover{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(-24px)rotate(-12deg)}}@keyframes meal-ready{0%{opacity:0;transform:translateY(4px)scale(.8)}35%{opacity:1;transform:translateY(-8px)scale(1.15)}65%{transform:translateY(2px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ready-label{0%,to{scale:1}45%{scale:1.12}}.cafe-station{background:#ede9df}.lunchbox{background:#e7efed;border:3px solid #60877b;padding-top:12px;box-shadow:inset 0 5px #a7c7b9}.lunchbox .kitchen-label{color:#3c6556}.lunchbox-art{width:44px;height:36px;display:block}.lunchbox .discard-dish{background:#fff7ed;border:2px solid #b68470;border-radius:8px;width:90%;min-height:44px;font-weight:800;text-decoration:none}.cafe-station.ready{background:#e2f3cb;border-color:#597c42}.cafe-station.cooking{background:#fff0c7}.cafe-station progress{accent-color:#719d4b;width:95%;height:7px}.cafe-station .cooker-status{color:#5c7349;font-size:.71rem;font-weight:800}.robot-workbench{background:#fffdf8;border:2px solid #e4d5c1;border-radius:18px;min-width:0;padding:18px;box-shadow:0 5px #e8dac7}.workbench-title h2{margin:5px 0;font-size:1.2rem}.workbench-title p{color:#887469;margin:0 0 12px;font-size:.77rem}.block-palette{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:12px;display:grid}.block-palette .block-btn{min-height:58px;box-shadow:0 3px 0 var(--ink);border-width:2px;border-radius:10px;padding:5px 2px;font-size:.77rem}.block-palette .cmd-icon{width:22px;height:22px}.block-palette .cmd-repeat{grid-column:span 2}.route-tabs{gap:5px;margin-bottom:12px;display:flex}.route-tabs button{background:#f8f1e6;border:2px solid #dfd2bf;border-radius:8px;flex:1;min-height:34px;font-size:.75rem;font-weight:800}.route-tabs button.picked{background:#edf3e6;border-color:#609264}.cafe-program{background:#f3ede3;border:2px dashed #d7c7ae;border-radius:12px;flex-direction:column;gap:5px;min-height:155px;max-height:212px;margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.empty-route{text-align:center;color:#93816f;margin:auto;padding:15px;font-size:.8rem}.empty-route>span{color:#bea487;font-size:1.8rem;display:block}.empty-route small{margin-top:6px;font-size:.73rem;display:block}.route-block{text-align:left;color:#fff;border:2px solid #29253140;border-radius:8px;align-items:center;gap:9px;width:100%;min-height:34px;padding:5px 9px;font-size:.78rem;font-weight:800;display:flex}.route-block:disabled{opacity:1;cursor:default}.route-block>b{background:#ffffff24;border-radius:5px;flex-shrink:0;place-items:center;width:19px;height:19px;font-size:.67rem;display:grid}.route-block .cmd-icon{flex-shrink:0;width:19px;height:19px}.route-block small{color:#fff;font-size:.64rem;font-weight:600;display:block}.route-block.selected{outline:3px solid #f5c755}.route-block.active{background:#6e6331;outline:3px solid #eeb92b}.route-block.failed{background:#a93b31;outline:3px solid #c84738}.loop-notice{color:#2b786d;justify-content:space-between;align-items:center;gap:5px;margin-bottom:8px;font-size:.74rem;display:flex}.robot-workbench .edit-bar{gap:5px}.robot-workbench .small-btn{min-height:32px;box-shadow:0 2px 0 var(--ink);border-width:2px;border-radius:8px;padding:3px 7px;font-size:.72rem}.cafe-feedback{color:#786555;background:#f4eee5;border-radius:10px;min-height:42px;margin:12px 0 10px;padding:10px 12px;font-size:.77rem}.cafe-feedback.good{color:#456a34;background:#e7f2dd}.cafe-feedback.error{color:var(--ink);background:#fff0d5;border:3px solid #c62828;align-items:flex-start;gap:10px;font-size:.95rem;font-weight:700;display:flex;box-shadow:0 3px #c62828}.cafe-feedback.error strong{color:#a32620;margin-bottom:4px;font-size:1.1rem;display:block}.cafe-feedback.error .warning-mark,.status.error .warning-mark{flex-shrink:0;width:36px;height:36px}.status.error{border:3px solid #c62828;align-items:center;gap:10px;font-weight:800;display:flex}.warning-region{z-index:100;top:max(20px, min(10vh, 96px), env(safe-area-inset-top));pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;padding:0 16px;display:flex;position:fixed;left:0;right:0}.warning-popup{width:min(560px,100%);color:var(--ink);background:#fff6e8;border:4px solid #3b3541;border-radius:22px;align-items:center;gap:16px;padding:20px 24px 24px;animation:3s both warning-pop;display:flex;position:relative;overflow:hidden;box-shadow:0 7px #3b3541,0 0 0 6px #ffc93c,0 14px 32px #3b35412e}.warning-popup>.warning-mark{flex-shrink:0;width:76px;height:76px}.warning-popup>.popup-art{object-fit:contain;flex-shrink:0;width:104px;height:104px}.warning-popup.good{background:#f2f9e8;border-color:#295f43;box-shadow:0 7px #295f43,0 0 0 6px #ffc93c,0 14px 32px #3b35412e}.warning-popup.good .warning-copy strong{color:#295f43}.warning-popup.good .warning-countdown{background:#2f9a4a}.warning-copy strong{color:#a32620;font-size:clamp(1.4rem,3vw,2rem);font-weight:900;line-height:1.1;display:block}.warning-copy p{margin:8px 0 0;font-size:clamp(1rem,2vw,1.2rem);font-weight:800;line-height:1.35}.warning-direction,.warning-direction>span{align-items:center;gap:10px;display:flex}.warning-direction{gap:20px;margin-top:10px;font-size:.8rem;font-weight:800}.warning-direction>b{color:#e8553e;font-size:1.8rem}.warning-robot{display:flex}.warning-check{color:#2f9a4a;font-size:1.4rem}.warning-countdown{transform-origin:0;background:#e8553e;width:100%;height:6px;animation:3s linear both warning-countdown;position:absolute;bottom:0;left:0}@keyframes warning-pop{0%{opacity:0;transform:translateY(-24px)scale(.8)}7%{opacity:1;transform:translateY(4px)scale(1.04)}12%{transform:translateY(0)rotate(-1deg)scale(1)}17%{transform:rotate(1deg)}22%,86%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)scale(.97)}}@keyframes warning-countdown{to{transform:scaleX(0)}}@keyframes warning-fade{0%,86%{opacity:1}to{opacity:0}}@media (width<=520px){.warning-region{top:max(18px, env(safe-area-inset-top))}.warning-popup{border-radius:18px;gap:10px;padding:16px 14px 20px}.warning-popup>.warning-mark{width:52px;height:52px}.warning-popup>.popup-art{width:76px;height:76px}.cook-launch{gap:6px;padding:8px}.cook-main{min-width:124px;padding:4px 9px;font-size:1.2rem}.cook-main img{width:38px;height:38px}.cook-launch span{font-size:.65rem}.warning-direction{gap:12px}.warning-direction>span{gap:5px}.warning-robot svg{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.warning-popup{animation:3s both warning-fade!important}.warning-countdown{animation:none}}.test-controls{grid-template-columns:1fr 1fr;align-items:center;gap:10px;display:grid}.test-controls .clear-route{grid-column:1/-1}.test-controls>.btn{color:#3c5c74;background:#e8f0f6;border-width:2px;border-color:#506a7d;border-radius:10px;flex:1;min-height:52px;font-size:.87rem;box-shadow:0 3px #506a7d}.clear-route{color:#893b2b;background:#ffe4d4;border:3px solid #9b4634;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:52px;padding:6px 10px;font-size:.9rem;font-weight:900;display:flex;box-shadow:0 3px #9b4634}.clear-route img{object-fit:contain;width:34px;height:34px}.clear-route:hover:not(:disabled){background:#ffd2ba}.clear-route:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #9b4634}.clear-route:disabled img{filter:grayscale()}.hint-toggle{color:#866f5c;background:0 0;border:0;min-height:44px;padding:8px 0;font-size:.85rem;text-decoration:underline}.cafe-hint{color:#6e573c;background:#fff1cd;border-radius:8px;margin-bottom:10px;padding:10px;font-size:.76rem}.cafe-hint p{margin:0 0 6px}.cafe-hint small{font-size:.7rem}.open-kitchen{text-align:center;border-top:1px solid #e9dbc7;gap:8px;padding-top:12px;display:grid}.open-kitchen>span{color:#7c6c5d;font-size:.73rem}.open-kitchen .btn{background:#4b8755;border:2px solid #386a42;border-radius:10px;min-height:44px;font-size:.91rem;box-shadow:0 3px #386a42}.open-kitchen .btn:not(:disabled){animation:2.4s ease-in-out infinite kitchen-invitation}.open-kitchen .btn:active:not(:disabled){animation:none}@keyframes kitchen-invitation{0%,to{background:#4b8755;box-shadow:0 3px #386a42,0 0 #71b87500}50%{background:#569d61;box-shadow:0 3px #386a42,0 0 0 5px #71b87540}}.cafe-menu{border-top:1px solid #e9dbc7;margin-top:15px;padding-top:8px}.cafe-menu summary{cursor:pointer;color:#8d7158;min-height:30px;padding:4px 0;font-size:.75rem;font-weight:700}.cafe-menu>div{border-bottom:1px solid #eee4d5;align-items:center;gap:8px;padding:8px 0;display:flex}.cafe-menu>div>span{font-size:1.4rem}.cafe-menu p{flex:1;margin:0;font-size:.76rem}.cafe-menu small{color:#8a7667;font-size:.66rem;display:block}.cafe-menu b{color:#8a7667;font-size:.76rem}.robot-job{align-items:center;gap:10px;padding-top:8px;display:flex}.robot-job>div{gap:3px;display:grid}.robot-job strong{font-size:.8rem}.robot-job span{color:#8d7665;font-size:.74rem}.shift-notes{color:#917f70;margin:14px 0 0;font-size:.72rem;line-height:1.7}.cafe-footer{color:#9d8773;justify-content:space-between;gap:10px;margin-top:20px;font-size:.7rem;display:flex}.shift-progress{bottom:env(safe-area-inset-bottom);z-index:5;background:#70a361;height:5px;transition:width .1s linear;position:fixed;left:0}.shift-progress.urgent{background:#cc6048}.rush-lobby{background:#fff1cf;border-color:#e6c885}.round-results{z-index:20;background:#34291de6;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.round-results>.card{text-align:center;background:#fff9ef;max-width:570px;margin:auto;padding:30px}.round-results h2{margin:8px 0 22px;font-size:1.9rem}.round-results .stat-row b{color:#548345;font-size:2.4rem}.next-shift-note{color:#846d57;font-size:.88rem}@keyframes ready-pulse{50%{box-shadow:0 3px #4c8a54,0 0 0 4px #7eb16840}}@media (width>=1180px) and (height<=850px){.cafe-game{padding-top:12px}.cafe-intro{margin-top:14px}.restaurant-floor-wrap{max-width:320px}.customer-row{min-height:90px}.customer-avatar{height:84px}.cafe-program{max-height:170px}.robot-workbench{padding:14px}}@media (width<=1050px){.cafe-game{padding:14px}.cafe-layout{grid-template-columns:minmax(0,1fr) 310px;gap:14px}.cafe-phase{font-size:.7rem}.cafe-phase span{padding:7px 9px}.cafe-intro{align-items:start}.shift-picker button{padding:7px;font-size:.7rem}.customer-row{gap:6px}.customer-card{flex-direction:column;padding:5px}.customer-avatar{flex-basis:auto;align-self:center;width:48px;height:54px}.order-bubble{text-align:center;width:100%;padding:5px 0}.dining-room,.kitchen-counter{padding-left:12px;padding-right:12px}.cafe-intro p{max-width:390px}.shift-picker{flex-wrap:wrap;justify-content:end}.cooking-line{gap:6px}.ingredient-bins{gap:5px}.ingredient-bin>span{font-size:1.5rem}.plate-food{font-size:1rem}}@media (width<=760px){.cafe-header{flex-wrap:wrap;gap:12px}.cafe-logo{font-size:1.07rem}.cafe-phase{order:3;justify-content:center;width:100%}.cafe-scoreboard strong{font-size:1rem}.cafe-intro{flex-direction:column;gap:12px;margin-top:15px}.cafe-intro h1{font-size:1.45rem}.shift-picker{flex-wrap:nowrap;width:100%}.shift-picker button{flex:1;grid-template-columns:20px auto;padding:6px;font-size:.66rem}.shift-picker button>span{width:20px;height:20px}.cafe-layout{grid-template-columns:1fr}.training .restaurant{flex-direction:column;display:flex}.training .cafe-program{max-height:165px}.block-palette{grid-template-columns:repeat(5,1fr)}.block-palette .cmd-repeat{grid-column:auto}.block-palette .block-btn{font-size:.67rem}.restaurant-awning small{display:none}.customer-row{min-height:80px}.customer-card{flex-direction:row}.customer-avatar{flex-basis:42px;width:42px;height:60px}.order-bubble{text-align:left;padding-left:4px}.customer-row:has(.customer-card:nth-child(3)) .customer-card{flex-direction:column}.customer-row:has(.customer-card:nth-child(3)) .customer-avatar{flex-basis:auto}.restaurant-floor-wrap{max-width:285px}.service .cafe-program{min-height:90px;max-height:135px}.served-pill{padding:6px 12px}.cafe-footer{flex-direction:column;gap:3px}.counter-label span{display:none}}@media (prefers-reduced-motion:reduce){.customer-card.order-ready{animation:none}.cafe-robot,.cafe-robot>div,.shift-progress{transition:none}}@media (width>=761px) and (height<=900px){.restaurant-floor-wrap{max-width:290px}.customer-row{min-height:82px}.customer-avatar{height:60px}.cafe-intro{margin-top:12px}.cafe-game{padding-top:12px}}@media (width<=760px){.cafe-game.in-service .cafe-phase{display:none}.service-intro{gap:7px;margin:12px 0;padding-right:0;position:relative}.service-intro h1{font-size:1.25rem}.service-intro p{font-size:.76rem}.service-intro .served-pill{padding:4px 8px;font-size:.65rem;position:absolute;top:18px;right:0}.service .restaurant-floor-wrap{max-width:205px}.service .floor-caption{font-size:.53rem}.service .customer-row{min-height:78px}.service .customer-avatar{height:52px}.service .restaurant-awning{height:42px}.service .cafe-station,.service .assembly-plate{min-height:144px;padding:6px 4px}.service .plate-food{min-height:35px;font-size:.9rem}.service .assembly-plate strong{font-size:.65rem}.service .cooker-food{font-size:1.65rem}.service .cafe-station strong{font-size:.68rem}.service .cook-button{min-height:40px;padding:4px}.service .robot-workbench{padding:12px}}@media (width>=761px) and (height<=850px){.restaurant-floor-wrap{max-width:240px}.dining-room{padding-top:8px;padding-bottom:8px}.kitchen-counter{padding-top:10px;padding-bottom:12px}.cooking-line>div{min-height:130px}.ingredient-bin>span{font-size:1.7rem}.cafe-intro{margin-top:6px}}@media (width>=761px) and (height<=900px){.training .restaurant-floor-wrap{max-width:420px}.training .robot-workbench{padding:14px}.training .cafe-program{min-height:100px;max-height:120px}.training .workbench-title .cafe-kicker{display:none}.training .workbench-title p{margin-bottom:8px}.training .block-palette{grid-template-columns:repeat(5,1fr);gap:5px}.training .block-palette .cmd-repeat{grid-column:auto}.training .block-palette .block-btn{min-height:66px;padding:6px 3px;font-size:.65rem}.training .test-controls{grid-template-columns:1fr .8fr 1.15fr;gap:6px}.training .test-controls .clear-route{grid-column:auto;gap:2px;padding:5px;font-size:.75rem}.training .test-controls .clear-route img{width:26px;height:26px}.training .test-controls>.btn{padding:6px;font-size:.75rem}.training .practice-choice{gap:6px;padding:6px}.training .open-kitchen{gap:6px;margin-top:10px;padding-top:10px}}@media (width<=760px){.shift-picker{grid-template-columns:repeat(2,1fr);display:grid}.shift-picker button{font-size:.75rem}.shift-picker button:last-child{grid-column:1/-1}.training .restaurant-floor-wrap{max-width:380px}.training .restaurant-awning{height:36px}.training .customer-row{display:none}.training .floor-caption{font-size:.6rem}.practice-coach{gap:6px;padding:6px}.practice-coach img{width:38px;height:48px}.practice-coach strong{font-size:.78rem}.practice-coach span{font-size:.65rem}.practice-coach .btn{padding:8px;font-size:.73rem}.recipe-checklist{font-size:.7rem}.practicing .restaurant-awning,.practicing .robot-workbench,.practicing .service-intro p{display:none}.practicing .service .restaurant-floor-wrap{max-width:155px}}@media (prefers-reduced-motion:reduce){.guide-target{animation:none}}@media (width>=950px){.service .dining-room{grid-template-columns:minmax(0,1fr) 230px;align-items:center;gap:12px;display:grid}.service .customer-row{min-height:0}.service .customer-card{flex-direction:row}.service .restaurant-floor-wrap{width:100%;max-width:230px;margin:0}.service .delivery-choices{grid-column:1/-1;margin-top:0}}@media (width>=950px) and (height<=900px){.in-service .cafe-intro{margin:6px 0 8px}.in-service .cafe-intro h1{font-size:1.4rem}.in-service .cafe-intro p{max-width:none;font-size:.8rem}.in-service .restaurant-awning{height:36px}.service .dining-room{grid-template-columns:minmax(0,1fr) 180px;gap:8px;padding:8px 12px}.service .customer-avatar{height:54px}.service .customer-card{min-height:90px;padding:8px}.service .kitchen-counter{padding:8px 12px 12px}.service .cook-launch{margin-bottom:8px;padding:4px 10px}.service .cook-main{min-height:48px;padding:2px 10px;font-size:1.25rem}.service .cook-main img{width:34px;height:34px}.service .cooking-line{margin-top:8px}.service .lunchbox,.service .assembly-plate{min-height:128px}.service .lunchbox{gap:3px;padding:6px}.service .lunchbox .cooker-food{font-size:1.6rem}.service .lunchbox .discard-dish{min-height:28px;padding:3px}}.shop-page .brand-button{visibility:hidden}.shop-front{border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:#fff3dc;border-radius:22px;overflow:hidden}.shop-awning{background:repeating-linear-gradient(90deg, var(--tomato) 0 48px, #fffaf0 48px 96px);height:56px;position:relative}.shop-awning:after{content:"";background:radial-gradient(circle at 24px 0, var(--tomato) 24px, transparent 24.5px) 0 0 / 96px 24px repeat-x, radial-gradient(circle at 72px 0, #fffaf0 24px, transparent 24.5px) 0 0 / 96px 24px repeat-x;height:24px;filter:drop-shadow(0 3px 0 var(--ink));position:absolute;top:100%;left:0;right:0}.shop-body{grid-template-columns:1fr 280px;align-items:end;gap:16px;padding:46px 40px 0;display:grid}.shop-front:after{content:"";border-top:3px solid var(--ink);background:repeating-conic-gradient(var(--tomato) 0 25%, #fffaf0 0 50%) 0 0 / 28px 28px;height:28px;display:block}.shop-copy{padding-bottom:30px}.shop-sign{color:var(--sun);text-shadow:-3px -3px 0 var(--ink), 0 -3px 0 var(--ink), 3px -3px 0 var(--ink), 3px 0 0 var(--ink), 3px 3px 0 var(--ink), 0 3px 0 var(--ink), -3px 3px 0 var(--ink), -3px 0 0 var(--ink), 0 8px 0 var(--ink);transform-origin:0 100%;margin:0 0 6px;font-size:clamp(2.7rem,6vw,4.2rem);font-weight:900;line-height:1;transform:rotate(-2deg)}.shop-sign small{border:3px solid var(--ink);background:var(--teal);color:#fff;letter-spacing:.12em;text-transform:uppercase;width:fit-content;text-shadow:none;border-radius:999px;margin-top:14px;padding:4px 14px;font-size:.9rem;display:block;transform:rotate(2deg)}.play-form{max-width:520px}.shop-copy .nick-form label{color:#654f40;margin:18px 0 8px}.play-row{gap:10px;display:flex}.shop-copy .nick-form input{background:#fffcf6;width:100%;min-width:0;min-height:60px;font-weight:700}.shop-copy .nick-form input::placeholder{color:#a8968a;font-weight:600}.play-row .btn.big{flex-shrink:0;min-width:132px}.shop-copy .nick-form:not(.play-form){gap:10px;max-width:420px;display:grid}.shop-copy .nick-form:not(.play-form) label{margin-bottom:-2px}.play-note{color:#654f40;margin:18px 0 0;font-weight:700}.play-switch{flex-wrap:wrap;gap:8px;margin:16px 0 0;display:flex}.play-switch button{color:#654f40;background:#fffaf0;border:2px solid #d7bfa3;border-radius:999px;min-height:44px;padding:6px 14px;font-weight:800}@media (hover:hover){.play-switch button:hover{border-color:var(--ink)}}.shop-chef{justify-self:center;margin-bottom:-4px;position:relative}.shop-chef>svg{animation:3.2s ease-in-out infinite chef-bob;display:block}.shop-chef>img{width:130px;position:absolute;bottom:0;right:-34px}@keyframes chef-bob{50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.shop-chef>svg{animation:none}}.shop-scores{border-radius:var(--radius);background:#fffaf0;border:2px solid #d7bfa3;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:22px 0 6px;padding:12px 20px;display:flex}.shop-scores h2{margin:0;font-size:1rem}.shop-scores p{color:#766252;margin:0}.shop-scores ol{flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;display:flex}.shop-scores li{align-items:center;gap:6px;font-size:1.15rem;font-weight:900;display:flex}.shop-scores li>b{border:2px solid var(--ink);background:var(--sun);border-radius:50%;place-items:center;width:28px;height:28px;font-size:.8rem;display:grid}.shop-scores li:nth-child(2)>b{background:#dfe3e8}.shop-scores li:nth-child(3)>b{background:#eab98a}.shop-scores small{color:#766252;font-size:.75rem}.top-front .shop-body{grid-template-columns:1fr 200px}.top-front .shop-sign{font-size:clamp(2.4rem,5vw,3.6rem)}.top-modes{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.top-modes button{color:#654f40;background:#fffaf0;border:2px solid #d7bfa3;border-radius:999px;min-height:44px;padding:6px 16px;font-weight:800}.top-modes button[aria-pressed=true]{border-color:var(--ink);background:var(--teal);color:#fff;box-shadow:0 3px 0 var(--ink)}@media (hover:hover){.top-modes button:hover{border-color:var(--ink)}}.top-front .play-note{margin:12px 0 16px}.top-scores{margin:22px 0 6px}.top-empty{border-radius:var(--radius);color:#766252;text-align:center;background:#fffaf0;border:2px solid #d7bfa3;margin:0;padding:18px 20px;font-weight:700}.top-podium{grid-template-columns:repeat(3,1fr);align-items:end;gap:12px;margin:0 0 16px;padding:0;list-style:none;display:grid}.top-podium li{border:3px solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:0 4px 0 var(--ink);flex-direction:column;align-items:center;gap:2px;padding:16px 8px 18px;display:flex}.top-podium li:first-child{background:#fff3c9;grid-column:2;padding-top:30px}.top-podium li:nth-child(2){grid-area:1/1}.top-podium li:nth-child(3){grid-area:1/3;padding-top:10px}.top-podium strong{font-size:clamp(1.6rem,5vw,2.6rem);font-weight:900;line-height:1.1}.top-scores b{border:2px solid var(--ink);background:#fffaf0;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:.85rem;font-weight:900;display:grid}.top-podium b{background:var(--sun);width:44px;height:44px;margin-bottom:4px;font-size:1.1rem}.top-podium li:nth-child(2) b{background:#dfe3e8}.top-podium li:nth-child(3) b{background:#eab98a}.top-scores small{color:#766252;font-size:.8rem;font-weight:800}.top-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.top-list li{background:#fffaf0;border:2px solid #d7bfa3;border-radius:14px;align-items:center;gap:8px;padding:8px 12px;font-size:1.15rem;font-weight:900;display:flex}.top-scores .me{border-color:var(--teal);background:#e3f3f1}.top-podium .me{border-color:var(--ink);outline:4px solid var(--teal)}.top-podium .tag,.top-list .tag{background:var(--teal)}.top-list .tag{margin-left:auto}.top-rules{color:#766252;margin:10px 4px;font-size:.9rem}.code-input{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;max-width:420px;display:grid;position:relative}.code-input>input{opacity:0;cursor:text;width:100%;height:100%;position:absolute;inset:0}.code-input>span{border:3px solid var(--ink);background:#fffcf6;border-radius:12px;place-items:center;height:60px;font-size:1.8rem;font-weight:900;display:grid}.code-input>input:focus~.next{border-color:var(--tomato);outline-offset:2px;outline:4px solid #3a86ff}.code-input>input[aria-invalid=true]~span{border-color:var(--red)}.code-input>input:focus~.next:empty:after{content:"";background:var(--ink);width:3px;height:1.6rem;animation:1s step-end infinite code-caret}@keyframes code-caret{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.code-input>input:focus~.next:empty:after{animation:none}}.outreach-entry>p{color:#766252;margin:8px 0}.outreach-entry .nick-form{gap:12px;margin-bottom:14px;display:grid}.outreach-entry .nick-form label{margin:8px 0 -5px;font-size:.85rem}.outreach-entry .nick-form input{background:#fffcf6;border:2px solid #947e68;width:100%;min-width:0;font-size:1rem}.outreach-home-footer{color:#766252;justify-content:space-between;align-items:center;gap:12px;padding:8px 4px;font-size:.8rem;display:flex}.outreach-lobby{background:#edf2de}.outreach-host-note{background:#fff3d9;border-radius:12px;margin:20px 0;padding:18px}.outreach-guide{background:#fffbf3;border:2px solid #dbc4a7;border-radius:16px;align-self:start;padding:22px}.outreach-guide h2{margin:6px 0 20px;font-size:1.45rem}.outreach-steps{gap:15px;margin:0;padding:0;list-style:none;display:grid}.outreach-steps li{color:#776451;gap:10px;font-size:.83rem;display:flex}.outreach-steps li>b{color:#4b7042;background:#ecf1dc;border-radius:9px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.outreach-steps strong{color:#443b34;margin-bottom:3px;font-size:.93rem;display:block}.outreach-tip{color:#72583c;background:#fff0c8;border-radius:12px;margin:20px 0 16px;padding:14px;font-size:.82rem}.outreach-tip p{margin:6px 0 0}.outreach-shortcuts{color:#766252;font-size:.8rem}kbd{font:inherit;color:#695442;background:#fffaf1;border:1px solid #bba991;border-bottom-width:2px;border-radius:4px;padding:1px 5px;font-size:.72rem;font-weight:800}.outreach-shortcuts p{margin:5px 0;line-height:2}.outreach-shortcuts small{font-size:.72rem}.outreach-program{color:#766252;border-top:1px solid #e4d5c0;margin:16px 0;padding-top:10px;font-size:.8rem}.outreach-program summary{cursor:pointer;align-content:center;min-height:44px;font-weight:700;display:list-item}.outreach-program ol{gap:4px;max-height:160px;padding:0;list-style:none;display:grid;overflow:auto}.outreach-program li{border-radius:5px;align-items:center;gap:8px;padding:5px;display:flex}.outreach-program li.active{color:#3b3541;background:#ffde80}.outreach-program svg{width:18px;height:18px}.outreach-guide>.small{font-size:.74rem}.outreach-rank{background:#fff0c8;border-radius:12px;padding:12px;font-weight:800}.outreach-rank small{margin-top:4px;font-size:.8rem;font-weight:500;display:block}.outreach-game .ingredient-bin{position:relative}.outreach-game .ingredient-bin>kbd{font-size:.6rem;position:absolute;top:4px;left:5px}.outreach-game .practice-coach .btn{white-space:normal}.outreach-game .recipe-checklist{min-height:55px}@media (width>=950px) and (height<=800px){.outreach-game .outreach-guide{padding:16px}.outreach-game .outreach-guide h2{margin-bottom:14px}.outreach-game .outreach-steps{gap:10px}.outreach-game .outreach-tip{margin:14px 0}.outreach-game .outreach-program{margin:8px 0}}@media (width<=760px){.shop-awning{height:36px}.shop-body{grid-template-columns:1fr;gap:0;padding:36px 18px 0}.shop-copy{padding-bottom:8px}.shop-sign{font-size:clamp(2.2rem,10vw,3rem)}.shop-sign small{font-size:.7rem}.play-row{flex-direction:column}.shop-chef>svg{width:120px;height:120px}.shop-chef>img{width:90px;right:-70px}.shop-scores{padding:12px 16px}.top-front .shop-body{grid-template-columns:1fr}.top-front .shop-chef{display:none}.top-podium{gap:8px}.top-podium li{padding-inline:4px}.code-input{gap:6px}.code-input>span{height:54px;font-size:1.5rem}.outreach-home-footer{flex-wrap:wrap}.outreach-game .outreach-guide{padding:16px}.outreach-game.practicing .outreach-guide,.outreach-game .outreach-shortcuts,.outreach-game .ingredient-bin>kbd{display:none}.outreach-game .service .dining-room{grid-template-columns:minmax(0,1fr) 100px;align-items:center;gap:8px;padding:8px;display:grid}.outreach-game .service .restaurant-floor-wrap{max-width:100px;margin:0}.outreach-game .floor-caption{display:none}.outreach-game .service .customer-card{padding:8px}.outreach-game .service .customer-avatar{flex-basis:52px;height:68px}.outreach-game .service .order-bubble{padding:0}.outreach-game .restaurant-awning{display:none}.outreach-game .practice-coach{flex-wrap:wrap}.outreach-game .practice-coach>div{flex:1}.outreach-game .practice-coach .btn{width:100%;min-height:44px}.outreach-game .recipe-checklist{font-size:.68rem}.outreach-game .cafe-header{gap:8px}.outreach-game .cafe-logo{font-size:.95rem}.outreach-game .cafe-logo>svg{width:32px;height:32px}.outreach-game .cafe-scoreboard{gap:12px}.outreach-game .cafe-scoreboard strong{font-size:.9rem}.outreach-game .cafe-scoreboard small{font-size:.6rem}.outreach-game .cafe-intro .served-pill{position:static}.outreach-game .service-intro{gap:3px;margin:8px 0}}.leave-challenge{color:#765d48;background:0 0;border:0;min-height:32px;font-size:.75rem;text-decoration:underline}.outreach-game .floor-planter{font-size:clamp(12px,2vw,24px)}.outreach-game .table-marker{border-width:1px;width:45%;height:45%;font-size:.5rem;top:1px;left:1px}.outreach-game .floor-dock-label{font-size:.4rem}.outreach-game .cafe-robot{padding:2px}@media (width>=950px) and (height<=800px){.outreach-game .service .dining-room{grid-template-columns:minmax(0,1fr) 140px;padding:6px 12px}.outreach-game .floor-caption{display:none}.outreach-game .restaurant-awning{height:28px}.outreach-game .cafe-intro p{margin:3px 0}.outreach-game.practicing .cafe-intro p{display:none}.outreach-game .practice-coach{margin-bottom:6px;padding:4px 8px}.outreach-game .practice-coach img{width:36px;height:36px}.outreach-game .recipe-checklist{min-height:40px;margin-bottom:6px;padding:5px 8px}.outreach-game .service .cook-launch{margin-bottom:6px}.outreach-game .service .lunchbox,.outreach-game .service .assembly-plate{min-height:118px}.outreach-game .cafe-footer{margin-top:8px}}.outreach-game .counter-label{display:none}@media (width<=760px){.page .brand{flex-wrap:nowrap;gap:6px}.page .brand-button{gap:6px;padding:0;font-size:1.05rem}.page .brand-button>svg{width:32px;height:32px}.page .brand-button small{font-size:.57rem}.page .brand nav{flex-wrap:wrap;justify-content:end;gap:4px}.page .brand nav .btn{border-width:2px;border-radius:10px;min-height:38px;padding:6px 8px;font-size:.7rem}.outreach-game .outreach-guide{display:none}}.room-session{max-width:1100px}.room-session-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.room-brand{align-items:center;gap:8px;font-size:1.25rem;font-weight:900;display:flex}.room-brand small{letter-spacing:.1em;color:#ac533a;font-size:.65rem;display:block}.room-preview-note{color:#50634b;background:#e8f0e5;border:1px solid #c5d2bd;border-radius:10px;margin:18px 0;padding:10px 14px;font-size:.8rem}.room-heading{margin:24px 0 18px}.room-heading h1{color:#9c472e;margin:12px 0 8px;font-size:clamp(1.6rem,4vw,2rem)}.room-heading p{color:#776252;margin:0}.room-ready{color:#3f6937;background:#ecf3e6;border:1px solid #aec5a4;border-radius:20px;padding:5px 12px;font-size:.78rem;font-weight:800;display:inline-block}.room-mode-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.room-mode-card{text-align:left;background:#fffaf0;border:2px solid #d7c5af;border-radius:16px;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;display:flex;box-shadow:0 4px #e6d7c3}.room-mode-card.picked{background:#eef8ee;border-color:#428575;box-shadow:0 4px #428575}.room-mode-icon{color:#916124;background:#ffe5a1;border-radius:12px;place-items:center;width:40px;height:40px;font-size:1.8rem;display:grid}.room-mode-card>strong{font-size:1.12rem}.room-mode-card>span:not(.room-mode-icon){color:#77604b;font-size:.8rem}.room-mode-card>small{color:#766252;font-size:.73rem}.room-mode-card .room-mode-selected{margin-top:5px;font-weight:900}.room-mode-card.picked .room-mode-selected{color:#286558}.room-briefing{border-color:#d9c5aa;grid-template-columns:1fr 280px;gap:28px;padding:24px;display:grid}.room-briefing h2{margin:7px 0 12px;font-size:1.5rem}.room-briefing p{color:#735c48;font-size:.9rem}.room-briefing strong{color:#3b6b40;font-size:.85rem}.room-briefing .room-strategy{background:#fff0cb;border-radius:10px;padding:12px}.room-launch{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.room-launch img{object-fit:contain;width:90px;height:90px}.room-launch .btn{background:#4b8755;border-color:#345e3b;width:100%;font-size:1rem;box-shadow:0 4px #345e3b}.room-launch small{color:#776252;font-size:.73rem}.room-fairness{color:#806b58;text-align:center;font-size:.78rem}.room-countdown,.room-results{text-align:center;background:#fffaf0;border-color:#d7c2a6;max-width:700px;margin:30px auto;padding:32px}.room-countdown h1,.room-results h1{margin:14px 0 20px}.room-countdown>strong{color:#45804f;font-size:6rem;display:block}.room-countdown p{color:#745f4e}.room-results .stat-row{justify-content:center}.room-results .stat-row b{color:#47814c;font-size:2.5rem}.room-bonus-result{color:#795723;background:#fff0c8;border-radius:12px;padding:12px;font-weight:800}.room-result-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.room-history{background:#fffcf7}.room-history ol{margin-bottom:0;padding:0;list-style:none}.room-history li{border-top:1px solid #e8dac6;justify-content:space-between;gap:14px;padding:12px 0;font-size:.85rem;display:flex}.room-history li strong{white-space:nowrap;color:#437644}.room-game .cafe-phase,.room-game .outreach-guide .outreach-steps{display:none}.room-game .outreach-tip{margin-top:14px}.room-game .delivery-choices{margin-top:8px}.room-game .delivery-choices .btn{min-height:46px;padding:5px 8px}.room-game .delivery-choices .btn strong{font-size:.9rem}.room-game .delivery-choices .btn small{font-size:.65rem}.practice-ready-note{text-align:right;max-width:140px}.room-lobby-card{background:#eaf2e5;border-color:#b7ccaa}@media (width<=760px){.room-mode-grid{gap:8px}.room-mode-card{text-align:center;align-items:center;gap:7px;padding:10px 8px}.room-mode-card>strong{font-size:.9rem}.room-mode-card>span:not(.room-mode-icon):not(.room-mode-selected){display:none}.room-mode-card>small,.room-mode-card .room-mode-selected{font-size:.64rem}.room-briefing{grid-template-columns:1fr;gap:12px;padding:18px}.room-launch img{display:none}.room-results{padding:22px 14px}.room-session-header .btn{min-height:40px;padding:8px;font-size:.76rem}.room-brand{font-size:1.05rem}.room-game .cafe-intro .served-pill{display:none}.room-game .service .dining-room{grid-template-columns:1fr}.room-game .service .restaurant-floor-wrap{display:none}.room-game .service .customer-row{gap:6px}.room-game .delivery-choices{grid-column:1/-1;gap:5px;margin:0}.room-game .delivery-choices .btn{min-width:0}.room-game .delivery-choices .btn strong{font-size:.73rem}.room-game .delivery-choices .btn small{font-size:.6rem}.room-game .recipe-checklist{min-height:42px}.room-game .service-intro p{font-size:.72rem}.practice-ready-note{max-width:80px;font-size:.62rem}}.room-table-tag{color:#745529;background:#fff0bf;border:1px solid #a58c59;border-radius:5px;place-items:center;min-width:16px;height:16px;margin-right:4px;font-size:.65rem;display:inline-grid}@media (width>=950px) and (height<=720px){.room-game .restaurant-awning,.room-game .service-intro .cafe-kicker{display:none}.room-game .service .assembly-plate{gap:2px;padding:4px}.room-game .service .assembly-plate,.room-game .service .lunchbox{min-height:106px}.room-game .plate-food{min-height:30px;padding:2px}.room-game .plate-food>span{font-size:1.3rem}.room-game .lunchbox-art{height:30px}}.ingredient-art,.stack-art,.dish-art,.grill-art,.customer-art{display:block;overflow:visible}.stack-art .stack-layer,.customer-art *,.grill-art *{transform-box:fill-box}.stack-art .stack-layer{transform-origin:50% 100%}.plate-food .stack-layer:last-child{animation:.34s cubic-bezier(.3,.7,.4,1) both stack-drop}.stack-smoke{animation:2.4s ease-in-out infinite art-drift}@keyframes stack-drop{0%{opacity:0;transform:translateY(-22px)}55%{opacity:1;transform:translateY(0)scale(1.06,.8)}80%{transform:scale(.98,1.06)}to{transform:none}}@keyframes art-drift{0%,to{opacity:.9;transform:translateY(0)}50%{opacity:.5;transform:translateY(-3px)}}.grill-sizzle>*{transform-origin:50% 100%;animation:1.2s ease-out infinite grill-pop}.grill-sizzle>:nth-child(2){animation-delay:.4s}.grill-sizzle>:nth-child(3){animation-delay:.8s}.grill-sizzle>:nth-child(4){animation-delay:.2s}.grill-sizzle>:nth-child(5){animation-delay:.6s}.grill-smoke{transform-origin:50% 100%;animation:2.6s ease-in-out infinite grill-smoke}@keyframes grill-pop{0%{opacity:0;transform:translateY(4px)scale(.6)}35%{opacity:1}to{opacity:0;transform:translateY(-6px)scale(1)}}@keyframes grill-smoke{0%,to{opacity:.85;transform:translateY(0)scale(.95)}50%{opacity:.6;transform:translateY(-4px)scale(1.05)}}.customer-art .cust-body{transform-origin:50% 100%}.customer-art .cust-head{transform-origin:50% 85%}.mood-impatient .cust-body{animation:1.6s ease-in-out infinite cust-bob}.mood-impatient .cust-sweat{animation:2.2s ease-in infinite cust-sweat}.mood-love .cust-body{animation:.5s ease-out 3 cust-hop}.mood-love .cust-hearts path{transform-origin:50% 100%;animation:2.4s ease-out infinite cust-float}.mood-love .cust-hearts path:nth-child(2){animation-delay:.6s}.mood-love .cust-hearts path:nth-child(3){animation-delay:1.2s}.mood-love .cust-burp{transform-origin:0%;opacity:0;animation:.4s cubic-bezier(.3,1.6,.5,1) 1.8s forwards cust-pop}.mood-confused .cust-head{animation:1.8s ease-in-out forwards cust-tilt}.mood-confused .cust-question text{animation:1.4s ease-in-out infinite alternate cust-bounce}.mood-confused .cust-question text:nth-child(2){animation-delay:.5s}.mood-gross .cust-body{animation:.5s linear 3 cust-shudder}.mood-gross .cust-stink path{animation:1.8s ease-in-out infinite art-drift}.mood-gross .cust-stink path:nth-child(2){animation-delay:.6s}.mood-gross .cust-stink path:nth-child(3){animation-delay:1.2s}.mood-angry .cust-body{animation:.4s ease-in-out 5 cust-stomp}.mood-angry .cust-steam>g{transform-origin:50% 100%;animation:1.3s ease-out infinite cust-steam}.mood-angry .cust-steam>g:nth-child(2){animation-delay:.3s}.mood-left .cust-head{transform:rotate(-9deg)}.mood-left .cust-body{animation:1.4s ease-in forwards cust-leave}.mood-left .cust-hmph{transform-origin:0 100%;animation:.4s cubic-bezier(.3,1.6,.5,1) .3s both cust-pop}@keyframes cust-bob{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}@keyframes cust-sweat{0%{opacity:0;transform:translateY(-2px)}25%{opacity:1}to{opacity:0;transform:translateY(8px)}}@keyframes cust-hop{0%,to{transform:translateY(0)scale(1)}15%{transform:translateY(0)scale(1.05,.94)}50%{transform:translateY(-9px)scale(.97,1.04)}}@keyframes cust-float{0%{opacity:0;transform:translateY(6px)scale(.6)}30%{opacity:1}to{opacity:0;transform:translateY(-8px)scale(1)}}@keyframes cust-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cust-tilt{0%{transform:rotate(0)}25%{transform:rotate(-12deg)}55%{transform:rotate(10deg)}to{transform:rotate(-8deg)}}@keyframes cust-bounce{0%{transform:translateY(0)rotate(-8deg)}to{transform:translateY(-4px)rotate(8deg)}}@keyframes cust-shudder{0%,to{transform:translate(0)}20%{transform:translate(-2px)rotate(-2deg)}40%{transform:translate(2px)rotate(2deg)}60%{transform:translate(-1.5px)rotate(-1deg)}80%{transform:translate(1.5px)rotate(1deg)}}@keyframes cust-stomp{0%,to{transform:translate(0)}25%{transform:translate(-2px,2px)rotate(-2deg)}75%{transform:translate(2px,2px)rotate(2deg)}}@keyframes cust-steam{0%{opacity:.2;transform:translateY(4px)scale(.5)}40%{opacity:1}to{opacity:.2;transform:translateY(-8px)scale(1.15)}}@keyframes cust-leave{to{opacity:.6;transform:translate(8px)}}@media (prefers-reduced-motion:reduce){.stack-art *,.grill-art *,.customer-art *{animation:none!important}.mood-love .cust-burp{opacity:1}.mood-left .cust-body{opacity:.6}}
