.kl-kitchen-lab.kl-shell{--kl-ink:#39251f;--kl-cream:#fff7e9;max-width:1340px;margin:1.5rem auto;color:var(--kl-ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.kl-kitchen-lab .kl-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 .65rem}
.kl-kitchen-lab .kl-heading h2{font-size:clamp(1.2rem,3vw,1.65rem);line-height:1.15;margin:.18rem 0 0;color:var(--kl-ink)}
.kl-kitchen-lab .kl-eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.12em;color:#647c68}
.kl-kitchen-lab .kl-fullscreen{border:1px solid #d8cbb8;background:#fffaf1;color:#4a352b;border-radius:999px;padding:.55rem .8rem;font:700 .9rem/1 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-fullscreen:hover{background:#f2e6d4}
.kl-kitchen-lab .kl-stage{position:relative;overflow:hidden;width:100%;aspect-ratio:8/5;min-height:340px;border:3px solid #fff;border-radius:22px;background:#f5d6a8;box-shadow:0 10px 30px #3b281a20;touch-action:none}
.kl-kitchen-lab .kl-stage canvas{display:block;width:100%;height:100%;object-fit:contain;touch-action:none}
.kl-kitchen-lab .kl-loading{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:#69503e;font-weight:700}
.kl-kitchen-lab .kl-footnote{font-size:.9rem;line-height:1.45;color:#705d4e;margin:.6rem .15rem 0}
.kl-kitchen-lab.kl-shell:fullscreen{max-width:none;margin:0;background:#221d1a;padding:2vh 2vw;display:flex;flex-direction:column;justify-content:center}
.kl-kitchen-lab.kl-shell:fullscreen .kl-heading{color:white;max-width:1200px;width:100%;margin:0 auto .65rem}
.kl-kitchen-lab.kl-shell:fullscreen .kl-heading h2{color:white}
.kl-kitchen-lab.kl-shell:fullscreen .kl-stage{width:min(96vw,1200px);height:min(78vh,750px);aspect-ratio:auto;margin:0 auto}
.kl-kitchen-lab.kl-shell:fullscreen .kl-footnote{max-width:1200px;width:100%;margin:.6rem auto 0;color:#eee0ce}
@media(max-width:600px){.kl-kitchen-lab.kl-shell{margin:.8rem auto}.kl-kitchen-lab .kl-heading{align-items:flex-start}.kl-kitchen-lab .kl-fullscreen{padding:.5rem .65rem}.kl-kitchen-lab .kl-stage{aspect-ratio:3/4;min-height:0;border-radius:16px}.kl-kitchen-lab .kl-stage canvas{width:100%!important;height:100%!important}.kl-kitchen-lab .kl-footnote{font-size:.82rem}}

.kl-kitchen-lab .kl-loading[role="status"]{position:absolute;z-index:5;inset:0;display:grid;place-items:center;padding:1rem;text-align:center;background:#f5d6a8;color:#594331;font-weight:800}
.kl-kitchen-lab .kl-ready .kl-loading{display:none}
.kl-kitchen-lab .kl-intro[hidden]{display:none!important}
.kl-kitchen-lab .kl-intro{position:absolute;z-index:4;inset:0;display:grid;place-items:center;padding:1rem;background:#35251e55;backdrop-filter:blur(2px)}
.kl-kitchen-lab .kl-intro-card{width:min(520px,100%);padding:clamp(1.1rem,4vw,2rem);border:3px solid #fff;border-radius:24px;background:linear-gradient(145deg,#fffaf0,#f5e5cb);box-shadow:0 16px 44px #24150d55;text-align:center;color:#39251f}
.kl-kitchen-lab .kl-intro-kicker{display:inline-block;padding:.35rem .65rem;border-radius:999px;background:#e7f0df;color:#42695a;font-size:.72rem;font-weight:900;letter-spacing:.1em}
.kl-kitchen-lab .kl-intro-goal{display:block;margin:.65rem auto .3rem;font-size:clamp(1.5rem,5vw,2.5rem);line-height:1.05}
.kl-kitchen-lab .kl-intro-card p{max-width:36ch;margin:.6rem auto 1rem;color:#6b5646;font-size:clamp(.95rem,2.4vw,1.12rem);line-height:1.45}
.kl-kitchen-lab .kl-start{min-height:52px;padding:.75rem 1.4rem;border:0;border-radius:15px;background:#ef6439;color:white;font:900 1rem/1 system-ui;box-shadow:0 4px 0 #a9482b;cursor:pointer}
.kl-kitchen-lab .kl-start:hover{background:#df552d;transform:translateY(-1px)}
.kl-kitchen-lab .kl-start:focus-visible{outline:3px solid #345b4b;outline-offset:4px}
.kl-kitchen-lab .kl-intro-card{width:min(680px,100%);max-height:96%;overflow:auto}
.kl-kitchen-lab .kl-mode-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.8rem 0;text-align:left}
.kl-kitchen-lab .kl-mode-choice{display:flex;min-height:88px;flex-direction:column;justify-content:center;gap:.3rem;padding:.65rem .7rem;border:2px solid #decab0;border-radius:14px;background:#fffaf1;color:#49362b;text-align:left;cursor:pointer}
.kl-kitchen-lab .kl-mode-choice:hover{border-color:#709078;transform:translateY(-1px)}
.kl-kitchen-lab .kl-mode-choice.is-selected{border-color:#4f795e;background:#e9f1e2;box-shadow:0 0 0 2px #4f795e22}
.kl-kitchen-lab .kl-mode-choice:focus-visible{outline:3px solid #ef6439;outline-offset:2px}
.kl-kitchen-lab .kl-mode-name{font-weight:900;font-size:.95rem}
.kl-kitchen-lab .kl-mode-choice small{color:#6c5948;font-size:.75rem;line-height:1.25}
.kl-kitchen-lab .kl-practice-picker[hidden],.kl-kitchen-lab .kl-rush-best[hidden]{display:none!important}
.kl-kitchen-lab .kl-rush-best{margin:.35rem auto .65rem;padding:.45rem .7rem;border-radius:10px;background:#f2e5cf;color:#594331;font-size:.85rem;font-weight:800}
@media(max-width:600px){.kl-kitchen-lab .kl-mode-choices{grid-template-columns:1fr;gap:.4rem}.kl-kitchen-lab .kl-mode-choice{min-height:58px;padding:.5rem .7rem}.kl-kitchen-lab .kl-mode-choice small{font-size:.78rem}}




.kl-kitchen-lab .kl-hotspots{position:absolute;inset:0;z-index:3;pointer-events:none}
.kl-kitchen-lab .kl-hotspot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;margin:0;padding:0;border:0;border-radius:14px;background:transparent;color:transparent;touch-action:none;cursor:pointer;z-index:1}
.kl-kitchen-lab .kl-hotspot:focus-visible{outline:3px solid #fff7e9;outline-offset:2px;background:#fff7e933}
.kl-kitchen-lab .kl-hotspot:disabled{cursor:default;pointer-events:none}
.kl-kitchen-lab .kl-hit-spatula{cursor:grab}.kl-kitchen-lab .kl-hit-spatula.is-dragging{cursor:grabbing}
.kl-kitchen-lab .kl-hit-reset[hidden]{display:none!important}
.kl-kitchen-lab .kl-hit-reset{z-index:2;border:2px solid #ffbd89;border-radius:15px;background:#ef6439;color:#fffaf1;font:900 15px/1 system-ui;box-shadow:0 3px 0 #a9482b;touch-action:manipulation}
.kl-kitchen-lab .kl-hit-reset:hover{background:#df552d}


.kl-kitchen-lab .kl-stage{isolation:isolate;min-height:390px}
.kl-kitchen-lab .kl-intro{z-index:18}
.kl-kitchen-lab .kl-intro-card{max-width:620px}
.kl-kitchen-lab .kl-select-label{display:block;margin:.2rem 0 .35rem;text-align:left;font-size:.85rem;font-weight:850;color:#594331}
.kl-kitchen-lab .kl-dish-select{display:block;width:100%;min-height:46px;margin:0 0 .8rem;padding:.6rem .75rem;border:1px solid #d7c4a9;border-radius:12px;background:#fff;color:#3f3028;font:700 .95rem/1.2 system-ui;}
.kl-kitchen-lab .kl-live-controls[hidden],.kl-kitchen-lab .kl-result[hidden],.kl-kitchen-lab .kl-ticket-toast[hidden],.kl-kitchen-lab .kl-reward-toast[hidden]{display:none!important}
.kl-kitchen-lab .kl-live-controls{position:absolute;z-index:8;left:2.2%;right:2.2%;bottom:2.1%;display:grid;gap:.5rem;padding:.5rem .65rem;border:1px solid #6c5444;border-radius:17px;background:rgba(42,34,30,.93);box-shadow:0 7px 18px #25170f44;touch-action:manipulation}
.kl-kitchen-lab .kl-live-ingredients{display:flex;align-items:center;justify-content:center;gap:clamp(.3rem,1.3vw,.7rem);min-height:49px;overflow-x:auto}
.kl-kitchen-lab .kl-ing{display:inline-flex;align-items:center;gap:.38rem;flex:0 1 auto;min-width:0;min-height:42px;padding:.38rem .6rem;border:1px solid #d4c1a3;border-radius:999px;background:#fff8e8;color:#4b382d;font:800 .8rem/1 system-ui;cursor:pointer;box-shadow:0 2px 0 #bf9f78;white-space:nowrap;touch-action:none;user-select:none;-webkit-user-select:none}
.kl-kitchen-lab .kl-ing span{font-size:1.2rem;line-height:1}.kl-kitchen-lab .kl-ing small{font-size:.78rem;font-weight:800}.kl-kitchen-lab .kl-ing:hover{transform:translateY(-1px);background:#fffdf5}.kl-kitchen-lab .kl-ing:disabled{opacity:.48;cursor:default;transform:none}.kl-kitchen-lab .kl-ing.used{background:#e8e2d3;color:#70685c}
.kl-kitchen-lab .kl-live-actions{display:flex;align-items:center;justify-content:center;gap:.5rem}
.kl-kitchen-lab .kl-live-actions button{min-height:40px;padding:.5rem .8rem;border:1px solid #746257;border-radius:12px;background:#493b33;color:#fff8eb;font:850 .86rem/1 system-ui;cursor:pointer;touch-action:manipulation}
.kl-kitchen-lab .kl-live-actions button:hover{background:#5b483d}.kl-kitchen-lab .kl-live-heat{display:flex;align-items:center;gap:.35rem;color:white;font-size:.78rem;font-weight:900}
.kl-kitchen-lab .kl-live-heat button{width:40px;padding:0;font-size:1.35rem}.kl-kitchen-lab .kl-heat-readout{min-width:66px;text-align:center}
.kl-kitchen-lab .kl-live-actions .kl-serve{border-color:#ffb994;background:#ee6239;font-size:.92rem}.kl-kitchen-lab .kl-live-actions .kl-serve:hover{background:#d9512e}
.kl-kitchen-lab .kl-live-actions .kl-taste{background:#e8ddca;color:#47362d;border-color:#d4c2a5}
.kl-kitchen-lab .kl-stir-hit{position:absolute;z-index:6;left:80%;top:47%;width:12%;height:22%;min-width:54px;min-height:75px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:0;border:0;background:transparent;color:transparent;touch-action:none;cursor:grab}
.kl-kitchen-lab .kl-stir-hit small{position:absolute;top:100%;width:max-content;color:#4b382c;text-shadow:0 1px #fff;font:800 .7rem/1 system-ui}
.kl-kitchen-lab .kl-stir-hit.dragging{cursor:grabbing}
.kl-kitchen-lab .kl-stir-hit:focus-visible{outline:3px solid #fff8e8;border-radius:12px;background:#fff7e933}
.kl-kitchen-lab .kl-ticket-toast{position:absolute;z-index:12;left:50%;top:26%;transform:translateX(-50%);max-width:88%;padding:.6rem .9rem;border:1px solid #dbc5a4;border-radius:13px;background:#fffaf0;color:#4c392c;font-size:.82rem;font-weight:800;box-shadow:0 5px 18px #2b1c1244}
.kl-kitchen-lab .kl-reward-toast{position:absolute;z-index:24;left:50%;top:8%;transform:translateX(-50%);width:max-content;max-width:88%;padding:.7rem 1rem;border:2px solid #f4d37d;border-radius:15px;background:#fff5d8;color:#503b20;font-size:.9rem;font-weight:900;line-height:1.35;text-align:center;box-shadow:0 7px 22px #24150d66;pointer-events:none}
.kl-kitchen-lab .kl-result{position:absolute;z-index:20;inset:0;display:grid;place-items:center;padding:1rem;background:#22191488;backdrop-filter:blur(2px)}
.kl-kitchen-lab .kl-result-card{width:min(520px,100%);max-height:90%;overflow:auto;padding:clamp(1rem,3vw,1.5rem);border:3px solid #fff;border-radius:23px;background:linear-gradient(145deg,#fff9eb,#f1dfbf);box-shadow:0 16px 42px #24150d66;color:#3b2b22;text-align:center}
.kl-kitchen-lab .kl-result-stars{display:block;color:#e9a629;font-size:2rem;letter-spacing:.12em;line-height:1.15;text-shadow:0 1px #8f6220}
.kl-kitchen-lab .kl-result-card h3{margin:.35rem 0;color:#3b6653;font-size:clamp(1.35rem,4vw,1.8rem)}
.kl-kitchen-lab .kl-result-verdict{margin:.35rem auto .8rem;max-width:44ch;color:#604b3a;line-height:1.4}
.kl-kitchen-lab .kl-result-card ul{display:grid;gap:.35rem;margin:.6rem 0 1rem;padding:0;list-style:none;text-align:left;font-size:.86rem;font-weight:750}
.kl-kitchen-lab .kl-result-card li{padding:.45rem .65rem;border-radius:9px;background:#f9f0df}.kl-kitchen-lab .kl-result-card li.pass{color:#2e6446;background:#e9f1df}.kl-kitchen-lab .kl-result-card li.miss{color:#765946}
.kl-kitchen-lab .kl-next{min-height:46px;padding:.7rem 1.2rem;border:0;border-radius:13px;background:#ee6239;color:#fff;font:900 .95rem/1 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-next:hover{background:#d9512e}.kl-kitchen-lab .kl-next:focus-visible,.kl-kitchen-lab .kl-ing:focus-visible,.kl-kitchen-lab .kl-live-actions button:focus-visible{outline:3px solid #4e785d;outline-offset:3px}
@media(max-width:600px){.kl-kitchen-lab .kl-stage{min-height:480px}.kl-kitchen-lab .kl-live-controls{left:2%;right:2%;bottom:1.5%;padding:.4rem;gap:.35rem}.kl-kitchen-lab .kl-live-ingredients{justify-content:flex-start;min-height:43px}.kl-kitchen-lab .kl-ing{min-height:38px;padding:.32rem .5rem}.kl-kitchen-lab .kl-live-actions{gap:.3rem}.kl-kitchen-lab .kl-live-actions button{min-height:38px;padding:.42rem .55rem}.kl-kitchen-lab .kl-heat-readout{min-width:52px}.kl-kitchen-lab .kl-live-heat button{width:34px}.kl-kitchen-lab .kl-stir-hit{left:79%;top:44%;width:15%;height:21%}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-ing,.kl-kitchen-lab .kl-start,.kl-kitchen-lab .kl-next{transition:none;transform:none!important}}
.kl-kitchen-lab .kl-hotspots{display:none!important}
.kl-kitchen-lab .kl-live-heat[hidden],.kl-kitchen-lab .kl-remove-heat[hidden]{display:none!important}
.kl-kitchen-lab .kl-remove-heat{border-color:#b9d5bd!important;background:#456a56!important}
.kl-kitchen-lab .kl-stage{background:#f5d6a8}
.kl-kitchen-lab .kl-stage canvas{position:relative;z-index:1;background:transparent!important}





.kl-kitchen-lab .kl-loading{z-index:5}
.kl-kitchen-lab .kl-startup-recovery{position:absolute;z-index:30;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.2rem;background:#fff7e9eF;color:#4f3a2b;text-align:center}
.kl-kitchen-lab .kl-startup-recovery[hidden]{display:none!important}
.kl-kitchen-lab .kl-startup-recovery strong{font-size:1.3rem;color:#a33e2c}
.kl-kitchen-lab .kl-startup-message{max-width:38ch}
.kl-kitchen-lab .kl-retry{padding:.7rem 1.1rem;border:0;border-radius:12px;background:#e85f39;color:#fff;font-weight:800;cursor:pointer}

.kl-kitchen-lab .kl-live-controls{position:sticky;left:auto;right:auto;bottom:8px;width:auto;z-index:24;display:grid;gap:.55rem;margin:.65rem 0 .8rem;padding:.65rem;border:1px solid #433831;border-radius:16px;background:#1c1816;color:#f8f0e9;box-shadow:0 10px 30px #2c1c1530}
.kl-kitchen-lab .kl-live-controls[hidden]{display:none!important}
.kl-kitchen-lab .kl-live-hud{display:flex;align-items:center;gap:.55rem;min-height:34px;padding:0 .2rem;color:#fff;font-size:.72rem;font-weight:850;letter-spacing:.06em}
.kl-kitchen-lab .kl-live-order{margin-right:auto}.kl-kitchen-lab .kl-live-score,.kl-kitchen-lab .kl-live-streak{padding:.3rem .5rem;border-radius:999px;background:#342c27;color:#e8d8ca}
.kl-kitchen-lab .kl-live-timer{min-width:52px;padding:.35rem .55rem;border-radius:999px;background:#fff;color:#251f1b;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:0}
.kl-kitchen-lab .kl-live-timer.is-urgent{background:#b83c28;color:#fff;}
.kl-kitchen-lab .kl-sound{border:0;border-radius:999px;padding:.45rem .6rem;background:#342c27;color:#fff;font:750 .72rem/1 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-workbench{display:grid;grid-template-columns:minmax(160px,1.35fr) repeat(5,minmax(86px,.72fr));gap:.45rem;align-items:stretch;padding:.45rem;border:1px solid #39302b;border-radius:13px;background:#151211}
.kl-kitchen-lab .kl-control{display:grid;align-content:center;gap:.3rem;min-width:0;padding:.45rem .55rem;border-radius:10px;background:#24201d}
.kl-kitchen-lab .kl-control label{display:flex;justify-content:space-between;gap:.5rem;color:#f4ede6;font-size:.78rem;font-weight:850}
.kl-kitchen-lab .kl-heat-readout{color:#ffd27e;font-variant-numeric:tabular-nums}
.kl-kitchen-lab .kl-heat-slider{width:100%;accent-color:#f15b2a;touch-action:pan-y}
.kl-kitchen-lab .kl-control small{display:flex;justify-content:space-between;color:#a99b92;font-size:.64rem}
.kl-kitchen-lab .kl-tool{display:grid;grid-template-columns:22px 1fr;align-content:center;align-items:center;column-gap:.35rem;min-height:58px;padding:.45rem .55rem;border:1px solid #51443b;border-radius:11px;background:#292320;color:#fff;font:800 .78rem/1.15 system-ui;text-align:left;cursor:pointer;touch-action:manipulation}
.kl-kitchen-lab .kl-tool>span{grid-row:1/3;font-size:1.05rem;color:#f0b767;text-align:center}
.kl-kitchen-lab .kl-tool b{font-size:.78rem}.kl-kitchen-lab .kl-tool small{grid-column:2;color:#b9ada5;font-size:.62rem;font-weight:600}
.kl-kitchen-lab .kl-tool:hover{transform:translateY(-1px);border-color:#e8a083;background:#372b25}
.kl-kitchen-lab .kl-tool:focus-visible,.kl-kitchen-lab .kl-sound:focus-visible,.kl-kitchen-lab .kl-ing:focus-visible{outline:3px solid #ffbd89;outline-offset:2px}
.kl-kitchen-lab .kl-tool.kl-serve{border-color:#f15b2a;background:#b94828}.kl-kitchen-lab .kl-tool.kl-serve>span{color:#fff}
.kl-kitchen-lab .kl-tool[hidden]{display:none!important}
.kl-kitchen-lab .kl-live-ingredients{display:flex;align-items:center;justify-content:flex-start;gap:.45rem;min-height:43px;overflow-x:auto;padding:.1rem .15rem}
.kl-kitchen-lab .kl-ing{min-height:40px;box-shadow:none;border-color:#51443b;background:#2a2420;color:#fff}
.kl-kitchen-lab .kl-ing.used{background:#39332e;color:#b9ada5}
.kl-kitchen-lab .kl-readout{border:1px solid #433831;border-radius:11px;background:#24201d;color:#f4ede6}
.kl-kitchen-lab .kl-readout summary{display:flex;justify-content:space-between;gap:.75rem;cursor:pointer;list-style:none;padding:.55rem .7rem;font-size:.72rem;font-weight:850}
.kl-kitchen-lab .kl-readout summary::-webkit-details-marker{display:none}.kl-kitchen-lab .kl-readout summary span{color:#b9ada5;font-weight:600}
.kl-kitchen-lab .kl-statehud{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;padding:.2rem .55rem .55rem}
.kl-kitchen-lab .kl-statehud>span{position:relative;display:flex;align-items:flex-end;overflow:hidden;height:31px;padding:.35rem .45rem;border-radius:8px;background:#3b322d}
.kl-kitchen-lab .kl-statehud>span>b{position:absolute;inset:0 auto 0 0;width:calc(var(--v,0)*100%);background:linear-gradient(90deg,#f15b2a55,#f4b25a99);}
.kl-kitchen-lab .kl-statehud>span em{position:relative;font-style:normal;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.kl-kitchen-lab .kl-statehud>span.danger{box-shadow:0 0 0 2px #bd4a35}
.kl-kitchen-lab .kl-actionlog{min-height:18px;padding:.15rem .2rem;color:#b9ada5;font-size:.68rem;line-height:1.35}
.kl-kitchen-lab .kl-actionlog:empty:after{content:'Your cooking moves will appear here';color:#8f8177;font-style:italic}
.kl-kitchen-lab .kl-asset-warning{position:absolute;z-index:22;left:50%;top:72%;transform:translateX(-50%);max-width:90%;padding:.55rem .75rem;border:1px solid #d9bb83;border-radius:10px;background:#fff8e7;color:#594331;font-size:.78rem;font-weight:800;text-align:center;box-shadow:0 4px 14px #2b1c1244}

@media(max-width:760px){.kl-kitchen-lab .kl-live-controls{bottom:4px;padding:.5rem;gap:.4rem}.kl-kitchen-lab .kl-live-hud{gap:.35rem;font-size:.65rem}.kl-kitchen-lab .kl-live-order{font-size:.62rem}.kl-kitchen-lab .kl-live-streak{display:none}.kl-kitchen-lab .kl-workbench{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.35rem}.kl-kitchen-lab .kl-control{grid-column:1/-1;grid-template-columns:1fr 2fr;align-items:center}.kl-kitchen-lab .kl-control label{grid-column:1/-1}.kl-kitchen-lab .kl-control small{grid-column:1/-1}.kl-kitchen-lab .kl-tool{min-height:50px;padding:.38rem}.kl-kitchen-lab .kl-live-ingredients{justify-content:flex-start}.kl-kitchen-lab .kl-readout summary span{max-width:52%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}
@media(max-width:430px){.kl-kitchen-lab .kl-live-score{display:none}.kl-kitchen-lab .kl-live-timer{min-width:44px}.kl-kitchen-lab .kl-tool{grid-template-columns:20px 1fr}.kl-kitchen-lab .kl-tool small{display:none}.kl-kitchen-lab .kl-statehud{grid-template-columns:repeat(2,1fr)}}

.kl-kitchen-lab .kl-live-cooktime{color:#c8bbad;font-size:.72rem;font-weight:750}.kl-kitchen-lab .kl-cooking-note{display:flex;align-items:center;justify-content:center;padding:.4rem .65rem;color:#e7d5ac;font-size:.78rem;font-weight:800}
@media(max-width:760px){.kl-kitchen-lab .kl-live-cooktime{grid-column:1/-1;text-align:center}.kl-kitchen-lab .kl-cooking-note{min-height:38px}}

.kl-kitchen-lab .kl-pause-screen[hidden]{display:none!important}.kl-kitchen-lab .kl-pause-screen{position:absolute;z-index:19;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1rem;background:#251d19c9;color:#fff8eb;text-align:center;backdrop-filter:blur(3px)}.kl-kitchen-lab .kl-pause-screen strong{font-size:clamp(1.3rem,4vw,2rem)}.kl-kitchen-lab .kl-pause-screen span{max-width:36ch;color:#f0dfc8}.kl-kitchen-lab .kl-live-pause{min-height:34px;padding:.35rem .6rem;border:1px solid #716055;border-radius:999px;background:#342c27;color:#fff;font:800 .72rem/1 system-ui;cursor:pointer}.kl-kitchen-lab .kl-live-pause:focus-visible{outline:3px solid #ffbd89;outline-offset:2px}.kl-kitchen-lab .kl-live-cooktime{letter-spacing:0}
@media(max-width:760px){.kl-kitchen-lab .kl-live-pause{min-height:40px}.kl-kitchen-lab .kl-live-cooktime{flex:1;text-align:center}}

.kl-kitchen-lab .kl-coach-character{position:absolute;z-index:9;left:2%;bottom:3%;width:clamp(54px,9vw,82px);height:clamp(70px,12vw,105px);transform-origin:50% 100%;filter:drop-shadow(0 4px 3px #281b1340);pointer-events:none}.kl-kitchen-lab .kl-coach-character svg{display:block;width:100%;height:100%;overflow:visible}@media(max-width:600px){.kl-kitchen-lab .kl-coach-character{left:1%;bottom:2%;width:48px;height:64px}}

/* 0.5.4: stable renderer bounds, real backdrop, and a compact cream workbench. */
.kl-kitchen-lab,.kl-kitchen-lab *{box-sizing:border-box}
.kl-kitchen-lab .kl-kitchen-backdrop{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block;z-index:0;pointer-events:none;border:0;margin:0}
.kl-kitchen-lab .kl-canvas-host{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.kl-kitchen-lab .kl-canvas-host canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;margin:0!important;background:transparent!important}
.kl-kitchen-lab .kl-live-controls{position:relative;inset:auto;width:100%;z-index:auto;border:1px solid #d9c8ac;background:#fff8ec;color:#47382c;box-shadow:0 5px 18px #3e2c1618}
.kl-kitchen-lab .kl-live-hud{color:#47382c;flex-wrap:wrap}
.kl-kitchen-lab .kl-live-score,.kl-kitchen-lab .kl-live-streak{background:#e9eedf;color:#41634c}
.kl-kitchen-lab .kl-live-pause{border-color:#cbb997;background:#fff;color:#47382c}
.kl-kitchen-lab .kl-workbench{grid-template-columns:minmax(160px,1.4fr) repeat(4,minmax(90px,1fr));border:0;background:transparent;padding:0}
.kl-kitchen-lab .kl-control{background:#eee7d8;color:#47382c}
.kl-kitchen-lab .kl-control label{color:#47382c}
.kl-kitchen-lab .kl-control small,.kl-kitchen-lab .kl-live-cooktime{color:#78684f}
.kl-kitchen-lab .kl-heat-readout{color:#a34022}
.kl-kitchen-lab .kl-tool{border-color:#d6c4a4;background:#fff;color:#47382c;box-shadow:0 2px 0 #e5d8c1}
.kl-kitchen-lab .kl-tool>span{color:#44715b}
.kl-kitchen-lab .kl-tool small{color:#78684f}
.kl-kitchen-lab .kl-tool:hover{background:#f5ecd9;border-color:#a98a62}
.kl-kitchen-lab .kl-tool.kl-serve{background:#f15b2a;border-color:#de4e20;color:#fff}
.kl-kitchen-lab .kl-tool.kl-serve small,.kl-kitchen-lab .kl-tool.kl-serve>span,.kl-kitchen-lab .kl-remove-heat small,.kl-kitchen-lab .kl-remove-heat>span{color:#fff}
.kl-kitchen-lab .kl-remove-heat{color:#fff}
.kl-kitchen-lab .kl-ing{background:#fff;border-color:#d6c4a4;color:#47382c}
.kl-kitchen-lab .kl-ing.used{background:#e8e3d7;color:#78684f}
.kl-kitchen-lab .kl-cooking-note{grid-column:1/-1;grid-row:2;padding:.1rem;color:#716149;font-size:.7rem}
.kl-kitchen-lab .kl-readout{background:#f5ecd9;border-color:#d9c8ac;color:#47382c}
.kl-kitchen-lab .kl-readout summary span,.kl-kitchen-lab .kl-actionlog,.kl-kitchen-lab .kl-actionlog:empty:after{color:#78684f}
.kl-kitchen-lab .kl-statehud>span{background:#e2d9c7;color:#47382c}
.kl-kitchen-lab .kl-asset-warning{position:relative;inset:auto;transform:none;max-width:none;margin:.5rem 0}
@media(max-width:760px){
 .kl-kitchen-lab .kl-workbench{grid-template-columns:repeat(2,minmax(0,1fr))}
 .kl-kitchen-lab .kl-cooking-note{grid-row:auto}
 .kl-kitchen-lab .kl-live-controls{inset:auto}
}

/* 0.5.4: game-first controls placed over the cooking scene. */
.kl-kitchen-lab .kl-live-controls{position:absolute;inset:0;z-index:15;display:block;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#fff;pointer-events:none;touch-action:manipulation}
.kl-kitchen-lab .kl-live-controls[hidden]{display:none!important}
.kl-kitchen-lab .kl-live-controls button,.kl-kitchen-lab .kl-live-ingredients{pointer-events:auto}
.kl-kitchen-lab .kl-game-hud{position:absolute;left:1.2%;right:1.2%;top:1.4%;display:flex;align-items:center;gap:clamp(5px,1vw,14px);min-height:38px;pointer-events:none}
.kl-kitchen-lab .kl-game-hud>*{pointer-events:auto}
.kl-kitchen-lab .kl-live-order,.kl-kitchen-lab .kl-live-timer,.kl-kitchen-lab .kl-live-score{padding:.48rem .75rem;border-radius:999px;background:#fffaf0ed;color:#443327;box-shadow:0 2px 9px #31221938;font-size:clamp(.65rem,1vw,.82rem);font-weight:900;white-space:nowrap}
.kl-kitchen-lab .kl-live-timer{margin:auto;min-width:58px;text-align:center;font-size:clamp(.8rem,1.4vw,1.05rem);font-variant-numeric:tabular-nums}
.kl-kitchen-lab .kl-live-score{margin-left:auto}.kl-kitchen-lab .kl-live-streak{display:none}
.kl-kitchen-lab .kl-live-pause,.kl-kitchen-lab .kl-settings-toggle{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #cbb997;border-radius:50%;background:#fffaf0ed;color:#49392c;font:900 1.1rem/1 system-ui;cursor:pointer;box-shadow:0 2px 9px #31221938}
.kl-kitchen-lab .kl-goal-card{position:absolute;left:1.5%;top:8.3%;width:min(39%,500px);padding:.55rem .8rem;border:1px solid #e9d8b5;border-radius:15px;background:#fff9e9ed;color:#46352a;box-shadow:0 3px 12px #3020162e;pointer-events:none}
.kl-kitchen-lab .kl-goal-card>span{display:block;color:#50745f;font-size:.6rem;font-weight:950;letter-spacing:.12em}
.kl-kitchen-lab .kl-game-goal-title{display:block;margin:.16rem 0;font-size:clamp(.76rem,1.2vw,1rem);line-height:1.2}
.kl-kitchen-lab .kl-game-goal-copy{margin:.12rem 0 0;font-size:clamp(.8rem,1.5vw,1.18rem);line-height:1.15}
.kl-kitchen-lab .kl-live-ingredients{position:absolute;left:1.4%;top:25%;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.55rem;max-width:24%;max-height:47%;overflow:auto;padding:.25rem;pointer-events:auto}
.kl-kitchen-lab .kl-live-ingredients .kl-ing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-width:54px;min-height:58px;padding:.35rem .45rem;border:0;border-radius:13px;background:#42372bd9;color:#fff9ec;box-shadow:none;white-space:normal;text-align:center;text-shadow:0 1px 2px #261912;font-size:.66rem}
.kl-kitchen-lab .kl-live-ingredients .kl-ing span{font-size:1.55rem}.kl-kitchen-lab .kl-live-ingredients .kl-ing small{font-size:.62rem;line-height:1.05}
.kl-kitchen-lab .kl-game-actions{position:absolute;right:1.25%;top:31%;display:flex;flex-direction:column;gap:.55rem;align-items:center}
.kl-kitchen-lab .kl-icon-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;min-width:50px;min-height:58px;padding:.25rem .4rem;border:0;border-radius:14px;background:#285448de;color:#fff;font:900 .68rem/1 system-ui;cursor:pointer;text-shadow:0 1px 2px #172a20;box-shadow:0 2px 7px #261a1338}
.kl-kitchen-lab .kl-icon-action>span{font-size:1.6rem;line-height:1}.kl-kitchen-lab .kl-icon-action small{font-size:.61rem;letter-spacing:.04em}
.kl-kitchen-lab .kl-icon-action:hover{filter:brightness(1.12);transform:translateY(-1px)}.kl-kitchen-lab .kl-icon-action:focus-visible,.kl-kitchen-lab .kl-game-hud button:focus-visible,.kl-kitchen-lab .kl-burner-control button:focus-visible{outline:3px solid #fff6d5;outline-offset:2px}
.kl-kitchen-lab .kl-burner-control{position:absolute;left:50%;bottom:11%;transform:translateX(-50%);display:flex;align-items:center;gap:.7rem;padding:.35rem .65rem;border:1px solid #f4e1b4;border-radius:999px;background:#334a40df;box-shadow:0 3px 12px #20160f55;pointer-events:auto}
.kl-kitchen-lab .kl-burner-control button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #c5b08f;border-radius:50%;background:#f8eedc;color:#423329;font:900 1.45rem/1 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-burner-control output{min-width:1.2em;color:#fff;font-size:1rem;font-weight:950;text-align:center}
.kl-kitchen-lab .kl-remove-heat{position:absolute;left:calc(50% + 116px);bottom:12%;min-width:44px;min-height:48px;background:#435c4b!important}
.kl-kitchen-lab .kl-remove-heat[disabled]{opacity:.55;cursor:default}
.kl-kitchen-lab .kl-serve{position:absolute;right:1.6%;bottom:2%;min-width:78px;min-height:78px;border:2px solid #fff5dc;background:#f15b2a!important;border-radius:22px}
.kl-kitchen-lab .kl-serve>span{font-size:1.8rem}
.kl-kitchen-lab .kl-settings-panel{position:absolute;z-index:20;right:1.2%;top:9%;width:min(360px,92%);max-height:82%;overflow:auto;padding:.8rem;border:1px solid #e6d5b5;border-radius:18px;background:#fff9ecf5;color:#45352a;box-shadow:0 9px 26px #23170f66;pointer-events:auto}
.kl-kitchen-lab .kl-settings-panel[hidden]{display:none!important}
.kl-kitchen-lab .kl-settings-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem}.kl-kitchen-lab .kl-settings-close{width:32px;height:32px;border:0;border-radius:50%;background:#eee3d0;font-size:1.4rem;cursor:pointer}
.kl-kitchen-lab .kl-settings-heat{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.35rem;font-size:.8rem;font-weight:850}.kl-kitchen-lab .kl-settings-heat input{grid-column:1/-1;width:100%;accent-color:#f15b2a}
.kl-kitchen-lab .kl-settings-taste{padding:.5rem .7rem;border:1px solid #d6c4a4;border-radius:10px;background:#fff;color:#47382c;font-weight:800}
.kl-kitchen-lab .kl-settings-panel .kl-readout{margin-top:.55rem;background:#f6eddb;border-color:#d9c8ac;color:#47382c}
.kl-kitchen-lab .kl-settings-panel .kl-statehud>span{background:#e2d9c7;color:#47382c}.kl-kitchen-lab .kl-settings-panel .kl-actionlog{color:#78684f}.kl-kitchen-lab .kl-settings-panel .kl-live-cooktime{display:block;margin-top:.5rem;color:#78684f}
@media(max-width:600px){
 .kl-kitchen-lab .kl-game-hud{left:2%;right:2%;top:1.3%;gap:4px}.kl-kitchen-lab .kl-game-hud .kl-live-order,.kl-kitchen-lab .kl-game-hud .kl-live-timer,.kl-kitchen-lab .kl-game-hud .kl-live-score{padding:.38rem .52rem;font-size:.62rem}
 .kl-kitchen-lab .kl-live-pause,.kl-kitchen-lab .kl-settings-toggle{width:34px;height:34px}.kl-kitchen-lab .kl-goal-card{left:2%;top:8%;width:70%;padding:.45rem .6rem}
 .kl-kitchen-lab .kl-live-ingredients{top:28%;left:1%;max-width:20%;gap:.35rem}.kl-kitchen-lab .kl-live-ingredients .kl-ing{min-width:44px;min-height:48px;padding:.25rem}
 .kl-kitchen-lab .kl-live-ingredients .kl-ing span{font-size:1.3rem}.kl-kitchen-lab .kl-live-ingredients .kl-ing small{font-size:.55rem}
 .kl-kitchen-lab .kl-game-actions{right:1%;top:34%;gap:.35rem}.kl-kitchen-lab .kl-icon-action{min-width:43px;min-height:49px;padding:.2rem}.kl-kitchen-lab .kl-icon-action>span{font-size:1.3rem}
 .kl-kitchen-lab .kl-burner-control{bottom:22%;gap:.4rem;padding:.25rem .45rem}.kl-kitchen-lab .kl-burner-control button{width:33px;height:33px}.kl-kitchen-lab .kl-remove-heat{left:calc(50% + 91px);bottom:23%;min-width:40px;min-height:44px}
 .kl-kitchen-lab .kl-serve{right:1%;bottom:1%;min-width:65px;min-height:65px;border-radius:18px}
}
@media(max-width:380px){.kl-kitchen-lab .kl-live-streak{display:none}.kl-kitchen-lab .kl-game-hud .kl-live-score{display:none}.kl-kitchen-lab .kl-live-ingredients{max-width:18%}.kl-kitchen-lab .kl-remove-heat{left:calc(50% + 82px)}}

/* 0.5.4: visible gas burner, jiggle cues and audio settings. */
.kl-kitchen-lab .kl-live-ingredients{inset:0;left:0;top:0;width:100%;height:100%;max-width:none;max-height:none;overflow:visible;display:block;pointer-events:none}
.kl-kitchen-lab .kl-live-ingredients .kl-ing{position:absolute;left:var(--ingredient-x,10%);top:var(--ingredient-y,40%);translate:-50% -50%;transform:none;pointer-events:auto}
.kl-kitchen-lab .kl-live-ingredients .kl-ing:hover{transform:none;translate:-50% -50%;filter:brightness(1.13)}
.kl-kitchen-lab .kl-live-ingredients .kl-ing.used{translate:-50% -50%;opacity:.55}

.kl-kitchen-lab .kl-burner-control{bottom:13.5%}
.kl-kitchen-lab .kl-settings-sounds{display:flex;gap:.45rem;margin:.55rem 0}
.kl-kitchen-lab .kl-settings-sounds button{padding:.45rem .65rem;border:1px solid #d6c4a4;border-radius:999px;background:#fff;color:#47382c;font-size:.76rem;font-weight:850;cursor:pointer}
.kl-kitchen-lab .kl-settings-sounds button[aria-pressed="false"]{background:#e7e1d5;color:#766957}
@media(max-width:600px){.kl-kitchen-lab .kl-burner-control{bottom:22%}.kl-kitchen-lab .kl-remove-heat{bottom:23%}}



.kl-kitchen-lab .kl-time-track{position:absolute;left:39%;top:7.1%;width:22%;height:5px;overflow:hidden;border-radius:99px;background:#58473c88}
.kl-kitchen-lab .kl-time-fill{display:block;width:100%;height:100%;background:#ef623e}
.kl-kitchen-lab .kl-coach-bubble{position:absolute;z-index:10;left:8.5%;bottom:2.6%;width:min(34%,370px);padding:.6rem .85rem;border:1px solid #f1dcad;border-radius:17px;background:#fff8e9;color:#49392c;font-size:clamp(.72rem,1.25vw,.92rem);font-weight:850;line-height:1.25;box-shadow:0 3px 12px #281a1350;pointer-events:none}
.kl-kitchen-lab .kl-coach-bubble:before{content:"";position:absolute;left:-8px;bottom:12px;width:14px;height:14px;transform:rotate(45deg);border-left:1px solid #f1dcad;border-bottom:1px solid #f1dcad;background:#fff8e9}
.kl-kitchen-lab .kl-coach-bubble[hidden]{display:none!important}
.kl-kitchen-lab .kl-profile-mascot .kl-coach-character{width:clamp(76px,10vw,108px);height:clamp(76px,10vw,108px);transform:none!important}
.kl-kitchen-lab .kl-profile-mascot .kl-coach-character svg{visibility:hidden}
.kl-kitchen-lab .kl-profile-mascot .kl-coach-bubble{left:calc(2% + clamp(76px,10vw,108px) - 8px)}
.kl-kitchen-lab .kl-mascot-status{margin:.55rem 0;padding:.45rem .6rem;border-radius:8px;background:#e8eee1;color:#3f5c4b;font-size:.78rem;line-height:1.35}
@media(max-width:600px){.kl-kitchen-lab .kl-profile-mascot .kl-coach-character{width:64px;height:64px}.kl-kitchen-lab .kl-profile-mascot .kl-coach-bubble{left:calc(1% + 60px);width:43%}}
@media(max-width:600px){.kl-kitchen-lab .kl-time-track{top:6.5%;left:39%;width:22%;height:4px}.kl-kitchen-lab .kl-coach-bubble{left:10%;bottom:2%;width:44%;padding:.45rem .6rem;font-size:.7rem}}


/* 0.5.6: each ticket gets a focused goal briefing before its timer begins. */
.kl-kitchen-lab .kl-order-brief{position:absolute;inset:0;z-index:40;display:grid;place-items:center;padding:clamp(14px,4vw,44px);background:rgba(48,35,27,.30);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.kl-kitchen-lab .kl-order-brief[hidden]{display:none!important}
.kl-kitchen-lab .kl-order-brief-card{display:flex;flex-direction:column;align-items:center;gap:.8rem;width:min(76%,780px);padding:clamp(22px,4vw,44px);border:2px solid #fff;border-radius:28px;background:linear-gradient(145deg,#fffaf0,#f8e8cf);box-shadow:0 20px 55px #26170f55;text-align:center;color:#453026}
.kl-kitchen-lab .kl-order-brief-card{animation:kl-order-arrive .34s cubic-bezier(.2,.85,.25,1) both}
.kl-kitchen-lab .kl-order-progress{align-self:flex-start;padding:.4rem .75rem;border-radius:999px;background:#f1e1c9;color:#594336;font-weight:900;letter-spacing:.04em}
.kl-kitchen-lab .kl-order-kicker{padding:.45rem .9rem;border-radius:999px;background:#e5efdd;color:#41654f;font-size:.8rem;font-weight:950;letter-spacing:.12em}
.kl-kitchen-lab .kl-order-goal-title{max-width:26ch;margin:.2rem 0;color:#3d2a22;font-size:clamp(1.55rem,3.3vw,2.7rem);font-weight:950;line-height:1.13;text-wrap:balance}
.kl-kitchen-lab .kl-order-goal-copy{margin:0;color:#6b5545;font-size:clamp(.95rem,1.5vw,1.1rem);font-weight:650}
.kl-kitchen-lab .kl-order-start{min-width:220px;min-height:64px;margin-top:.35rem;padding:.8rem 1.5rem;border:0;border-radius:18px;background:#f15b2a;color:#fff;font-size:1.25rem;font-weight:950;box-shadow:0 5px 0 #bd4522;cursor:pointer}
.kl-kitchen-lab .kl-order-start:hover{background:#df4f23;transform:translateY(-1px)}
.kl-kitchen-lab .kl-order-start:focus-visible{outline:4px solid #47725a;outline-offset:4px}
@media(max-width:600px){.kl-kitchen-lab .kl-order-brief-card{width:min(94%,520px);padding:22px 18px;border-radius:22px}.kl-kitchen-lab .kl-order-start{min-width:190px;min-height:56px}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-order-start:hover{transform:none}}

/* 0.5.6: ingredients float as icons; Phaser controls their urgency cue. */
.kl-kitchen-lab .kl-live-ingredients .kl-ing{min-width:58px;min-height:64px;padding:.2rem .15rem;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#fffaf0;text-shadow:0 2px 4px #2a1a10,0 0 7px #34251d;font-weight:900}
.kl-kitchen-lab .kl-live-ingredients .kl-ing span{font-size:2rem;filter:drop-shadow(0 2px 2px #35271e80)}
.kl-kitchen-lab .kl-live-ingredients .kl-ing small{color:#fffaf0;font-size:.65rem;font-weight:900;text-shadow:0 2px 4px #24160f,0 0 6px #302117}
.kl-kitchen-lab .kl-live-ingredients .kl-ing:hover{background:transparent!important;filter:brightness(1.15) drop-shadow(0 0 6px #ffe5a8);transform:none}
.kl-kitchen-lab .kl-live-ingredients .kl-ing.used{opacity:.42;background:transparent!important}

/* The visible burner control communicates level through flame height only. */
.kl-kitchen-lab .kl-burner-control output,.kl-kitchen-lab .kl-settings-heat-value{display:none!important}

/* 0.5.9: action controls are single large icons; the bowl/body anchors center separately from long handles. */
.kl-kitchen-lab .kl-game-actions .kl-icon-action{display:grid;width:56px;height:56px;min-width:56px;min-height:56px;padding:0;border-radius:50%;place-items:center}
.kl-kitchen-lab .kl-game-actions .kl-icon-action>span{font-size:1.8rem}
.kl-kitchen-lab .kl-game-actions .kl-icon-action small,.kl-kitchen-lab .kl-stir-hit small{display:none}
@media(max-width:600px){.kl-kitchen-lab .kl-game-actions .kl-icon-action{width:48px;height:48px;min-width:48px;min-height:48px}.kl-kitchen-lab .kl-game-actions .kl-icon-action>span{font-size:1.55rem}}

/* UX pass 1.1.0: cookware fit, a single visible stir control, and real hidden states. */
.kl-kitchen-lab .kl-burner-control[hidden],
.kl-kitchen-lab .kl-remove-heat[hidden],
.kl-kitchen-lab .kl-settings-heat[hidden]{display:none!important}
.kl-kitchen-lab .kl-stir-hit{color:transparent!important;font-size:0!important;background:transparent!important}
.kl-kitchen-lab .kl-stir-hit span{display:none!important}


/* Kitchen Lab 1.3.0: clear goal strip and borderless action glyphs. */
.kl-kitchen-lab .kl-goal-card{left:50%;top:7.8%;transform:translateX(-50%);width:min(460px,58%);padding:.38rem .78rem;border:1px solid #6e8c6d;border-radius:12px;background:#fffaf0f5;box-shadow:0 3px 12px #30201630;text-align:center}
.kl-kitchen-lab .kl-goal-card>span{display:inline-block;padding:.12rem .48rem;border-radius:999px;background:#456f59;color:#fffaf0;font-size:.61rem;font-weight:950;letter-spacing:.13em}
.kl-kitchen-lab .kl-game-goal-title{margin:.12rem 0;font-size:clamp(.84rem,1.25vw,1.02rem);font-weight:900;line-height:1.15;color:#34271f}
.kl-kitchen-lab .kl-game-goal-copy{margin:.06rem 0 0;font-size:clamp(.76rem,1.05vw,.92rem);font-weight:650;line-height:1.18;color:#514135}
.kl-kitchen-lab .kl-game-actions .kl-icon-action{width:56px;height:56px;min-width:56px;min-height:56px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#fffaf0;text-shadow:0 2px 4px #24160f,0 0 8px #24160f;filter:drop-shadow(0 2px 2px #24160f80)}
.kl-kitchen-lab .kl-game-actions .kl-icon-action:hover{background:transparent;filter:brightness(1.12) drop-shadow(0 3px 4px #24160f)}
@media(max-width:600px){.kl-kitchen-lab .kl-goal-card{left:50%;top:8%;width:min(78%,460px);padding:.34rem .52rem}.kl-kitchen-lab .kl-game-actions .kl-icon-action{width:48px;height:48px;min-width:48px;min-height:48px}}

/* 1.6.0: clear the banner; keep controls as independent game HUD icons. */
.kl-kitchen-lab .kl-stage:focus{outline:none}
.kl-kitchen-lab .kl-game-hud{left:0;right:0;top:0;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#fffaf0;pointer-events:none}
.kl-kitchen-lab .kl-game-hud>*{pointer-events:none}
.kl-kitchen-lab .kl-hud-meta{position:absolute;top:1.4%;left:1.4%;right:1.4%;display:flex;align-items:center;gap:clamp(5px,.7vw,10px);min-width:0;padding:0;border:0;pointer-events:none}
.kl-kitchen-lab .kl-hud-meta .kl-live-order,.kl-kitchen-lab .kl-hud-meta .kl-live-score,.kl-kitchen-lab .kl-hud-meta .kl-live-streak{padding:.33rem .58rem;border:0;border-radius:999px;background:#365846db;color:#fffaf0;box-shadow:0 2px 6px #24170f45;font-size:10px;letter-spacing:.035em;line-height:1.15;white-space:nowrap}
.kl-kitchen-lab .kl-build-mark{position:absolute;left:50%;top:1.55%;transform:translateX(-50%);padding:2px 6px;border-radius:999px;background:#3658469c;color:#fffaf0d9;font:800 8px/1.25 system-ui;letter-spacing:.07em;white-space:nowrap;pointer-events:none}
.kl-kitchen-lab .kl-hud-meta .kl-live-score{margin-left:auto;background:#fffaf0e8;color:#46372a;letter-spacing:0}
.kl-kitchen-lab .kl-hud-meta button{display:grid;place-items:center;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;border:1px solid #fff5dfb0;border-radius:50%;background:#fffaf0e8;color:#49392c;box-shadow:0 2px 7px #24170f40;font-size:17px;pointer-events:auto}
.kl-kitchen-lab .kl-game-hud .kl-goal-card{position:absolute;left:1.4%;right:auto;top:6.7%;bottom:auto;transform:none;width:min(61%,650px);min-width:0;margin:0;padding:.38rem .62rem;border:1px solid #fff1d1a6;border-radius:11px;background:#fff9e9d9;box-shadow:0 2px 8px #30201620;text-align:left;pointer-events:none}
.kl-kitchen-lab .kl-goal-heading{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 2px;line-height:1.05}
.kl-kitchen-lab .kl-goal-status{font:850 8px/1.2 system-ui;letter-spacing:.09em;color:#50725a}
.kl-kitchen-lab .kl-goal-status.is-complete{color:#23734d}
.kl-kitchen-lab .kl-game-hud .kl-game-goal-title{display:inline;margin:0;color:#806c52;font-size:10px;font-weight:650;line-height:1.1}
.kl-kitchen-lab .kl-game-hud .kl-game-goal-copy{margin:0;color:#3c3428;font-size:clamp(12px,1.18vw,15px);font-weight:750;line-height:1.18;text-wrap:pretty}
.kl-kitchen-lab .kl-clock{position:absolute;top:6.2%;right:1.4%;width:78px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;padding:5px 6px;border:1px solid #fff1d1a6;border-radius:11px;background:#365846e8;color:#fffaf0;box-shadow:0 2px 8px #24170f40;pointer-events:none}
.kl-kitchen-lab .kl-clock-label{font-size:8px;font-weight:850;letter-spacing:.08em;white-space:nowrap}
.kl-kitchen-lab .kl-game-hud .kl-live-timer{display:block;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;font-size:23px;line-height:1;font-weight:900;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kl-kitchen-lab .kl-clock .kl-time-track{position:static;inset:auto;width:100%;height:4px;margin:2px 0 0;border:0;border-radius:10px;background:#ffffff70;overflow:hidden}
.kl-kitchen-lab .kl-clock .kl-time-track[hidden]{display:none!important}
.kl-kitchen-lab .kl-clock .kl-time-fill{width:100%;height:100%;border-radius:inherit;background:#c4ebbc;color:inherit}
.kl-kitchen-lab .kl-clock.is-urgent{color:#ffdf90}.kl-kitchen-lab .kl-clock.is-critical{color:#ffd0b4}
.kl-kitchen-lab .kl-game-actions .kl-icon-action{border:0!important;background:transparent!important;box-shadow:none!important}
.kl-kitchen-lab .kl-game-actions .kl-spatula-icon{display:block;width:48px;height:66px;max-width:none;object-fit:contain;transform:rotate(-25deg);filter:drop-shadow(0 2px 2px #33251b90);pointer-events:none;user-select:none}
.kl-kitchen-lab .kl-spatula-dragging,.kl-kitchen-lab .kl-spatula-dragging canvas{cursor:none}
.kl-kitchen-lab .kl-spatula-dragging .kl-spatula-icon{opacity:.25}
@media(max-width:600px){
 .kl-kitchen-lab .kl-hud-meta{top:1.2%;left:1.5%;right:1.5%;gap:5px}.kl-kitchen-lab .kl-hud-meta .kl-live-order,.kl-kitchen-lab .kl-hud-meta .kl-live-score{padding:.29rem .44rem;font-size:9px}
 .kl-kitchen-lab .kl-hud-meta .kl-live-streak{display:none}.kl-kitchen-lab .kl-hud-meta button{width:32px;height:32px;min-width:32px;min-height:32px}
 .kl-kitchen-lab .kl-game-hud .kl-goal-card{left:1.5%;top:6.2%;width:calc(100% - 94px);padding:.31rem .44rem;border-radius:9px}
 .kl-kitchen-lab .kl-game-hud .kl-game-goal-copy{font-size:11px;line-height:1.12}.kl-kitchen-lab .kl-game-hud .kl-game-goal-title{font-size:9px}
 .kl-kitchen-lab .kl-clock{top:6.2%;right:1.5%;width:76px;padding:4px 5px}.kl-kitchen-lab .kl-game-hud .kl-live-timer{font-size:21px}.kl-kitchen-lab .kl-clock-label{font-size:7px}
 .kl-kitchen-lab .kl-game-actions .kl-spatula-icon{width:42px;height:57px}
}
.kl-kitchen-lab .kl-resume{margin-top:14px;padding:13px 24px;border:2px solid #fff5df;border-radius:14px;background:#f15b2a;color:#fff;font:850 17px/1.2 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-resume:focus-visible{outline:3px solid #ffe4a1;outline-offset:4px}
@media(max-width:600px){
 .kl-kitchen-lab .kl-burner-control{top:var(--kl-burner-top,72%);bottom:auto}
 .kl-kitchen-lab .kl-remove-heat{top:var(--kl-burner-top,72%);bottom:auto;left:calc(50% + 65px)}
}

/* 1.8.24: ingredient artwork stays borderless; Phaser drives the helpful-item cue. */
.kl-kitchen-lab .kl-live-ingredients .kl-ing{min-width:96px;min-height:108px;gap:.14rem;overflow:visible}
.kl-kitchen-lab .kl-ing-art{display:block;width:80px;height:80px;object-fit:contain;filter:drop-shadow(0 3px 3px #23170f88);pointer-events:none}
.kl-kitchen-lab .kl-live-ingredients .kl-ing-symbol{display:block;font-size:2rem;line-height:1;filter:drop-shadow(0 2px 3px #23170f88)}
.kl-kitchen-lab .kl-live-ingredients .kl-ing small{max-width:84px;color:#fffaf0;font-size:.65rem;font-weight:900;text-shadow:0 2px 4px #24160f,0 0 6px #302117}
.kl-kitchen-lab .kl-live-ingredients .kl-ing:focus-visible{outline:2px solid #ffe5a8;outline-offset:4px;border-radius:10px}
@media(max-width:600px){.kl-kitchen-lab .kl-live-ingredients .kl-ing{min-width:58px;min-height:64px}.kl-kitchen-lab .kl-ing-art{width:44px;height:44px}.kl-kitchen-lab .kl-live-ingredients .kl-ing small{font-size:.58rem}}

/* 1.8.24: crisp action artwork, discoverable hint invitation, and pointer-friendly ingredient drags. */
.kl-kitchen-lab .kl-game-actions .kl-icon-action img{display:block;width:42px;height:42px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 2px #24160f70)}
.kl-kitchen-lab .kl-game-actions .kl-hint.is-inviting img{filter:drop-shadow(0 0 7px #ffe08a) drop-shadow(0 2px 2px #24160f80)}
.kl-kitchen-lab .kl-ing{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.kl-kitchen-lab .kl-ing:active{cursor:grabbing}
.kl-kitchen-lab .kl-ing-drag-proxy{position:fixed;z-index:100000;pointer-events:none;display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;border:1px solid #d6c4a4;border-radius:12px;background:#fff8ec;color:#47382c;font-weight:800;box-shadow:0 8px 28px #25180f55;transform:translate(-50%,-50%)}
.kl-kitchen-lab .kl-ing-drag-proxy img{width:48px;height:48px;object-fit:contain}
@media(max-width:600px){.kl-kitchen-lab .kl-game-actions .kl-icon-action img{width:37px;height:37px}}

/* More legible ingredient targets and a face-level coach bubble. */
.kl-kitchen-lab .kl-ing-art{width:112px;height:112px}
.kl-kitchen-lab .kl-live-ingredients .kl-ing small{font-size:clamp(.85rem,1.2vw,1rem);text-shadow:0 2px 3px #382413,0 0 5px #382413}
.kl-kitchen-lab .kl-coach-bubble,.kl-kitchen-lab .kl-profile-mascot .kl-coach-bubble{bottom:7%;width:min(27%,290px);border-radius:24px;padding:.8rem 1rem;user-select:none}
.kl-kitchen-lab .kl-coach-bubble:before{bottom:18px;left:-9px;width:17px;height:17px}
@media(max-width:600px){.kl-kitchen-lab .kl-ing-art{width:60px;height:60px}.kl-kitchen-lab .kl-live-ingredients .kl-ing small{font-size:.72rem}.kl-kitchen-lab .kl-coach-bubble,.kl-kitchen-lab .kl-profile-mascot .kl-coach-bubble{bottom:6%;width:42%;font-size:.72rem;padding:.6rem .7rem}}

/* 1.8.35: resize-aware ingredient rails and a narrow-screen shelf. */
.kl-kitchen-lab .kl-ing-art{width:var(--kl-ingredient-size,112px);height:var(--kl-ingredient-size,112px)}
.kl-kitchen-lab .kl-live-ingredients .kl-ing small{max-width:100%;line-height:1.15}
@media(max-width:600px){.kl-kitchen-lab .kl-ing-art{width:var(--kl-ingredient-size,60px);height:var(--kl-ingredient-size,60px)}}

.kl-ing{touch-action:none}.kl-ing img{pointer-events:none;user-select:none;-webkit-user-drag:none}.kl-ing-drag-proxy.is-valid{filter:drop-shadow(0 0 12px #83d5a2)}.kl-ing-addition{position:fixed;z-index:99999;width:76px;height:76px;pointer-events:none;font-size:45px}.kl-ing-addition img{width:100%;height:100%;object-fit:contain}.kl-ing-drag-proxy span:first-child{font-size:44px}
.kl-ing-drag-proxy{position:fixed;z-index:99999;pointer-events:none;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:3px;color:#fff8e9;text-shadow:0 2px 3px #382413;font:700 14px system-ui}.kl-ing-drag-proxy img{width:76px;height:76px;object-fit:contain}.kl-ing-drag-proxy span{max-width:110px;text-align:center}

/* 1.8.40: lively mode selection and results, plus a stable visible drag source. */
.kl-kitchen-lab .kl-intro-card{position:relative;background:radial-gradient(circle at 4% 5%,#ffe1b8 0,transparent 26%),radial-gradient(circle at 98% 0%,#dfecd5 0,transparent 25%),linear-gradient(145deg,#fffaf0,#f5e5cb)}
.kl-kitchen-lab .kl-intro-welcome{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:.55rem auto .05rem;color:#50735a;font-size:.88rem;font-weight:850}
.kl-kitchen-lab .kl-intro-chef{display:inline-grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#fff7e5;box-shadow:0 2px 7px #74553424;font-size:1.35rem;animation:kl-chef-bob 2.2s ease-in-out infinite}
.kl-kitchen-lab .kl-intro-kicker{animation:kl-kicker-glow 3.8s ease-in-out infinite}
.kl-kitchen-lab .kl-mode-choice{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.kl-kitchen-lab .kl-mode-choice:hover,.kl-kitchen-lab .kl-mode-choice:focus-visible{box-shadow:0 5px 14px #4a634322}
.kl-kitchen-lab .kl-mode-icon{display:block;font-size:1.45rem;line-height:1.1;filter:drop-shadow(0 2px 2px #6a4c2c26)}
.kl-kitchen-lab .kl-shift-teaser{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:.25rem auto .8rem;padding:.48rem .7rem;border:1px solid #e1cfad;border-radius:13px;background:#fff8e9b8;color:#596d50;font-size:.68rem;font-weight:900;letter-spacing:.08em}
.kl-kitchen-lab .kl-shift-teaser[hidden]{display:none!important}
.kl-kitchen-lab .kl-shift-teaser>div{display:flex;gap:.28rem}
.kl-kitchen-lab .kl-shift-teaser i{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:#e8efdc;color:#41664e;font-size:.67rem;font-style:normal;letter-spacing:0}
.kl-kitchen-lab .kl-result{background:#22191466;backdrop-filter:blur(1px)}
.kl-kitchen-lab .kl-result-card{animation:kl-result-arrive .38s cubic-bezier(.2,.85,.25,1) both}
.kl-kitchen-lab .kl-result-card{position:relative}
.kl-kitchen-lab .kl-result-dish{display:flex;align-items:center;justify-content:center;gap:.55rem;max-width:100%;margin:0 auto .55rem;padding:.42rem .8rem;border:1px solid #e3cfaa;border-radius:999px;background:#fff8e9;color:#506b52;box-shadow:0 3px 8px #57432817}
.kl-kitchen-lab .kl-result-dish-icon{font-size:1.55rem;line-height:1;filter:drop-shadow(0 2px 2px #63472b28)}
.kl-kitchen-lab .kl-result-dish-name{max-width:32ch;overflow:hidden;color:#4a654f;font-size:.9rem;line-height:1.25;text-overflow:ellipsis}
.kl-kitchen-lab .kl-result-progress{display:block;margin:-.15rem auto .15rem;color:#6c7b5d;font-size:.64rem;font-weight:950;letter-spacing:.1em}
.kl-kitchen-lab .kl-result-stars .kl-star{display:inline-block;transform-origin:center;animation:kl-result-star .42s cubic-bezier(.2,.85,.25,1) both}
.kl-kitchen-lab .kl-result-card li{animation:kl-result-check .3s ease both}
.kl-kitchen-lab .kl-result-card.is-rescued:before,.kl-kitchen-lab .kl-result-card.is-rescued:after{position:absolute;z-index:1;pointer-events:none;animation:kl-result-sparkle 1.15s ease-out both;color:#e3a431;text-shadow:0 2px 3px #85602c40}
.kl-kitchen-lab .kl-result-card.is-rescued:before{content:'✦';top:8%;right:8%;font-size:1.5rem}
.kl-kitchen-lab .kl-result-card.is-rescued:after{content:'🌿';bottom:18%;left:7%;font-size:1.05rem;animation-delay:.16s}
.kl-kitchen-lab .kl-next{transition:transform .16s ease,box-shadow .16s ease}
.kl-kitchen-lab .kl-next:hover{transform:translateY(-2px);box-shadow:0 4px 0 #a94227}
.kl-kitchen-lab .kl-live-ingredients .kl-ing.is-dragging{filter:brightness(.8);transform:none}
.kl-ing-drag-proxy{box-sizing:border-box;z-index:100000;display:flex;align-items:center;gap:.5rem;max-width:min(240px,75vw);padding:.45rem .7rem;border:2px solid #fff9e8;border-radius:16px;background:#fff8eaf5;color:#47382b;text-shadow:none;box-shadow:0 8px 28px #25180f66,0 0 0 3px #4d785b44;font:850 14px/1.2 system-ui,sans-serif}
.kl-ing-drag-proxy img{width:68px;height:68px;flex:0 0 auto;object-fit:contain;filter:drop-shadow(0 2px 3px #5a3b2460)}
.kl-ing-drag-proxy span{max-width:128px;color:#47382b;text-align:left}
.kl-ing-drag-proxy span:first-child{font-size:44px}
.kl-ing-drag-proxy.is-valid{border-color:#75b984;background:#eff8e8;box-shadow:0 8px 28px #25180f55,0 0 0 4px #7bc58a70}
@keyframes kl-chef-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes kl-kicker-glow{0%,100%{box-shadow:0 0 0 #9dbd8140}50%{box-shadow:0 0 14px #9dbd8160}}
@keyframes kl-result-arrive{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes kl-result-check{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@keyframes kl-result-star{0%{opacity:0;transform:translateY(8px) scale(.25) rotate(-18deg)}75%{opacity:1;transform:translateY(-2px) scale(1.18) rotate(4deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@keyframes kl-result-sparkle{0%{opacity:0;transform:scale(.3) rotate(-18deg)}24%{opacity:1;transform:scale(1.15) rotate(8deg)}100%{opacity:.8;transform:scale(1) rotate(0)}}
@keyframes kl-background-breath{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes kl-order-arrive{from{opacity:0;transform:translateY(10px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
.kl-kitchen-lab .kl-stage:has(> .kl-intro:not([hidden])) .kl-kitchen-backdrop{animation:kl-background-breath 14s ease-in-out infinite;transform-origin:center}
@media(max-width:600px){.kl-kitchen-lab .kl-intro-welcome{font-size:.78rem}.kl-kitchen-lab .kl-shift-teaser{gap:.4rem;margin:.2rem auto .55rem;padding:.4rem .45rem}.kl-kitchen-lab .kl-shift-teaser>div{gap:.18rem}.kl-kitchen-lab .kl-shift-teaser i{width:19px;height:19px;font-size:.6rem}.kl-ing-drag-proxy{gap:.3rem;padding:.35rem .5rem;font-size:12px}.kl-ing-drag-proxy img{width:52px;height:52px}.kl-ing-drag-proxy span:first-child{font-size:36px}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-intro-chef,.kl-kitchen-lab .kl-intro-kicker,.kl-kitchen-lab .kl-result-card,.kl-kitchen-lab .kl-result-card li,.kl-kitchen-lab .kl-result-card .kl-star,.kl-kitchen-lab .kl-result-card:before,.kl-kitchen-lab .kl-result-card:after,.kl-kitchen-lab .kl-order-brief-card,.kl-kitchen-lab .kl-stage:has(> .kl-intro:not([hidden])) .kl-kitchen-backdrop{animation:none!important}.kl-kitchen-lab .kl-mode-choice,.kl-kitchen-lab .kl-next{transition:none}}


/* 1.8.41: each order briefing pairs its goal with that dish's cooked target art. */
.kl-kitchen-lab .kl-order-brief-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);align-items:center;gap:clamp(1rem,3vw,2.5rem);width:min(90%,880px);padding:clamp(22px,4vw,42px);text-align:left}
.kl-kitchen-lab .kl-order-copy{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;min-width:0}
.kl-kitchen-lab .kl-order-progress{align-self:flex-start}
.kl-kitchen-lab .kl-order-kicker{align-self:flex-start}
.kl-kitchen-lab .kl-order-dish-name{color:#557459;font-size:1rem;font-weight:900;letter-spacing:.035em}
.kl-kitchen-lab .kl-order-goal-title{margin:0;text-align:left}
.kl-kitchen-lab .kl-order-goal-copy{margin:0;text-align:left}
.kl-kitchen-lab .kl-order-target{display:flex;flex-direction:column;align-items:center;gap:.45rem;min-width:0;margin:0;padding:1rem;border:1px solid #e6d5b9;border-radius:20px;background:#fff8e9a8;text-align:center}
.kl-kitchen-lab .kl-order-target figcaption{color:#6b805d;font-size:.72rem;font-weight:950;letter-spacing:.14em}
.kl-kitchen-lab .kl-order-plate{display:grid;width:min(100%,250px);aspect-ratio:1;place-items:center;border:1px solid #e5d8c2;border-radius:50%;background:radial-gradient(circle,#fffdf6 0 56%,#f3e9d7 57% 61%,#fffdf8 62% 72%,transparent 73%);filter:drop-shadow(0 6px 9px #7b62431c)}
.kl-kitchen-lab .kl-order-food-image{width:78%;aspect-ratio:1;background-repeat:no-repeat;background-position:50% 50%;background-size:300% 100%;filter:drop-shadow(0 4px 4px #51331e40)}
.kl-kitchen-lab .kl-order-food-image.is-grid-state{background-size:300% 300%;background-position:50% 50%}
.kl-kitchen-lab .kl-order-food-image.is-egg-state{width:86%;aspect-ratio:3/2}
.kl-kitchen-lab .kl-order-target-name{color:#4d7052;font-size:.95rem;line-height:1.25}
.kl-kitchen-lab .kl-order-target-note{max-width:25ch;margin:0;color:#725f4e;font-size:.8rem;line-height:1.4}
.kl-kitchen-lab .kl-order-copy .kl-order-start{align-self:flex-start;margin-top:.2rem}
@media(max-width:700px){.kl-kitchen-lab .kl-order-brief{overflow-y:auto;place-items:start center}.kl-kitchen-lab .kl-order-brief-card{grid-template-columns:minmax(0,1fr);gap:.8rem;width:min(94%,520px);margin:auto;padding:18px 18px 20px;text-align:center}.kl-kitchen-lab .kl-order-target{grid-column:1;grid-row:1;width:min(100%,340px);justify-self:center;padding:.55rem .8rem}.kl-kitchen-lab .kl-order-plate{width:min(100%,180px)}.kl-kitchen-lab .kl-order-copy{grid-column:1;grid-row:2;align-items:center;gap:.55rem}.kl-kitchen-lab .kl-order-progress,.kl-kitchen-lab .kl-order-kicker{align-self:center}.kl-kitchen-lab .kl-order-goal-title,.kl-kitchen-lab .kl-order-goal-copy{text-align:center}.kl-kitchen-lab .kl-order-copy .kl-order-start{align-self:center}.kl-kitchen-lab .kl-order-target-note{font-size:.74rem}}

/* 1.8.42: objective-specific briefing art and one movable result mascot anchor. */
.kl-kitchen-lab .kl-order-food-image.is-strip-state{background-size:300% 100%;background-position:50% 50%}
.kl-kitchen-lab .kl-order-food-image.is-liquid-atlas{background-size:200% 200%}
.kl-kitchen-lab .kl-order-food-image.is-single-art{width:92%;aspect-ratio:2.1;background-size:100% 100%;background-position:50% 50%}
.kl-kitchen-lab .kl-order-food-image.is-noodle-target{width:88%;aspect-ratio:2;background-size:300% 200%;background-position:50% 100%}
.kl-kitchen-lab .kl-result-story{display:flex;align-items:center;justify-content:center;gap:.8rem;max-width:440px;margin:.35rem auto .5rem;text-align:left}
.kl-kitchen-lab .kl-result-mascot-slot{display:grid;place-items:center;flex:0 0 clamp(76px,12vw,110px);width:clamp(76px,12vw,110px);height:clamp(76px,12vw,110px);border-radius:50%;background:radial-gradient(circle,#fffdf1 0 54%,#efdbb6 72%,transparent 73%)}
.kl-kitchen-lab .kl-result-copy{min-width:0;flex:1}
.kl-kitchen-lab .kl-result-copy h3{margin:.15rem 0;color:#3b6653;font-size:clamp(1.25rem,4vw,1.7rem)}
.kl-kitchen-lab .kl-result-copy .kl-result-verdict{margin:.25rem 0;max-width:none}
.kl-kitchen-lab .kl-coach-character.is-result-anchor{position:absolute!important;display:block;width:78px;height:94px;margin:0;transform:none!important;filter:drop-shadow(0 4px 3px #281b1340)}
.kl-kitchen-lab .kl-mascot-result-active .kl-canvas-host{z-index:21}
.kl-kitchen-lab .kl-result-mascot-slot:empty{display:none}
@media(max-width:600px){.kl-kitchen-lab .kl-result-story{gap:.45rem}.kl-kitchen-lab .kl-result-mascot-slot{flex-basis:68px;width:68px;height:68px}.kl-kitchen-lab .kl-coach-character.is-result-anchor{width:58px;height:70px}.kl-kitchen-lab .kl-result-copy h3{font-size:1.2rem}}

/* 1.8.43: let salad rise over the bowl rim; let the single chef peek into play. */
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{left:1.4%;bottom:-51px;width:82px;height:105px;transform-origin:50% 100%}
.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:1.4%;bottom:-51px;width:82px;height:105px;transform:none!important}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:8.5%;bottom:7%;width:min(29%,340px);border-radius:22px 22px 22px 10px;transform-origin:0 100%}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble:before{left:-8px;bottom:14px;width:15px;height:15px}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble.is-speaking{animation:kl-coach-speak .42s cubic-bezier(.2,.85,.25,1) both}
.kl-kitchen-lab .kl-result-story{display:block;max-width:none;margin:.35rem 0 .5rem;text-align:center}
.kl-kitchen-lab .kl-result-copy{width:100%;min-width:0}
.kl-kitchen-lab .kl-result-mascot-slot{position:absolute;z-index:22;left:-13px;bottom:74px;display:block;flex:none;width:94px;height:116px;overflow:visible;border:0;border-radius:0;background:none;pointer-events:none}
.kl-kitchen-lab .kl-coach-character.is-result-anchor{position:absolute!important;display:block;width:82px;height:105px;margin:0;transform:none!important;filter:drop-shadow(0 4px 3px #281b1340)}
.kl-kitchen-lab .kl-result-card ul li{position:relative;padding-left:76px}
.kl-kitchen-lab .kl-mascot-result-active .kl-canvas-host{z-index:21}
@keyframes kl-coach-speak{0%{opacity:.75;transform:translateY(7px) scale(.94)}70%{opacity:1;transform:translateY(-2px) scale(1.025)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:600px){.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:1%;bottom:-31px;width:48px;height:64px}.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:9%;bottom:6%;width:44%;font-size:.72rem;padding:.6rem .7rem}.kl-kitchen-lab .kl-result-mascot-slot{left:-8px;bottom:72px;width:68px;height:82px}.kl-kitchen-lab .kl-coach-character.is-result-anchor{width:58px;height:70px}.kl-kitchen-lab .kl-result-card ul li{padding-left:58px}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-stage .kl-coach-bubble.is-speaking{animation:none!important}}

/* 1.8.44: let the chef enter from two edges without covering the cooking UI. */
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{z-index:7;left:calc(1.5% - clamp(70px,9.75vw,123px));bottom:calc(25px - clamp(90px,12.5vw,157.5px));width:clamp(140px,19.5vw,246px);height:clamp(180px,25vw,315px)}
.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:calc(1.5% - clamp(70px,9.75vw,123px));bottom:calc(25px - clamp(90px,12.5vw,157.5px));width:clamp(140px,19.5vw,246px);height:clamp(180px,25vw,315px);transform:none!important}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:16.5%;bottom:10%;width:min(31%,370px);border-radius:22px 22px 22px 10px}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble:before{left:-9px;bottom:17px;width:17px;height:17px}
@media(max-width:600px){.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:calc(1.5% - 70px);bottom:-65px;width:140px;height:180px}.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:35%;bottom:10%;width:min(58%,280px);font-size:.72rem;padding:.6rem .7rem}}


/* 1.8.45: bring more of the larger gameplay chef into view. */
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{z-index:7;left:calc(10% - clamp(105px,13.5vw,165px));bottom:calc(55px - clamp(135px,18vw,220px));width:clamp(210px,27vw,330px);height:clamp(270px,36vw,440px)}
.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:calc(10% - clamp(105px,13.5vw,165px));bottom:calc(55px - clamp(135px,18vw,220px));width:clamp(210px,27vw,330px);height:clamp(270px,36vw,440px);transform:none!important}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:clamp(205px,22%,280px);bottom:18%;width:min(26%,320px)}
@media(max-width:600px){.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:calc(12% - 86px);bottom:-71px;width:clamp(165px,44vw,210px);height:clamp(215px,57vw,275px)}.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:clamp(150px,42%,230px);bottom:15%;width:min(52%,280px);font-size:.72rem;padding:.6rem .7rem}}

/* Next reward appears in the mode picker and in dish results. */
.kl-reward-progress{position:relative;margin:12px 0;padding:12px 14px;border-radius:14px;background:#fff5df;border:1px solid #e0c594;color:#49392b;text-align:left;min-height:70px}
.kl-reward-progress strong,.kl-reward-progress span,.kl-reward-progress small{display:block;line-height:1.35}
.kl-reward-progress strong{font-size:14px}.kl-reward-progress span{font-size:13px;margin-top:4px}.kl-reward-progress small{font-size:11px;margin-top:5px;color:#68583f}
.kl-reward-progress:has(.kl-reward-item){padding-left:75px}.kl-reward-item{position:absolute;left:12px;top:12px;width:50px;height:50px;object-fit:contain}
.kl-reward-progress progress{display:block;width:100%;height:12px;margin-top:8px;accent-color:#f15b2a;border:0;border-radius:8px;overflow:hidden}
.kl-reward-progress progress::-webkit-progress-bar{background:#ead9b6;border-radius:8px}.kl-reward-progress progress::-webkit-progress-value{background:#f15b2a;border-radius:8px;transition:width .45s ease}
.kl-reward-progress button{margin-top:6px;border:1px solid #b89961;background:#fff;padding:5px 9px;border-radius:7px;font:inherit;cursor:pointer}
@media(prefers-reduced-motion:reduce){.kl-reward-progress progress::-webkit-progress-value{transition:none}}
.kl-kitchen-lab .kl-intro-card{padding:clamp(.8rem,3vw,1.3rem)}
.kl-kitchen-lab .kl-intro-goal{font-size:clamp(1.3rem,3vw,1.8rem);line-height:1.18}
.kl-kitchen-lab .kl-intro-card .kl-mode-description{font-size:.95rem;margin:.5rem auto .75rem}
@media(max-width:600px){
 .kl-kitchen-lab .kl-intro{padding:.65rem}
 .kl-kitchen-lab .kl-mode-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:.55rem 0}
 .kl-kitchen-lab .kl-mode-choice{min-height:70px;padding:.4rem .3rem;text-align:center;align-items:center}
 .kl-kitchen-lab .kl-mode-name{font-size:.76rem;line-height:1.2}
 .kl-kitchen-lab .kl-mode-choice small{display:none}
 .kl-kitchen-lab .kl-intro-card .kl-start{width:100%}
 .kl-kitchen-lab .kl-intro-card .kl-reward-progress{margin:.55rem 0;padding-top:9px;padding-bottom:9px}
}
@media(max-width:600px){
 .kl-kitchen-lab .kl-intro-welcome,.kl-kitchen-lab .kl-shift-teaser{display:none}
}
@media(max-width:600px){.kl-kitchen-lab .kl-stage{min-height:560px}}

.kl-reward-item.is-mystery{display:grid!important;place-items:center;border-radius:50%;background:#416e67;color:#fff8e6;font:900 32px/1 system-ui}

/* 1.8.53: compact brief, result and shift summaries. Details replace the summary. */
.kl-kitchen-lab .kl-result{padding:12px}
.kl-kitchen-lab .kl-result-card{width:min(660px,100%);max-height:none;overflow:visible;padding:18px 22px;border-radius:24px}
.kl-kitchen-lab .kl-result-dish{margin:0 0 5px;padding:6px 12px}
.kl-kitchen-lab .kl-result-progress{font-size:11px;margin:3px 0}
.kl-kitchen-lab .kl-result-stars{font-size:30px}
.kl-kitchen-lab .kl-result-story{display:flex;align-items:center;gap:14px;text-align:left;margin:8px 0}
.kl-kitchen-lab .kl-result-mascot-slot{position:relative;left:auto;bottom:auto;width:78px;height:92px;flex:0 0 78px;z-index:auto}
.kl-kitchen-lab .kl-result-copy h3{font-size:24px;line-height:1.15;margin:0 0 5px}
.kl-kitchen-lab .kl-result-verdict{font-size:16px;line-height:1.35;margin:0;max-width:none}
.kl-kitchen-lab .kl-earned{margin:6px 0;color:#41654f;font:850 16px/1.2 system-ui}
.kl-kitchen-lab .kl-details-toggle,.kl-kitchen-lab .kl-details-back{padding:7px 12px;border:1px solid #b89961;border-radius:10px;background:#fffaf0;color:#594336;font:750 13px/1.2 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-result-card ul{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;font-size:14px;margin:8px 0}
.kl-kitchen-lab .kl-result-card ul li{padding:9px 11px;font-weight:650;animation:none;line-height:1.3}
.kl-kitchen-lab .kl-result.is-details ul{display:grid}
.kl-kitchen-lab .kl-result.is-details .kl-result-story,.kl-kitchen-lab .kl-result.is-details .kl-earned,.kl-kitchen-lab .kl-result.is-details .kl-details-toggle,.kl-kitchen-lab .kl-result.is-details .kl-reward-progress{display:none}
.kl-kitchen-lab .kl-result.is-details .kl-result-mascot-slot{display:none}
.kl-kitchen-lab .kl-result-actions{display:flex;justify-content:center;gap:10px;margin-top:10px}
.kl-kitchen-lab .kl-replay{min-height:46px;padding:10px 18px;border:1px solid #42664f;border-radius:13px;background:#42664f;color:white;font:850 15px/1 system-ui;cursor:pointer}
.kl-kitchen-lab .kl-result button[hidden]{display:none!important}
.kl-kitchen-lab .kl-result .kl-reward-progress{margin:9px 0;padding-top:9px;padding-bottom:9px;min-height:66px}
.kl-kitchen-lab .kl-result .kl-reward-progress small{font-size:11px}
.kl-kitchen-lab .kl-result-card .kl-unlock-reveal{color:#42664f;font-weight:850}
.kl-kitchen-lab .kl-order-brief{overflow:visible;padding:14px}
.kl-kitchen-lab .kl-order-brief-card{width:min(820px,100%);padding:24px;gap:22px}
.kl-kitchen-lab .kl-order-copy{gap:10px}
.kl-kitchen-lab .kl-order-goal-title{font-size:clamp(24px,2.6vw,34px)}
.kl-kitchen-lab .kl-order-plate{width:185px}
.kl-kitchen-lab .kl-order-target-note{display:none}
.kl-kitchen-lab .kl-order-start{min-height:50px;font-size:18px;min-width:180px}
@media(max-width:700px){
 .kl-kitchen-lab .kl-order-brief{place-items:center}
 .kl-kitchen-lab .kl-order-brief-card{gap:10px;padding:16px;grid-template-columns:1fr}
 .kl-kitchen-lab .kl-order-target{display:grid;grid-template-columns:90px 1fr;gap:4px 10px;padding:8px;width:100%;text-align:left}
 .kl-kitchen-lab .kl-order-plate{width:90px;grid-row:1/3;grid-column:1}
 .kl-kitchen-lab .kl-order-target figcaption{grid-column:2;grid-row:1;align-self:end}
 .kl-kitchen-lab .kl-order-target-name{grid-column:2;grid-row:2;align-self:start;font-size:14px}
 .kl-kitchen-lab .kl-order-copy{gap:8px}
 .kl-kitchen-lab .kl-order-goal-title{font-size:24px}
 .kl-kitchen-lab .kl-order-goal-copy{font-size:14px;line-height:1.3}
 .kl-kitchen-lab .kl-order-kicker{font-size:11px;padding:5px 9px}
 .kl-kitchen-lab .kl-order-progress{font-size:14px;padding:5px 10px}
 .kl-kitchen-lab .kl-result-card{padding:14px 12px}
 .kl-kitchen-lab .kl-result-story{gap:8px;margin:6px 0}
 .kl-kitchen-lab .kl-result-mascot-slot{width:58px;height:74px;flex-basis:58px}
 .kl-kitchen-lab .kl-result-copy h3{font-size:21px}
 .kl-kitchen-lab .kl-result-verdict{font-size:14px}
 .kl-kitchen-lab .kl-result-card ul{grid-template-columns:1fr;gap:5px;font-size:13px}
 .kl-kitchen-lab .kl-result-card ul li{padding:7px 9px}
 .kl-kitchen-lab .kl-result-stars{font-size:27px}
 .kl-kitchen-lab .kl-result .kl-reward-progress{padding-top:7px;padding-bottom:7px}
 .kl-kitchen-lab .kl-result-actions{gap:7px}
 .kl-kitchen-lab .kl-next,.kl-kitchen-lab .kl-replay{font-size:14px;padding:10px 12px}
}

.kl-unlock-reveal{font-size:12px;animation:kl-result-arrive .3s ease both;margin-top:7px;padding-top:6px;border-top:1px solid #e0c594}.kl-unlock-reveal a{display:inline-block;margin:5px 8px 0 0;color:#42664f;font-weight:750}.kl-kitchen-lab .kl-unlock-reveal button{font-size:12px;padding:5px 8px;margin-top:4px}
@media(min-width:601px) and (max-width:900px){.kl-kitchen-lab .kl-stage{min-height:560px}}

/* 1.8.57: calm, compact mode picker and clearer dish feedback. */
.kl-kitchen-lab .kl-intro-card{display:flex;flex-direction:column;gap:8px;width:min(700px,100%);max-height:none;overflow:visible;padding:16px;font-family:system-ui,sans-serif}
.kl-kitchen-lab .kl-intro-goal{font-size:23px;line-height:1.2;margin:0}
.kl-kitchen-lab .kl-intro-card .kl-mode-description{font-size:14px;line-height:1.3;margin:0}
.kl-kitchen-lab .kl-mode-choices{margin:0;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
.kl-kitchen-lab .kl-mode-choice{min-height:80px;padding:8px;gap:4px}
.kl-kitchen-lab .kl-mode-choice small{font-size:12px;line-height:1.25}
.kl-kitchen-lab .kl-intro-card .kl-reward-progress{margin:0;padding-top:9px;padding-bottom:9px}
.kl-kitchen-lab .kl-intro-card .kl-start{margin:0;min-height:46px;padding:12px 18px;font-size:16px}
.kl-kitchen-lab .kl-practice-picker{margin:0}
.kl-kitchen-lab .kl-rush-best{margin:0;font-size:13px;line-height:1.3}
.kl-kitchen-lab .kl-result-stars .is-empty{color:#a3a294;text-shadow:none;animation:none}
.kl-kitchen-lab .kl-result.is-failed h3{color:#87452f}
.kl-kitchen-lab .kl-result.is-failed .kl-earned{color:#6d675e}
.kl-kitchen-lab .kl-result-copy{min-width:0;flex:1}
.kl-kitchen-lab .kl-result-mascot-slot{width:112px;height:128px;flex-basis:112px}
.kl-kitchen-lab .kl-stage .kl-coach-character.is-result-anchor{width:112px;height:128px}
@media(max-width:700px){
 .kl-kitchen-lab .kl-intro-card{padding:14px;gap:8px}
 .kl-kitchen-lab .kl-intro-goal{font-size:22px}
 .kl-kitchen-lab .kl-mode-choice{min-height:70px;padding:5px;align-items:center;text-align:center}
 .kl-kitchen-lab .kl-mode-name{font-size:12px;line-height:1.2}
 .kl-kitchen-lab .kl-mode-choice small{display:none}
 .kl-kitchen-lab .kl-result-mascot-slot{width:84px;height:100px;flex-basis:84px}
 .kl-kitchen-lab .kl-stage .kl-coach-character.is-result-anchor{width:84px;height:100px}
}
@media(max-width:700px){
 .kl-kitchen-lab .kl-result-card{padding:11px 12px}
 .kl-kitchen-lab .kl-result .kl-reward-progress{margin:6px 0}
 .kl-kitchen-lab .kl-unlock-reveal{margin-top:5px;padding-top:4px}
}
.kl-kitchen-lab .kl-intro-card .kl-rush-best{margin:0;font-size:13px;line-height:1.3}
@media(max-width:700px){
 .kl-kitchen-lab .kl-result-card{padding:9px 12px}
 .kl-kitchen-lab .kl-result-dish{padding-top:4px;padding-bottom:4px}
 .kl-kitchen-lab .kl-result-mascot-slot,.kl-kitchen-lab .kl-stage .kl-coach-character.is-result-anchor{height:92px}
}

/* 1.8.57: one visual language, based on the Start Cooking brief. */
.kl-kitchen-lab .kl-intro-card,.kl-kitchen-lab .kl-result-card,.kl-kitchen-lab .kl-order-brief-card{background:linear-gradient(145deg,#fffaf0,#f8e8cf);border:2px solid #fff;border-radius:28px;color:#453026;font-family:system-ui,sans-serif;box-shadow:0 20px 55px #26170f55}
.kl-kitchen-lab .kl-intro-card{max-width:700px;text-align:left;padding:20px;gap:10px}
.kl-kitchen-lab .kl-intro-card .kl-intro-goal{font:900 28px/1.15 system-ui;margin:0}
.kl-kitchen-lab .kl-intro-card .kl-mode-description{max-width:none;margin:0;font:650 14px/1.35 system-ui;color:#6b5646}
.kl-kitchen-lab .kl-mode-choice{background:#fff8e9a8;border:1px solid #e6d5b9;border-radius:20px;box-shadow:none;color:#453026}
.kl-kitchen-lab .kl-mode-choice.is-selected{background:#e5efdd;border:2px solid #41654f;box-shadow:none}
.kl-kitchen-lab .kl-mode-name{font-weight:900}
.kl-kitchen-lab .kl-mode-choice small{font-weight:600}
.kl-kitchen-lab .kl-reward-progress{background:#fff8e9a8;border-color:#e6d5b9;border-radius:20px}
.kl-kitchen-lab .kl-reward-progress strong{font-weight:850}
.kl-kitchen-lab .kl-intro-card .kl-start,.kl-kitchen-lab .kl-result-card .kl-next,.kl-kitchen-lab .kl-order-start{background:#f15b2a;border:2px solid #fff;border-radius:18px;color:#fff;font:950 18px/1.15 system-ui;min-height:50px;padding:11px 20px;box-shadow:0 4px 0 #bd4522}
.kl-kitchen-lab .kl-result-card{width:min(820px,100%);padding:20px 24px;text-align:left}
.kl-kitchen-lab .kl-result-card .kl-result-progress{display:inline-block;margin:0 0 8px;padding:7px 12px;border-radius:999px;background:#f1e1c9;color:#594336;font:900 13px/1.2 system-ui;letter-spacing:.04em}
.kl-kitchen-lab .kl-result-card .kl-result-dish{display:flex;justify-content:flex-start;gap:6px;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#41654f;font:850 16px/1.2 system-ui}
.kl-kitchen-lab .kl-result-card .kl-result-story{display:grid;grid-template-columns:minmax(0,1fr) 154px;gap:20px;margin:10px 0 6px;align-items:center;text-align:left}
.kl-kitchen-lab .kl-result-card .kl-result-mascot-slot{display:grid;place-items:center;width:154px;height:142px;padding:6px;flex-basis:auto;border:1px solid #e6d5b9;border-radius:20px;background:#fff8e9a8}
.kl-kitchen-lab .kl-stage .kl-coach-character.is-result-anchor{width:124px;height:128px}
.kl-kitchen-lab .kl-result-card .kl-result-copy h3{font:900 30px/1.15 system-ui;margin:0 0 8px;color:#453026}
.kl-kitchen-lab .kl-result-card .kl-result-verdict{font:650 16px/1.35 system-ui;color:#6b5646;margin:0}
.kl-kitchen-lab .kl-result.is-failed .kl-result-copy h3{color:#87452f}
.kl-kitchen-lab .kl-result.is-rescued .kl-result-copy h3{color:#41654f}
.kl-kitchen-lab .kl-result-card .kl-result-stars{display:inline-block;font-size:28px;line-height:1.1;vertical-align:middle;margin:0 10px 0 0}
.kl-kitchen-lab .kl-result-card .kl-earned{display:inline-block;vertical-align:middle;font:850 14px/1.2 system-ui;margin:0}
.kl-kitchen-lab .kl-result-card .kl-details-toggle{display:block;margin-top:7px}
.kl-kitchen-lab .kl-result-card .kl-result-actions{justify-content:flex-start;margin-top:9px}
.kl-kitchen-lab .kl-result.is-details .kl-result-story{display:none}
.kl-kitchen-lab .kl-result.is-details .kl-earned{display:none}
.kl-kitchen-lab .kl-result-card:before,.kl-kitchen-lab .kl-result-card:after{display:none}
@media(max-width:700px){
 .kl-kitchen-lab .kl-intro-card{padding:16px;gap:8px;border-radius:22px}
 .kl-kitchen-lab .kl-intro-card .kl-intro-goal{font-size:24px}
 .kl-kitchen-lab .kl-intro-card .kl-start,.kl-kitchen-lab .kl-result-card .kl-next{min-height:46px;font-size:16px;padding:10px 14px}
 .kl-kitchen-lab .kl-result-card{padding:12px;border-radius:22px}
 .kl-kitchen-lab .kl-result-card .kl-result-progress{font-size:11px;padding:5px 9px;margin-bottom:6px}
 .kl-kitchen-lab .kl-result-card .kl-result-dish{font-size:14px}
 .kl-kitchen-lab .kl-result-card .kl-result-story{grid-template-columns:minmax(0,1fr) 84px;gap:10px;margin:8px 0 6px}
 .kl-kitchen-lab .kl-result-card .kl-result-mascot-slot{width:84px;height:96px;padding:0;border-radius:16px}
 .kl-kitchen-lab .kl-stage .kl-coach-character.is-result-anchor{width:80px;height:90px}
 .kl-kitchen-lab .kl-result-card .kl-result-copy h3{font-size:23px;margin-bottom:5px}
 .kl-kitchen-lab .kl-result-card .kl-result-verdict{font-size:14px;line-height:1.3}
 .kl-kitchen-lab .kl-result-card .kl-result-stars{font-size:24px;margin-right:5px}
 .kl-kitchen-lab .kl-result-card .kl-earned{font-size:12px}
}

/* 1.9: a companion on the kitchen floor, with no mascot card or cropped limbs. */
.kl-kitchen-lab .kl-stage .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot .kl-coach-character{position:absolute!important;left:12px;bottom:72px;top:auto;width:128px;height:146px;transform:none!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;pointer-events:none}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:12px;bottom:72px;width:128px;height:146px}
.kl-kitchen-lab .kl-stage.kl-mascot-result-active .kl-canvas-host{z-index:45;pointer-events:none}
.kl-kitchen-lab .kl-result-mascot-slot,.kl-kitchen-lab .kl-result-card .kl-result-mascot-slot{display:none!important}
.kl-kitchen-lab .kl-result-story{display:block!important}
.kl-kitchen-lab .kl-result-copy{width:100%}
.kl-kitchen-lab .kl-result-dish{padding-right:68px}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:145px;bottom:94px;width:min(36%,340px);font-size:.76rem}
.kl-kitchen-lab .kl-result .kl-reward-progress{opacity:.86}
.kl-kitchen-lab .kl-result .kl-unlock-reveal{opacity:1}
.kl-kitchen-lab .kl-details-toggle{font-size:.76rem}
.kl-kitchen-lab .kl-loading{position:absolute;z-index:60;inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:min(85%,330px);height:auto;padding:30px 26px 22px;display:flex;flex-direction:column;align-items:center;gap:16px;background:#fff6e5;border:1px solid #dccaad;border-radius:24px;box-shadow:0 14px 45px #49312433;text-align:center;color:#49372e;font-size:1rem}
.kl-kitchen-lab .kl-loading strong{font-size:1.14rem;line-height:1.3}
.kl-kitchen-lab .kl-loading small{font-size:.75rem;color:#866c54}
.kl-loading-mascot{display:block;width:112px;height:112px;object-fit:contain;animation:kl-loading-stir 1.4s ease-in-out infinite alternate}
.kl-loading-track{display:block;width:100%;height:5px;border-radius:8px;background:#eadac1;overflow:hidden}.kl-loading-track span{display:block;height:100%;width:0;background:#d88645;transition:width .15s linear}
@keyframes kl-loading-stir{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-3px) rotate(2deg)}}
.kl-kitchen-lab .kl-stage:not(.kl-ready) .kl-kitchen-backdrop{opacity:.64;filter:brightness(.78)}
.kl-kitchen-lab .kl-mode-choice.is-locked{border-color:#cdbd9f;background:#f0e7d8}.kl-kitchen-lab .kl-mode-choice.is-locked small{color:#80674b}
.kl-kitchen-lab .kl-mastery-checklist,.kl-kitchen-lab .kl-service-message{position:absolute;z-index:70;left:50%;top:50%;transform:translate(-50%,-50%);width:min(calc(100% - 28px),580px);max-height:calc(100% - 28px);padding:22px;border:1px solid #dccaad;background:#fff6e5;border-radius:22px;box-shadow:0 12px 36px #49312455;color:#49372e;overflow:auto}
.kl-mastery-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.kl-mastery-list button{font-size:.78rem;text-align:left;padding:9px;border:1px solid #d9c6a8;border-radius:12px;background:#fffdf5;color:#49372e}
.kl-kitchen-lab .kl-service-message>button,.kl-mastery-checklist>button{padding:10px 18px;border:0;border-radius:12px;background:#d7773c;color:white;font-weight:800}
.kl-kitchen-lab .kl-oven-toggle{position:absolute;left:50%;transform:translateX(-50%);z-index:12;max-width:90%;padding:10px 16px;border-radius:14px;border:1px solid #bd9975;background:#fff3d9;color:#5b3b29;font-weight:800;box-shadow:0 5px 15px #49312430}
.kl-kitchen-lab .kl-ing.is-chosen{outline:2px solid #f4d36d;outline-offset:3px;border-radius:16px}
@media(max-width:600px){.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:8px;bottom:78px;width:88px;height:104px}.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:100px;bottom:98px;width:calc(100% - 118px);padding:8px 10px;font-size:.68rem}.kl-mastery-list{grid-template-columns:1fr 1fr}.kl-mastery-checklist h3{font-size:1.15rem}.kl-mastery-checklist p{font-size:.78rem}.kl-kitchen-lab .kl-oven-toggle{font-size:.72rem;padding:9px 12px}.kl-kitchen-lab .kl-result-dish{padding-right:48px}}
@media(prefers-reduced-motion:reduce){.kl-loading-mascot{animation:none}.kl-loading-track span{transition:none}}
.kl-kitchen-lab [hidden]{display:none!important}
.kl-kitchen-lab .kl-result.is-rush .kl-reward-progress{display:none}

/* 1.9.1 screenshot regression fixes */
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:-32px;bottom:-26px;width:240px;height:274px}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:195px;bottom:42px;width:min(34%,340px)}
.kl-kitchen-lab .kl-stage.kl-mascot-result-active .kl-oven-toggle{display:none!important}
.kl-kitchen-lab .kl-live-ingredients{pointer-events:none}.kl-kitchen-lab .kl-live-ingredients .kl-ing{pointer-events:auto;touch-action:none}.kl-kitchen-lab .kl-ing img{pointer-events:none}
.kl-kitchen-lab .kl-mode-choice.is-locked{border-style:dashed;box-shadow:none;opacity:.8}.kl-kitchen-lab .kl-mode-choice.is-locked small{font-weight:900}
.kl-kitchen-lab .kl-serve{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:112px;height:94px;padding:0!important;display:flex;flex-direction:column;align-items:center;justify-content:center;filter:drop-shadow(0 4px 3px #30211766)}
.kl-kitchen-lab .kl-serve img{width:106px;height:70px;object-fit:contain;pointer-events:none}.kl-kitchen-lab .kl-serve small{color:#fff7db;text-shadow:0 2px 2px #2f2119;font-weight:900;font-size:.85rem;letter-spacing:.06em}.kl-kitchen-lab .kl-serve:hover img{transform:translateY(-3px)}.kl-kitchen-lab .kl-serve:focus-visible{outline:3px solid #ffde83;outline-offset:2px}
.kl-mastery-checklist>button{margin-right:8px;margin-top:6px}
@media(max-width:600px){.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:-20px;bottom:-20px;width:155px;height:177px}.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{left:123px;bottom:24px;width:calc(100% - 136px)}.kl-kitchen-lab .kl-serve{width:82px;height:76px}.kl-kitchen-lab .kl-serve img{width:80px;height:54px}}

/* 1.9.4: stable startup, pointer targets and one menu panel. */
.kl-kitchen-lab .kl-stage:not(.kl-ready) .kl-canvas-host{visibility:hidden}
.kl-kitchen-lab .kl-coach-character svg{display:none!important}
.kl-kitchen-lab .kl-loading[role="status"]{inset:0!important;left:0!important;top:0!important;transform:none!important;width:100%!important;height:100%!important;box-sizing:border-box;display:flex;justify-content:center;align-items:center;border:0;border-radius:0;background:#fff6e5e6;z-index:60}
.kl-kitchen-lab .kl-stage:not(.kl-ready) .kl-coach-character{visibility:hidden!important}
.kl-loading-spinner{width:42px;height:42px;border:4px solid #eadac1;border-top-color:#d88645;border-radius:50%;animation:kl-spin 1s linear infinite}
@keyframes kl-spin{to{transform:rotate(360deg)}}
.kl-kitchen-lab .kl-live-ingredients .kl-ing,.kl-kitchen-lab .kl-serve{border-radius:999px;outline:none;touch-action:none;-webkit-tap-highlight-color:transparent}
.kl-kitchen-lab .kl-ing:focus:not(:focus-visible),.kl-kitchen-lab .kl-serve:focus:not(:focus-visible){outline:none!important;box-shadow:none}
.kl-kitchen-lab .kl-ing:focus-visible,.kl-kitchen-lab .kl-serve:focus-visible{outline:none!important;box-shadow:0 0 0 3px #ffe4a1;border-radius:999px}
.kl-kitchen-lab .kl-ing.is-pressed .kl-ing-art,.kl-kitchen-lab .kl-serve:active img{filter:brightness(1.15);scale:.96}
.kl-kitchen-lab .kl-ing-drag-proxy{transition:none;will-change:left,top;contain:layout style;touch-action:none}
.kl-kitchen-lab .kl-ing-drag-proxy *{pointer-events:none}
.kl-kitchen-lab .kl-intro-card .kl-mastery-checklist{position:static;inset:auto;transform:none;width:100%;max-width:none;max-height:none;margin:0;padding:0;background:transparent;border:0;box-shadow:none;overflow:visible;font-size:.85rem}
.kl-kitchen-lab .kl-intro-card:has(.kl-mastery-checklist:not([hidden])){max-height:calc(100% - 28px);overflow:auto}
.kl-mastery-dish{display:block;padding:8px 10px;background:#fffdf5;border:1px solid #dccba8;border-radius:12px;font:700 .78rem/1.2 system-ui}
.kl-kitchen-lab .kl-mastery-checklist[hidden]{display:none!important}
.kl-kitchen-lab .kl-live-menu{position:absolute;right:164px;top:16px;border:1px solid #dbc7a5;border-radius:999px;padding:8px 12px;background:#fff6e5;color:#513d2e;font:800 12px system-ui;cursor:pointer}
.kl-kitchen-lab .kl-brief-menu{border:0;background:none;color:#5c7556;padding:8px 14px;font:800 .8rem system-ui;cursor:pointer}
.kl-kitchen-lab .kl-exit-panel{position:absolute;inset:0;z-index:55;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;background:#fff6e5f5;padding:24px;text-align:center;color:#513d2e}
.kl-kitchen-lab .kl-exit-panel strong{font-size:1.4rem}.kl-kitchen-lab .kl-exit-panel p{max-width:34ch}.kl-kitchen-lab .kl-exit-panel button{border:1px solid #b89a75;background:#fff7e6;border-radius:16px;padding:12px 24px;color:#513d2e;font-weight:800;cursor:pointer}
.kl-kitchen-lab .kl-exit-panel[hidden]{display:none!important}
@media(max-width:600px){.kl-kitchen-lab .kl-live-menu{right:118px;top:12px;padding:7px 9px;font-size:11px}.kl-mastery-dish{font-size:.7rem;padding:7px}}
@media(prefers-reduced-motion:reduce){.kl-loading-spinner{animation:none}}

.kl-kitchen-lab .kl-ing:hover,.kl-kitchen-lab .kl-serve:hover{transform:none!important}
.kl-kitchen-lab .kl-intro-card:has(.kl-mastery-checklist:not([hidden]))>[hidden]{display:none!important}
.kl-kitchen-lab .kl-ing-drag-proxy{box-sizing:border-box;max-width:220px;transform:translate(-50%,-50%);}

.kl-kitchen-lab .kl-live-menu{pointer-events:auto}
.kl-kitchen-lab .kl-live-ingredients .kl-ing,.kl-kitchen-lab .kl-serve{border-radius:999px!important}
.kl-kitchen-lab .kl-live-ingredients .kl-ing:focus-visible,.kl-kitchen-lab .kl-serve:focus-visible{box-shadow:0 0 0 3px #ffe4a1!important}

.kl-kitchen-lab .kl-hud-meta .kl-live-menu{position:static;width:auto;min-width:0;height:36px;min-height:36px;padding:7px 10px;font-size:12px;border-radius:999px}
@media(max-width:600px){.kl-kitchen-lab .kl-hud-meta .kl-live-menu{height:32px;min-height:32px;padding:6px 8px;font-size:10px}}

/* 1.9.4: direct ingredient tracking and clear control feedback. */
.kl-kitchen-lab .kl-ing.is-dragging .kl-ing-art,.kl-kitchen-lab .kl-ing.is-dragging .kl-ing-symbol{visibility:hidden}
.kl-kitchen-lab .kl-serve.is-pressed img{filter:brightness(1.15);scale:.94}
.kl-kitchen-lab .kl-brief-pause{position:absolute;right:16px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:#ead9bd;color:#4b382d;font-size:22px;cursor:pointer}
.kl-kitchen-lab .kl-pause-menu{background:transparent;color:#4b382d;border:1px solid #cbb89c;border-radius:12px;padding:10px 18px;cursor:pointer}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble{box-sizing:border-box;overflow:visible}
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-bubble:before{left:22px;bottom:-8px;border-left:0;border-bottom:1px solid #f1dcad;border-right:1px solid #f1dcad}

/* 1.9.5: native canvas ingredients and reserved feedback space. */
.kl-kitchen-lab .kl-live-ingredients .kl-ing.is-canvas-ingredient{pointer-events:none;}
.kl-kitchen-lab .kl-ing.is-canvas-ingredient .kl-ing-art,.kl-kitchen-lab .kl-ing.is-canvas-ingredient .kl-ing-symbol{visibility:hidden;}
.kl-kitchen-lab .kl-result-card .kl-result-story{display:grid!important;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:center;}
.kl-kitchen-lab .kl-result-card .kl-result-mascot-slot{display:block!important;grid-column:1;grid-row:1;position:relative;width:110px;height:126px;padding:0;border:0;background:none;}
.kl-kitchen-lab .kl-result-card .kl-result-copy{grid-column:2;grid-row:1;min-width:0;width:auto;}
.kl-kitchen-lab .kl-result-card .kl-result-verdict{position:relative;padding:14px 16px;border:1px solid #e4cc9f;border-radius:18px;background:#fffaf0;color:#49392c;font-size:clamp(.85rem,1.5vw,1.1rem);line-height:1.4;font-weight:800;}
.kl-kitchen-lab .kl-result-verdict:before{content:'';position:absolute;left:-7px;top:24px;width:12px;height:12px;transform:rotate(45deg);border-left:1px solid #e4cc9f;border-bottom:1px solid #e4cc9f;background:#fffaf0;}
.kl-kitchen-lab .kl-result.is-details .kl-result-story{display:grid!important;}
.kl-kitchen-lab .kl-reward-progress .kl-meter-label{display:block;clear:both;margin:8px 0 3px;font-weight:800;font-size:.8rem;}
.kl-kitchen-lab .kl-unlock-reveal{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;}
.kl-kitchen-lab .kl-unlock-reveal a{display:inline-block;margin:0 6px;}
.kl-kitchen-lab .kl-hud-meta .kl-live-menu{display:inline-flex;align-items:center;white-space:nowrap;}
.kl-kitchen-lab .kl-hud-meta .kl-live-menu[hidden]{display:none;}
@media(max-width:600px){.kl-kitchen-lab .kl-result-card .kl-result-story{grid-template-columns:72px minmax(0,1fr);gap:10px;}.kl-kitchen-lab .kl-result-card .kl-result-mascot-slot{width:72px;height:84px;}.kl-kitchen-lab .kl-result-card .kl-result-verdict{padding:10px 12px;}.kl-kitchen-lab .kl-hud-meta .kl-live-menu{font-size:10px;padding:6px;}}

/* 1.9.6: anchored coach and a lighter result conversation. */
.kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,
.kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:-42px;bottom:-100px;width:300px;height:342px}
.kl-kitchen-lab .kl-result-card .kl-result-actions{justify-content:flex-end;margin-top:18px}
.kl-kitchen-lab .kl-result-card .kl-reward-progress{background:transparent;border:0;border-top:1px solid #dfcdb3;border-radius:0;padding:14px 0 0;box-shadow:none}
.kl-kitchen-lab .kl-result-card .kl-result-story{margin-bottom:18px}
.kl-kitchen-lab .kl-order-brief-card{margin-right:60px}
@media(max-width:600px){
 .kl-kitchen-lab .kl-stage:not(.kl-mascot-result-active) .kl-coach-character,
 .kl-kitchen-lab .kl-stage.kl-profile-mascot:not(.kl-mascot-result-active) .kl-coach-character{left:-26px;bottom:-62px;width:190px;height:217px}
 .kl-kitchen-lab .kl-order-brief-card{margin-right:0;margin-bottom:70px}
}

/* 1.9.7: persistent illustrated kitchen controls, contextual cooking actions. */
.kl-kitchen-lab .kl-screen-controls{position:absolute;z-index:52;right:1.4%;top:1.4%;display:flex;align-items:center;gap:7px;pointer-events:auto;padding:5px 7px;background:linear-gradient(#547b68,#294f43);border:2px solid #ddc18f;border-radius:17px;box-shadow:inset 0 1px 2px #fff5cc65,0 4px 0 #243e34,0 6px 12px #24170f50}
.kl-kitchen-lab .kl-screen-controls button{position:static;display:flex;align-items:center;justify-content:center;gap:5px;width:auto;min-width:38px;height:34px;min-height:34px;padding:4px 8px;border:1px solid #c79c62;border-radius:11px;background:linear-gradient(#fff8e4,#efdab3);color:#4c3927;box-shadow:inset 0 1px 0 #fff,0 2px 0 #9b743f;font:800 11px/1 system-ui;cursor:pointer;transition:transform .12s,filter .12s}
.kl-kitchen-lab .kl-screen-controls button:hover{filter:brightness(1.07)}
.kl-kitchen-lab .kl-screen-controls button:active{transform:translateY(2px);box-shadow:inset 0 1px 2px #a87d4755}
.kl-kitchen-lab .kl-screen-controls button:focus-visible{outline:3px solid #fff3a5;outline-offset:3px}
.kl-kitchen-lab .kl-screen-controls button img{width:23px;height:23px;object-fit:contain;pointer-events:none}
.kl-kitchen-lab .kl-screen-controls .kl-live-score{color:#fff4d5;font:850 11px system-ui;white-space:nowrap;padding:0 5px}
.kl-kitchen-lab .kl-screen-controls .kl-live-pause.is-paused{background:linear-gradient(#ffe7ab,#dfb773)}
.kl-kitchen-lab .kl-screen-controls [hidden],.kl-kitchen-lab .kl-screen-controls[hidden]{display:none!important}
.kl-kitchen-lab .kl-stage>.kl-settings-panel{z-index:60;top:64px;border:2px solid #d9b782;background:linear-gradient(145deg,#fffaf0,#f2dfbb);box-shadow:0 9px 26px #23170f66}
.kl-kitchen-lab .kl-order-best{display:inline-flex;align-self:flex-start;background:#fff5d8;color:#72542d;border:1px solid #d9be83;border-radius:12px;padding:8px 12px;font:850 14px/1.2 system-ui}
.kl-kitchen-lab .kl-order-best.is-mastered{background:#e5efda;color:#3f654c;border-color:#94ac7b}
.kl-kitchen-lab .kl-settings-clock-note{color:#47634d;font-weight:750;font-size:12px;margin:8px 0}
.kl-kitchen-lab .kl-hud-meta{right:380px}
.kl-kitchen-lab .kl-intro,.kl-kitchen-lab .kl-result,.kl-kitchen-lab .kl-order-brief{padding-top:68px}
@media(max-width:600px){
 .kl-kitchen-lab .kl-screen-controls{right:1.5%;top:1.2%;gap:4px;padding:4px;border-radius:12px}
 .kl-kitchen-lab .kl-screen-controls button{gap:3px;height:30px;min-height:30px;min-width:29px;padding:3px 5px;font-size:9px}
 .kl-kitchen-lab .kl-screen-controls button img{width:19px;height:19px}
 .kl-kitchen-lab .kl-screen-controls .kl-live-pause span,.kl-kitchen-lab .kl-screen-controls .kl-settings-toggle span{display:none}
 .kl-kitchen-lab .kl-screen-controls .kl-live-score{font-size:9px;padding:0 2px}
 .kl-kitchen-lab .kl-stage>.kl-settings-panel{top:55px}
 .kl-kitchen-lab .kl-hud-meta{right:220px}
 .kl-kitchen-lab .kl-game-hud .kl-goal-card,.kl-kitchen-lab .kl-clock{top:62px}
 .kl-kitchen-lab .kl-order-best{align-self:center;font-size:12px;padding:6px 10px}
}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-screen-controls button{transition:none}}
/* The kitchen pass and payoff use the same cream, brass and teal as the cookware. */
.kl-kitchen-lab .kl-kitchen-pass{position:absolute;z-index:16;top:calc(var(--kl-hud-bottom,105px) + 4px);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;max-width:90%;width:max-content;box-sizing:border-box;padding:5px 12px;border:1px solid #d4b584;border-radius:14px;background:linear-gradient(125deg,#fff9eaeF,#f4e4c5ef);color:#57452e;box-shadow:0 3px 8px #3f291d22;font:700 11px/1.3 system-ui;pointer-events:none}
.kl-kitchen-lab .kl-pass-guests{display:flex;gap:3px;flex-shrink:0}
.kl-kitchen-lab .kl-pass-guest{display:block;width:24px;height:24px;background-image:url('art/customer-guests.svg');background-size:72px 24px}
.kl-kitchen-lab .kl-pass-guest[data-face="1"]{background-position:-24px 0}.kl-kitchen-lab .kl-pass-guest[data-face="2"]{background-position:-48px 0}
.kl-kitchen-lab .kl-kitchen-busy .kl-pass-guest{animation:klGuestBounce 2.4s ease-in-out infinite}.kl-kitchen-lab .kl-kitchen-busy .kl-pass-guest:nth-child(2){animation-delay:.7s}.kl-kitchen-lab .kl-kitchen-busy .kl-pass-guest:nth-child(3){animation-delay:1.4s}
.kl-kitchen-lab .kl-cooking-beat{position:absolute;left:50%;top:57%;transform:translate(-50%,-50%);z-index:18;max-width:70%;padding:9px 16px;border:2px solid #fff1cd;border-radius:18px;background:#176f70ed;box-shadow:0 4px 0 #104b4e77,0 6px 18px #28201933;color:#fff6da;text-align:center;font:850 clamp(12px,1.9vw,18px)/1.25 system-ui;pointer-events:none}
.kl-kitchen-lab .kl-cooking-beat[data-kind="warning"]{background:#a55130}.kl-kitchen-lab .kl-cooking-beat.is-pop{animation:klBeatPop .25s ease-out}
.kl-kitchen-lab .kl-kitchen-pass[hidden],.kl-kitchen-lab .kl-cooking-beat[hidden]{display:none!important}
.kl-kitchen-lab .kl-service-payoff{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:5px 14px;margin:4px 0 14px;padding:8px 14px;border:1px solid #d6bb8a;border-radius:22px;background:linear-gradient(130deg,#f3e4c5,#fffaf0);color:#436454;font:750 15px/1.3 system-ui}
.kl-kitchen-lab .kl-plated-dish{display:block;grid-row:1 / 3;width:76px;height:64px;position:relative;border-radius:50%;background:radial-gradient(ellipse,#fffdf1 48%,#e7dfc4 50%,#fffdf0 54%,#cdb988 57%,#fffae6 60%,#dfc894 64%,transparent 65%);filter:drop-shadow(0 4px 2px #4e3a242f)}
.kl-kitchen-lab .kl-plated-food{position:absolute;left:19%;top:22%;width:62%;height:54%;border-radius:50%;background-repeat:no-repeat;background-size:300% 100%;background-position:50% 50%}.kl-kitchen-lab .kl-plated-food.is-whole{background-size:contain;background-position:center}
.kl-kitchen-lab .kl-perfect-chain{font:850 12px/1.3 system-ui;color:#97651e;letter-spacing:.02em}
.kl-kitchen-lab .kl-celebration .kl-plated-dish{animation:klPlateEnter .48s ease-out}.kl-kitchen-lab .kl-celebration .kl-perfect-chain{animation:klBeatPop .5s ease-out}
.kl-kitchen-lab .kl-unlock-art{display:block;width:88px;height:88px;object-fit:contain;margin:8px auto;filter:drop-shadow(0 3px 3px #59422033)}
.kl-kitchen-lab .kl-unlock-reveal button{margin:6px;font:750 12px system-ui}
@keyframes klGuestBounce{0%,70%,100%{transform:translateY(0) rotate(0)}80%{transform:translateY(-3px) rotate(-4deg)}90%{transform:translateY(-1px) rotate(3deg)}}
@keyframes klBeatPop{from{opacity:0;scale:.85}to{opacity:1;scale:1}}
@keyframes klPlateEnter{from{opacity:0;transform:translateX(-22px) rotate(-8deg)}to{opacity:1;transform:translateX(0) rotate(0)}}
@media(max-width:600px){.kl-kitchen-lab .kl-kitchen-pass{font-size:9px;gap:5px;padding:4px 8px}.kl-kitchen-lab .kl-pass-message{max-width:120px}.kl-kitchen-lab .kl-pass-guest{width:20px;height:20px;background-size:60px 20px}.kl-kitchen-lab .kl-pass-guest[data-face="1"]{background-position:-20px 0}.kl-kitchen-lab .kl-pass-guest[data-face="2"]{background-position:-40px 0}.kl-kitchen-lab .kl-service-payoff{grid-template-columns:60px 1fr;padding:6px 10px;font-size:12px;gap:5px 8px}.kl-kitchen-lab .kl-plated-dish{width:58px;height:50px}.kl-kitchen-lab .kl-perfect-chain{font-size:10px}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-pass-guest,.kl-kitchen-lab .kl-cooking-beat,.kl-kitchen-lab .kl-plated-dish,.kl-kitchen-lab .kl-perfect-chain{animation:none!important}}

/* Coconut cream remains visible after being stirred into the served curry. */
.kl-kitchen-lab .kl-plated-cream{position:absolute;left:24%;top:27%;width:52%;height:42%;border-radius:50%;background:#ffefcd55;pointer-events:none;z-index:1}
.kl-kitchen-lab .kl-plated-lump{position:absolute;width:11%;height:10%;border-radius:50%;background:#b48757;box-shadow:inset 0 -2px 1px #60442d66;pointer-events:none}

.kl-kitchen-lab .kl-bonus-option{display:flex;align-items:center;gap:8px;margin:12px 0;font-size:12px;color:#426454}.kl-kitchen-lab .kl-bonus-option input{accent-color:#426454}
.kl-kitchen-lab .kl-pass-message{max-width:280px}.kl-kitchen-lab .kl-customer-challenge{grid-column:2;font-size:11px;color:#527349}
.kl-kitchen-lab .kl-plated-herb{position:absolute;width:8%;height:10%;border-radius:65% 15% 65% 15%;background:#5b923d;box-shadow:inset 1px 1px #a5c676;z-index:2;pointer-events:none}
.kl-kitchen-lab .kl-plated-dressing{position:absolute;left:27%;top:29%;width:48%;height:39%;border-radius:50%;border-top:2px solid #fff5b4aa;z-index:3;pointer-events:none}
.kl-kitchen-lab .kl-celebration .kl-plated-food{animation:klFoodLand .32s ease-out}@keyframes klFoodLand{from{opacity:0;transform:translateY(-9px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-celebration .kl-plated-food{animation:none}}

@media(max-width:600px){.kl-kitchen-lab .kl-pass-message{max-width:130px}.kl-kitchen-lab .kl-bonus-option{font-size:11px}}

/* Persistent readiness and customer reactions, without delaying controls. */
.kl-kitchen-lab .kl-dish-ready .kl-serve small{color:#c9ffad;text-shadow:0 2px 2px #183d25}
.kl-kitchen-lab .kl-dish-ready .kl-serve img{filter:drop-shadow(0 0 6px #c9ffad)}
.kl-kitchen-lab .kl-dish-ready .kl-kitchen-pass{border:2px solid #6a9c54;background:#edf8db}
.kl-kitchen-lab [data-mood="delighted"] .kl-pass-guest{background-image:url('art/customer-delighted.svg')}
.kl-kitchen-lab [data-mood="concerned"] .kl-pass-guest{background-image:url('art/customer-concerned.svg')}
.kl-kitchen-lab .kl-customer-reaction{grid-column:2;display:flex;gap:8px;align-items:center}
.kl-kitchen-lab .kl-service-payoff>strong,.kl-kitchen-lab .kl-perfect-chain,.kl-kitchen-lab .kl-customer-challenge{grid-column:2}
.kl-kitchen-lab .kl-shift-highlights{display:flex;flex-direction:column;gap:7px;padding:12px 16px;margin:6px 0 12px;border-radius:18px;background:#edf1d7;border:1px solid #bac794;color:#365d4b;font:700 13px/1.4 system-ui;text-align:left}
.kl-kitchen-lab .kl-shift-highlights>strong{font-size:16px;color:#785425}
/* A dedicated mobile briefing footer keeps the complete coach below Start. */
.kl-kitchen-lab .kl-master-practice{display:block;margin:7px 0 0;padding:7px 12px;font:750 12px system-ui;color:#fff6da;background:#42695a;border:1px solid #234d42;border-radius:12px;cursor:pointer}
.kl-kitchen-lab .kl-master-practice:focus-visible{outline:3px solid #e5b76c;outline-offset:2px}
.kl-kitchen-lab .kl-stir[data-action="whisk"] .kl-spatula-icon,.kl-kitchen-lab .kl-stir[data-utensil="tongs"] .kl-spatula-icon{object-fit:contain;transform:none;width:36px;height:92px}
@media(max-width:600px){.kl-kitchen-lab .kl-order-brief{padding-bottom:132px}.kl-kitchen-lab .kl-order-brief-card{margin-bottom:0;min-height:0;max-height:calc(100% - 14px);overflow-y:auto}.kl-kitchen-lab .kl-order-start{width:100%;position:relative;z-index:1}.kl-kitchen-lab .kl-screen-controls{gap:4px;padding:4px}.kl-kitchen-lab .kl-screen-controls button{font-size:10px;padding:4px 6px}.kl-kitchen-lab .kl-stir[data-action="whisk"] .kl-spatula-icon,.kl-kitchen-lab .kl-stir[data-utensil="tongs"] .kl-spatula-icon{height:72px;width:30px}}
.kl-kitchen-lab .kl-mode-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
.kl-kitchen-lab .kl-mode-choice[data-mode="fix"]{grid-column:1/-1}
.kl-kitchen-lab .kl-daily-panel{padding:12px;border:1px solid #d7c39d;border-radius:16px;background:#fff9ec;text-align:left}
.kl-kitchen-lab .kl-daily-panel[hidden]{display:none!important}
.kl-kitchen-lab .kl-daily-panel label{display:flex;align-items:center;gap:8px;color:#4b5f43;font-weight:700}
.kl-kitchen-lab .kl-daily-panel input{width:20px;height:20px;flex:none}
.kl-kitchen-lab .kl-daily-leaders{font-size:13px;padding-left:24px}
.kl-kitchen-lab .kl-garnish-choice{position:absolute;left:50%;bottom:1.8%;transform:translateX(-50%);width:min(260px,calc(100% - 160px));border:1px solid #d2be92;border-radius:16px;background:#fff8e9e8;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;padding:5px;color:#4b6046}
.kl-kitchen-lab .kl-garnish-choice small{font-weight:800;font-size:11px}
.kl-kitchen-lab .kl-garnish-choice button{padding:6px 7px;border:1px solid #cbb58b;border-radius:15px;background:#fff4d9;color:#524330;font:700 12px system-ui;cursor:pointer}
.kl-kitchen-lab .kl-garnish-choice button[aria-pressed="true"]{background:#dceacb;border-color:#5c7853;box-shadow:inset 0 0 0 1px #5c7853}
.kl-kitchen-lab .kl-plated-finish{position:absolute;z-index:4;pointer-events:none}
.kl-kitchen-lab .kl-plated-finish.is-herbs{left:38%;top:33%;width:10%;height:9%;border-radius:80% 10% 80% 10%;background:#519342;transform:rotate(24deg);box-shadow:18px 11px 0 #79a949,-9px 24px 0 #397c43,28px -7px 0 #397c43}
.kl-kitchen-lab .kl-plated-finish.is-lemon{right:19%;bottom:22%;width:23%;height:16%;border:3px solid #fff6a5;border-radius:0 0 80% 80%;background:repeating-conic-gradient(from 0deg at 50% 0%,#f4d74f 0deg 23deg,#fff4b5 24deg 27deg);transform:rotate(-28deg)}
.kl-kitchen-lab .kl-plated-recipe-chicken{position:absolute;left:30%;top:37%;width:40%;height:36%;background-size:300% 100%;background-position:50% 0;background-repeat:no-repeat;z-index:2;transform:rotate(-12deg)}
.kl-kitchen-lab .kl-failure-replay{margin:12px 0;padding:12px 14px;border-radius:16px;border:1px solid #dfc79b;background:#fff7e7;text-align:left;color:#594536}
.kl-kitchen-lab .kl-failure-replay p{font-size:14px;margin:7px 0}
.kl-kitchen-lab .kl-failure-replay small{display:block;line-height:1.6;font-size:12px}
.kl-kitchen-lab .kl-practice-failure{border:1px solid #607850;border-radius:15px;background:#e4edd8;color:#415637;padding:10px;font:800 13px system-ui;cursor:pointer}
.kl-kitchen-lab .kl-result-actions{flex-wrap:wrap}
@media(max-width:600px){.kl-kitchen-lab .kl-mode-choices{grid-template-columns:1fr}.kl-kitchen-lab .kl-garnish-choice small{flex-basis:100%;text-align:center}.kl-kitchen-lab .kl-result-actions .kl-practice-failure{width:100%}}

.kl-kitchen-lab .kl-ing.is-next-recipe{outline:2px solid #ffe2a1;outline-offset:-2px;border-radius:14px;background:#fff4c822!important}
.kl-kitchen-lab .kl-ing.is-next-recipe small{color:#fff4ba;font-weight:900}
.kl-kitchen-lab .kl-recipe-return{display:inline-flex;align-items:center;justify-content:center;background:#f15b2a;color:#fff!important;text-decoration:none;padding:14px 20px;border-radius:18px;font:850 16px system-ui;border:2px solid #fff5dc;box-shadow:0 3px 0 #ac3c1e}
.kl-kitchen-lab .kl-recipe-return:focus-visible{outline:3px solid #487b5b;outline-offset:3px}
.kl-kitchen-lab.kl-recipe-active .kl-game-goal-copy{font-size:12px;line-height:1.2}

/* Recipe shelves show the next six unadded ingredients; hidden cards must not catch drops. */
.kl-recipe-active .kl-ing[hidden]{display:none!important}
.kl-recipe-plate-items{position:absolute;inset:15%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px;font-size:16px;line-height:1;overflow:hidden}
.kl-recipe-active .kl-kitchen-pass,.kl-recipe-active .kl-coach-bubble,.kl-recipe-active .kl-reward-progress,.kl-recipe-active .kl-live-score{display:none!important}

.kl-recipe-plate-piece{display:block;width:22px;height:22px;background-size:contain;background-position:center;background-repeat:no-repeat}

/* Keep the primary action visible when mode details exceed the stage height. */
.kl-kitchen-lab .kl-intro{min-height:0}
.kl-kitchen-lab .kl-intro-card{box-sizing:border-box;max-height:100%;min-height:0;overflow:hidden}
.kl-kitchen-lab .kl-intro-content{display:flex;flex-direction:column;gap:inherit;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:2px 4px 6px}
.kl-kitchen-lab .kl-intro-content[hidden]{display:none!important}
.kl-kitchen-lab .kl-intro-content>*{flex-shrink:0}
.kl-kitchen-lab .kl-intro-card>.kl-start{flex-shrink:0;width:100%}

/* Recipe practice: loose ingredients, reserved coach space and immediate feedback. */
.kl-kitchen-lab.kl-recipe-active .kl-ing.is-next-recipe{outline:none;background:transparent!important;box-shadow:none!important}
.kl-kitchen-lab.kl-recipe-active .kl-goal-card{padding-right:82px!important}
.kl-kitchen-lab.kl-recipe-active .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{width:64px!important;height:74px!important;pointer-events:none}
.kl-recipe-progress{font:750 11px/1.3 system-ui;color:#45634b;margin-top:5px}
.kl-recipe-progress span{display:block}.kl-recipe-progress progress{display:block;width:100%;height:7px;accent-color:#4e895e;margin-top:3px}
.kl-recipe-feedback{position:absolute;z-index:24;left:50%;top:56%;transform:translateX(-50%);width:max-content;max-width:65%;box-sizing:border-box;padding:10px 16px;border-radius:16px;border:2px solid #fff8dd;background:#fff6dfF5;color:#4a3828;text-align:center;box-shadow:0 5px 18px #38241444;font:850 14px/1.35 system-ui;pointer-events:none}
.kl-recipe-feedback[data-kind="error"]{background:#fff0dd;color:#933c25;border-color:#f1a36d}
.kl-recipe-feedback[data-kind="success"],.kl-recipe-feedback[data-kind="ready"]{background:#edf8df;color:#386346;border-color:#b2d68c}
.kl-recipe-feedback[hidden]{display:none!important}
.kl-kitchen-lab.kl-recipe-active .kl-serve{left:auto!important;right:3%!important;bottom:18px!important;transform:none!important;width:96px;height:80px}
.kl-kitchen-lab.kl-recipe-active .kl-serve:disabled{opacity:.4;filter:grayscale(.8);cursor:default}
.kl-recipe-ready img{animation:kl-recipe-serve-pulse 1.3s ease-in-out infinite;filter:drop-shadow(0 0 7px #ffe49a)}
@keyframes kl-recipe-serve-pulse{50%{scale:1.08}}
.kl-recipe-recap{font:700 13px/1.5 system-ui;color:#536547;max-width:52ch}
.kl-recipe-active .kl-plated-dish{animation:kl-recipe-plate-enter .5s ease-out both}
@keyframes kl-recipe-plate-enter{from{transform:translateY(15px) scale(.8);opacity:0}to{transform:none;opacity:1}}
@media(max-width:600px){.kl-kitchen-lab.kl-recipe-active .kl-stage:not(.kl-mascot-result-active) .kl-coach-character:not(.kl-reacting){visibility:hidden}.kl-recipe-feedback{top:59%;max-width:85%;padding:8px 12px;font-size:12px}.kl-kitchen-lab.kl-recipe-active .kl-serve{width:72px;height:60px}}
@media(prefers-reduced-motion:reduce){.kl-recipe-ready img,.kl-recipe-active .kl-plated-dish{animation:none}}

.kl-kitchen-lab:not(.kl-recipe-active) .kl-recipe-progress,.kl-kitchen-lab:not(.kl-recipe-active) .kl-recipe-feedback{display:none!important}

.kl-recipe-active .kl-cooking-beat{display:none!important}
@media(max-width:600px){.kl-kitchen-lab.kl-recipe-active .kl-goal-card{padding-right:62px!important}.kl-kitchen-lab.kl-recipe-active .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{width:48px!important;height:56px!important}}

/* Compact mode menu: four equally sized choices, with no unused grid cell. */
.kl-kitchen-lab .kl-intro-card{width:min(620px,100%);padding:16px;gap:10px}
.kl-kitchen-lab .kl-mode-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.kl-kitchen-lab .kl-mode-choice[data-mode="fix"]{grid-column:auto}
.kl-kitchen-lab .kl-mode-choice{display:grid;grid-template-columns:28px minmax(0,1fr);align-content:center;align-items:center;gap:3px 8px;min-height:78px;padding:10px 12px;text-align:left;border-radius:16px}
.kl-kitchen-lab .kl-mode-choice .kl-mode-icon{grid-row:1/3;font-size:23px}
.kl-kitchen-lab .kl-mode-choice .kl-mode-name{font-size:15px;line-height:1.2}
.kl-kitchen-lab .kl-mode-choice small{grid-column:2;display:block;font-size:11px;line-height:1.3}
.kl-kitchen-lab .kl-intro-content{padding:2px 2px 5px;scrollbar-gutter:auto}
.kl-kitchen-lab .kl-intro-content .kl-intro-goal,.kl-kitchen-lab .kl-intro-content .kl-mode-description{padding-right:74px}
.kl-kitchen-lab .kl-intro-card .kl-intro-goal{font-size:25px}
.kl-kitchen-lab .kl-intro-card .kl-reward-progress{padding:8px 12px;font-size:12px;line-height:1.35}
.kl-kitchen-lab .kl-intro-card .kl-reward-progress p{max-width:none;margin:3px 0;font-size:12px;line-height:1.35}
@media(max-width:600px){.kl-kitchen-lab .kl-intro-card{padding:12px;gap:8px}.kl-kitchen-lab .kl-mode-choice{grid-template-columns:1fr;min-height:88px;padding:8px;gap:3px;text-align:center}.kl-kitchen-lab .kl-mode-choice .kl-mode-icon{grid-row:auto;font-size:22px}.kl-kitchen-lab .kl-mode-choice .kl-mode-name{font-size:13px}.kl-kitchen-lab .kl-mode-choice small{grid-column:1;font-size:10px}.kl-kitchen-lab .kl-intro-card .kl-intro-goal{font-size:21px}.kl-kitchen-lab .kl-intro-card .kl-mode-description{font-size:12px}}

.kl-kitchen-lab .kl-intro-card .kl-bonus-option{margin:4px 0}
/* 1.12: bounded results with a persistent action footer. */
.kl-kitchen-lab .kl-result{padding:58px 12px 12px;align-items:center;min-height:0;overflow:hidden}
.kl-kitchen-lab .kl-result-card{display:flex;flex-direction:column;width:min(820px,100%);height:auto;max-height:100%;min-height:0;overflow:hidden;padding:0;gap:0}
.kl-kitchen-lab .kl-result-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px;scrollbar-gutter:stable}
.kl-kitchen-lab .kl-result-card .kl-result-actions{flex:0 0 auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:0;padding:12px 18px;border-top:1px solid #dbc49f;background:#fff6e6;position:relative;z-index:2}
.kl-kitchen-lab .kl-result-actions>*{min-height:44px;max-width:100%}
.kl-kitchen-lab .kl-failure-replay,.kl-kitchen-lab .kl-collection-details{margin:10px 0;padding:8px 10px;border:1px solid #dec49d;border-radius:12px;background:#fff7e7;font-size:13px}
.kl-kitchen-lab .kl-failure-replay summary,.kl-kitchen-lab .kl-collection-details summary{cursor:pointer;font-weight:800;padding:4px}
.kl-kitchen-lab .kl-failure-replay strong{font-size:14px}
.kl-kitchen-lab .kl-build-mark{position:static;display:block;transform:none;margin:8px 0 0;padding:0;background:none;color:#716450;font:700 10px/1.3 system-ui;text-align:right;pointer-events:auto}
.kl-kitchen-lab .kl-stage>.kl-live-score{position:absolute;z-index:53;left:50%;top:12px;transform:translateX(-50%);padding:7px 14px;border:1px solid #d8bd89;border-radius:16px;background:#34594bed;color:#fff4d5;font:900 15px/1 system-ui;box-shadow:0 2px 5px #24170f40;white-space:nowrap}
.kl-kitchen-lab .kl-stage>.kl-live-score[hidden]{display:none}
.kl-kitchen-lab .kl-screen-controls{padding:4px;gap:5px}
.kl-kitchen-lab .kl-screen-controls .kl-settings-toggle{width:38px;padding:5px}
.kl-kitchen-lab .kl-settings-panel{max-height:calc(100% - 75px);overflow-y:auto;overscroll-behavior:contain}
.kl-kitchen-lab .kl-settings-panel .kl-live-menu{position:static;inset:auto;transform:none;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;margin:12px 0 0;padding:10px;border:1px solid #caa676;border-radius:12px;background:#fff2d9;color:#5e3a28;font-weight:850;cursor:pointer}
.kl-kitchen-lab .kl-settings-panel .kl-live-menu[hidden]{display:none!important}
.kl-kitchen-lab .kl-settings-panel .kl-live-menu img{width:24px;height:24px}
.kl-kitchen-lab .kl-rescue-progress{margin-top:5px;display:flex;align-items:center;gap:8px}
.kl-kitchen-lab .kl-rescue-progress span{font:750 11px/1.3 system-ui;flex:1}
.kl-kitchen-lab .kl-rescue-progress progress{width:95px;height:8px;accent-color:#628c45;flex-shrink:0}
.kl-kitchen-lab .kl-rescue-progress[hidden]{display:none}
.kl-kitchen-lab .kl-heat-warning .kl-goal-card{border-color:#d08737;box-shadow:0 0 0 2px #eba44355}
.kl-kitchen-lab .kl-recipe-feedback[data-kind="warning"]{background:#fff0cf;border-color:#d5963b;color:#744714}
.kl-kitchen-lab .kl-result:not([hidden]) .kl-star.is-earned{animation:klSequentialStar .35s ease-out both}
@keyframes klSequentialStar{from{opacity:0;transform:translateY(8px) scale(.4)}to{opacity:1;transform:translateY(0) scale(1)}}
.kl-kitchen-lab .kl-result:not([hidden]) .kl-plated-food,.kl-kitchen-lab .kl-result:not([hidden]) .kl-recipe-plate-piece{animation:klFoodLand .45s ease-out both}
@media(max-width:600px){
 .kl-kitchen-lab .kl-result{padding:50px 8px 8px}
 .kl-kitchen-lab .kl-result-content{padding:12px}
 .kl-kitchen-lab .kl-result-card .kl-result-actions{padding:9px;gap:6px}
 .kl-kitchen-lab .kl-stage>.kl-live-score{top:8px;font-size:12px;padding:7px 10px}
 .kl-kitchen-lab .kl-rescue-progress{display:block}
 .kl-kitchen-lab .kl-rescue-progress span{display:block;font-size:10px}
 .kl-kitchen-lab .kl-rescue-progress progress{width:100%;height:6px;display:block;margin-top:3px}
}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-result .kl-star.is-earned,.kl-kitchen-lab .kl-result .kl-plated-food,.kl-kitchen-lab .kl-result .kl-recipe-plate-piece{animation:none!important}}
.kl-kitchen-lab .kl-stage>.kl-live-score{display:inline-block}
.kl-kitchen-lab .kl-stage>.kl-live-score[hidden]{display:none}
.kl-kitchen-lab:not(.kl-recipe-active) .kl-recipe-feedback:not([hidden]){display:block!important}
.kl-kitchen-lab .kl-stage:has(>.kl-result:not([hidden]))>.kl-recipe-feedback{display:none!important}
.kl-kitchen-lab .kl-passport-details{margin:8px 0;padding:8px 10px;border:1px solid #d9bd91;border-radius:12px;background:#fff8e9;font:700 12px/1.4 system-ui}.kl-kitchen-lab .kl-passport-details summary{cursor:pointer;padding:3px}.kl-kitchen-lab .kl-passport-body>strong,.kl-kitchen-lab .kl-passport-body>small,.kl-kitchen-lab .kl-passport-body>a{display:block;margin:6px 0}.kl-kitchen-lab .kl-passport-milestones{display:grid!important;gap:6px;list-style:none;padding:0;margin:8px 0}.kl-kitchen-lab .kl-passport-milestones li{font-size:12px;padding:4px}.kl-kitchen-lab .kl-passport-body button,.kl-kitchen-lab .kl-level-next,.kl-kitchen-lab .kl-rush-intro{min-height:40px;padding:8px 12px;background:#edf3df;color:#436247;border:1px solid #95a779;border-radius:10px;font:800 12px/1.3 system-ui;cursor:pointer}.kl-kitchen-lab .kl-rush-intro{width:100%;margin-top:8px}.kl-kitchen-lab .kl-rush-intro[hidden]{display:none}.kl-kitchen-lab .kl-result-actions .kl-replay{max-width:320px;font-size:12px;white-space:normal}.kl-kitchen-lab .kl-order-portrait{position:absolute;right:20px;top:15px}.kl-kitchen-lab .kl-order-portrait svg{width:38px;height:42px}.kl-kitchen-lab .kl-result-content .kl-passport-milestones{max-height:none}.kl-kitchen-lab .kl-passport-details ul li:before{display:none}
.kl-play-hub{padding:24px;margin:16px 0 28px;border-radius:24px;border:1px solid #d8bd94;background:linear-gradient(125deg,#fff8e9,#f2e1c4);color:#443a2d}.kl-play-hub>span{font-size:12px;font-weight:900;letter-spacing:2px;color:#54705b}.kl-play-hub h2{margin:8px 0}.kl-play-hub a{display:inline-block;margin:8px;padding:12px 18px;border-radius:12px;color:#42614c;font-weight:850}.kl-play-hub .kl-hub-open{background:#f15b2a;color:#fff;text-decoration:none}.kl-play-hub p:last-child{font-size:12px}

.kl-reward-item.is-face,.kl-unlock-art.is-face{position:relative;display:inline-block;width:58px;height:58px;flex-shrink:0;border-radius:50%;background:#91c5be;border:2px solid #ead2a7;overflow:hidden}
.kl-reward-item.is-face img,.kl-unlock-art.is-face img{position:absolute;inset:9px 0;width:100%;height:40px;object-fit:contain}
.cmc-ladder-notice,.kl-ladder-notice{background:#fff0d2;border:1px solid #d5b584;border-radius:12px;padding:10px;margin:8px 0;font-size:12px}.cmc-ladder-notice p,.kl-ladder-notice p{margin:0 0 8px}.cmc-ladder-notice button,.kl-ladder-notice button{border:1px solid #cbb489;border-radius:8px;padding:6px 10px;background:#fff8e9;cursor:pointer}

.kl-heat-rescue{position:absolute;z-index:17;left:50%;bottom:100px;transform:translateX(-50%);width:min(260px,70%);padding:8px 12px;border-radius:14px;background:#fff0cf;color:#774a22;pointer-events:none;text-align:center;font:700 12px/1.3 system-ui}.kl-heat-rescue progress{display:block;width:100%;height:8px;margin-top:5px;accent-color:#d78637}.kl-heat-rescue[hidden]{display:none!important}.kl-result-actions .is-recommended{box-shadow:0 0 0 2px #ecd29d}.kl-unlock-reveal{animation:kl-reward-arrive .45s ease-out}.kl-unlock-art{vertical-align:middle}.kl-reward-progress .kl-ladder-notice{grid-column:1/-1}.kl-reward-progress progress{accent-color:#4a8071}.kl-result-verdict{font-size:clamp(14px,1.6vw,18px)}@keyframes kl-reward-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.kl-unlock-reveal{animation:none}}

/* 1.16.0: clear controls and a compact finishing cue. */
.kl-kitchen-lab .kl-game-actions .kl-icon-action{border:0;border-radius:0;background:transparent;box-shadow:none;filter:none;text-shadow:none;color:#3c5f51}
.kl-kitchen-lab .kl-game-actions .kl-icon-action:hover{background:#fff5df;filter:brightness(1.05)}
.kl-kitchen-lab .kl-game-actions .kl-icon-action img{width:48px;height:48px;filter:none}
.kl-kitchen-lab .kl-stage.kl-recipe-finished .kl-goal-card{width:min(380px,58%);border-color:#8cab74;background:#f3f8e8f5}
.kl-kitchen-lab .kl-stage.kl-recipe-finished .kl-recipe-progress{display:none}
.kl-kitchen-lab.kl-recipe-active .kl-serve img{width:90px;height:56px}
.kl-kitchen-lab.kl-recipe-active .kl-serve small{padding:3px 9px;border-radius:8px;background:#345b4e;color:#fff7dc;text-shadow:none;font-size:12px}
@media(max-width:600px){.kl-kitchen-lab .kl-game-actions .kl-icon-action img{width:40px;height:40px}.kl-kitchen-lab.kl-recipe-active .kl-serve{right:3%!important;bottom:16px!important;width:76px;height:70px;min-width:76px;min-height:70px}.kl-kitchen-lab.kl-recipe-active .kl-serve img{width:72px;height:46px}.kl-kitchen-lab .kl-stage.kl-recipe-finished .kl-goal-card{width:75%;max-width:320px}}

.kl-kitchen-lab.kl-recipe-active .kl-remove-heat{display:none!important}
.kl-kitchen-lab .kl-game-actions .kl-spatula-icon{transform:none}
/* 1.17: recipe appliance controls and restrained result summary. */
.kl-kitchen-lab.kl-recipe-active .kl-goal-card{padding-right:80px!important;min-height:90px}
.kl-kitchen-lab.kl-recipe-active .kl-stage:not(.kl-mascot-result-active) .kl-coach-character{width:64px!important;height:74px!important;visibility:visible!important}
.kl-kitchen-lab .kl-recipe-appliance{position:absolute;z-index:25;bottom:125px;left:50%;transform:translateX(-50%);display:flex;flex-wrap:wrap;justify-content:center;gap:5px;width:min(90%,480px);padding:9px;border:1px solid #bca273;border-radius:16px;background:#fff7e7f2;box-shadow:0 4px 14px #2b413426;font:700 11px/1.3 system-ui}
.kl-recipe-appliance[hidden]{display:none!important}.kl-recipe-appliance strong{width:100%;text-align:center;text-transform:capitalize}.kl-recipe-appliance button{min-height:34px;border:1px solid #a8b397;border-radius:8px;background:#f8f4e8;color:#345b4d;padding:6px 9px;cursor:pointer}.kl-recipe-appliance button[aria-pressed=true]{background:#3d7161;color:#fff}.kl-recipe-appliance button:disabled{opacity:.55}
.kl-kitchen-lab .is-recipe-result .kl-result-card{width:min(640px,94%);border-radius:24px;background:#fff9ee}
.kl-kitchen-lab .is-recipe-result .kl-result-content{padding:18px 24px;text-align:center}
.kl-kitchen-lab .is-recipe-result .kl-result-dish{display:block;padding:0;border:0;background:none;font-size:14px;color:#60745f}.kl-kitchen-lab .is-recipe-result .kl-result-dish-icon{display:none}
.kl-kitchen-lab .is-recipe-result .kl-plated-dish{width:100%;height:auto;background:none;filter:none;margin:2px auto;animation:none}.kl-kitchen-lab .is-recipe-result .kl-plated-dish canvas{display:block;width:100%;max-height:220px;object-fit:contain}
.kl-kitchen-lab .is-recipe-result .kl-result-story{display:block!important;margin:0}.kl-kitchen-lab .is-recipe-result .kl-result-mascot-slot{display:none}.kl-kitchen-lab .is-recipe-result h3{margin:4px 0;font-size:26px}.kl-kitchen-lab .is-recipe-result .kl-result-verdict{font-size:13px;margin:6px 0;line-height:1.5}.kl-kitchen-lab .is-recipe-result .kl-result-stars{margin:8px 0}.kl-kitchen-lab .is-recipe-result .kl-earned{font-size:11px;margin:4px 0;color:#63745f}.kl-kitchen-lab .is-recipe-result .kl-next-reward,.kl-kitchen-lab .is-recipe-result .kl-collection-details,.kl-kitchen-lab .is-recipe-result .kl-result-progress{display:none!important}
.kl-kitchen-lab .is-recipe-result .kl-result-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 24px;background:#f4eddd;border-top:1px solid #e1d9c1}.kl-kitchen-lab .is-recipe-result .kl-level-next,.kl-kitchen-lab .is-recipe-result .kl-recipe-return{grid-row:1;min-height:42px;background:#3e7161!important;color:#fff!important;border-radius:10px;text-align:center;font:800 12px/1.3 system-ui;text-decoration:none;padding:12px}.kl-kitchen-lab .is-recipe-result .kl-replay,.kl-kitchen-lab .is-recipe-result .kl-next{grid-row:2;background:transparent!important;border:0!important;box-shadow:none!important;color:#56715b!important;font-size:12px;min-height:32px;padding:6px}
.kl-kitchen-lab .is-recipe-result .kl-details-toggle{font-size:11px;margin:7px auto}.kl-kitchen-lab .is-recipe-result .kl-passport-details{text-align:left;font-size:11px;background:transparent;margin:5px 0;padding:4px 8px}
.kl-kitchen-lab .is-recipe-result.is-details .kl-plated-dish{display:none}.kl-kitchen-lab .is-recipe-result.is-details .kl-result-content>ul{display:block!important;text-align:left}
@media(max-width:600px){.kl-kitchen-lab .is-recipe-result .kl-result-content{padding:12px}.kl-kitchen-lab .is-recipe-result h3{font-size:22px}.kl-kitchen-lab .is-recipe-result .kl-result-actions{padding:10px 12px}.kl-kitchen-lab .kl-recipe-appliance{bottom:125px;font-size:10px;width:90%;padding:7px}.kl-recipe-appliance button{font-size:10px;padding:5px 7px}}
.kl-kitchen-lab.kl-recipe-active .kl-goal-card{max-width:calc(100% - 90px)!important;padding-right:14px!important}.kl-kitchen-lab .is-recipe-result .kl-result-card{position:relative}.kl-kitchen-lab .is-recipe-result .kl-result-mascot-slot{display:block;position:absolute;left:auto;bottom:auto;right:12px;top:12px;width:54px;height:62px}.kl-kitchen-lab .is-recipe-result .kl-result-dish{padding:0 45px}
.kl-kitchen-lab .is-recipe-result .kl-result-verdict{border:0!important;background:none!important;box-shadow:none!important;padding:4px!important}.kl-kitchen-lab .is-recipe-result .kl-result-verdict:before,.kl-kitchen-lab .is-recipe-result .kl-result-verdict:after{display:none!important}
.kl-kitchen-lab .kl-recipe-adaptations{font:600 11px/1.5 system-ui;text-align:left;margin:9px 0;color:#60705a}.kl-recipe-adaptations summary{cursor:pointer;font-weight:800}.kl-recipe-adaptations p{font-size:11px;margin:5px 0}.kl-kitchen-lab .kl-order-food-image.is-recipe-protein{background-size:400% 300%;background-repeat:no-repeat}.kl-kitchen-lab .is-recipe-result .kl-recipe-return{border:0!important;box-shadow:none!important}
.kl-kitchen-lab.kl-recipe-active .kl-goal-card{padding-right:76px!important}.kl-kitchen-lab .kl-recipe-coach{position:absolute;right:7px;top:5px;width:56px;height:65px;display:block;pointer-events:none;animation:klCoachFloat 3s ease-in-out infinite}.kl-recipe-coach svg{width:100%;height:100%;display:block!important}.kl-kitchen-lab:not(.kl-recipe-active) .kl-recipe-coach{display:none}@keyframes klCoachFloat{50%{transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.kl-recipe-coach{animation:none!important}}

/* 1.18: use the page width, with independent cooking height and a simpler menu. */
.kl-kitchen-lab.kl-shell{--kl-page-width:min(1340px,calc(100vw - 40px));box-sizing:border-box;width:var(--kl-page-width);max-width:1340px!important;margin-inline:calc((100% - var(--kl-page-width))/2)}
.kl-kitchen-lab .kl-stage{box-sizing:border-box;aspect-ratio:auto;height:clamp(480px,62vh,620px);min-height:480px}
.kl-kitchen-lab .kl-intro{padding:54px 24px 20px;align-items:start}
.kl-kitchen-lab .kl-intro-card{width:min(1100px,100%);max-width:1100px;max-height:100%;padding:20px 24px;gap:16px;overflow:hidden}
.kl-kitchen-lab .kl-intro-content{display:block;overflow-y:auto;padding:0 4px 4px}
.kl-kitchen-lab .kl-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px;margin-bottom:12px}
.kl-kitchen-lab .kl-intro-mascot-slot{display:block;flex:0 0 60px;width:60px;height:68px}
.kl-kitchen-lab .kl-intro-content .kl-intro-goal{padding-right:0;margin:0;font-size:26px}
.kl-kitchen-lab .kl-menu-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:24px;align-items:start}
.kl-kitchen-lab .kl-menu-main,.kl-kitchen-lab .kl-menu-secondary{min-width:0}
.kl-kitchen-lab .kl-mode-choices{margin:0 0 14px;gap:10px}
.kl-kitchen-lab .kl-mode-choice{min-height:82px;padding:12px;grid-template-columns:28px minmax(0,1fr)}
.kl-kitchen-lab .kl-intro-content .kl-mode-description{padding:0;line-height:1.45;font-size:14px}
.kl-kitchen-lab .kl-menu-secondary{display:grid;gap:12px;padding-left:22px;border-left:1px solid #dfcbae}
.kl-kitchen-lab .kl-menu-secondary details{min-width:0}
.kl-kitchen-lab .kl-menu-secondary summary{padding:12px 4px;color:#46644d;font:800 13px/1.4 system-ui;cursor:pointer;overflow-wrap:anywhere}
.kl-kitchen-lab .kl-menu-options-body{padding:4px 0}
.kl-kitchen-lab .kl-menu-rewards.has-save-error>summary{color:#963d28}
.kl-kitchen-lab .kl-menu-secondary .kl-passport-details{margin:8px 0}
.kl-kitchen-lab .kl-intro-card>.kl-start{width:auto;min-width:260px;align-self:flex-start;min-height:48px;margin:0}
.kl-kitchen-lab .kl-intro-card .kl-bonus-option{line-height:1.5;align-items:flex-start}
.kl-kitchen-lab .kl-intro[data-menu-mode="recipe"] .kl-menu-grid{grid-template-columns:1fr}
.kl-kitchen-lab .kl-intro[data-menu-mode="recipe"] .kl-menu-secondary{display:none}
.kl-kitchen-lab.kl-shell:fullscreen{--kl-page-width:100%;width:100%;max-width:none!important;margin:0;padding:2vh 2vw}
.kl-kitchen-lab.kl-shell:fullscreen .kl-heading,.kl-kitchen-lab.kl-shell:fullscreen .kl-footnote{max-width:1340px}
.kl-kitchen-lab.kl-shell:fullscreen .kl-stage{width:min(96vw,1340px);height:min(78vh,720px);min-height:0}
@media(max-width:850px){
 .kl-kitchen-lab .kl-menu-grid{grid-template-columns:1fr;gap:12px}
 .kl-kitchen-lab .kl-menu-secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;border:0;border-top:1px solid #dfcbae}
 .kl-kitchen-lab .kl-intro-card{padding:16px;gap:12px}
 .kl-kitchen-lab .kl-menu-heading{margin-bottom:8px;min-height:54px}
 .kl-kitchen-lab .kl-intro-mascot-slot{width:48px;height:56px;flex-basis:48px}
 .kl-kitchen-lab .kl-intro-content .kl-intro-goal{font-size:23px}
}
@media(max-width:600px){
 .kl-kitchen-lab.kl-shell{--kl-page-width:100vw;max-width:none!important;margin-top:12px;margin-bottom:12px}
 .kl-kitchen-lab .kl-heading,.kl-kitchen-lab .kl-footnote{padding-inline:14px}
 .kl-kitchen-lab .kl-stage{height:clamp(560px,80svh,720px);min-height:560px;border:0;border-radius:0;box-shadow:none}
 .kl-kitchen-lab .kl-intro{padding:52px 10px 14px}
 .kl-kitchen-lab .kl-intro-card{padding:12px;gap:12px;border-radius:20px}
 .kl-kitchen-lab .kl-mode-choices{gap:8px;margin-bottom:12px}
 .kl-kitchen-lab .kl-mode-choice{grid-template-columns:1fr;min-height:90px;padding:9px;gap:4px;text-align:center}
 .kl-kitchen-lab .kl-mode-choice .kl-mode-icon{grid-row:auto;font-size:23px}
 .kl-kitchen-lab .kl-mode-choice .kl-mode-name{font-size:14px}
 .kl-kitchen-lab .kl-mode-choice small{grid-column:1;font-size:11px}
 .kl-kitchen-lab .kl-intro-content .kl-intro-goal{font-size:21px}
 .kl-kitchen-lab .kl-intro-content .kl-mode-description{font-size:13px}
 .kl-kitchen-lab .kl-menu-secondary{gap:8px}
 .kl-kitchen-lab .kl-menu-secondary summary{font-size:12px;padding:10px 2px}
 .kl-kitchen-lab .kl-intro-card>.kl-start{align-self:stretch;width:100%;min-width:0}
 .kl-kitchen-lab.kl-shell:fullscreen{--kl-page-width:100%;margin:0;width:100%;padding:1vh 0}
 .kl-kitchen-lab.kl-shell:fullscreen .kl-stage{width:100%;height:82svh;min-height:0}
}
@media(min-width:851px) and (max-width:1100px){
 .kl-kitchen-lab .kl-intro{padding-top:46px;padding-bottom:12px}
 .kl-kitchen-lab .kl-intro-card{padding:16px;gap:12px}
 .kl-kitchen-lab .kl-menu-grid{grid-template-columns:minmax(0,2fr) minmax(210px,1fr);gap:16px}
 .kl-kitchen-lab .kl-menu-heading{min-height:56px;margin-bottom:8px}
 .kl-kitchen-lab .kl-intro-mascot-slot{width:48px;height:56px;flex-basis:48px}
 .kl-kitchen-lab .kl-menu-secondary{padding-left:14px}
 .kl-kitchen-lab .kl-mode-choice{min-height:78px}
}
.kl-kitchen-lab .kl-intro-mascot-slot>svg{display:block;width:100%;height:100%}

/* 1.20.0: devote the available viewport to cooking, with all controls inside. */
.kl-kitchen-lab.kl-shell{margin-top:0;margin-bottom:12px}
.kl-kitchen-lab .kl-stage{height:var(--kl-viewport-height,calc(100dvh - 140px))}
.kl-kitchen-lab .kl-stage>.kl-fullscreen{display:none}
.kl-kitchen-lab .kl-screen-controls .kl-fullscreen{display:flex;align-items:center;justify-content:center;width:38px;height:38px;min-height:38px;padding:5px;flex:0 0 38px;border-radius:12px}
.kl-kitchen-lab .kl-screen-controls .kl-fullscreen img{display:block;width:26px;height:26px}
.kl-kitchen-lab.kl-shell:fullscreen{padding:8px 0;justify-content:flex-start}
.kl-kitchen-lab.kl-shell:fullscreen .kl-stage{height:calc(100dvh - 16px);min-height:0;width:min(100%,1340px)}
.kl-kitchen-lab.kl-shell:fullscreen .kl-footnote,.kl-kitchen-lab.kl-shell:fullscreen>.kl-build-mark{display:none}
@media(max-width:600px){.kl-kitchen-lab.kl-shell:fullscreen .kl-stage{width:100%}.kl-kitchen-lab .kl-screen-controls .kl-fullscreen{width:36px;height:36px;min-height:36px;flex-basis:36px}}
/* 1.19: one guidance area, unobstructed burner and compact results. */
.kl-kitchen-lab .kl-stage .kl-coach-bubble{display:none!important}
.kl-kitchen-lab .kl-goal-card{max-width:min(550px,calc(100% - 150px));padding:10px 14px}
.kl-kitchen-lab .kl-goal-card .kl-game-goal-copy{font-size:14px;line-height:1.3;margin:4px 0}
.kl-kitchen-lab .kl-goal-card .kl-kitchen-pass{position:static;transform:none;width:auto;max-width:none;padding:4px 0 0;border:0;border-radius:0;background:none;box-shadow:none;font-size:10px;gap:6px}
.kl-kitchen-lab .kl-kitchen-pass>strong{display:none}
.kl-kitchen-lab .kl-coach-feedback{margin-top:5px;font:700 11px/1.35 system-ui;color:#41654f}
.kl-kitchen-lab .kl-coach-feedback[hidden]{display:none}
.kl-kitchen-lab .kl-rescue-progress span{display:none}
.kl-kitchen-lab .kl-rescue-progress{margin-top:4px;justify-content:flex-end}
.kl-kitchen-lab .kl-game-actions .kl-icon-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:58px;height:64px;padding:6px;overflow:hidden;border:1px solid #c9a773;border-radius:17px;background:linear-gradient(#fff9eb,#eedbb3);box-shadow:0 3px 0 #9c7e55}
.kl-kitchen-lab .kl-game-actions .kl-icon-action img,.kl-kitchen-lab .kl-game-actions .kl-stir[data-utensil] .kl-spatula-icon{width:34px;height:38px;object-fit:contain;transform:none;opacity:1;max-height:38px}
.kl-kitchen-lab .kl-tool-label{font:800 10px/1 system-ui;color:#4c624e}
.kl-kitchen-lab .kl-garnish-choice{left:auto;right:14px;bottom:100px;transform:none;width:150px;justify-content:center;z-index:24;padding:5px}
.kl-kitchen-lab .kl-garnish-choice[hidden]{display:none!important}
.kl-kitchen-lab .kl-garnish-choice:not(.is-open)>button:not(.kl-finish-toggle){display:none}
.kl-kitchen-lab .kl-garnish-choice .kl-finish-toggle{width:100%;background:none;border:0;font-size:11px}
.kl-kitchen-lab .kl-result{padding:16px 12px;}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-card{width:min(620px,100%)}
.kl-kitchen-lab .kl-result-content{padding:18px 22px;scrollbar-gutter:auto}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-progress{display:block;font:750 10px/1.3 system-ui;background:none;padding:0;margin:0 0 6px;letter-spacing:.04em}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-dish{margin:0 0 8px;padding:0;font-size:15px}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-service-payoff{display:none}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-story{display:grid;grid-template-columns:78px 1fr;gap:14px;align-items:center;min-height:88px;margin:6px 0 12px;padding:0}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-mascot-slot{position:static;grid-column:1;grid-row:1;width:78px;height:88px;margin:0}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-copy{grid-column:2;grid-row:1;padding:0}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) h3{font-size:27px;margin:0 0 5px}
.kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-verdict{padding:0;border:0;background:none;box-shadow:none;font-size:14px;line-height:1.4;margin:0}
.kl-kitchen-lab .kl-result-verdict:before{display:none}
.kl-kitchen-lab .kl-result:not(.is-details) .kl-collection-details,.kl-kitchen-lab .kl-result:not(.is-details) .kl-failure-replay,.kl-kitchen-lab .kl-result:not(.is-details) .kl-passport-details{display:none}
.kl-kitchen-lab .kl-result .kl-next-reward{font-size:12px;margin:7px 0;color:#55714e}
.kl-kitchen-lab .kl-result .kl-save-note{display:block;color:#7b796c;font-size:10px;margin-top:10px}
.kl-kitchen-lab .kl-result-actions .kl-replay,.kl-kitchen-lab .kl-result-actions .kl-next{min-width:120px;font-size:14px;padding:12px 18px}
.kl-kitchen-lab .kl-result-actions .kl-practice-failure{order:3;flex-basis:100%;min-height:24px;width:auto;background:none;border:0;box-shadow:none;padding:3px;font:650 11px system-ui;text-decoration:underline;color:#55714e}
.kl-kitchen-lab .kl-result.is-details .kl-result-story,.kl-kitchen-lab .kl-result.is-details .kl-save-note{display:none}
.kl-kitchen-lab .kl-score-gain{position:absolute;z-index:60;top:70px;left:50%;transform:translateX(-50%);padding:8px 16px;border-radius:20px;background:#fff1b9;color:#385b43;font:900 18px system-ui;pointer-events:none;animation:klPointFly 1.4s ease-in-out forwards}
@keyframes klPointFly{0%{opacity:0;transform:translate(-50%,50px) scale(.8)}20%,60%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-40px) scale(.5)}}
@media(max-width:600px){
 .kl-kitchen-lab .kl-goal-card{max-width:calc(100% - 86px);padding:7px 9px}
 .kl-kitchen-lab .kl-goal-card .kl-game-goal-copy{font-size:11px}
 .kl-kitchen-lab .kl-goal-card .kl-kitchen-pass{font-size:9px}
 .kl-kitchen-lab .kl-kitchen-pass .kl-pass-guests{display:none}
 .kl-kitchen-lab .kl-game-actions .kl-icon-action{width:44px;height:52px;padding:4px}
 .kl-kitchen-lab .kl-game-actions .kl-icon-action img,.kl-kitchen-lab .kl-game-actions .kl-stir[data-utensil] .kl-spatula-icon{width:26px;height:29px;max-height:29px}
 .kl-kitchen-lab .kl-garnish-choice{right:8px;bottom:90px;width:110px}
 .kl-kitchen-lab .kl-garnish-choice button{font-size:10px;padding:5px}
 .kl-kitchen-lab .kl-result-content{padding:12px 14px}
 .kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-story{grid-template-columns:56px 1fr;gap:10px;min-height:66px;margin:6px 0}
 .kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-mascot-slot{width:56px;height:66px}
 .kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) h3{font-size:22px}
 .kl-kitchen-lab .kl-result:not(.is-shift):not(.is-recipe-result) .kl-result-verdict{font-size:12px}
 .kl-kitchen-lab .kl-result-actions .kl-replay,.kl-kitchen-lab .kl-result-actions .kl-next{min-width:0;flex:1;padding:10px;font-size:12px}
 .kl-kitchen-lab .kl-result-actions .kl-practice-failure{width:auto}
 .kl-kitchen-lab .kl-score-gain{font-size:13px;top:48px}
}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-score-gain,.kl-kitchen-lab .kl-result .kl-star{animation:none!important}}
.kl-kitchen-lab .kl-game-actions .kl-icon-action>.kl-tool-label{font:800 10px/1 system-ui;text-shadow:none;flex:0 0 auto;letter-spacing:0}
.kl-kitchen-lab .kl-game-actions .kl-icon-action img{flex:0 0 auto;position:static;margin:0}
.kl-kitchen-lab .kl-game-actions .kl-icon-action{min-width:58px;min-height:64px}
@media(max-width:600px){.kl-kitchen-lab .kl-game-actions .kl-icon-action{min-width:44px;min-height:52px}.kl-kitchen-lab .kl-game-actions .kl-icon-action>.kl-tool-label{font-size:9px}}
.kl-kitchen-lab .kl-goal-card .kl-pass-message{max-width:none;flex:1}
/* Reserve feedback space so transient text cannot push over ingredients. */
.kl-kitchen-lab .kl-coach-feedback{height:30px;overflow:hidden;box-sizing:border-box}
.kl-kitchen-lab .kl-coach-feedback[hidden]{display:block!important;visibility:hidden}
.kl-kitchen-lab .kl-goal-card .kl-kitchen-pass{height:26px;overflow:hidden}
.kl-kitchen-lab .kl-goal-card .kl-pass-message{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kl-kitchen-lab.kl-recipe-active .kl-coach-feedback{display:none!important}

/* 1.20: compact laptop menu, theme-safe mobile width and explicit heat choices. */
@media(min-width:851px){
 .kl-kitchen-lab.kl-menu-open .kl-stage{height:min(var(--kl-viewport-height,640px),680px);min-height:540px}
 .kl-kitchen-lab .kl-intro{padding:50px 24px 20px;align-items:center}
 .kl-kitchen-lab .kl-intro-card{width:min(1040px,100%);padding:20px 28px;gap:12px}
 .kl-kitchen-lab .kl-menu-grid{grid-template-columns:1fr;gap:10px}
 .kl-kitchen-lab .kl-menu-secondary{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;border:0;border-top:1px solid #dfcbae;gap:24px}
 .kl-kitchen-lab .kl-menu-heading{min-height:76px;margin-bottom:10px}
 .kl-kitchen-lab .kl-intro-mascot-slot{width:90px;height:94px;flex-basis:90px}
 .kl-kitchen-lab .kl-mode-choice{min-height:78px}
 .kl-kitchen-lab .kl-intro-card>.kl-start{align-self:stretch;width:100%}
}
@media(max-width:600px){
 .kl-kitchen-lab.kl-shell{box-sizing:border-box;max-width:none!important;padding-left:0!important;padding-right:0!important;min-width:0!important;float:none!important;left:auto!important;right:auto!important}
 .kl-kitchen-lab.kl-shell .kl-stage{width:100%;max-width:100%;margin:0}
}
.kl-kitchen-lab .kl-heat-choices{position:absolute;z-index:23;display:flex;transform:translateX(-50%);gap:2px;padding:3px;border-radius:14px;background:#fff7e6;box-shadow:0 2px 0 #866440}
.kl-kitchen-lab .kl-heat-choice{min-height:38px;min-width:43px;padding:5px;border-radius:10px;background:transparent;border:2px solid transparent;color:#52634e;font:800 10px system-ui;box-shadow:none}
.kl-kitchen-lab .kl-heat-choice[aria-pressed="true"]{background:#42634e;color:white;border-color:#ecc27b}
.kl-kitchen-lab .kl-heat-choice:focus-visible{outline:3px solid #e96827;outline-offset:2px}
.kl-kitchen-lab .kl-heat-choices[hidden]{display:none!important}
.kl-kitchen-lab .kl-service-message{max-width:calc(100% - 24px);box-sizing:border-box}
.kl-kitchen-lab .kl-service-message button{margin:4px;min-height:44px}
.kl-kitchen-lab .kl-mastery-progress{font:700 13px/1.4 system-ui;color:#48674f}
@media(max-width:600px){.kl-kitchen-lab .kl-heat-choice{min-width:40px;min-height:44px;font-size:9px}.kl-kitchen-lab .kl-heat-choices{padding:2px}}

.kl-kitchen-lab .kl-master-chef-unlock{padding:8px 12px;background:#f5e3a9;color:#604a20;border:1px solid #d2ac48;border-radius:12px;font:750 12px/1.4 system-ui}

.kl-result-leaderboard{display:inline-block;margin:12px 0;color:#376f55;font-weight:800;text-decoration:underline}

/* 1.22: rescue controls and state-driven presentation. Scoped to the game. */
.kl-shell .kl-shift-options{margin:12px 0 6px;padding:12px;border:1px solid #d5dfd8;border-radius:14px;background:#f5f8f2;min-width:0;text-align:left;}
.kl-shell .kl-shift-options[hidden]{display:none!important}
.kl-shell .kl-shift-options legend{padding:0 5px;font-size:13px;font-weight:800;color:#234b40;}
.kl-shell .kl-shift-length{display:flex;gap:8px;margin-bottom:10px;}
.kl-shell .kl-shift-length button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px;border:1px solid #b6c4b9;border-radius:10px;background:#fff;color:#25473b;box-shadow:none;font-size:13px;cursor:pointer;}
.kl-shell .kl-shift-length button[aria-pressed="true"]{background:#254c40;color:#fff;border-color:#254c40;box-shadow:inset 0 0 0 1px #f1dba8;}
.kl-shell .kl-shift-length small{font-size:11px;opacity:.85;}
.kl-shell .kl-shift-options .kl-rescue-option-fields>label{display:grid!important;grid-template-columns:20px 1fr;align-items:center;gap:2px 7px;font-size:12px;font-weight:750;margin:8px 0 0!important;line-height:1.35;cursor:pointer;}
.kl-shell .kl-shift-options .kl-rescue-option-fields>label input{grid-row:1/3;width:17px;height:17px;margin:0;accent-color:#35604c;}
.kl-shell .kl-shift-options .kl-rescue-option-fields>label small{grid-column:2;font-size:11px;line-height:1.35;font-weight:400;color:#486357;}
.kl-shell .kl-visual-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:left;margin:10px 0;}
.kl-shell .kl-visual-options label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:750;color:#355447;}
.kl-shell .kl-visual-options select{font:inherit;font-weight:500;width:100%;min-height:42px;border:1px solid #bcc9bf;border-radius:8px;padding:5px 7px;color:#244436;background:#fff;}
.kl-shell .kl-guidance-badge{display:block;font-size:11px;font-weight:750;color:#426b4c;margin:5px 0 12px;}
.kl-shell .kl-guidance-badge[hidden]{display:none}
.kl-shell .kl-previous-result{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #dce2d7;margin-bottom:10px;padding-bottom:10px;font-size:11px;color:#345943;}
.kl-shell .kl-previous-result button{flex:0 0 auto;min-height:40px;padding:6px 10px;border-radius:8px;border:1px solid #afc5b4;background:white;color:#365c40;font:inherit;font-weight:750;cursor:pointer;}
.kl-shell .kl-history-dialog{position:absolute;inset:0;z-index:1300;display:flex;align-items:center;justify-content:center;background:#16271ddc;padding:14px;box-sizing:border-box;}
.kl-shell .kl-history-card{background:#fffdf3;border-radius:20px;padding:24px;max-width:670px;width:100%;max-height:100%;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;color:#294635;text-align:left;box-shadow:0 20px 60px #0004;}
.kl-shell .kl-history-card h3{font-size:22px;margin:0 0 10px;line-height:1.2;}
.kl-shell .kl-history-card ul{font-size:13px;line-height:1.8;padding-left:20px;}
.kl-shell .kl-history-card>button{width:100%;min-height:46px;background:#28533e;color:#fff;border:0;border-radius:10px;padding:10px;font-weight:750;cursor:pointer;}
.kl-shell .kl-actual-comparison{background:#f2f6ed;border:1px solid #d6e0cf;border-radius:12px;margin:10px 0;padding:10px 12px;text-align:left;color:#2a4b36;font-size:12px;}
.kl-shell .kl-actual-comparison summary{cursor:pointer;font-weight:800;min-height:28px;line-height:28px;}
.kl-shell .kl-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;}
.kl-shell .kl-comparison-grid figure{margin:0;min-width:0;text-align:center;background:#fffaf0;border-radius:10px;overflow:hidden;border:1px solid #e6e4d6;padding:0 0 10px;}
.kl-shell .kl-comparison-grid img{display:block;width:100%;aspect-ratio:1.515;object-fit:contain;background:radial-gradient(ellipse at center,#ecd9b3,#f7edd7 75%);}
.kl-shell .kl-comparison-grid figcaption{font-size:12px;font-weight:800;margin:3px 5px;}
.kl-shell .kl-comparison-grid small{font-size:10px;line-height:1.4;display:block;margin:0 7px;color:#476144;}
.kl-shell .kl-comparison-note{font-size:10px!important;line-height:1.45;margin:10px 0 0!important;opacity:.85;}
.kl-shell .kl-preview-unavailable{display:grid;place-items:center;min-height:100px;font-size:11px;padding:12px;}
.kl-shell .kl-recovery-note{background:#e8f3d8;color:#335322;border:1px solid #bfd79d;padding:10px 12px;border-radius:10px;font-size:12px!important;font-weight:700;line-height:1.45;}
.kl-shell .kl-cookware-tag{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);z-index:10;pointer-events:none;background:#fff8e3d9;border:1px solid #eee0be;border-radius:100px;padding:3px 10px;white-space:nowrap;font-size:9px;letter-spacing:.07em;font-weight:800;color:#3f5743;}
.kl-shell .kl-cookware-tag[hidden]{display:none!important}
.kl-shell .kl-actual-plate{position:relative;display:inline-block;width:min(300px,72vw);height:auto;aspect-ratio:1.515;border-radius:50%;background:radial-gradient(ellipse,#fcf9ee 53%,#d5e3df 54%,#f6faf3 65%,#c5d3c9 69%,#f5eee0 72%);box-shadow:0 10px 14px #2d412420;vertical-align:middle;}
.kl-shell .kl-actual-plate[data-vessel="bowl"],.kl-shell .kl-actual-plate[data-vessel="pot"],.kl-shell .kl-actual-plate[data-vessel="saucepan"]{background:radial-gradient(ellipse,#faf2d8 36%,#e4dcc5 51%,#e9f1e6 54%,#a9c1b3 65%,#fcfbef 70%);}
.kl-shell .kl-actual-food{position:absolute!important;inset:17% 10%!important;display:block;width:80%!important;height:66%!important;object-fit:contain;max-width:none!important;pointer-events:none;}
.kl-shell .kl-plated-dish.kl-real-serving{background:none!important;box-shadow:none!important;overflow:visible!important;border:0!important;}
.kl-shell .kl-plated-dish.kl-real-serving>.kl-actual-plate{width:100%;height:100%;min-width:0;}
.kl-shell .kl-serving-scene{position:absolute;inset:0;z-index:1500;display:grid;place-items:center;padding:16px;background:#193a2adc;backdrop-filter:blur(3px);box-sizing:border-box;}
.kl-shell .kl-serving-card{background:#fffdf3;color:#294632;border:1px solid #eeddbc;border-radius:24px;max-width:490px;width:100%;max-height:100%;padding:22px;text-align:center;box-shadow:0 22px 60px #0004;box-sizing:border-box;overflow:auto;}
.kl-shell .kl-serving-eyebrow{font-size:10px;letter-spacing:.12em;font-weight:800;color:#637757;}
.kl-shell .kl-serving-card h3{font-size:26px;line-height:1.2;margin:9px 0 15px;color:inherit;}
.kl-shell .kl-serving-card .kl-actual-plate{animation:kl-plate-arrive .55s cubic-bezier(.2,.8,.2,1) both;}
.kl-shell .kl-serving-card .kl-actual-food{animation:kl-food-settle .68s cubic-bezier(.2,.8,.2,1) both;}
.kl-shell .kl-serving-comment{font-size:15px;font-weight:650;margin:15px 0 5px;line-height:1.4;animation:kl-pass-response .28s .42s both;}
.kl-shell .kl-serving-stars{display:block;letter-spacing:3px;font-size:27px;color:#b97d14;animation:kl-pass-response .24s .62s both;}
.kl-shell .kl-skip-serving{display:block;width:100%;min-height:44px;background:#2c553f;border:0;border-radius:10px;padding:9px 14px;margin-top:12px;color:white;font:inherit;font-size:13px;font-weight:750;cursor:pointer;}
.kl-shell .kl-result.kl-presenting{visibility:hidden!important;pointer-events:none!important;}
.kl-shell button,.kl-shell select,.kl-shell summary{outline-offset:3px;}
.kl-shell button:focus-visible,.kl-shell select:focus-visible,.kl-shell summary:focus-visible,.kl-shell input:focus-visible{outline:3px solid #4284ad!important;}
.kl-shell .kl-icon-action,.kl-shell .kl-ingredient,.kl-shell .kl-start,.kl-shell .kl-order-start{transition:transform .12s ease,filter .16s ease,box-shadow .16s ease;}
.kl-shell .kl-icon-action:active:not(:disabled),.kl-shell .kl-start:active:not(:disabled),.kl-shell .kl-order-start:active:not(:disabled){transform:scale(.96);filter:brightness(.95);}
.kl-shell .kl-statehud b{transition:width .22s linear,background-color .2s linear;}
.kl-shell .kl-stage[data-kl-reaction="success"] .kl-coach-character{animation:kl-pass-response .32s ease both;filter:drop-shadow(0 0 5px #ffe39c);}
.kl-shell .kl-kitchen-pass[data-kl-mood="taste"] .kl-pass-guest{transform:rotate(-7deg) translateY(2px);transition:transform .22s ease;}
.kl-shell .kl-kitchen-pass[data-kl-mood="success"] .kl-pass-guest,.kl-shell .kl-kitchen-pass[data-kl-mood="ready"] .kl-pass-guest{animation:kl-guest-nod .38s ease 1;}
.kl-shell .kl-kitchen-pass[data-kl-mood="warning"] .kl-pass-guest{transform:rotate(5deg);}
.kl-shell .kl-stage.kl-added .kl-cookware-tag{box-shadow:0 0 0 3px #c5d99c55;}
@keyframes kl-plate-arrive{from{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:none}}
@keyframes kl-food-settle{from{opacity:.35;transform:translateY(-32px) scale(.92)}to{opacity:1;transform:none}}
@keyframes kl-pass-response{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes kl-guest-nod{0%,100%{transform:rotate(0)}45%{transform:rotate(-6deg) translateY(-3px)}}
.kl-shell.kl-reduced-motion *,.kl-shell.kl-reduced-motion *::before,.kl-shell.kl-reduced-motion *::after{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important;}
@media(max-width:600px){.kl-shell .kl-shift-options{padding:9px;margin:8px 0}.kl-shell .kl-shift-options .kl-rescue-option-fields>label{font-size:11px}.kl-shell .kl-shift-options .kl-rescue-option-fields>label small{font-size:10px}.kl-shell .kl-previous-result{flex-wrap:wrap;gap:4px}.kl-shell .kl-history-card{padding:15px}.kl-shell .kl-serving-card{padding:16px}.kl-shell .kl-serving-card h3{font-size:22px}.kl-shell .kl-cookware-tag{bottom:5px;font-size:8px}.kl-shell .kl-comparison-grid{gap:6px}.kl-shell .kl-serving-scene{padding:10px}}

.kl-shell .kl-rescue-options{border-top:1px solid #dbe4d6;padding-top:5px;font-size:12px;color:#33503c;}
.kl-shell .kl-rescue-options>summary{font-weight:750;min-height:36px;line-height:36px;cursor:pointer;}
.kl-shell .kl-rescue-options>summary>span{font-size:10px;font-weight:400;margin-left:6px;}
.kl-shell .kl-rescue-option-fields{padding:0 3px 5px;}
@media(max-width:600px){.kl-shell .kl-rescue-options>summary>span{display:none}}


/* 1.22.1 layout contract: viewport-safe dialogs and unboxed icon controls.
   Keep these overrides after legacy skin rules. The action footer is NEVER
   inside the scrolling briefing body. Do not add minimum stage heights here. */
.kl-kitchen-lab.kl-shell .kl-stage,
.kl-kitchen-lab.kl-shell.kl-menu-open .kl-stage{
  min-height:0;height:var(--kl-viewport-height,calc(100dvh - 140px));
}
.kl-kitchen-lab.kl-shell:fullscreen .kl-stage{
  width:min(100%,1340px);height:calc(100dvh - 16px);min-height:0;
}
.kl-kitchen-lab .kl-order-brief{
  box-sizing:border-box;display:flex;align-items:center;justify-content:center;
  min-height:0;padding:56px 12px 12px;overflow:hidden;
}
.kl-kitchen-lab .kl-order-brief-card{
  box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;
  width:min(840px,100%);max-width:100%;max-height:100%;min-height:0;
  margin:0;padding:0;gap:0;overflow:hidden;text-align:left;
}
.kl-kitchen-lab .kl-order-brief-content{
  box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);
  align-items:center;gap:16px 20px;min-width:0;min-height:0;flex:1 1 auto;
  padding:20px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  scrollbar-width:thin;scrollbar-gutter:stable;touch-action:pan-y;
}
.kl-kitchen-lab .kl-order-brief-content:focus-visible{outline:2px solid #4284ad;outline-offset:-3px;}
.kl-kitchen-lab .kl-order-brief-content>.kl-previous-result{
  grid-column:1/-1;grid-row:auto;margin:0;padding:0 0 10px;flex-wrap:wrap;
}
.kl-kitchen-lab .kl-order-copy{
  grid-column:auto;grid-row:auto;gap:8px;min-height:0;align-items:flex-start;
}
.kl-kitchen-lab .kl-order-progress{font:850 16px/1.2 system-ui;padding:7px 12px;align-self:flex-start;}
.kl-kitchen-lab .kl-order-kicker{font:800 11px/1.3 system-ui;letter-spacing:.08em;align-self:flex-start;}
.kl-kitchen-lab .kl-order-dish-name{font:800 14px/1.3 system-ui;}
.kl-kitchen-lab .kl-order-goal-title{font:850 clamp(22px,2.1vw,28px)/1.15 system-ui;margin:0;text-align:left;}
.kl-kitchen-lab .kl-order-goal-copy{font:650 14px/1.5 system-ui;margin:0;text-align:left;overflow-wrap:anywhere;}
.kl-kitchen-lab .kl-order-best{font-size:12px;line-height:1.4;align-self:flex-start;padding:6px 9px;}
.kl-kitchen-lab .kl-guidance-badge{margin:0;}
.kl-kitchen-lab .kl-order-target{
  grid-column:auto;grid-row:auto;box-sizing:border-box;width:100%;max-width:100%;margin:0;
  display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;text-align:center;
}
.kl-kitchen-lab .kl-order-plate{width:min(170px,100%);flex:none;}
.kl-kitchen-lab .kl-order-target-name{font-size:13px;}
.kl-kitchen-lab .kl-order-footer{
  box-sizing:border-box;display:flex;align-items:center;gap:14px;flex:0 0 auto;
  padding:10px 20px;border-top:1px solid #dfcdb3;background:#fff6e6;
  position:relative;z-index:1;min-width:0;
}
.kl-kitchen-lab .kl-order-footer .kl-order-start{
  flex:0 0 auto;width:auto;min-width:180px;min-height:48px;margin:0;
  font:850 16px/1.25 system-ui;padding:12px 18px;
}
.kl-kitchen-lab .kl-order-wait-note{flex:1;min-width:0;font:650 12px/1.4 system-ui;color:#5a7155;}
.kl-kitchen-lab .kl-order-mascot-slot{display:block;flex:0 0 50px;width:50px;height:58px;pointer-events:none;}
.kl-kitchen-lab .kl-order-portrait{display:none;}
/* Screen controls keep their touch targets, accessible names and keyboard focus,
   but have no decorative panel, tile, outline, shadow or permanent border. */
.kl-kitchen-lab.kl-shell .kl-screen-controls,
.kl-kitchen-lab.kl-shell .kl-screen-controls button,
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action{
  appearance:none;-webkit-appearance:none;background:transparent!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
.kl-kitchen-lab.kl-shell .kl-screen-controls{padding:0;gap:5px;top:8px;right:10px;}
.kl-kitchen-lab.kl-shell .kl-screen-controls button{
  flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:6px;
}
.kl-kitchen-lab.kl-shell .kl-screen-controls button img{
  width:30px;height:30px;filter:drop-shadow(0 1px 1px #fff3da) drop-shadow(0 2px 2px #24170f80);
}
.kl-kitchen-lab.kl-shell .kl-screen-controls button>span,
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-tool-label{display:none;}
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action{
  width:58px;height:60px;min-width:58px;min-height:60px;padding:5px;
  display:flex;align-items:center;justify-content:center;overflow:visible;filter:none;
}
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action img,
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-stir[data-utensil] .kl-spatula-icon{
  width:42px;height:50px;max-height:50px;object-fit:contain;transform:none;
  filter:drop-shadow(0 1px 1px #fff3da80) drop-shadow(0 2px 2px #24170f90);
}
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action:hover,
.kl-kitchen-lab.kl-shell .kl-screen-controls button:hover{filter:brightness(1.14);}
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action:focus:not(:focus-visible),
.kl-kitchen-lab.kl-shell .kl-screen-controls button:focus:not(:focus-visible){outline:none!important;}
.kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action:focus-visible,
.kl-kitchen-lab.kl-shell .kl-screen-controls button:focus-visible{outline:3px solid #ffe6a0!important;outline-offset:2px;}
@media(max-width:700px){
  .kl-kitchen-lab .kl-order-brief{padding:56px 10px 10px;}
  .kl-kitchen-lab .kl-order-brief-card{width:min(520px,100%);margin:0;border-radius:20px;}
  .kl-kitchen-lab .kl-order-brief-content{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:14px;}
  .kl-kitchen-lab .kl-order-brief-content>*{flex-shrink:0;}
  .kl-kitchen-lab .kl-order-brief-content>.kl-previous-result{order:0;}
  .kl-kitchen-lab .kl-order-target{order:1;display:grid;grid-template-columns:72px minmax(0,1fr);gap:4px 10px;padding:8px;text-align:left;}
  .kl-kitchen-lab .kl-order-plate{width:72px;grid-column:1;grid-row:1/3;}
  .kl-kitchen-lab .kl-order-target figcaption{grid-column:2;grid-row:1;align-self:end;font-size:10px;}
  .kl-kitchen-lab .kl-order-target-name{grid-column:2;grid-row:2;align-self:start;}
  .kl-kitchen-lab .kl-order-copy{order:2;align-items:flex-start;gap:7px;}
  .kl-kitchen-lab .kl-order-goal-title{font-size:23px;}
  .kl-kitchen-lab .kl-order-footer{padding:8px 14px;gap:12px;}
  .kl-kitchen-lab .kl-order-footer .kl-order-start{flex:1;min-width:0;width:auto;}
  .kl-kitchen-lab .kl-order-wait-note{display:none;}
  .kl-kitchen-lab .kl-order-mascot-slot{flex-basis:40px;width:40px;height:46px;}
  .kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action{width:48px;height:48px;min-width:48px;min-height:48px;padding:4px;}
  .kl-kitchen-lab.kl-shell .kl-game-actions .kl-icon-action img,
  .kl-kitchen-lab.kl-shell .kl-game-actions .kl-stir[data-utensil] .kl-spatula-icon{width:36px;height:40px;max-height:40px;}
}
@media(max-height:650px) and (min-width:701px){
  .kl-kitchen-lab .kl-order-brief-content{padding:14px 20px;gap:10px 18px;}
  .kl-kitchen-lab .kl-order-target{padding:8px;}
  .kl-kitchen-lab .kl-order-plate{width:128px;}
  .kl-kitchen-lab .kl-order-footer{padding:8px 20px;}
  .kl-kitchen-lab .kl-order-mascot-slot{height:50px;}
}

.kl-kitchen-lab .kl-order-mascot-slot svg{display:block;width:100%;height:100%;}
.kl-kitchen-lab .kl-stage>.kl-settings-panel{box-sizing:border-box;max-height:calc(100% - 68px);overscroll-behavior:contain;}

/* Serving uses the same scroll-body/fixed-action rule on short landscape screens. */
.kl-kitchen-lab .kl-serving-scene{display:flex;align-items:center;justify-content:center;min-height:0;}
.kl-kitchen-lab .kl-serving-card{display:flex;flex-direction:column;min-height:0;max-height:100%;padding:0;overflow:hidden;}
.kl-kitchen-lab .kl-serving-content{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:20px 20px 8px;}
.kl-kitchen-lab .kl-serving-card .kl-skip-serving{flex:0 0 auto;width:calc(100% - 32px);margin:8px 16px 16px;min-height:44px;}
.kl-kitchen-lab.kl-shell .kl-remove-heat{
  background:transparent!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;color:#fff6df;text-shadow:0 2px 3px #24170f;
}
.kl-kitchen-lab.kl-shell .kl-remove-heat:focus:not(:focus-visible){outline:none!important;}
.kl-kitchen-lab .kl-settings-close{width:44px;height:44px;min-width:44px;min-height:44px;}

/* 1.23 finishing layer. Deliberately does NOT change the 1.22.1 dialog
   height/footer contract or put permanent tiles behind cooking icons. */
.kl-shell[data-kl-finish]{
  --kl-ui-ink:#354d40;--kl-ui-muted:#647262;--kl-ui-accent:#386858;
  --kl-ui-paper:#fff9ee;--kl-ui-line:#dfcfb6;--kl-ui-soft:#e8efe2;
  --kl-ui-radius:14px;--kl-ui-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--kl-ui-ink);font-family:var(--kl-ui-font);
}
.kl-shell[data-kl-finish] :is(button,input,select,summary){font-family:var(--kl-ui-font);}
.kl-shell[data-kl-finish] :is(.kl-intro-card,.kl-order-brief-card,.kl-result-card,.kl-history-card,.kl-serving-card){
  color:var(--kl-ui-ink);background:var(--kl-ui-paper);border-color:var(--kl-ui-line);
}
.kl-shell[data-kl-finish] :is(.kl-start,.kl-order-start,.kl-result-actions .kl-next,.kl-skip-serving,.kl-resume){
  border-radius:var(--kl-ui-radius);font-weight:750;letter-spacing:0;min-height:44px;
}
.kl-shell[data-kl-finish] :is(.kl-intro-goal,.kl-result-copy h3,.kl-serving-card h3){letter-spacing:-.025em;font-weight:780;}
.kl-shell[data-kl-finish] .kl-mode-icon{color:var(--kl-ui-accent);display:flex;align-items:center;justify-content:center;}
.kl-shell[data-kl-finish] .kl-mode-icon svg{width:30px;height:30px;display:block;flex:none;}
.kl-shell[data-kl-finish] .kl-mode-choice small{font-weight:450;line-height:1.4;}
.kl-shell[data-kl-finish] .kl-mode-description{font-weight:500;line-height:1.5;}
.kl-shell[data-kl-finish] .kl-order-progress{font-size:12px;letter-spacing:.06em;padding:6px 10px;}
.kl-shell[data-kl-finish] .kl-order-kicker{font-size:10px;letter-spacing:.08em;background:none;padding:0;color:var(--kl-ui-muted);}
.kl-shell[data-kl-finish] .kl-order-dish-name{font-size:22px;letter-spacing:-.025em;color:var(--kl-ui-ink);}
.kl-shell[data-kl-finish] .kl-order-goal-title{font-size:18px;font-weight:720;line-height:1.4;color:var(--kl-ui-ink);}
.kl-shell[data-kl-finish] .kl-order-goal-copy{font-size:14px;font-weight:450;line-height:1.5;color:var(--kl-ui-ink);}
.kl-shell[data-kl-finish] .kl-order-goal-copy strong{font-weight:750;}
.kl-shell[data-kl-finish] .kl-order-facts{margin:0;font-size:13px;line-height:1.5;color:var(--kl-ui-muted);}
.kl-shell[data-kl-finish] .kl-order-facts small{display:block;font-size:12px;line-height:1.5;}
.kl-shell[data-kl-finish] .kl-cooking-advice{margin:0;width:100%;border-top:1px solid var(--kl-ui-line);}
.kl-shell[data-kl-finish] .kl-cooking-advice summary{cursor:pointer;min-height:44px;box-sizing:border-box;padding:12px 0 10px;font-size:13px;font-weight:700;line-height:1.4;color:var(--kl-ui-accent);}
.kl-shell[data-kl-finish] .kl-cooking-advice p{margin:0 0 8px;font-size:13px;font-weight:450;line-height:1.55;overflow-wrap:anywhere;}
.kl-shell[data-kl-finish] .kl-order-target-name{font-size:13px;line-height:1.45;color:var(--kl-ui-ink);}
.kl-shell[data-kl-finish] .kl-order-target-note{display:block;font-size:11px;line-height:1.4;color:var(--kl-ui-muted);margin:3px 0 0;}
.kl-shell[data-kl-finish] .kl-order-best{font-size:11px;padding:5px 8px;}
.kl-shell[data-kl-finish]:not(.kl-recipe-active) .kl-goal-card{max-width:min(410px,calc(100% - 156px));padding:9px 12px;}
.kl-shell[data-kl-finish] .kl-goal-card .kl-game-goal-copy{font-size:13px;font-weight:550;line-height:1.45;margin:4px 0;}
.kl-shell[data-kl-finish] .kl-goal-card .kl-game-goal-title{font-size:15px;line-height:1.3;}
.kl-shell[data-kl-finish] .kl-goal-status{font-size:9px;letter-spacing:.055em;}
.kl-shell[data-kl-finish] .kl-stage>.kl-live-score{font-size:12px;padding:5px 10px;background:#365b4ad9;border-width:1px;}
.kl-shell[data-kl-finish] .kl-live-order{font-size:10px;letter-spacing:.04em;}
.kl-shell[data-kl-finish] .kl-rescue-progress{font-size:10px;line-height:1.4;margin-top:4px;}
.kl-shell[data-kl-finish] .kl-rescue-progress progress{height:5px;}
.kl-shell[data-kl-finish] .kl-coach-feedback{font-size:13px;font-weight:550;line-height:1.45;margin:5px 0 3px;padding:5px 0;max-height:110px;overflow:auto;pointer-events:auto;overscroll-behavior:contain;}
.kl-shell[data-kl-finish] .kl-coach-feedback[data-kind="warning"],.kl-shell[data-kl-finish] .kl-coach-feedback[data-kind="error"]{color:#8b4223;}
.kl-shell[data-kl-finish] .kl-feedback-on .kl-game-goal-copy{display:none;}
.kl-shell[data-kl-finish] [data-kl-feedback="coordinated"] :is(.kl-cooking-beat,.kl-recipe-feedback,.kl-heat-rescue){display:none!important;}
.kl-shell[data-kl-finish] .kl-kitchen-pass:not([data-challenge="yes"]){display:none!important;}
.kl-shell[data-kl-finish] .kl-kitchen-pass[data-challenge="yes"]{height:auto;}
.kl-shell[data-kl-finish] .kl-kitchen-pass .kl-pass-message{white-space:normal;line-height:1.4;}
.kl-shell[data-kl-finish] .kl-result-learning{margin:12px 0;text-align:left;border-top:1px solid var(--kl-ui-line);border-bottom:1px solid var(--kl-ui-line);padding:4px 0;}
.kl-shell[data-kl-finish] .kl-result-learning>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:12px;padding:8px 0;}
.kl-shell[data-kl-finish] .kl-result-learning dt{font-size:12px;font-weight:750;line-height:1.5;color:var(--kl-ui-accent);}
.kl-shell[data-kl-finish] .kl-result-learning dd{margin:0;font-size:13px;line-height:1.5;color:var(--kl-ui-ink);overflow-wrap:anywhere;}
.kl-shell[data-kl-finish] .kl-learning-result .kl-next-reward{display:none;}
.kl-shell[data-kl-finish] .kl-learning-result.is-details .kl-result-learning{display:none;}
.kl-shell[data-kl-finish] .kl-service-payoff>strong{font-size:13px;line-height:1.4;font-weight:650;}
.kl-shell[data-kl-finish] .kl-save-note{font-size:11px!important;line-height:1.45;}
.kl-shell[data-kl-finish] .kl-settings-sounds{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.kl-shell[data-kl-finish] .kl-settings-sounds>button{min-height:44px;font-size:12px;}
.kl-shell[data-kl-finish] .kl-volume-row{display:grid!important;grid-column:1/-1;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;font-size:12px;line-height:1.4;margin:0!important;padding:3px 0;}
.kl-shell[data-kl-finish] .kl-volume-row output{font-size:12px;color:var(--kl-ui-muted);}
.kl-shell[data-kl-finish] .kl-volume-row input{grid-column:1/-1;width:100%;margin:0;min-height:28px;height:28px;accent-color:var(--kl-ui-accent);padding:0;}
.kl-shell[data-kl-finish] .kl-save-indicator{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 8px;margin:7px 8px 0;min-height:22px;font-size:11px;line-height:1.5;color:var(--kl-ui-muted);text-align:center;}
.kl-shell[data-kl-finish] .kl-save-indicator[data-state="error"]{color:#8b4223;}
.kl-shell[data-kl-finish] .kl-save-indicator[data-state="saved"]{color:var(--kl-ui-accent);}
.kl-shell[data-kl-finish] .kl-save-retry{border:0;background:none;box-shadow:none;color:var(--kl-ui-accent);font-size:12px;text-decoration:underline;min-height:44px;padding:5px 8px;}
.kl-shell[data-kl-finish] :is(.kl-cooking-advice summary,.kl-save-retry,.kl-volume-row input):focus-visible{outline:2px solid #4284ad;outline-offset:3px;}
@media(max-width:700px){
  .kl-shell[data-kl-finish] .kl-order-dish-name{font-size:20px;}
  .kl-shell[data-kl-finish] .kl-order-goal-title{font-size:17px;}
  .kl-shell[data-kl-finish] .kl-order-target-note{grid-column:2;font-size:10px;}
  .kl-shell[data-kl-finish] .kl-order-copy{order:1;}
  .kl-shell[data-kl-finish] .kl-order-target{order:2;}
  .kl-shell[data-kl-finish] .kl-result-learning>div{grid-template-columns:1fr;gap:2px;padding:7px 0;}
  .kl-shell[data-kl-finish] .kl-result-learning dd{font-size:12px;}
}
@media(max-width:600px){
  .kl-shell[data-kl-finish]:not(.kl-recipe-active) .kl-goal-card{max-width:calc(100% - 86px);padding:7px 9px;}
  .kl-shell[data-kl-finish] .kl-goal-card .kl-game-goal-copy{font-size:11px;}
  .kl-shell[data-kl-finish] .kl-coach-feedback{font-size:11px;max-height:96px;}
  .kl-shell[data-kl-finish] .kl-goal-card .kl-game-goal-title{font-size:13px;}
  .kl-shell[data-kl-finish] .kl-stage>.kl-live-score{font-size:10px;padding:4px 7px;}
}

/* Replace the old reserved feedback slot, including recipe-specific hiding. */
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-coach-feedback{height:auto;min-height:0;visibility:visible;display:block!important;}
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-coach-feedback[hidden]{display:none!important;}
.kl-shell[data-kl-finish] .kl-rescue-progress{justify-content:space-between;}
.kl-shell[data-kl-finish] .kl-rescue-progress span{display:block;font:550 10px/1.4 var(--kl-ui-font);color:var(--kl-ui-muted);}

/* A short cooking stage gets a compact vertical tool rail, not overlapping
   hit areas. This is based on the actual stage height, not screen width. */
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-game-actions{top:90px;right:10px;gap:4px;}
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-game-actions .kl-icon-action{width:44px;height:44px;min-width:44px;min-height:44px;padding:3px;}
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-game-actions .kl-icon-action img,
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-game-actions .kl-stir[data-utensil] .kl-spatula-icon{width:32px;height:36px;max-height:36px;}
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-serve{width:76px;height:64px;min-width:76px;min-height:64px;bottom:6px!important;right:8px!important;}
.kl-kitchen-lab.kl-shell[data-kl-finish] .kl-controls-compact .kl-serve img{width:70px;height:44px;}

.kl-kitchen-lab.kl-shell:fullscreen .kl-save-indicator{display:none;}

/* 1.24: touch / technique / readability. No permanent tiles on game icons.
   Start/Continue remain outside their content scrollers; do not change those rules. */
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-dish-browser{margin:8px 0 0;min-width:0;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-select-label{font-size:12px;margin-bottom:5px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-dish-select{margin:0;min-height:44px;font-size:13px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-filters{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:9px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-filters button{position:relative;border:0;background:transparent;box-shadow:none;min-height:44px;padding:9px 10px;border-radius:0;font-size:12px;font-weight:650;color:var(--kl-ui-muted);cursor:pointer;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-filters button[aria-pressed="true"]{color:var(--kl-ui-accent);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-filters button[aria-pressed="true"]::after{content:"";position:absolute;bottom:4px;left:10px;right:10px;height:3px;border-radius:3px;background:currentColor;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;max-height:286px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:3px;min-width:0;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-dish{position:relative;display:flex;align-items:center;gap:10px;min-width:0;min-height:94px;padding:9px;border:1px solid #d9d5c5;background:#fffdf7;border-radius:14px;box-shadow:none;text-align:left;color:var(--kl-ui-ink);font-family:var(--kl-ui-font);cursor:pointer;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-dish[aria-pressed="true"]{border-color:var(--kl-ui-accent);box-shadow:inset 0 0 0 1px var(--kl-ui-accent);background:#f0f5eb;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-dish[aria-pressed="true"]::after{content:"✓";position:absolute;right:6px;top:3px;font-size:12px;color:var(--kl-ui-accent);font-weight:800;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-plate{display:grid;place-items:center;width:66px;height:66px;flex:0 0 66px;background:radial-gradient(ellipse at center,#fffbef 52%,#eae0c7 54%,#fffdf6 57%,#fffdf6 66%,#ddd4c0 68%,transparent 70%);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-plate .kl-order-food-image{display:block;width:80%;height:70%;aspect-ratio:auto;filter:drop-shadow(0 2px 2px #51331e26);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-plate .is-single-art{height:40%;width:88%;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-copy{display:flex;flex-direction:column;gap:5px;min-width:0;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-copy strong{font-size:13px;font-weight:700;line-height:1.3;overflow-wrap:anywhere;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-copy small{font-size:10px;font-weight:500;line-height:1.35;color:var(--kl-ui-muted);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-selected{margin:8px 0 3px;font-size:12px;font-weight:650;line-height:1.4;color:var(--kl-ui-accent);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-note{display:block;font-size:10px;line-height:1.45;color:var(--kl-ui-muted);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-empty{grid-column:1/-1;font-size:13px;line-height:1.5;padding:12px;margin:0;}
.kl-kitchen-lab.kl-shell[data-kl-craft] :is(.kl-browser-list,.kl-browser-dish,.kl-browser-filters button,.kl-technique summary,.kl-technique-close,.kl-taste-memory summary):focus-visible{outline:2px solid #367499;outline-offset:2px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique{margin:0;border-top:1px solid var(--kl-ui-line);width:100%;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique>summary{min-height:44px;box-sizing:border-box;padding:12px 0 10px;font-size:13px;font-weight:700;line-height:1.4;color:var(--kl-ui-accent);cursor:pointer;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-body{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:6px 12px;padding-bottom:9px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-visual{position:relative;min-width:0;height:122px;overflow:hidden;border-radius:12px;background:linear-gradient(#e8eedf,#f6edda);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-vessel{position:absolute;max-width:none;width:145px;height:98px;object-fit:contain;left:-8px;top:27px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-tool-holder{position:absolute;width:21px;height:89px;left:54px;top:0;transform-origin:50% 84%;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-tool{display:block;width:100%;height:100%;object-fit:fill;max-width:none;transform-origin:center;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-tool[data-tool="whisk"],.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-tool[data-tool="tongs"]{transform:scaleY(-1);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-path{position:absolute;left:16px;right:16px;top:60px;color:#426456;text-align:center;font:700 32px/1 system-ui;opacity:.75;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-demo-playing .kl-technique-tool-holder{animation:kl-technique-circle 2.4s ease-in-out 2;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-demo-playing [data-gesture="fold"] .kl-technique-tool-holder{animation-name:kl-technique-fold;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-demo-playing [data-gesture="spread"] .kl-technique-tool-holder,.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-demo-playing [data-gesture="slide"] .kl-technique-tool-holder{animation-name:kl-technique-spread;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-copy strong{font-size:12px;font-weight:700;line-height:1.4;display:block;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-copy p{font-size:12px;font-weight:450;line-height:1.45;margin:5px 0;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-copy small{font-size:10px;font-weight:500;line-height:1.4;display:block;color:var(--kl-ui-muted);}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-close{grid-column:1/-1;justify-self:end;min-height:44px;border:0;background:none;box-shadow:none;color:var(--kl-ui-accent);font-size:12px;font-weight:700;padding:8px 12px;cursor:pointer;text-decoration:underline;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-pan-heat{position:absolute;bottom:calc(100% + 3px);left:50%;transform:translateX(-50%);white-space:nowrap;font:650 11px/1.4 var(--kl-ui-font);color:#344d40;padding:2px 9px;border-radius:8px;background:linear-gradient(90deg,#fff7e600,#fff7e6ed 18%,#fff7e6ed 82%,#fff7e600);pointer-events:none;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory{margin:3px 0 0;border:0;color:#365949;pointer-events:auto;max-width:100%;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory>summary{font:550 11px/1.4 var(--kl-ui-font);min-height:44px;box-sizing:border-box;padding:13px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory p{font-size:11px;line-height:1.4;margin:3px 0;max-height:62px;overflow:auto;overscroll-behavior:contain;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory small{font-size:10px;line-height:1.4;display:block;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory[data-stale="true"] summary{font-weight:700;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-goal-card{background:linear-gradient(110deg,#fff8e7fa,#fff8e7ef 80%,#fff8e7de)!important;color:#3c3929;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-coach-feedback:is([data-kind="warning"],[data-kind="error"])::before{content:"!";display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid currentColor;border-radius:50%;font:800 11px/1 system-ui;margin-right:5px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-goal-status.is-complete::before{content:"✓ ";}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-icon-action.kl-tool-working::after{content:"";position:absolute;bottom:1px;left:calc(50% - 3px);width:6px;height:6px;background:#345e4f;border-radius:50%;pointer-events:none;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-live-ingredients .kl-ing.used{opacity:1;background:transparent!important;color:#554e3e;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-live-ingredients .kl-ing small{position:relative;z-index:1;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-live-ingredients .kl-ing .kl-ingredient-state{position:absolute;top:calc(100% + 2px);left:0;width:100%;font:700 10px/1.3 var(--kl-ui-font);color:#365e49;text-align:center;white-space:nowrap;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-ing>small:not(.kl-ingredient-state),.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-tool-label{text-shadow:0 1px 2px #fff2d5,0 0 7px #fff5e2;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-comparable-best{border-left:3px solid #54765b;margin:12px 0;padding:7px 10px;background:#edf3e980;text-align:left;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-comparable-best strong{display:block;font-size:13px;line-height:1.45;color:#375843;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-comparable-best small{display:block;font-size:10px;line-height:1.45;color:var(--kl-ui-muted);margin-top:4px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-effects-status{display:block;font-size:10px;line-height:1.4;color:var(--kl-ui-muted);grid-column:1/-1;max-width:220px;}
.kl-kitchen-lab.kl-shell[data-kl-craft] [hidden]{display:none!important;}
@keyframes kl-technique-circle{0%,100%{transform:translate(-14px,0) rotate(-12deg);}25%{transform:translate(0,-8px) rotate(0);}50%{transform:translate(14px,0) rotate(12deg);}75%{transform:translate(0,8px) rotate(0);}}
@keyframes kl-technique-fold{0%,100%{transform:translate(-17px,7px) rotate(-15deg);}50%{transform:translate(7px,-11px) rotate(12deg);}}
@keyframes kl-technique-spread{0%,100%{transform:translate(0,0);}35%{transform:translate(-22px,2px) rotate(-15deg);}75%{transform:translate(22px,-3px) rotate(15deg);}}
.kl-kitchen-lab.kl-shell[data-kl-craft].kl-reduced-motion .kl-technique-tool-holder{animation:none!important;}

@media(max-width:600px){
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-list{max-height:246px;gap:6px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-dish{flex-direction:column;align-items:flex-start;gap:5px;padding:8px;min-height:136px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-plate{align-self:center;width:62px;height:62px;flex-basis:62px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-browser-filters button{font-size:11px;padding-left:7px;padding-right:7px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-body{grid-template-columns:104px minmax(0,1fr);gap:7px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-visual{height:120px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-vessel{left:-22px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-technique-tool-holder{left:43px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-pan-heat{font-size:10px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-taste-memory>summary{font-size:10px;}
 .kl-kitchen-lab.kl-shell[data-kl-craft] .kl-live-ingredients .kl-ing .kl-ingredient-state{font-size:9px;}
}

.kl-kitchen-lab.kl-shell[data-kl-craft] .kl-game-actions .kl-stir{position:relative!important;}

/* 1.24.1: Creacipes page-frame alignment. Deliberately scoped outside the Phaser canvas. */
.kl-kitchen-lab.kl-shell{box-sizing:border-box;width:min(100%,1340px);padding-inline:clamp(12px,2vw,24px)}
.kl-kitchen-lab.kl-shell,.kl-kitchen-lab.kl-shell *{box-sizing:border-box}
.kl-kitchen-lab .kl-heading{min-width:0;gap:12px}
.kl-kitchen-lab .kl-heading h2{overflow-wrap:anywhere;line-height:1.2}
.kl-kitchen-lab .kl-footnote{line-height:1.5}
.kl-kitchen-lab .kl-stage{max-width:100%;min-width:0}
.kl-kitchen-lab :is(button,a,[role="button"]):focus-visible{outline:3px solid #f25725;outline-offset:3px}
.kl-kitchen-lab .kl-result{overflow-y:auto;overscroll-behavior:contain}
.kl-kitchen-lab .kl-result>*,.kl-kitchen-lab .kl-result [role="dialog"]{max-width:100%;max-height:calc(100dvh - 36px);overflow-y:auto}
@media(max-width:600px){.kl-kitchen-lab.kl-shell{padding-inline:12px}.kl-kitchen-lab .kl-result{padding:8px}.kl-kitchen-lab .kl-result>*,.kl-kitchen-lab .kl-result [role="dialog"]{max-height:calc(100dvh - 16px)}}
@media(prefers-reduced-motion:reduce){.kl-kitchen-lab .kl-result,.kl-kitchen-lab .kl-result *{scroll-behavior:auto!important}}

/* 1.24.4: completed ingredients stay recognisable, but cannot be reused. */
.kl-kitchen-lab .kl-live-ingredients .kl-ing.used,
.kl-kitchen-lab .kl-live-ingredients .kl-ing.used:disabled{opacity:1!important;filter:none!important;color:inherit!important}
.kl-kitchen-lab .kl-live-ingredients .kl-ing.used .kl-ing-art{opacity:1!important;filter:drop-shadow(0 3px 3px #23170f88)!important}
.kl-kitchen-lab .kl-live-ingredients .kl-ing .kl-added-mark{position:absolute;right:2px;top:0;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#26764d;color:white;border:2px solid #fff;font-size:15px;font-weight:900;line-height:1;box-shadow:0 2px 6px #23170f55;pointer-events:none}
