:root {
  --night: #092f3a;
  --night-deep: #041d26;
  --ink: #14282d;
  --paper: #fff7e5;
  --cream: #fffdf5;
  --gold: #e7ad36;
  --gold-deep: #a36316;
  --mint: #3ba98e;
  --mint-deep: #1f7666;
  --red: #c7453f;
  --red-deep: #8d2f33;
  --blue: #2e718e;
  --line: rgba(255, 248, 231, .24);
  --shadow: rgba(1, 19, 24, .54);
}

* { box-sizing: border-box; letter-spacing: 0; -webkit-tap-highlight-color: transparent; }
html, body { width: 100%; height: 100%; margin: 0; overflow: hidden; background: var(--night-deep); color: var(--cream); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif; overscroll-behavior: none; touch-action: manipulation; }
button { min-width: 44px; min-height: 44px; margin: 0; border: 0; border-radius: 7px; font: inherit; color: inherit; cursor: pointer; touch-action: manipulation; }
button:focus-visible { outline: 3px solid var(--cream); outline-offset: 2px; }
button:disabled { cursor: default; filter: saturate(.5); opacity: .62; }
[hidden] { display: none !important; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

#stage { position: relative; isolation: isolate; width: 100%; height: 100vh; height: 100dvh; min-height: 320px; overflow: hidden; }
.market-world, .lantern-wash { position: absolute; inset: 0; pointer-events: none; }
.market-world { z-index: -4; background: #0b3b46 url("assets/night-market.webp") center / cover no-repeat; }
.market-world::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, rgba(3, 27, 34, .2), transparent 35%, rgba(3, 24, 30, .68) 100%); }
.lantern-wash { z-index: -3; opacity: .8; background: linear-gradient(90deg, rgba(198, 71, 63, .16), transparent 22%, transparent 74%, rgba(231, 173, 54, .14)); }

.game-chrome { position: absolute; z-index: 30; top: calc(6px + env(safe-area-inset-top, 0px)); left: 8px; right: 72px; height: 58px; display: grid; grid-template-columns: 68px minmax(0, 1fr) 52px; gap: 6px; pointer-events: none; }
.game-chrome.home { display: none; }
.brand-lockup { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: 4px 5px; border-left: 4px solid var(--gold); color: var(--cream); text-shadow: 0 2px 5px var(--shadow); }
.brand-lockup strong { font-size: 17px; line-height: 1; font-weight: 950; }
.brand-lockup span { margin-top: 2px; color: var(--gold); font-size: 10px; line-height: 1; font-weight: 900; }
.hud { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
.hud-item { min-width: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 5px 3px; overflow: hidden; border: 1px solid var(--line); border-radius: 7px; background: rgba(3, 37, 46, .87); box-shadow: 0 5px 14px var(--shadow); backdrop-filter: blur(8px); }
.hud-item span, .hud-item b { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hud-item span { color: #f5e6c4; font-size: 8px; font-weight: 800; line-height: 1.1; }
.hud-item b { margin-top: 3px; color: var(--gold); font-size: 13px; font-weight: 900; line-height: 1.1; }
.hud-item.reputation b { color: #83e0bb; }
.chrome-button { position: relative; width: 100%; height: 52px; min-width: 44px; padding: 0; border: 1px solid rgba(255, 248, 231, .4); background: rgba(3, 37, 46, .86); box-shadow: 0 5px 14px var(--shadow); pointer-events: auto; }
.pause-icon { display: inline-block; width: 15px; height: 18px; border-left: 4px solid var(--cream); border-right: 4px solid var(--cream); }

.surface { position: absolute; inset: 0; }
.home-surface { display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 10px; padding: calc(16px + env(safe-area-inset-top, 0px)) 12px calc(12px + env(safe-area-inset-bottom, 0px)); }
.home-hero { position: relative; min-height: 0; overflow: hidden; padding: max(68px, 12vh) 8px 8px; }
.home-hero-copy { position: relative; z-index: 3; max-width: min(62%, 300px); text-shadow: 0 3px 9px var(--shadow); }
.eyebrow { display: block; color: var(--red-deep); font-size: 10px; font-weight: 950; line-height: 1.15; }
.eyebrow.light { color: #ffe39c; }
.home-hero h1 { max-width: 240px; margin: 5px 0 0; color: var(--cream); font-size: 42px; line-height: .92; font-weight: 950; }
.home-hero p { margin: 10px 0 0; color: #fff3dc; font-size: 13px; font-weight: 720; line-height: 1.35; }
.home-chef { position: absolute; z-index: 2; right: 4%; bottom: -2%; width: auto; height: 78%; max-width: none; max-height: none; object-fit: contain; object-position: bottom; filter: drop-shadow(0 16px 14px rgba(2, 22, 27, .5)); animation: chef-breathe 2.8s ease-in-out infinite; transform-origin: 50% 100%; }
.home-customer { position: absolute; z-index: 1; right: 43%; bottom: 0; width: min(23vw, 116px); height: min(38vh, 260px); background: url("assets/customers.webp") 0 center / 300% 100% no-repeat; opacity: .94; filter: drop-shadow(0 11px 11px rgba(2, 22, 27, .5)); }
.home-statline { display: flex; gap: 7px; margin-top: 14px; }
.home-statline span { min-width: 0; display: flex; flex-direction: column; padding: 5px 7px; border-left: 2px solid rgba(255, 226, 152, .75); background: rgba(6, 36, 42, .38); }
.home-statline b { color: var(--gold); font-size: 15px; line-height: 1; }
.home-statline small { margin-top: 3px; color: #fff4d8; font-size: 8px; font-weight: 800; line-height: 1.1; }
.home-actions { position: relative; z-index: 5; width: min(100%, 500px); margin: 0 auto; }
.mission-line { min-height: 18px; margin: 0 4px 6px; color: #fbe5a9; font-size: 11px; font-weight: 800; line-height: 1.25; text-align: center; text-shadow: 0 2px 5px var(--shadow); }
.primary-action { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 54px; padding: 9px 16px; border: 2px solid #ffd77d; background: linear-gradient(180deg, #d75148, #ae3435); box-shadow: 0 7px 0 #74282d, 0 12px 20px rgba(1, 18, 24, .42); color: #fffdf5; font-size: 15px; font-weight: 950; line-height: 1.1; text-align: center; }
.primary-action:active { transform: translateY(3px); box-shadow: 0 4px 0 #74282d, 0 8px 14px rgba(1, 18, 24, .35); }
.small-action { min-height: 46px; font-size: 12px; }
.arrow-mark { width: 9px; height: 9px; border-top: 3px solid currentColor; border-right: 3px solid currentColor; transform: rotate(45deg); }
.resume-note { min-height: 16px; margin: 7px 4px 0; color: #ffefc5; font-size: 10px; font-weight: 750; line-height: 1.2; text-align: center; }
.home-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-top: 9px; }
.nav-action { min-height: 49px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 4px 8px; border: 1px solid rgba(255, 247, 226, .36); background: rgba(5, 39, 46, .86); box-shadow: 0 5px 12px var(--shadow); color: var(--cream); font-size: 11px; font-weight: 900; }
.nav-art { width: 35px; height: 35px; flex: 0 0 35px; background-repeat: no-repeat; }
.crate-art { background: url("assets/supply-crate.webp") center / contain; }
.ingredients-art { background-image: url("assets/ingredients.webp"); background-size: 400% 100%; background-position: 0 center; }

.play-surface { display: grid; grid-template-rows: minmax(138px, 1fr) auto minmax(84px, 112px); gap: 7px; padding: calc(70px + env(safe-area-inset-top, 0px)) 8px calc(8px + env(safe-area-inset-bottom, 0px)); }
.customer-stage { position: relative; min-width: 0; min-height: 0; overflow: hidden; }
.chef-art { position: absolute; z-index: 2; bottom: 0; left: max(2px, calc(50% - 190px)); height: min(31vh, 220px); min-height: 112px; filter: drop-shadow(0 10px 12px rgba(3, 25, 30, .6)); pointer-events: none; transform-origin: 50% 100%; animation: chef-breathe 2.8s ease-in-out infinite; }
.customer-art { --customer-x: 0%; position: absolute; z-index: 3; right: max(4px, calc(50% - 192px)); bottom: 0; height: min(30vh, 210px); min-height: 112px; aspect-ratio: .43; background: url("assets/customers.webp") var(--customer-x) center / 300% 100% no-repeat; filter: drop-shadow(0 9px 12px rgba(3, 25, 30, .58)); pointer-events: none; transform-origin: 50% 100%; }
.customer-0 { --customer-x: 0%; }.customer-1 { --customer-x: 50%; }.customer-2 { --customer-x: 100%; }
.coach { position: absolute; z-index: 8; top: 4px; left: 50%; width: min(66vw, 280px); padding: 6px 9px; border: 1px solid rgba(255, 225, 143, .5); border-radius: 7px; background: rgba(3, 42, 49, .92); color: var(--cream); box-shadow: 0 5px 12px var(--shadow); text-align: center; transform: translateX(-50%); }
.coach.dismissed { opacity: 0; transform: translate(-50%, -8px); pointer-events: none; }
.coach b, .coach span { display: block; }.coach b { color: #ffe194; font-size: 10px; }.coach span { margin-top: 2px; font-size: 10px; font-weight: 700; line-height: 1.15; }
.feedback { position: absolute; z-index: 9; bottom: 6px; left: 50%; max-width: 86%; color: #fff8e9; font-size: 13px; font-weight: 900; text-align: center; text-shadow: 0 2px 5px var(--shadow); transform: translateX(-50%); pointer-events: none; }
.order-panel { min-width: 0; padding: 8px 10px; border: 1px solid rgba(255, 247, 226, .34); border-radius: 8px; background: rgba(3, 42, 49, .9); box-shadow: 0 6px 16px var(--shadow); }
.order-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; min-width: 0; }.order-heading span { min-width: 0; color: #ffe6a8; font-size: 10px; font-weight: 900; white-space: nowrap; }.order-heading b { min-width: 0; overflow: hidden; color: var(--cream); font-size: 13px; font-weight: 950; text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.recipe-track { display: flex; gap: 5px; min-height: 37px; margin-top: 5px; overflow: hidden; }.recipe-step { position: relative; width: 36px; height: 36px; flex: 0 0 36px; border: 1px solid rgba(255,255,255,.22); border-radius: 7px; background: rgba(255, 248, 233, .12); }.recipe-step::after { position: absolute; inset: 3px; content: ""; background-image: url("assets/ingredients.webp"); background-size: 400% 100%; background-position: var(--ingredient-x) center; background-repeat: no-repeat; filter: grayscale(.25) brightness(.86); }.recipe-step.done::after { filter: grayscale(.1) brightness(1.18); opacity: .4; }.recipe-step.current { border-color: #ffe394; box-shadow: 0 0 0 2px rgba(231,173,54,.35); }.recipe-step.current::after { filter: brightness(1.2); }
.patience-row { display: grid; grid-template-columns: auto 1fr auto; gap: 6px; align-items: center; margin-top: 5px; }.patience-row > span { color: #ffe5a4; font-size: 8px; font-weight: 900; }.patience-track { height: 8px; overflow: hidden; border-radius: 4px; background: rgba(255,255,255,.18); }.patience-track i { display: block; width: 100%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #69cf9a, #e8c544, #dd6046); transition: width .12s linear; }.patience-row b { min-width: 28px; color: var(--cream); font-size: 10px; text-align: right; }.festival-goal { margin-top: 5px; color: #c3f0d9; font-size: 9px; font-weight: 800; line-height: 1.1; }
.ingredient-dock { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; padding: 6px; border: 1px solid rgba(255, 247, 226, .34); border-radius: 8px; background: rgba(3, 42, 49, .93); box-shadow: 0 6px 16px var(--shadow); }
.ingredient-button { min-width: 0; height: 88px; display: grid; grid-template-rows: 53px 1fr; place-items: center; padding: 4px 3px; border: 1px solid rgba(255,255,255,.18); background: linear-gradient(180deg, rgba(48,116,133,.9), rgba(29,89,103,.92)); }.ingredient-button.current { border-color: #ffe28f; background: linear-gradient(180deg, #c44a45, #a83137); box-shadow: 0 0 0 2px rgba(231,173,54,.36); }.ingredient-button.empty { filter: saturate(.2); opacity: .65; }.ingredient-button:active { transform: translateY(2px) scale(.98); }.ingredient-art { width: 50px; height: 50px; background-image: url("assets/ingredients.webp"); background-size: 400% 100%; background-repeat: no-repeat; filter: drop-shadow(0 4px 4px rgba(1, 18, 24, .34)); }.ingredient-noodle { --ingredient-x: 0%; background-position: 0 center; }.ingredient-broth { --ingredient-x: 33.333%; background-position: 33.333% center; }.ingredient-greens { --ingredient-x: 66.666%; background-position: 66.666% center; }.ingredient-spice { --ingredient-x: 100%; background-position: 100% center; }.ingredient-copy { min-width: 0; text-align: center; }.ingredient-copy b, .ingredient-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.ingredient-copy b { color: var(--cream); font-size: 10px; font-weight: 900; line-height: 1.1; }.ingredient-copy small { margin-top: 2px; color: #f5e8cc; font-size: 8px; font-weight: 750; line-height: 1; }

.decision-surface { z-index: 45; display: grid; place-items: center; padding: calc(10px + env(safe-area-inset-top, 0px)) 10px calc(10px + env(safe-area-inset-bottom, 0px)); background: rgba(2, 23, 29, .8); backdrop-filter: blur(9px); }
.decision-panel { width: min(100%, 720px); max-height: 100%; min-height: 0; display: grid; grid-template-columns: minmax(108px, 37%) minmax(0, 1fr); align-items: center; gap: 12px; padding: 13px; overflow: hidden; border: 2px solid rgba(231, 173, 54, .86); border-radius: 8px; background: rgba(255, 248, 232, .98); color: var(--ink); box-shadow: 0 18px 45px rgba(1, 18, 24, .64), inset 0 1px 0 #fff; }
.compact-panel { max-width: 590px; }.workshop-panel, .checkpoint-panel { align-items: stretch; }.decision-art { position: relative; align-self: stretch; min-width: 0; min-height: 116px; display: grid; place-items: center; overflow: hidden; }.decision-art > img:first-child { display: block; width: min(100%, 235px); max-height: 240px; object-fit: contain; filter: drop-shadow(0 10px 12px rgba(3,25,30,.3)); }.chef-crop > img:first-child { width: auto; height: 230px; }.decision-copy { min-width: 0; }.decision-copy h2 { margin: 3px 0 0; color: var(--ink); font-size: 23px; line-height: 1.02; font-weight: 950; }.decision-copy > p { margin: 6px 0 0; color: #3a5255; font-size: 12px; font-weight: 700; line-height: 1.35; }.panel-scroll { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding-right: 2px; }.reward-line { color: var(--red-deep) !important; font-size: 14px !important; font-weight: 950 !important; }.status-line { min-height: 16px; color: var(--red-deep) !important; font-size: 10px !important; font-weight: 800 !important; }.decision-actions { display: grid; grid-template-columns: 1fr; gap: 7px; margin-top: 10px; }.ad-button, .free-button { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 7px 10px; border: 1px solid rgba(78, 32, 29, .62); font-size: 11px; font-weight: 950; line-height: 1.15; text-align: center; }.ad-button { background: #c84640; color: #fffaf2; box-shadow: 0 4px 0 #812c30; }.free-button { background: #237e6d; color: #fffdf5; box-shadow: 0 4px 0 #155044; }.danger-free { background: #315c69; box-shadow: 0 4px 0 #203e48; }.video-mark { position: relative; width: 22px; height: 16px; flex: 0 0 22px; border: 2px solid currentColor; border-radius: 4px; }.video-mark i { position: absolute; top: 2px; left: 7px; width: 0; height: 0; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid currentColor; }
.upgrade-list, .checkpoint-upgrades { display: grid; gap: 6px; margin-top: 9px; }.upgrade-row { min-width: 0; min-height: 56px; display: grid; grid-template-columns: 39px minmax(0, 1fr) auto; align-items: center; gap: 7px; padding: 5px 6px; border: 1px solid #cfb873; border-radius: 7px; background: #fffdf6; }.upgrade-art { width: 35px; height: 35px; background: url("assets/ingredients.webp") 0 center / 400% 100% no-repeat; }.upgrade-row:nth-child(2) .upgrade-art { background-position: 33.333% center; }.upgrade-row:nth-child(3) .upgrade-art { background-position: 66.666% center; }.upgrade-copy { min-width: 0; }.upgrade-copy b, .upgrade-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.upgrade-copy b { color: var(--ink); font-size: 11px; font-weight: 950; }.upgrade-copy small { margin-top: 2px; color: #526568; font-size: 8px; font-weight: 700; }.upgrade-button { min-width: 74px; min-height: 44px; padding: 5px 7px; background: var(--blue); color: #fff; font-size: 10px; font-weight: 950; }.upgrade-button.maxed { background: #758a8d; }.menu-book { margin-top: 9px; padding: 8px; border: 1px solid #cfb873; border-radius: 7px; background: #fffdf6; }.menu-book h3 { margin: 0; color: var(--ink); font-size: 13px; }.menu-book ul { margin: 7px 0 0; padding-left: 18px; color: #3a5255; font-size: 10px; font-weight: 700; line-height: 1.4; }
.reward-stage .reward-food { position: absolute; right: 0; bottom: 6%; width: 74px; height: 74px; background-image: url("assets/ingredients.webp"); background-size: 400% 100%; background-repeat: no-repeat; filter: drop-shadow(0 6px 8px rgba(3,25,30,.35)); }.reward-chef-thumb { position: absolute; right: -8%; bottom: -8%; width: 62% !important; height: 72% !important; object-fit: contain; object-position: bottom; }.reward-stage.reward-pop > img:first-child, .reward-stage.reward-pop .reward-food, .reward-stage.reward-pop .reward-chef-thumb { animation: reward-arrival 760ms cubic-bezier(.22,.9,.25,1) both; }

.result-surface { z-index: 50; display: grid; place-items: center; padding: calc(12px + env(safe-area-inset-top, 0px)) 12px calc(12px + env(safe-area-inset-bottom, 0px)); background: rgba(2, 25, 31, .42); }.result-light { position: absolute; inset: 0; background: radial-gradient(circle at 50% 24%, rgba(240,184,66,.32), transparent 44%); pointer-events: none; }.result-panel { position: relative; width: min(100%, 460px); max-height: 100%; overflow-y: auto; padding: 17px; border: 2px solid rgba(255,222,139,.92); border-radius: 8px; background: rgba(255,248,232,.98); color: var(--ink); box-shadow: 0 18px 45px rgba(1,18,24,.64); text-align: center; }.result-panel h2 { margin: 4px 0 0; font-size: 28px; line-height: 1; }.result-panel p { margin: 8px 0 0; color: #3a5255; font-size: 12px; font-weight: 700; }.result-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; margin-top: 13px; }.result-stats span { padding: 7px 4px; border-left: 2px solid #e4b23d; background: #f4ead0; }.result-stats b, .result-stats small { display: block; }.result-stats b { color: var(--red-deep); font-size: 18px; }.result-stats small { margin-top: 3px; color: #4d5d60; font-size: 8px; font-weight: 800; line-height: 1.1; }.result-art { position: relative; height: min(28vh, 198px); margin: 8px 0; overflow: hidden; }.result-art img { position: absolute; bottom: -10px; left: 14%; height: 98%; filter: drop-shadow(0 9px 10px rgba(3,25,30,.28)); }.result-customer { position: absolute; right: 13%; bottom: -2px; width: 88px; height: 93%; background: url("assets/customers.webp") 100% center / 300% 100% no-repeat; filter: drop-shadow(0 9px 10px rgba(3,25,30,.28)); }.result-panel.result-pop { animation: result-arrival 640ms cubic-bezier(.2,.95,.25,1) both; }

.fx-layer { position: absolute; z-index: 70; inset: 0; overflow: hidden; pointer-events: none; }.coin-fx { position: absolute; width: 11px; height: 11px; border-radius: 50%; background: var(--gold); box-shadow: inset 0 0 0 2px #ffe39a, 0 3px 5px var(--shadow); animation: coin-burst .65s ease-out both; }.toast { position: absolute; z-index: 75; left: 50%; bottom: calc(120px + env(safe-area-inset-bottom, 0px)); max-width: min(86vw, 340px); padding: 9px 13px; border: 1px solid rgba(255,248,233,.36); border-radius: 7px; background: rgba(6,44,52,.94); color: var(--cream); font-size: 12px; font-weight: 850; line-height: 1.25; text-align: center; opacity: 0; transform: translate(-50%, 12px); pointer-events: none; }.toast.show { animation: toast-in 1.5s ease both; }

@keyframes chef-breathe { 0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.012)} }
@keyframes coin-burst { from{opacity:1;transform:translate(0,0) scale(.7)}to{opacity:0;transform:translate(var(--coin-x),-70px) scale(1.25)} }
@keyframes toast-in { 0%,100%{opacity:0;transform:translate(-50%,12px)}15%,78%{opacity:1;transform:translate(-50%,0)} }
@keyframes reward-arrival { 0%{opacity:.3;transform:translateY(14px) scale(.74)}58%{opacity:1;transform:translateY(-4px) scale(1.08)}100%{opacity:1;transform:translateY(0) scale(1)} }
@keyframes result-arrival { 0%{opacity:0;transform:translateY(18px) scale(.94)}65%{opacity:1;transform:translateY(-3px) scale(1.015)}100%{opacity:1;transform:none} }

@media (max-width: 359px) { .game-chrome { grid-template-columns: 60px minmax(0,1fr) 44px; gap:4px; }.brand-lockup strong{font-size:15px}.hud{gap:3px}.hud-item{padding-inline:1px}.hud-item span{font-size:7px}.hud-item b{font-size:11px}.home-hero-copy{max-width:64%}.home-hero h1{font-size:33px}.home-hero p{font-size:11px}.home-statline{gap:3px}.home-statline span{padding-inline:4px}.home-statline small{font-size:7px}.home-chef{right:-2%;width:49vw}.home-customer{right:43%;width:20vw}.play-surface{padding-inline:5px}.ingredient-dock{gap:4px;padding:4px}.ingredient-button{height:70px;grid-template-rows:43px 1fr;padding:2px}.ingredient-art{width:42px;height:42px}.ingredient-copy b{font-size:9px}.ingredient-copy small{font-size:7px}.recipe-step{width:32px;height:32px;flex-basis:32px}.decision-panel{gap:7px;padding:8px}.decision-art{min-height:82px}.decision-art>img:first-child{max-height:110px}.decision-copy h2{font-size:18px}.decision-copy>p{font-size:10px}.workshop-panel{grid-template-columns:84px minmax(0,1fr)}.workshop-panel .upgrade-row{grid-template-columns:32px minmax(0,1fr);grid-template-rows:minmax(34px,auto) 44px;gap:4px;padding:4px}.workshop-panel .upgrade-art{width:30px;height:30px}.workshop-panel .upgrade-copy b{overflow:visible;text-overflow:clip;white-space:normal;font-size:9px;line-height:1.15}.workshop-panel .upgrade-button{grid-column:1/-1;width:100%;min-height:44px}.ad-button,.free-button{min-height:44px;font-size:10px}.result-panel{padding:12px}.result-panel h2{font-size:23px}.result-art{height:142px} }
@media (min-width: 360px) and (max-width: 389px) { .game-chrome{grid-template-columns:60px minmax(0,1fr) 44px;gap:4px}.brand-lockup strong{font-size:15px}.hud-item b{font-size:11px} }
@media (max-width: 500px) and (orientation: portrait) { .workshop-panel{grid-template-columns:84px minmax(0,1fr)}.workshop-panel .upgrade-row{grid-template-columns:32px minmax(0,1fr);grid-template-rows:minmax(34px,auto) 44px;gap:4px;padding:4px}.workshop-panel .upgrade-art{width:30px;height:30px}.workshop-panel .upgrade-copy b,.workshop-panel .upgrade-copy small{overflow:visible;text-overflow:clip;white-space:normal}.workshop-panel .upgrade-copy b{font-size:9px;line-height:1.15}.workshop-panel .upgrade-copy small{font-size:7px;line-height:1.15}.workshop-panel .upgrade-button{grid-column:1/-1;width:100%;min-height:44px} }
@media (max-height: 620px) and (orientation: portrait) { .home-surface{gap:5px;padding-top:6px}.home-hero{padding-top:58px}.home-hero p{margin-top:5px;font-size:11px}.home-statline{margin-top:7px}.home-actions{max-width:440px}.mission-line{margin-bottom:4px}.primary-action{min-height:47px;font-size:13px}.home-nav{margin-top:6px}.nav-action{min-height:44px}.play-surface{grid-template-rows:minmax(100px,1fr) auto 70px;gap:4px;padding-top:calc(66px + env(safe-area-inset-top,0px))}.chef-art,.customer-art{height:min(25vh,142px);min-height:92px}.coach{top:0;width:55vw;padding:4px 7px}.coach span{display:none}.order-panel{padding-block:5px}.recipe-track{min-height:32px;margin-top:3px}.recipe-step{width:31px;height:31px;flex-basis:31px}.patience-row{margin-top:3px}.festival-goal{display:none}.ingredient-button{height:64px;grid-template-rows:39px 1fr}.ingredient-art{width:39px;height:39px}.ingredient-copy small{font-size:7px}.decision-panel{gap:8px;padding:8px}.decision-art{min-height:78px}.decision-art>img:first-child{max-height:104px}.chef-crop>img:first-child{height:110px}.decision-copy h2{font-size:18px}.decision-copy>p{margin-top:4px;font-size:10px}.upgrade-row{min-height:43px}.upgrade-copy small{display:none}.decision-actions{margin-top:5px;gap:5px}.ad-button,.free-button{min-height:44px;padding-block:5px;font-size:10px}.result-art{height:125px}.result-panel h2{font-size:22px}.result-stats{margin-top:8px} }
@media (orientation: landscape) and (max-height: 520px) { .market-world{background-position:center 58%}.game-chrome{right:auto;width:min(48vw,390px)}.home-surface{grid-template-columns:minmax(0,1fr) minmax(240px,330px);grid-template-rows:1fr;padding:8px 78px 8px 10px}.home-hero{padding:55px 8px 6px}.home-hero-copy{max-width:62%}.home-hero h1{font-size:38px}.home-statline{gap:5px}.home-statline span{padding:4px 5px}.home-statline small{font-size:7px}.home-chef{width:auto;height:92%;max-width:none;max-height:none}.home-customer{height:75%;width:min(16vw,110px)}.home-actions{align-self:end}.play-surface{grid-template-columns:minmax(250px,1fr) minmax(282px,340px);grid-template-rows:minmax(108px,1fr) minmax(128px,148px);gap:6px 8px;padding:calc(66px + env(safe-area-inset-top,0px)) 8px calc(6px + env(safe-area-inset-bottom,0px))}.customer-stage{grid-column:1;grid-row:1/3}.chef-art,.customer-art{height:min(48vh,186px)}.coach{width:min(38vw,220px)}.order-panel{grid-column:2;grid-row:1;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:6px 8px}.recipe-track{min-height:31px;margin-top:3px}.recipe-step{width:31px;height:31px;flex-basis:31px}.festival-goal{display:none}.ingredient-dock{grid-column:2;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:5px;padding:5px}.ingredient-button{height:auto;min-height:58px;grid-template-columns:45px minmax(0,1fr);grid-template-rows:1fr;justify-items:start;padding:3px 6px}.ingredient-art{width:43px;height:43px}.ingredient-copy{text-align:left}.decision-surface{padding:7px 76px 7px 7px}.decision-panel{width:min(100%,770px);grid-template-columns:128px minmax(0,1fr);gap:10px;padding:8px 10px}.decision-art,.decision-art>img:first-child{max-height:145px}.chef-crop>img:first-child{height:150px}.decision-copy h2{font-size:18px}.decision-copy>p{margin-top:3px;font-size:10px}.workshop-panel,.checkpoint-panel{grid-template-columns:96px minmax(0,1fr)}.upgrade-list,.checkpoint-upgrades{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:4px}.upgrade-row{min-height:66px;grid-template-columns:1fr;padding:4px;text-align:center}.upgrade-art{margin:auto;width:30px;height:30px}.upgrade-copy small{display:none}.upgrade-button{width:100%;min-height:44px;font-size:9px}.decision-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:5px;gap:6px}.ad-button,.free-button{min-height:44px;padding:5px;font-size:10px}.result-surface{padding:7px 76px 7px 7px}.result-panel{display:grid;grid-template-columns:minmax(0,1fr) 165px;column-gap:10px;max-width:650px;text-align:left}.result-panel .eyebrow,.result-panel h2,.result-panel p,.result-panel .result-stats,.result-panel .primary-action{grid-column:1}.result-art{grid-column:2;grid-row:1/6;height:100%;min-height:175px;margin:0}.result-stats{margin-top:8px}.result-panel .primary-action{align-self:end}.result-light{background:radial-gradient(circle at 40% 35%,rgba(240,184,66,.3),transparent 45%)} }
@media (orientation: landscape) and (max-height: 520px) { .workshop-panel .upgrade-list{grid-template-columns:1fr;gap:3px;margin-top:3px}.workshop-panel .upgrade-row{min-height:44px;grid-template-columns:28px minmax(0,1fr) 74px;gap:4px;padding:0 3px;text-align:left}.workshop-panel .upgrade-art{width:26px;height:26px;margin:0}.workshop-panel .upgrade-button{width:auto;min-width:74px;min-height:44px}.workshop-panel .upgrade-copy small{display:none} }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { animation-duration: .001ms !important; transition-duration: .001ms !important; scroll-behavior: auto !important; } }
