@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Unbounded:wght@400;600;700;800;900&display=swap');
:root{--bg:#101518;--paper:#eeeede;--muted:#8c9697;--lime:#b8f35a;--orange:#ffd175;--purple:#bda0ff;--line:rgba(238,238,222,.15);font-family:Manrope,Arial,sans-serif;color:var(--paper);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:var(--bg);font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--lime);outline-offset:5px}button:disabled{opacity:.4;cursor:not-allowed}button{border:0}a{color:inherit;text-decoration:none}.hidden{display:none!important}#game-surface{position:fixed;inset:0}#game{display:block;width:100%;height:100%;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(9,15,18,.4),transparent 25%,transparent 65%,rgba(9,15,18,.8)),radial-gradient(ellipse at center,transparent 40%,rgba(9,15,18,.3) 100%)}.topbar{position:absolute;z-index:5;top:0;left:0;right:0;height:108px;padding:30px 40px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.topbar>*{pointer-events:auto}.brand{display:flex;gap:14px;align-items:center;font-family:Unbounded,Arial,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.5px}.brand i{font-style:normal;color:var(--lime)}.brand small{display:block;font:10px Manrope,Arial,sans-serif;letter-spacing:3.5px;font-weight:700;margin-top:6px;color:#9ba19d}.brand-icon{display:flex;width:43px;height:43px;background:var(--lime);color:var(--bg);align-items:center;justify-content:center;font-size:24px;transform:rotate(-7deg);gap:0;border-radius:3px}.brand-icon span{font-size:20px;margin-top:11px}.mission-top{text-align:center;position:absolute;left:50%;transform:translateX(-50%)}.eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:2.2px;color:var(--muted)}.mission-top strong{display:block;font-size:14px;letter-spacing:1px;margin-top:6px}.wave-pips{display:flex;justify-content:center;gap:5px;margin-top:10px}.wave-pips i{width:29px;height:3px;background:#485054}.wave-pips i.current{background:var(--orange)}.wave-pips i.done{background:var(--lime)}.top-actions{display:flex;align-items:center;gap:8px}.icon-button{width:40px;height:40px;border:1px solid var(--line);background:rgba(16,21,24,.65);border-radius:50%;font-size:22px;color:var(--paper);display:grid;place-items:center}.icon-button:hover{border-color:var(--lime);color:var(--lime)}.build-tag{font-size:10px;letter-spacing:1px;color:var(--muted);margin-left:15px}.start-screen{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(12,19,23,.94) 0%,rgba(12,19,23,.83) 24%,rgba(12,19,23,.12) 59%,transparent 100%)}.start-copy{position:absolute;left:7%;top:22%;pointer-events:auto}.kicker{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;letter-spacing:1.65px;color:var(--orange)}.kicker>span{height:6px;width:6px;background:var(--orange);border-radius:50%}h1{font-family:Unbounded,Arial,sans-serif;font-size:clamp(56px,6.5vw,106px);font-weight:900;letter-spacing:-6px;line-height:1.16;margin:20px 0}h1 em{font-style:normal;color:var(--lime)}.intro{font-size:17px;line-height:1.7;color:#b4beb7;margin:22px 0}.loop{display:flex;gap:15px;align-items:center;margin:30px 0;color:#d0d7ce;font-size:10px;font-weight:800;letter-spacing:1px}.loop b{color:var(--lime);font-size:10px;margin-right:5px}.loop i{font-style:normal;color:#5b6865}.primary{background:var(--lime);color:#182313;min-height:58px;padding:17px 24px;font-size:13px;font-weight:900;letter-spacing:1px;border-radius:3px;display:flex;align-items:center;justify-content:space-between;gap:30px;transition:background .2s,transform .2s}.primary:hover{background:#d0ff85;transform:translateY(-2px)}.primary kbd{background:rgba(10,35,0,.1);border-color:rgba(10,35,0,.2);font-size:10px;padding:4px 6px}.start-hint{font-size:12px;color:#778781;margin:13px 0}.start-controls{display:flex;gap:19px;font-size:11px;color:#a2afa8;margin-top:40px}.start-controls kbd{margin-right:5px;font-size:9px}kbd{font:10px Manrope,Arial,sans-serif;font-weight:800;display:inline-block;border:1px solid #5d6867;background:rgba(66,78,76,.3);border-radius:3px;padding:3px 6px;white-space:nowrap}.scene-caption{position:absolute;left:64%;top:36%;font-size:12px;letter-spacing:2px;font-weight:800;display:flex;gap:12px;align-items:center}.caption-line{width:34px;height:1px;background:var(--orange)}.scene-caption small{display:block;font-size:9px;font-weight:600;letter-spacing:1.6px;color:var(--muted);margin-top:6px}.food-note{position:absolute;right:35px;bottom:32px;max-width:280px;padding:20px;background:rgba(16,21,24,.75);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:6px}.note-number{font-size:9px;color:#9da9a2;letter-spacing:1.5px;display:block;margin-bottom:13px}.food-note>div{display:flex;align-items:center;gap:14px}.food-note>div>span{font-size:23px;color:var(--lime)}.food-note>div:nth-child(3)>span{color:var(--orange)}.food-note>div:nth-child(4)>span{color:var(--purple)}.food-note p{font-size:13px;font-weight:700;margin:9px 0}.food-note small{display:block;font-size:10px;line-height:1.5;font-weight:400;color:#8e9c95;margin-top:4px}.hud{position:absolute;inset:0;z-index:2;pointer-events:none}.objective{position:absolute;left:40px;top:139px;width:255px;border-top:1px solid var(--line);padding-top:20px}.objective p{font-size:18px;line-height:1.5;margin:13px 0 19px;font-weight:700}.goal{display:flex;align-items:center;gap:9px;font-size:12px;color:#bbc7be;margin:11px 0}.goal>span{color:var(--lime);font-size:17px}.goal b{margin-left:auto;font-size:11px;color:var(--paper);font-weight:700}.health-panel{position:absolute;left:40px;bottom:87px;width:240px;padding:17px 20px;background:rgba(16,21,24,.82);border:1px solid var(--line);backdrop-filter:blur(10px);border-radius:5px}.health-title{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;letter-spacing:1px}.health-title>span{color:var(--lime)}.health-title b{font-size:18px;letter-spacing:0}.health-title small{font-size:10px;color:var(--muted);font-weight:500}.health-track,.dash-track{height:5px;background:#35413b;margin-top:11px;border-radius:4px;overflow:hidden}.health-track i,.dash-track i{height:100%;background:var(--lime);display:block;transition:width .15s}.health-track i.low{background:#ff866b}.dash-row{display:flex;justify-content:space-between;align-items:center;margin-top:16px;color:#9aafa1;font-size:9px;letter-spacing:1px}.dash-row kbd{font-size:8px;margin-left:5px}.dash-track{height:2px;margin-top:7px}.dash-track i{background:#88a79c}.bag-panel{position:absolute;right:40px;bottom:87px;width:300px;background:rgba(16,21,24,.82);border:1px solid var(--line);backdrop-filter:blur(10px);border-radius:5px;padding:17px 19px;pointer-events:auto}.bag-header{display:flex;align-items:center;justify-content:space-between}.bag-header .eyebrow{font-size:10px}.bag-header>span:last-child{font-size:10px;color:#91a197}.inventory{display:flex;gap:10px;margin:14px 0}.ingredient{flex:1;display:grid;grid-template-columns:21px 1fr;align-items:center;font-size:20px;gap:2px;color:var(--ingredient-color)}.ingredient small{font-size:10px;color:#95a399;grid-column:1/3}.ingredient b{font-size:19px;color:#e4ecdf}.kitchen-button{display:flex;align-items:center;width:100%;gap:10px;padding:11px 12px;background:#253026;color:#97a58e;font-size:12px;font-weight:700;border-radius:3px}.kitchen-button.ready{background:var(--lime);color:#172610}.kitchen-button kbd{color:inherit;border-color:currentColor;background:none}.grill-symbol{margin-left:auto;font-size:20px}.control-strip{position:absolute;bottom:27px;left:50%;transform:translateX(-50%);display:flex;gap:25px;align-items:center;white-space:nowrap;font-size:10px;color:#8b9d94}.control-strip>span{display:flex;align-items:center;gap:4px}.mouse-icon{font-size:18px;margin-right:4px;color:#cad6ca}.score-panel{position:absolute;right:40px;top:143px;text-align:right}.score-panel .eyebrow{font-size:10px}.score-panel strong{display:block;font-family:Unbounded,Arial,sans-serif;font-size:25px;font-weight:600;margin-top:9px}.score-panel small{display:block;font-size:12px;color:#93a299;margin-top:8px}.buffs{position:absolute;left:40px;top:350px;display:flex;flex-direction:column;gap:8px}.buff-chip{font-size:11px;padding:9px 13px;border:1px solid var(--line);background:rgba(16,21,24,.7);border-radius:4px;display:flex;gap:18px}.buff-chip b{color:var(--orange)}.buff-chip.speed b{color:var(--purple)}.toast{position:absolute;z-index:15;left:50%;bottom:180px;transform:translateX(-50%);background:rgba(16,21,24,.94);border:1px solid rgba(184,243,90,.4);color:var(--lime);border-radius:5px;padding:12px 20px;font-size:13px;font-weight:700;text-align:center;max-width:80%;pointer-events:none;animation:toast-in .2s ease}.wave-banner{position:absolute;z-index:5;top:30%;left:50%;transform:translateX(-50%);text-align:center;pointer-events:none;text-shadow:0 3px 20px #101518}.wave-banner span{display:block;font-size:11px;letter-spacing:2px;color:var(--orange)}.wave-banner strong{display:block;font-family:Unbounded,Arial,sans-serif;font-size:40px;letter-spacing:-1px;margin-top:14px}.wave-banner.hidden{display:none}.kitchen-dialog,.pause-dialog,.end-dialog{color:var(--paper);background:#172020;border:1px solid #415348;border-radius:8px;padding:30px;box-shadow:0 30px 100px #0009;margin:auto;max-height:90dvh;overflow:auto}.kitchen-dialog{width:min(890px,calc(100% - 40px))}dialog::backdrop{background:#0b1213b8;backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start}.dialog-top .eyebrow{color:var(--lime);font-size:10px}h2{font-family:Unbounded,Arial,sans-serif;font-size:30px;letter-spacing:-1px;line-height:1.3;margin:13px 0}.dialog-description{font-size:13px;line-height:1.6;color:#acb9af;margin:10px 0 22px;max-width:570px}.recipe-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.recipe-card{background:#202b28;border:1px solid #3c4a42;border-radius:5px;padding:20px;display:flex;flex-direction:column}.recipe-card .recipe-art{height:70px;display:flex;align-items:center;justify-content:center}.recipe-art .symbol{font-size:50px;line-height:1;filter:drop-shadow(0 5px 14px #0004)}.recipe-card h3{font-size:16px;letter-spacing:-.3px;margin:13px 0 8px}.recipe-card p{font-size:12px;line-height:1.6;color:#9eafa2;margin:0 0 12px}.recipe-cost{display:flex;gap:10px;align-items:center;font-size:11px;margin:0 0 15px}.recipe-cost span{white-space:nowrap}.recipe-effect{font-size:11px;font-weight:700;margin-top:auto;margin-bottom:15px;line-height:1.5}.recipe-card button{min-height:43px;background:#b8f35a;color:#172313;border-radius:3px;font-size:12px;font-weight:800;display:flex;justify-content:space-between;align-items:center;padding:10px 13px}.recipe-card button:disabled{background:#445148;color:#99a295}.recipe-card kbd{font-size:9px;background:none;border-color:currentColor;color:inherit}.dialog-footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px;font-size:11px;color:#8b9b8e}.dialog-footer kbd{border:0;padding:0;background:none;color:#899a8d;font-size:9px}.cooking{padding:25px 0 10px;text-align:center}.cooking h3{font-size:24px;font-weight:800;margin:15px 0 24px}.cook-track{height:30px;background:linear-gradient(90deg,#426942,#859540 55%,#a78542 82%,#b56d44);border:1px solid #748260;border-radius:5px;position:relative;margin:0 auto;width:100%;max-width:640px}.perfect-zone{position:absolute;left:55%;width:27%;height:100%;background:#b8f35a99;border-left:2px solid var(--lime);border-right:2px solid var(--lime)}#heat-marker{position:absolute;left:0;height:45px;top:-8px;width:5px;background:#fafbe9;box-shadow:0 0 10px #fff6;border-radius:2px}.heat-labels{display:flex;justify-content:space-between;width:100%;max-width:640px;margin:12px auto 25px;font-size:9px;letter-spacing:1px;color:#a8b89c}.heat-labels>span:nth-child(2){color:var(--lime)}.cooking .primary{margin:0 auto;min-width:280px}.cooking p{font-size:12px;color:#9daf9d;margin-top:17px}.pause-dialog,.end-dialog{width:min(510px,calc(100% - 36px));padding:35px}.pause-dialog p,.end-dialog p{font-size:14px;line-height:1.7;color:#a8b8ab;margin:20px 0 25px}.pause-dialog .primary,.end-dialog .primary{width:100%}.secondary{background:transparent;border:1px solid var(--line);border-radius:3px;padding:13px;width:100%;color:#b9c6b9;margin-top:12px;font-size:12px}.end-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);padding-top:23px;margin:25px 0}.end-stats b{display:block;font-family:Unbounded,Arial,sans-serif;font-size:23px;color:var(--lime);margin-bottom:8px}.end-stats small{font-size:11px;color:#92a291}.touch-controls{display:none;pointer-events:none;position:absolute;z-index:4;inset:auto 24px 100px}.touch-controls.show{display:flex;justify-content:space-between;align-items:center}.joystick{width:110px;height:110px;background:#131e1e99;border:1px solid #d4e6c666;border-radius:50%;display:grid;place-items:center;pointer-events:auto;touch-action:none}.joystick i{width:45px;height:45px;background:#c4ed7580;border:1px solid var(--lime);border-radius:50%;pointer-events:none}.touch-actions{display:flex;gap:12px;align-items:center;pointer-events:auto}.touch-actions button{border-radius:50%;width:66px;height:66px;color:#d5e7cc;border:1px solid #d4e6c666;background:#131e1ecc;font-size:10px;font-weight:800;touch-action:none}.touch-actions #touch-fire{width:82px;height:82px;background:var(--lime);color:#203015;border-color:var(--lime)}.fatal{position:fixed;z-index:100;inset:0;background:#101518;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;padding:30px}.fatal p{max-width:550px;line-height:1.7;color:#99ad9f}.fatal button{background:var(--lime);color:#183015;border-radius:3px;padding:16px 22px;font-weight:800}@keyframes toast-in{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}@media(min-width:1600px){.start-copy{top:23%}.start-screen h1{font-size:110px}}@media(max-height:750px) and (min-width:800px){.start-copy{top:18%}h1{font-size:72px;margin:16px 0;line-height:1.1}.intro{margin:15px 0;font-size:15px}.loop{margin:20px 0}.start-controls{margin-top:22px}.topbar{height:95px;padding-top:24px}.start-hint{margin:10px 0}.primary{min-height:52px}.scene-caption{top:29%}.food-note{bottom:22px}.objective{top:120px}.score-panel{top:120px}}@media(max-width:900px){.topbar{padding:22px 25px}.brand{font-size:14px;gap:10px}.brand small{font-size:8px}.brand-icon{width:36px;height:36px}.build-tag{display:none}.start-copy{left:6%}h1{font-size:75px;letter-spacing:-4px}.food-note{right:22px;width:225px;padding:15px}.food-note small{font-size:9px}.scene-caption{left:61%;font-size:10px}.objective{left:25px;width:220px}.health-panel{left:25px;width:210px}.bag-panel{right:25px;width:255px}.score-panel{right:25px}.buffs{left:25px}.control-strip{gap:15px;font-size:9px}}@media(max-width:650px){.topbar{padding:18px;height:83px}.brand{font-size:12px}.brand-icon{width:32px;height:32px;font-size:18px}.brand-icon span{font-size:16px}.brand small{font-size:7px;letter-spacing:2px}.mission-top{top:85px;width:170px}.mission-top .eyebrow{font-size:8px}.mission-top strong{font-size:11px}.mission-top .wave-pips{margin-top:7px}.top-actions .icon-button{width:33px;height:33px;font-size:18px}.start-screen{background:linear-gradient(180deg,rgba(12,19,23,.2),rgba(12,19,23,.8) 45%,rgba(12,19,23,.95) 100%)}.start-copy{left:25px;top:auto;bottom:36px;right:25px}h1{font-size:58px;letter-spacing:-3px;line-height:1.06;margin:15px 0}.kicker{font-size:8px;letter-spacing:.8px}.intro{font-size:14px;line-height:1.55;margin:14px 0}.loop{margin:20px 0;font-size:8px;gap:12px}.loop b{font-size:8px}.primary{font-size:11px;min-height:54px}.start-copy .primary{width:100%}.start-hint{font-size:10px}.start-controls{margin-top:20px;gap:13px;font-size:9px}.food-note,.scene-caption{display:none}.objective{left:18px;top:148px;width:190px;padding-top:12px}.objective>.eyebrow{font-size:8px}.objective p{font-size:14px;margin:10px 0 14px}.goal{font-size:10px;gap:6px;margin:7px 0}.goal b{font-size:9px}.goal>span{font-size:14px}.score-panel{right:18px;top:148px}.score-panel strong{font-size:20px}.score-panel .eyebrow{font-size:8px}.score-panel small{font-size:10px}.health-panel{left:18px;bottom:24px;width:142px;padding:12px}.health-title{font-size:8px}.health-title b{font-size:15px}.health-title small{font-size:8px}.health-track{margin-top:8px;height:4px}.dash-row{font-size:8px;margin-top:10px;letter-spacing:0}.dash-row kbd{display:none}.bag-panel{right:18px;bottom:24px;width:195px;padding:12px}.bag-header .eyebrow{font-size:8px}.bag-header>span:last-child{font-size:8px}.inventory{margin:9px 0;gap:5px}.ingredient{font-size:16px;grid-template-columns:15px 1fr}.ingredient b{font-size:16px}.ingredient small{font-size:8px}.kitchen-button{padding:7px 8px;font-size:10px;gap:7px}.kitchen-button kbd{font-size:8px}.grill-symbol{font-size:15px}.control-strip{display:none}.buffs{top:275px;left:18px}.buff-chip{font-size:9px;padding:7px 9px}.toast{bottom:245px;font-size:11px;min-width:260px;padding:10px 12px}.wave-banner strong{font-size:28px}.wave-banner span{font-size:9px}.kitchen-dialog{padding:20px;width:calc(100% - 24px)}.dialog-top .eyebrow{font-size:8px}h2{font-size:24px}.dialog-description{font-size:12px;margin-bottom:15px}.recipe-list{grid-template-columns:1fr;gap:8px}.recipe-card{padding:14px;display:grid;grid-template-columns:48px 1fr 100px;column-gap:10px}.recipe-card .recipe-art{height:auto;grid-row:1/5}.recipe-art .symbol{font-size:35px}.recipe-card h3{font-size:13px;margin:0 0 6px;grid-column:2}.recipe-card p{display:none}.recipe-cost{grid-column:2;margin:0 0 5px;font-size:9px;gap:8px}.recipe-effect{grid-column:2;font-size:9px;margin:0}.recipe-card button{grid-column:3;grid-row:1/4;font-size:10px;min-height:45px;align-self:center;gap:5px;padding:10px}.recipe-card kbd{display:none}.dialog-footer{font-size:9px;line-height:1.5;padding-top:15px;margin-top:17px}.dialog-footer kbd{font-size:8px;align-self:center}.cooking h3{font-size:20px}.heat-labels{font-size:7px}.cooking p{font-size:10px}.cooking .primary{min-width:unset;width:100%}.end-dialog,.pause-dialog{padding:25px}.end-stats{gap:10px}.end-stats b{font-size:19px}.end-stats small{font-size:9px}.touch-controls{inset:auto 18px 155px}.joystick{width:90px;height:90px}.joystick i{width:37px;height:37px}.touch-actions button{width:55px;height:55px;font-size:8px}.touch-actions #touch-fire{width:70px;height:70px}}@media(max-height:520px){.start-copy{top:85px;bottom:auto}h1{font-size:44px;margin:8px 0}.intro{font-size:12px;margin:9px 0}.kicker{font-size:8px}.loop{margin:12px 0}.start-controls{display:none}.food-note{display:none}.objective p{display:none}.objective{top:115px}.score-panel{top:115px}.health-panel,.bag-panel{bottom:42px}.control-strip{bottom:12px}.touch-controls{inset:auto 22px 150px}.mission-top{top:25px}.start-hint{font-size:10px}}
/* Two gameplay layers: compact preparation controls beside a separate 3D kitchen. */
.kitchen-layer{position:absolute;z-index:3;inset:108px 0 0;pointer-events:none;background:linear-gradient(90deg,#101c1cef,transparent 48%)}.kitchen-layer button{pointer-events:auto}.prep-sidebar{position:absolute;left:40px;top:15px;bottom:26px;width:350px;overflow:auto;padding-right:8px;pointer-events:auto;scrollbar-width:thin;scrollbar-color:#607852 transparent}.prep-sidebar h2{font-size:27px;margin:12px 0}.prep-intro{font-size:12px;line-height:1.65;color:#b0c0b2;max-width:320px;margin:12px 0 20px}.prep-step{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:800;letter-spacing:1px;margin:18px 0 10px;color:#bfcbb9}.prep-step>b{color:var(--lime)}.prep-step>button{margin-left:auto;color:#889f8d;background:transparent;font-size:10px}.mix-ingredients{display:flex;flex-direction:column;gap:7px}.mix-ingredients>button{display:flex;align-items:center;gap:11px;text-align:left;border:1px solid #4a6150;background:#20332be3;border-radius:5px;padding:10px 12px;color:var(--paper)}.mix-ingredients>button>span{font-size:24px;color:var(--ingredient-color);width:25px;text-align:center}.mix-ingredients b{font-size:13px;flex:1}.mix-ingredients small{display:block;font-size:9px;color:#96b19c;font-weight:400;margin-top:3px}.mix-ingredients em{font-size:15px;font-style:normal;color:var(--ingredient-color)}.mix-ingredients i{font-size:22px;font-style:normal;color:var(--ingredient-color);margin-left:6px}.mix-bowl{display:flex;flex-wrap:wrap;gap:6px;min-height:33px;align-items:center;margin-top:11px}.mix-bowl>span{font-size:8px;color:#839d88;letter-spacing:1px;margin-right:4px}.mix-bowl button{font-size:9px;border:1px solid #455949;background:#24332b;border-radius:4px;padding:5px 7px}.method-list{display:flex;gap:7px}.method-list>button{flex:1;color:#d1dec7;background:#1e3029;border:1px solid #465849;border-radius:4px;padding:11px 6px;min-height:81px}.method-list>button.selected{border-color:var(--lime);background:#344b28;color:var(--lime)}.method-list>button>span{font-size:23px;display:block;line-height:1}.method-list b{display:block;font-size:11px;margin-top:8px}.method-list small{font-size:8px;display:block;font-weight:400;color:#97ab90;margin-top:5px}.meal-preview{margin:15px 0;font-size:12px;color:#d3e0c6;line-height:1.6;min-height:52px}.meal-preview b{display:block;font-size:12px}.meal-preview span{display:block;color:#a8bd9a;font-size:10px;margin-top:5px}.prep-sidebar>.primary{width:100%;min-height:48px;font-size:11px}.prep-status{position:absolute;right:40px;top:20px;width:230px;text-align:right}.prep-status .eyebrow{font-size:9px;color:#c6d5b1}.prep-status>strong{display:block;font-family:Unbounded,Arial,sans-serif;font-size:42px;color:var(--lime);margin-top:10px}.prep-status p{font-size:11px;color:#bdcfb0;margin:8px 0}.prep-timer-track{height:3px;background:#405d48;margin-top:13px}.prep-timer-track i{height:100%;width:100%;display:block;background:var(--lime)}.prep-tray{position:absolute;right:40px;bottom:26px;width:320px;max-height:46vh;background:#15271ae8;backdrop-filter:blur(10px);border:1px solid #4a6544;border-radius:6px;padding:18px;pointer-events:auto}.prep-tray>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.prep-tray .eyebrow{font-size:9px}.prep-tray b{font-size:11px;color:#d9eacb}.prep-meals{max-height:19vh;overflow:auto;scrollbar-width:thin}.prep-meals>div{border-bottom:1px solid #40543b;padding:9px 0}.prep-meals b{display:block;font-size:11px;color:var(--lime)}.prep-meals small{display:block;font-size:9px;color:#a0b78e;line-height:1.6;margin-top:5px}.prep-meals .empty-tray{font-size:11px;color:#9eb58d;padding:17px 0}.prep-tray p{font-size:10px;line-height:1.6;color:#a8bc99;margin:12px 0}.prep-tray .primary{font-size:10px;padding:14px 13px;min-height:48px;width:100%;gap:10px}.prep-tray .primary kbd{font-size:9px}.kitchen-scene-caption{position:absolute;left:56%;top:34%;text-align:center;transform:translateX(-10%)}.kitchen-scene-caption .eyebrow{font-size:8px;color:#d0dfbd}.kitchen-scene-caption strong{font-size:17px;font-weight:800;letter-spacing:1px;display:block;margin-top:8px;color:var(--lime)}.kitchen-scene-caption small{display:block;color:#c0d1ab;font-size:10px;margin-top:6px}.prep-sidebar .cooking{padding:0;margin-top:12px}.prep-sidebar #cook-instruction{display:block;font-size:11px;line-height:1.6;color:#bfd7a4;text-align:left;margin-bottom:16px}.prep-sidebar .cook-track{height:24px}.prep-sidebar #heat-marker{height:38px;top:-8px}.cook-hint{font-size:9px;color:#93ad85;margin:13px 0 15px}.prep-sidebar .cooking .primary{font-size:10px;width:100%;min-height:45px;justify-content:center;padding:13px}.battle-meals{position:absolute;left:50%;bottom:83px;transform:translateX(-50%);display:flex;gap:8px;pointer-events:auto;max-width:430px}.battle-meals>button{display:flex;gap:9px;align-items:center;color:#d1e2c1;background:#18291ee6;border:1px solid #658145;border-radius:5px;padding:12px;text-align:left}.battle-meals kbd{background:#617e33;color:#d6f09d;border-color:#88a951;padding:5px 7px;font-size:12px}.battle-meals>button>span{font-size:11px;font-weight:700}.battle-meals small{display:block;font-size:8px;line-height:1.5;color:#96af7f;max-width:110px;margin-top:4px}.shield-label{font-size:9px;color:var(--purple);margin-top:7px;min-height:0}.joystick{position:relative}.joystick>span{position:absolute;bottom:-21px;font-size:8px;letter-spacing:1px;color:#d4e9bd}.aim-joystick{border-color:#bda0ff99}.aim-joystick i{background:#bda0ff80;border-color:var(--purple)}#touch-dash{pointer-events:auto;border-radius:50%;width:55px;height:55px;color:#d5e7cc;border:1px solid #d4e6c666;background:#131e1ecc;font-size:8px;font-weight:800;touch-action:none;align-self:end;margin:0 20px}.touch-controls.show{align-items:center}.buffs{top:325px}.buff-chip{padding:7px 10px;font-size:10px}.buff-chip.regen b{color:var(--lime)}@media(max-height:750px) and (min-width:800px){.kitchen-layer{inset:90px 0 0}.prep-sidebar{top:10px}.prep-intro{margin:8px 0 12px;font-size:11px}.prep-sidebar h2{font-size:23px}.prep-step{margin-top:12px}.mix-ingredients>button{padding:7px 10px}.method-list>button{min-height:70px;padding:8px 4px}.meal-preview{margin:10px 0;min-height:45px}.prep-status>strong{font-size:35px}.prep-tray{width:300px}.prep-sidebar>.eyebrow{font-size:9px}}@media(max-width:1000px){.prep-sidebar{left:25px;width:310px}.prep-status,.prep-tray{right:25px}.prep-tray{width:280px}.kitchen-scene-caption{display:none}.battle-meals{bottom:63px;max-width:350px}.battle-meals>button{padding:8px}.battle-meals small{display:none}.battle-meals kbd{font-size:10px}}@media(max-width:650px){.kitchen-layer{inset:135px 0 0;background:linear-gradient(180deg,transparent,#11231ae8 24%,#11231afa 100%);overflow-y:auto;pointer-events:auto;padding:135px 18px 20px}.prep-sidebar{position:relative;left:auto;top:auto;bottom:auto;width:100%;overflow:visible;padding:0}.prep-sidebar>.eyebrow{font-size:8px}.prep-sidebar h2{font-size:22px;margin:8px 0}.prep-intro{font-size:11px;margin:10px 0 14px;max-width:100%}.prep-step{font-size:9px;margin:16px 0 9px}.mix-ingredients{flex-direction:row;gap:6px}.mix-ingredients>button{flex:1;flex-direction:column;text-align:center;padding:9px 5px;gap:5px}.mix-ingredients b{font-size:11px}.mix-ingredients small{font-size:8px;min-height:23px}.mix-ingredients em{font-size:12px}.mix-ingredients i{display:none}.mix-ingredients>button>span{font-size:24px}.method-list>button{min-height:76px}.method-list b{font-size:10px}.method-list small{font-size:7px}.prep-sidebar>.primary{min-height:48px}.prep-status{position:fixed;top:143px;right:18px;width:140px;text-shadow:0 2px 10px #16211b}.prep-status .eyebrow{font-size:7px}.prep-status>strong{font-size:28px;margin-top:7px}.prep-status p{font-size:9px;margin:5px 0}.prep-status .prep-timer-track{margin-top:7px}.prep-tray{position:relative;right:auto;bottom:auto;width:100%;margin-top:20px;max-height:none;padding:15px}.prep-meals{max-height:150px}.prep-tray .primary{min-height:48px;font-size:11px}.prep-tray p{font-size:10px}.meal-preview span{font-size:10px}.battle-meals{bottom:350px;max-width:calc(100% - 36px);gap:6px}.battle-meals>button{padding:7px;gap:6px}.battle-meals>button>span{font-size:9px}.battle-meals kbd{padding:3px 5px;font-size:9px}.buffs{top:275px;gap:5px}.buff-chip{font-size:8px;padding:5px 7px}.touch-controls{bottom:160px}.toast{bottom:290px}.prep-sidebar .cooking{margin-top:15px}.start-controls span:last-child{display:none}}@media(max-height:520px) and (min-width:651px){.prep-sidebar{width:290px;bottom:10px}.prep-tray{bottom:14px;width:250px;padding:12px}.prep-status{top:8px}.prep-status>strong{font-size:27px}.prep-intro{display:none}.prep-sidebar h2{font-size:20px}.method-list>button{min-height:60px}.prep-step{margin-top:10px}.mix-ingredients>button{padding:5px 8px}.mix-ingredients small{display:none}.meal-preview{font-size:10px}.meal-preview span{font-size:9px}.buffs{top:200px}.battle-meals{bottom:42px}}
.cooking-steps{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:15px;text-align:left}.cooking-steps>span{font-size:10px;padding:6px 8px;background:#29372b;border:1px solid #4a5d3f;color:#8da57b;border-radius:3px}.cooking-steps>span.active{color:var(--lime);border-color:var(--lime)}.cooking-steps>span.done{color:#d3e6b8}.prep-sidebar .cooking .primary{background:#536048;color:#cfd9bf}.prep-sidebar .cooking .primary.timing-ready{background:var(--lime);color:#172313;box-shadow:0 0 22px #b8f35a40;animation:ready-pulse .5s infinite alternate}.mix-ingredients b{font-size:14px}.mix-ingredients small{font-size:11px}.method-list b{font-size:13px}.method-list small{font-size:10px}.meal-preview b{font-size:13px}.meal-preview span{font-size:12px}.cook-hint{font-size:12px}.prep-sidebar #cook-instruction{font-size:13px}.prep-tray .primary{font-size:12px}@keyframes ready-pulse{to{box-shadow:0 0 32px #b8f35a80}}@media(max-width:650px){.mix-ingredients b{font-size:12px}.mix-ingredients small{font-size:9px}.method-list b{font-size:12px}.method-list small{font-size:9px}.prep-sidebar #cook-instruction{font-size:12px}.meal-preview span{font-size:11px}}
.serving-list{display:flex;gap:7px}.serving-list button{flex:1;border:1px solid #526747;background:#203025;color:#bacdac;border-radius:4px;text-align:left;padding:10px 12px}.serving-list button.selected{border-color:var(--lime);background:#344b28;color:var(--lime)}.serving-list b{font-size:12px;display:block}.serving-list small{font-size:10px;display:block;margin-top:6px;color:#a5bb97}
/* Host layout around the reusable inventory view. */
#inventory-ui .zfui-hud{top:108px;left:40px;width:310px}
#inventory-ui .zfui-book-button{top:118px;right:300px;bottom:auto}
.kitchen-tools{display:flex;gap:6px;margin:12px 0}.kitchen-tools>button{flex:1;background:#253b2c;color:#cfe5b8;padding:10px 6px;border:1px solid #536d44;border-radius:4px;font-size:10px;font-weight:800}
.prep-sidebar{top:135px}.objective{top:245px}.objective p{display:none}.buffs{top:375px}.bag-panel{display:none}
body[data-mode=playing] .zfui-hud-link{display:none}
#overflow-btn{font-size:11px;padding:9px;margin-top:8px}
@media(max-height:750px) and (min-width:800px){.prep-sidebar{top:125px}}
@media(max-width:1000px){#inventory-ui .zfui-hud{left:25px}#inventory-ui .zfui-book-button{right:270px}}
@media(max-width:650px){#inventory-ui .zfui-hud{top:82px;left:18px;width:calc(100% - 36px);max-width:350px}#inventory-ui .zfui-book-button{display:none}.mission-top{display:none}.prep-sidebar{top:auto}.kitchen-layer{inset:210px 0 0;padding-top:120px;pointer-events:none}.prep-sidebar,.prep-tray{pointer-events:auto}.prep-status{top:218px;right:18px}.objective{top:216px;width:170px}.buffs{top:305px}.score-panel{top:216px}.battle-meals{bottom:285px}.health-panel{width:calc(100% - 36px)}.health-title b{font-size:18px}.touch-controls{bottom:150px}.kitchen-tools>button{font-size:10px;padding:12px 5px}}
@media(max-height:520px) and (min-width:651px){#inventory-ui .zfui-hud{top:83px;width:260px}.prep-sidebar{top:118px}.objective{top:220px}.buffs{top:295px}}
/* Combat state stays readable alongside food and health on both input surfaces. */
.weapon-panel{position:absolute;right:40px;top:235px;min-width:180px;padding:12px 14px;border:1px solid #52635d;border-radius:5px;background:#142126e8;pointer-events:auto;text-align:right}.weapon-panel button{display:flex;align-items:center;justify-content:space-between;gap:28px;width:100%;background:transparent;color:#e8eddc;font-size:11px;font-weight:800;letter-spacing:.7px}.weapon-panel strong{display:block;color:#ffd894;font-family:Unbounded,Arial,sans-serif;font-size:23px;margin-top:8px}.weapon-panel small{display:block;color:#a7bcb1;font-size:9px;margin-top:8px}.weapon-panel.empty{border-color:#b87475}.weapon-panel.empty strong{color:#eea69f}.weapon-panel.melee strong{color:#a7ced0}.touch-center{display:flex;flex-direction:column;align-items:center;gap:12px}.touch-center #touch-dash{margin:0;align-self:auto}.touch-center #touch-weapon{pointer-events:auto;touch-action:none;border-radius:12px;padding:12px 9px;min-width:80px;color:#d5e7cc;border:1px solid #b9ced577;background:#15232fef;font-size:9px;font-weight:800}@media(max-width:1000px){.weapon-panel{right:25px;top:225px}}@media(max-width:650px){.weapon-panel{right:18px;top:275px;padding:9px 11px;min-width:142px;max-width:calc(50% - 18px)}.weapon-panel button{gap:12px;font-size:9px}.weapon-panel strong{font-size:19px}.weapon-panel small{font-size:8px;max-width:140px}.control-strip{gap:10px}}@media(max-height:520px) and (min-width:651px){.weapon-panel{top:185px;right:25px;min-width:165px;padding:8px 11px}.weapon-panel strong{font-size:19px;margin-top:5px}}

/* The physical kitchen leaves the room visible and all cooking actions in the world. */
body[data-kitchen="physical"] .kitchen-layer{inset:0;background:none;padding:0;overflow:hidden;pointer-events:none}
.physical-intro{position:absolute;top:112px;left:40px;max-width:290px;background:#15201dc9;border:1px solid #71887844;border-radius:6px;padding:14px 16px;pointer-events:auto}
.physical-intro p{font-size:12px;line-height:1.6;color:#c3cdbf;margin:9px 0 12px}
.physical-intro button{font-size:10px;letter-spacing:.8px;color:#e4e9da;border:1px solid #7c8b6544;border-radius:4px;background:#243126;padding:9px 13px}
.kitchen-reticle{position:absolute;left:50%;top:50%;width:5px;height:5px;border:1px solid #19251b;border-radius:50%;background:#eff2d7;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #0002}
.physical-prompt{position:absolute;left:50%;bottom:36px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 40px);text-align:center;background:#121e1dd9;border:1px solid #98ac7244;border-radius:6px;padding:11px 18px}
.physical-prompt strong{font-size:13px;color:#e4edcb;display:block}
.physical-prompt span{font-size:9px;color:#98ac9b;display:block;margin-top:8px;line-height:1.6}
body[data-kitchen="physical"] .prep-status{top:113px;right:40px;width:190px}
body[data-kitchen="physical"] .prep-tray{position:absolute;right:28px;bottom:28px;margin:0;width:245px;max-height:33vh;padding:13px;background:#19241ec9}
body[data-kitchen="physical"] .prep-meals{max-height:10vh}
body[data-kitchen="physical"] .prep-tray p{font-size:9px}
@media(max-width:900px){body[data-kitchen="physical"] .prep-status>strong{font-size:30px}.physical-intro{left:16px;top:87px;max-width:230px;padding:10px}.physical-intro p{font-size:10px}body[data-kitchen="physical"] .prep-status{right:16px;top:92px;width:120px}.physical-prompt{bottom:18px;padding:9px 12px}.physical-prompt span{max-width:300px;font-size:8px}body[data-kitchen="physical"] .prep-tray{right:14px;bottom:88px;width:200px}.prep-tray p{display:none}}

/* The passage masks only the scene seam; both halves retain their real cameras. */
#scene-transition{position:fixed;inset:0;z-index:90;pointer-events:none;opacity:0;transition:none;background:#101719;display:flex;align-items:center;justify-content:center;color:#ecebd6}
#scene-transition-label{font-size:10px;letter-spacing:3px;font-weight:800}
body[data-transition=enter] #scene-transition,body[data-transition=exit] #scene-transition,body[data-transition=initial] #scene-transition{pointer-events:auto}
body[data-transition=enter] .hud,body[data-transition=exit] .hud,body[data-transition=initial] .hud,body[data-transition=enter] .kitchen-layer,body[data-transition=exit] .kitchen-layer,body[data-transition=initial] .kitchen-layer{opacity:.35;pointer-events:none}
.exit-note{color:#d9e6b0!important}
body[data-mode=playing] .bag-panel{display:block;bottom:112px;width:235px}
body[data-mode=playing] .bag-panel .inventory,body[data-mode=playing] .bag-header{display:none}
@media(max-width:650px){body[data-mode=playing] .bag-panel{bottom:345px;right:18px;width:160px}.kitchen-button{padding:10px;font-size:9px}}
.passage-art{text-align:center}.passage-pan{position:relative;width:90px;height:24px;margin:0 auto 30px;background:#4f676b;clip-path:polygon(0 0,100% 0,85% 100%,15% 100%);border-top:4px solid #c4d5cb}
.passage-pan i,.passage-pan b,.passage-pan em{position:absolute;display:block;width:15px;height:10px;top:0;left:24px;background:#b8df80;clip-path:polygon(15% 0,85% 0,100% 60%,70% 100%,10% 80%);animation:passage-sizzle .8s ease-in-out infinite}.passage-pan b{left:47px;background:#dbac68;animation-delay:.18s}.passage-pan em{left:62px;background:#9da0cc;animation-delay:.36s}
.passage-steam{display:flex;justify-content:center;gap:12px;height:45px}.passage-steam i{width:3px;height:20px;border-radius:50%;background:#c2d4be;opacity:0;animation:passage-steam 1.4s ease-out infinite}.passage-steam i:nth-child(2){animation-delay:.3s}.passage-steam i:nth-child(3){animation-delay:.6s}
.passage-dots{display:flex;justify-content:center;gap:7px;margin-top:20px}.passage-dots i{width:4px;height:4px;background:#b8df80;border-radius:50%;animation:passage-dot 1s ease-in-out infinite}.passage-dots i:nth-child(2){animation-delay:.15s}.passage-dots i:nth-child(3){animation-delay:.3s}
@keyframes passage-sizzle{50%{transform:translateY(-6px) rotate(12deg)}}@keyframes passage-steam{40%{opacity:.5}100%{transform:translateY(-25px);opacity:0}}@keyframes passage-dot{50%{opacity:.25;transform:scale(.6)}}
@media(prefers-reduced-motion:reduce){.passage-art i,.passage-art b,.passage-art em{animation:none}}
