:root{font-family:'Nunito',ui-rounded,'Trebuchet MS',system-ui,sans-serif;font-weight:800;color:#422f34;background:#f6e8ce;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;}body{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse 75% 65% at 40% 15%,#fff4d8 0,#edd4ba 84%);user-select:none;-webkit-user-select:none}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,.ingredient:focus-visible{outline:4px solid #fbbd49;outline-offset:3px}.shell{width:min(100%,1120px);max-width:1120px;min-height:min(100dvh,830px);display:flex;flex-direction:column;margin:auto;padding:0 18px}.topbar{height:78px;flex:0 0 78px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 16px;position:relative;z-index:25}.wordmark{display:flex;align-items:center;font-size:25px;letter-spacing:-1.35px;font-weight:1000;line-height:1;color:#4d3435}.logo-sun{font-size:40px;color:#f68a3b;line-height:1;margin-right:9px;text-shadow:0 3px 0 #f9d694}.wordmark-sub{display:block;letter-spacing:2.65px;font-size:10px;color:#d36640;text-transform:uppercase;margin-top:7px}.toptools{display:flex;gap:10px}.smalltool{background:#fff8e9;border:2px solid #d9ae84;color:#6f4f48;box-shadow:0 3px 0 #d3ac85;display:flex;justify-content:center;align-items:center;width:46px;height:44px;border-radius:16px;position:relative}.smalltool svg{width:24px;height:24px}.book-count{position:absolute;top:-9px;right:-7px;min-width:22px;height:22px;display:grid;place-items:center;border-radius:20px;background:#f5754c;color:#fff;font-size:12px;border:2px solid #f5e7cd}.foot{height:40px;min-height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#947d6c;font-size:12px;font-family:'DM Sans',system-ui,sans-serif;font-weight:600;letter-spacing:.15px}.foot-logo{font-weight:800}.theater{height:min(calc(100dvh - 122px),690px);min-height:570px;position:relative;isolation:isolate;overflow:hidden;border-radius:30px;border:7px solid #fff7e7;box-shadow:0 18px 65px #895d353c,0 6px 0 #d9b994;background:linear-gradient(#fbdfb4 0 41%,#a5d7ca 41% 61%,#d99c66 61% 100%);container-type:size;touch-action:pan-y}.ambient-sun{position:absolute;inset:0;background:radial-gradient(ellipse at 74% 14%,#fff5d0cf 0,transparent 48%);pointer-events:none;z-index:0}.wall-grain{position:absolute;inset:0 0 40%;pointer-events:none;opacity:.22;background-image:radial-gradient(#caa576 .75px,transparent 1px);background-size:7px 7px}.tile-band{position:absolute;inset:40% 0 34%;background:repeating-linear-gradient(0deg,transparent 0 51px,#6aa8a121 52px 55px),repeating-linear-gradient(90deg,transparent 0 88px,#5da69e38 90px 93px),linear-gradient(#aedbcd,#9bcbbf);box-shadow:inset 0 3px 4px #48998d17}.window{position:absolute;top:6%;right:7%;width:21%;height:31%;border:10px solid #f8e8c9;border-radius:100px 100px 5px 5px;background:linear-gradient(#aedce1,#dcefc9 65%,#b4d7a0);box-shadow:0 0 0 3px #bb926d,0 7px 12px #986d4133;overflow:hidden;transform:skewY(-1deg)}.outside-hills{position:absolute;inset:59% -12% -10%;border-radius:50% 60% 0 0;background:#8fc4a0;transform:rotate(-9deg)}.outside-hills:after{content:"";position:absolute;left:22%;bottom:-32%;width:90%;height:115%;background:#6ead94;border-radius:50%}.window-cross{position:absolute;background:#fff0d6;box-shadow:0 0 0 2px #bca589;z-index:2}.window-cross.v{height:100%;width:9px;left:50%}.window-cross.h{width:100%;height:10px;top:55%}.sun-dot{position:absolute;background:#fff6d4;width:38px;height:38px;right:9%;top:9%;border-radius:50%;box-shadow:0 0 20px #fff4b9}.shelf{position:absolute;top:21%;left:3%;height:12px;width:25%;background:#d0935b;border-bottom:5px solid #a76d43;border-radius:8px;box-shadow:0 5px 10px #94683f33}.shelf-items{position:absolute;display:flex;align-items:end;justify-content:space-around;bottom:11px;width:100%;height:83px}.vase{width:30px;height:51px;background:#4da9a0;clip-path:polygon(17% 16%,84% 16%,70% 70%,85% 100%,16% 100%,29% 70%);border-radius:8px}.vase:before{content:"";position:absolute;bottom:25px;left:12px;width:4px;height:82px;background:#4f8f66;transform:rotate(-13deg)}.vase:after{content:"";position:absolute;bottom:52px;left:3px;width:35px;height:35px;background:#7ea66a;border-radius:85% 4% 85% 4%;transform:rotate(41deg)}.bottle-a{width:37px;height:56px;background:#fbc572;border:6px solid #fff1c7;border-radius:11px 11px 7px 7px;box-shadow:inset 0 -15px #bb995b}.bottle-b{width:24px;height:46px;border-radius:5px;background:linear-gradient(90deg,#d97c50,#efb370,#c66846)}.canister{width:42px;height:59px;border-radius:9px;background:linear-gradient(90deg,#e7baa0,#fff4d6,#d8aa91);border-top:8px solid #9a6850;box-shadow:inset 0 -5px #cb987a}.pan-rack{position:absolute;top:7%;left:36%;height:26%;width:19%;border-top:5px solid #a07557}.pan-rack i,.pan-rack b,.pan-rack em{position:absolute;top:6px;width:10px;height:52px;border-radius:7px;background:#9c7761}.pan-rack i{left:14%}.pan-rack b{left:49%;height:70px}.pan-rack em{left:80%;height:63px}.pan-rack i:after,.pan-rack b:after,.pan-rack em:after{content:"";position:absolute;top:30px;left:-13px;width:34px;height:35px;border-radius:50%;background:#caa17d;border:4px solid #92715c}.pan-rack em:after{background:#9eafb0}.counter-back{position:absolute;top:60%;left:0;right:0;bottom:0;background:linear-gradient(120deg,#d7a16c,#ba8051 70%,#b4794d)}.counter-back:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 90px,#9e663c5c 91px,transparent 93px)}.counter-top{position:absolute;top:60%;height:10%;left:-3%;right:-3%;border-radius:52% 52% 6px 6px / 33% 33% 0 0;background:linear-gradient(#f4cf9c 0,#e8b97e 45%,#c88d57 96%);border-bottom:7px solid #b2784b;box-shadow:0 7px 13px #68412547}.counter-top:after{content:"";position:absolute;inset:10% 0 20%;opacity:.24;background:repeating-linear-gradient(172deg,transparent 0 9px,#b6815a 10px,#e3b080 12px,transparent 15px 49px)}.fox-anchor{position:absolute;z-index:10;left:-3%;top:20%;height:64%;width:39%;pointer-events:none;transition:top .5s,left .5s,width .5s,transform .5s}.roux{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 14px 9px #613f2540);transform-origin:50% 92%;animation:fox-breathe 3.6s ease-in-out infinite}.fox-tail{transform-origin:58% 70%;animation:tail-wag 3.3s ease-in-out infinite}.fox-head{transform-origin:53% 64%;animation:head-tilt 6s ease-in-out infinite}.fox-arm-front{transform-origin:45% 68%;transition:transform .4s;animation:paw-wave 4.6s ease-in-out infinite}.fox-blink{opacity:0;animation:blink 5.1s infinite}.fox-anchor.is-pointing .fox-arm-front{animation:point-paw .8s 2 ease-in-out}.fox-anchor.is-cheering .roux{animation:cheer .7s 3}.fox-anchor.is-cheering .fox-arm-front{animation:paw-wave .35s 6}.fox-anchor.is-working .fox-arm-front{animation:stir-paw 1s infinite}.speech{position:absolute;top:5%;right:-24%;min-width:154px;max-width:215px;background:#fffaf0;border:3px solid #b97d57;border-radius:26px 25px 25px 6px;box-shadow:0 7px 0 #b97d5754;padding:13px 17px;text-align:center;color:#82533b;font-size:16px;line-height:1.21;transform:rotate(3deg);transition:opacity .25s,transform .3s}.speech:before{content:"";position:absolute;bottom:-15px;left:21px;border:9px solid transparent;border-top-color:#b97d57;transform:rotate(-20deg)}.scene{position:absolute;inset:0;z-index:12;pointer-events:none;display:flex;flex-direction:column;align-items:center}.scene>*{pointer-events:auto}.scene-title{position:absolute;top:4.5%;left:43%;right:3%;text-align:center;margin:0;font-size:clamp(23px,3.8vw,46px);line-height:1.02;letter-spacing:-1.8px;color:#59372f;text-shadow:0 2px #fff9e9}.scene-kicker{display:block;text-transform:uppercase;font-size:12px;letter-spacing:3px;font-weight:1000;color:#e26b47;margin-bottom:8px}.scene-sub{font-size:16px;color:#805e52;line-height:1.3;letter-spacing:0;margin:10px auto 0;max-width:380px;font-weight:800}.intro-title{font-size:clamp(40px,5.4vw,72px)}.intro-copy{font-size:clamp(17px,1.7vw,23px);font-weight:800;color:#a35f45;max-width:300px;line-height:1.23;margin:13px auto}.intro-button{position:absolute;bottom:11%;right:12%;width:min(36%,300px)}.big-button{border:0;border-bottom:7px solid #b94637;border-radius:25px;background:linear-gradient(155deg,#ff9560,#ef6146);color:#fff9dc;text-shadow:0 2px 0 #b34b38;padding:17px 26px;font-size:clamp(18px,2.3vw,28px);font-weight:1000;box-shadow:0 8px 20px #8d4e3e38;transition:transform .15s,border-bottom-width .15s}.big-button:active{transform:translateY(5px);border-bottom-width:2px}.big-button.teal{background:linear-gradient(#30bdb4,#179498);border-bottom-color:#0a6a77;text-shadow:0 2px #136a72}.big-button.cream{background:linear-gradient(#fff4d6,#f4dab0);color:#67483a;text-shadow:none;border-bottom-color:#c29767}.plate-hero{position:absolute;width:38%;max-width:410px;right:10%;top:39%;filter:drop-shadow(0 19px 8px #83472560);animation:float-food 3.1s ease-in-out infinite}.progress{position:absolute;top:4%;right:4%;width:min(39%,300px);display:flex;justify-content:space-between;gap:6px}.progress i{display:block;width:100%;height:9px;background:#f6e4c9;border:2px solid #b9896d80;border-radius:99px;box-shadow:0 2px #fff8ea}.progress i.done{background:#f4784a;border-color:#e66d49}.stage-title{position:absolute;top:8%;right:4%;width:45%;text-align:center;font-size:clamp(22px,2.8vw,35px);letter-spacing:-.8px;line-height:1.1;margin:0;color:#623c33}.stage-title .label{display:block;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#b96345;margin-bottom:8px}.stage-help{position:absolute;top:22%;right:3%;max-width:37%;text-align:center;font-size:clamp(13px,1.5vw,18px);line-height:1.17;background:#fff7e9d8;padding:10px 16px;border-radius:20px;box-shadow:0 5px 0 #c8a87c50}.cooking-area{position:absolute;bottom:9%;right:5%;width:57%;height:60%;display:grid;place-items:center;touch-action:none;cursor:crosshair}.cooking-area svg{width:100%;height:100%;filter:drop-shadow(0 13px 4px #6d452a4a);overflow:visible;touch-action:none}.cooking-area svg [data-interactive="1"]{cursor:grab}.cooking-area:active svg [data-interactive="1"]{cursor:grabbing}.control-prompt{position:absolute;bottom:3%;right:11%;width:44%;border-radius:20px;background:#fff6dfd9;padding:8px 13px;text-align:center;font-size:13px;color:#91644f}.step-next{position:absolute;bottom:7%;right:3%;z-index:20;font-size:17px;min-width:155px;padding:14px 22px}.step-button{position:absolute;bottom:3%;right:3%;background:#31a6a1;color:#fff;border:4px solid #f7eacb;border-radius:50%;width:72px;height:72px;font-size:32px;box-shadow:0 4px 0 #167f7f}.ingredients-board{position:absolute;bottom:5%;right:5%;width:63%;max-width:650px;min-height:63%;display:flex;flex-direction:column;align-items:center;padding:19px;background:linear-gradient(145deg,#f6d6ac,#e7b780);border:9px solid #f6d5a5;border-bottom-color:#b87f4c;border-radius:49px;box-shadow:0 15px 0 #99663e66,inset 0 0 0 3px #b47d51a3}.ingredients-board:after{content:"";position:absolute;inset:11px;border:2px dashed #be895e70;border-radius:36px;pointer-events:none}.ingredient-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;gap:7px;align-items:center;flex:1;z-index:1}.ingredient{width:100%;min-height:96px;border:0;background:transparent;border-radius:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;touch-action:none;transition:transform .1s,filter .15s}.ingredient svg{width:min(86%,116px);max-height:100px;overflow:visible;filter:drop-shadow(0 9px 4px #96674470)}.ingredient .ing-name{font-size:13px;color:#734737;background:#fff8e7e0;border-radius:12px;padding:3px 8px;line-height:1.06}.ingredient.selected{filter:saturate(.8);opacity:.67}.ingredient.selected:after{content:'✓';position:absolute;top:0;right:12%;background:#2ca59b;border:3px solid #fff;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;color:white;font-size:20px}.ingredient:active{transform:scale(1.08)}.basket{z-index:2;position:absolute;bottom:-19px;left:34%;width:32%;height:69px;border-radius:20px 20px 54% 54%;border:7px solid #e4a66d;background:linear-gradient(#f1c68f,#ae7149);box-shadow:0 7px 8px #7245264d;pointer-events:none}.basket:before{content:"";position:absolute;top:-15px;left:-20%;right:-20%;height:16px;border-radius:50%;border:8px solid #a86f4a;background:#f5d0a1}.basket-label{position:absolute;bottom:36px;right:32%;font-size:13px;color:#91634d;background:#fff8e9;border-radius:30px;padding:6px 10px;white-space:nowrap}.drag-ghost{position:fixed;z-index:200;pointer-events:none;width:106px;height:106px;transform:translate(-50%,-50%) rotate(-9deg);filter:drop-shadow(0 14px 9px #6f483855)}.drag-ghost svg{width:100%;height:100%}.ghost-success{animation:pop .3s both}.cut-line{stroke:#f3dbb7;stroke-width:3;stroke-dasharray:6 7;opacity:.84}.sprinkle-source{position:absolute;right:1%;bottom:14%;border:0;background:#fff3d4;border-radius:50%;width:81px;height:81px;box-shadow:0 7px 0 #c28a51;border:4px solid #a86e48;font-size:13px;font-weight:1000;color:#6c463b;display:flex;flex-direction:column;justify-content:center;align-items:center}.sprinkle-source svg{height:43px;width:55px}.oven-box{position:absolute;right:8%;bottom:11%;height:53%;width:54%;background:linear-gradient(145deg,#8ca6ad,#4c7781);border:16px solid #e7dec4;border-bottom-color:#ab927b;box-shadow:0 17px 0 #9d7056,0 21px 16px #51382265;outline:3px solid #92745c;border-radius:45px 45px 26px 26px;overflow:hidden}.oven-interior{position:absolute;inset:13% 8% 14%;border-radius:38px 38px 12px 12px;background:radial-gradient(#f1ad59,#d8723c 38%,#553b39);border:13px solid #465f62;overflow:hidden}.oven-interior:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 36px,#342e2b77 37px 39px);opacity:.22}.oven-pizza{position:absolute;width:78%;height:70%;inset:12% 10%;animation:oven-bob 1.2s infinite alternate}.oven-pizza svg{width:100%;height:100%}.steam{position:absolute;inset:-20px 5% auto;height:70px;z-index:3;pointer-events:none}.steam span{position:absolute;bottom:0;width:17px;height:70px;border-left:5px solid #fff9dcb0;border-radius:50%;animation:steam 2s ease-in-out infinite}.steam span:nth-child(1){left:25%}.steam span:nth-child(2){left:52%;animation-delay:.5s}.steam span:nth-child(3){left:75%;animation-delay:1s}.oven-knobs{position:absolute;bottom:3%;height:33px;left:8%;right:8%;display:flex;justify-content:space-between}.oven-knobs span{width:32px;height:32px;border-radius:50%;background:#f8e7cf;border:6px solid #96adb1;box-shadow:0 3px 0 #406b76}.final-plate{position:absolute;right:6%;bottom:9%;width:58%;height:65%;filter:drop-shadow(0 15px 7px #5d382e57)}.final-plate svg{width:100%;height:100%}.final-buttons{position:absolute;bottom:4%;right:3%;display:flex;gap:12px;width:59%;justify-content:center}.final-buttons .big-button{font-size:clamp(14px,1.6vw,21px);padding:12px 16px;border-radius:18px}.dish-sticker{position:absolute;top:19%;right:8%;transform:rotate(8deg);background:#fef8e0;border:4px solid #f29e62;border-radius:20px;padding:8px 13px;color:#a9573e;font-size:16px;box-shadow:0 3px #d29153}.floating-heart{position:absolute;color:#f88463;font-size:29px;animation:float-heart 1.4s ease-out forwards}.confetti{position:absolute;inset:0;pointer-events:none;z-index:40}.confetti i{position:absolute;width:9px;height:14px;animation:confetti-fall 2.1s ease-in forwards;border-radius:3px}.toast{position:fixed;z-index:300;bottom:15px;left:50%;transform:translateX(-50%) translateY(70px);border-radius:18px;background:#4a3938;color:#fff;padding:12px 20px;font-weight:800;transition:transform .22s;pointer-events:none;box-shadow:0 8px 19px #35231e4a;max-width:90%;text-align:center}.toast.show{transform:translateX(-50%) translateY(0)}.cookbook-dialog{border:6px solid #f7dfaf;border-radius:32px;background:#fff8e7;box-shadow:0 25px 100px #1c1818aa;padding:28px;width:min(92vw,620px);color:#4c3732}.cookbook-dialog::backdrop{background:#312c35a6;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:center;justify-content:space-between}.dialog-head h2{margin:0;font-size:30px;letter-spacing:-1.2px}.dialog-head button{border:0;background:#ecd3ad;border-radius:50%;width:43px;height:43px}.book-empty{text-align:center;padding:33px;color:#8b6c5b}.book-entries{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin:22px 0}.book-entry{border:3px solid #e7c292;background:#ffefce;border-radius:22px;padding:10px;text-align:center}.book-entry svg{width:100%;height:100px}.book-entry strong{display:block}.book-entry small{display:block;color:#926e59}.privacy-note{font-size:12px;color:#a0816f;font-family:system-ui;margin-bottom:0}.modal-open{overflow:hidden}@keyframes fox-breathe{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.012,.985) rotate(-.35deg)}}@keyframes tail-wag{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(9deg)}}@keyframes head-tilt{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(2deg)}}@keyframes paw-wave{0%,71%,100%{transform:rotate(0)}79%,87%{transform:rotate(-7deg)}}@keyframes point-paw{50%{transform:translate(11px,-19px) rotate(-23deg)}}@keyframes stir-paw{0%,100%{transform:translate(0,0) rotate(-5deg)}50%{transform:translate(10px,8px) rotate(11deg)}}@keyframes blink{0%,32%,34%,100%{opacity:0}33%{opacity:1}}@keyframes cheer{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px) rotate(-3deg)}}@keyframes float-food{50%{transform:translateY(-10px) rotate(2deg)}}@keyframes pop{50%{transform:scale(1.25)}}@keyframes oven-bob{to{transform:scale(1.03)}}@keyframes steam{0%{opacity:0;transform:translateY(10px) scale(.8)}50%{opacity:.8}100%{opacity:0;transform:translateY(-20px) scale(1.15)}}@keyframes confetti-fall{0%{transform:translateY(-50px) rotate(0);opacity:1}100%{transform:translateY(670px) rotate(560deg);opacity:0}}@keyframes float-heart{100%{transform:translateY(-65px);opacity:0}}
@media(max-width:730px) and (orientation:portrait){body{align-items:stretch}.shell{padding:0;min-height:100dvh}.topbar{height:62px;flex-basis:62px;padding:0 16px}.wordmark{font-size:21px}.logo-sun{font-size:34px}.wordmark-sub{font-size:8px;letter-spacing:2px}.smalltool{width:42px;height:41px}.toptools{gap:7px}.foot{padding:0 15px;height:31px;min-height:31px;font-size:9px}.theater{height:calc(100dvh - 93px);min-height:480px;border-radius:25px 25px 0 0;border:5px solid #fff7e7;border-bottom:0}.shelf{left:-2%;top:17%;width:36%}.window{right:5%;width:32%;height:23%;top:6%;border-width:6px}.pan-rack{top:9%;left:45%;width:19%;}.fox-anchor{top:19%;left:-20%;width:69%;height:52%}.speech{top:10%;right:-13%;max-width:155px;font-size:12px;min-width:110px;padding:9px 11px;border-width:2px}.scene-title{left:42%;top:4%;right:3%;font-size:31px;letter-spacing:-1px}.scene-kicker{font-size:9px;letter-spacing:1.8px}.scene-sub{font-size:13px}.intro-title{font-size:38px}.intro-copy{font-size:16px}.plate-hero{width:69%;right:-6%;top:46%}.intro-button{right:6%;bottom:8%;width:60%;font-size:20px}.ingredients-board{width:94%;right:3%;bottom:5%;min-height:51%;height:51%;padding:9px 4px 24px;border-width:6px;border-radius:28px}.ingredient-grid{gap:2px}.ingredient{min-height:85px}.ingredient svg{width:85%;max-height:86px}.ingredient .ing-name{font-size:11px}.basket{left:34%;width:33%;height:46px;bottom:-16px}.basket-label{bottom:22px;right:33%;font-size:10px}.stage-title{top:4%;right:3%;width:60%;font-size:23px}.stage-title .label{font-size:9px;margin-bottom:4px}.stage-help{top:15%;right:3%;max-width:52%;font-size:12px;padding:8px 9px}.progress{top:1.5%;right:3%;width:49%}.progress i{height:7px}.cooking-area{bottom:9%;width:96%;height:48%;right:2%}.control-prompt{bottom:3%;right:8%;width:84%;font-size:11px}.step-next{right:4%;bottom:5%;min-width:128px;font-size:14px;padding:11px 15px}.sprinkle-source{right:2%;bottom:6%;width:62px;height:62px}.sprinkle-source svg{height:29px;width:43px}.oven-box{width:88%;right:6%;height:39%;bottom:14%;border-width:10px}.final-plate{width:94%;right:3%;height:48%;bottom:17%}.final-buttons{width:94%;right:3%;bottom:6%}.dish-sticker{top:27%;right:4%;font-size:12px}.scene:has(.ingredients-board)~*{pointer-events:none}}
@media(max-width:390px){.fox-anchor{left:-22%;width:69%}.scene-title{font-size:27px}.speech{right:-7%}.plate-hero{width:71%}.ingredient svg{max-height:75px}.ingredient{min-height:76px}.ingredients-board{height:51%}}
@media(max-height:680px) and (max-width:730px) and (orientation:portrait){.fox-anchor{top:13%;height:48%}.ingredients-board{height:53%;bottom:4%}.ingredient svg{max-height:68px}.ingredient{min-height:65px}.stage-title{top:2%}.stage-help{top:15%}.cooking-area{height:49%}.plate-hero{top:40%;width:60%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
.recipe-shelf{position:absolute;right:5%;bottom:4%;width:61%;height:58%;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:8px}.recipe-pizza{border:0;background:transparent;width:100%;display:flex;align-items:center;flex-direction:column;cursor:pointer;touch-action:manipulation}.recipe-plate{width:80%;height:220px;max-width:440px;filter:drop-shadow(0 16px 5px #71482850);transition:transform .22s;display:block}.recipe-plate svg{width:100%;height:100%}.recipe-pizza:hover .recipe-plate{transform:rotate(-3deg) scale(1.05)}.recipe-pizza strong{margin-top:-18px;z-index:1;border:4px solid #fff8d9;background:#e87950;border-radius:19px;color:#fff9e6;padding:10px 20px;box-shadow:0 6px #b54e39;font-size:20px;transform:rotate(-3deg)}.recipe-pizza small{color:#694d3e;font-size:13px;margin-top:9px;font-weight:800}.other-recipes{display:flex;justify-content:center;gap:20px;margin-top:15px}.other-recipes>span{border:2px dashed #b5876d;background:#fff6de99;border-radius:16px;padding:7px 13px;line-height:1.1;color:#976c58;font-size:12px}.other-recipes small{font-size:10px;display:block;color:#ac8570}
@media(max-width:730px) and (orientation:portrait){.recipe-shelf{width:91%;right:4%;bottom:6%;height:51%}.recipe-plate{height:185px;width:90%}.recipe-pizza strong{font-size:18px;margin-top:-22px}.other-recipes{margin-top:9px}}
@media(max-height:680px) and (max-width:730px) and (orientation:portrait){.recipe-plate{height:145px}.recipe-shelf{bottom:3%}}
/* Art-direction QA pass: text must not collide with the hanging cookware; show the whole fox face on phones. */
@media(min-width:731px),(orientation:landscape){.intro-title{left:49%;right:7%;top:5%;text-align:left;font-size:clamp(40px,4vw,53px);line-height:1.13;letter-spacing:-2.2px}.scene-title:not(.intro-title){top:4%;left:47%;right:5%;font-size:39px}.scene-kicker{font-size:12px}.plate-hero{width:35%;right:11%;top:37%}}
@media(max-width:730px) and (orientation:portrait){.fox-anchor{left:-1%;top:18%;height:47%;width:56%}.speech{top:35%;right:-28%;font-size:12px;max-width:142px;min-width:111px;padding:8px 10px}.scene-title,.stage-title{background:#fff0dbe8;border-radius:21px;padding:9px 8px;box-shadow:0 3px 0 #d2a67947;letter-spacing:-.55px;text-shadow:none}.scene-title{left:41%;right:3%;top:4%;font-size:23px;line-height:1.08}.intro-title{left:39%;right:3%;top:5%;font-size:26px;text-align:center}.stage-title{top:4%;right:3%;width:55%;font-size:22px}.stage-help{display:none}.basket-label{top:4px;bottom:auto;left:40%;right:auto;font-size:10px;opacity:.85}.ingredients-board{padding-top:20px}.ingredient{min-height:79px}.ingredient svg{max-height:78px}.ingredient .ing-name{font-size:11px}.plate-hero{top:45%;width:68%}}
@media(max-width:390px){.fox-anchor{left:-3%;width:56%;top:19%}.speech{right:-35%;max-width:140px}.scene-title{font-size:22px}.intro-title{font-size:26px}}
.fox-help{position:absolute;top:38%;left:29%;border:3px solid #fff3d8;border-bottom:5px solid #b87858;border-radius:20px;background:#f8b35b;color:#683d34;box-shadow:0 6px 12px #9a6e4848;font-size:14px;padding:10px 16px;font-weight:1000;z-index:19;transform:rotate(-4deg)}.fox-help:disabled{background:#d9e9ca;color:#64865b;opacity:.92;cursor:default}
@media(max-width:730px) and (orientation:portrait){.fox-help{top:36%;left:auto;right:4%;font-size:13px;padding:9px 13px}.theater:has(.final-plate) .fox-anchor{top:10%;width:48%;height:39%;left:0}.theater:has(.final-plate) .speech{top:42%;right:-37%}}
/* Installable Cookiddoo hub return affordance */
.app-home{flex-shrink:0;text-decoration:none;touch-action:manipulation}.app-home:focus-visible{outline:4px solid #237785;outline-offset:3px}
@media(max-width:360px){.toptools{gap:4px}.smalltool{width:39px;height:40px}.app-home svg{width:21px;height:21px}}

/* Three illustrated real recipes on a single kitchen workbench. */
.new-shelf{width:62%;height:71%;bottom:2%;right:3%;justify-content:flex-end;gap:2px;z-index:3}
.new-shelf .recipe-choice{height:52%;flex:0 0 auto;justify-content:center}
.new-shelf .recipe-plate{height:100%;max-height:210px}
.new-shelf .recipe-choice strong{margin-top:-24px}
.illustrated-recipes{display:flex;width:100%;gap:10px;margin:0;min-height:38%;align-items:stretch}
.recipe-mini{border:0;display:flex;flex:1 1 0;min-width:0;flex-direction:column;align-items:center;justify-content:center;background:#fff7e8dd;border-radius:28px 28px 22px 22px;box-shadow:0 6px 0 #b87f56,0 10px 14px #68422937;padding:3px 8px 9px;color:#714532;cursor:pointer;touch-action:manipulation}
.recipe-mini:active,.recipe-pizza:active{transform:translateY(3px)}
.recipe-mini .mini-art{display:block;width:100%;height:108px}
.recipe-mini .mini-art svg{height:100%;width:100%;filter:drop-shadow(0 5px 3px #81543929)}
.recipe-mini strong{font-size:19px;line-height:1.1;margin-top:-2px;color:#a44f37}
.recipe-mini small{font-weight:800;font-size:11px;color:#8b6954;line-height:1.3;margin-top:2px}
.extra-work{touch-action:none;cursor:crosshair}
.extra-work svg{width:100%;height:100%;touch-action:none;filter:drop-shadow(0 12px 5px #70422b4d)}
@media(max-width:730px) and (orientation:portrait){
  .new-shelf{width:94%;right:3%;bottom:4%;height:59%;gap:0}
  .new-shelf .recipe-choice{height:48%}
  .new-shelf .recipe-plate{max-height:168px}
  .new-shelf .recipe-choice strong{font-size:17px;padding:7px 18px;margin-top:-23px}
  .new-shelf .recipe-choice small{font-size:10px;margin:4px 0 0}
  .illustrated-recipes{height:42%;min-height:0;gap:12px}
  .recipe-mini{border-radius:23px 23px 16px 16px;padding:2px 4px 6px}
  .recipe-mini .mini-art{height:90px}
  .recipe-mini strong{font-size:17px}
  .recipe-mini small{font-size:10px}
  .extra-work{height:48%;bottom:9%;right:2%;width:96%}
}
@media(max-width:390px){.new-shelf{height:57%}.new-shelf .recipe-plate{max-height:137px}.recipe-mini .mini-art{height:74px}.recipe-mini strong{font-size:15px}}
@media(max-height:700px) and (max-width:730px) and (orientation:portrait){.new-shelf{height:60%;bottom:3%}.new-shelf .recipe-plate{max-height:118px}.recipe-mini .mini-art{height:65px}.recipe-mini strong{font-size:14px}}

@media(min-width:731px),(orientation:landscape){.theater:has(.new-shelf) .scene-title{top:2.5%;left:50%;right:6%;font-size:33px;line-height:1.12;background:#fff0dbe9;border-radius:24px;padding:12px 20px;box-shadow:0 4px 0 #d2a67940;text-shadow:none}.new-shelf .recipe-choice small{background:#fff4dfd9;border-radius:8px;padding:3px 9px;position:relative;z-index:3}}
/* v0.4 landscape fit: short landscape windows (portal iframes 640x360…1031x580, phones on their side)
   show the desktop kitchen scaled as one piece instead of a scrolling page. */
@media (orientation:landscape) and (max-height:829px){
 body{overflow:hidden;display:block;min-height:0;height:100dvh}
 .shell{position:absolute;left:var(--fit-x,0);top:var(--fit-y,0);width:1120px;max-width:none;height:780px;min-height:0;transform:scale(var(--fit,1));transform-origin:0 0}
}
.is-portal .app-home{display:none}
.scene-title.intro-title{background:#fff7e8f2;border-radius:22px}
/* ux-mobile-1106: 44px header tools on phones */@media(max-width:600px){.smalltool{width:46px!important;height:46px!important}}
