@font-face{font-family:TwentysHand;src:url('/assets/fonts/GveretLevin-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:TwentysText;src:url('/assets/fonts/Rubik[wght].ttf') format('truetype');font-weight:300 900;font-display:swap}
@font-face{font-family:TwentysGraffiti;src:url('/assets/fonts/RubikSprayPaint-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root{font-family:TwentysText,Arial,sans-serif;font-size:16px;color:#35261f;color-scheme:light;--ink:#35261f;--red:#dc273b;--gold:#ffdb4c;--blue:#276bbd;--green:#168347;--purple:#7836aa;--cream:#fff7e9}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100svh;background:#fff0cd;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,canvas:focus-visible{outline:3px solid #1366a7;outline-offset:5px}button:active{transform:translateY(2px)}.hidden{display:none!important}canvas,img{max-width:100%}p{line-height:1.55}h1,h2,h3{line-height:1.15}h1:focus{outline:none}.app{width:100%;margin:0;padding:16px clamp(18px,3vw,56px) calc(28px + env(safe-area-inset-bottom,0px))}.screen{position:relative;width:100%;max-width:none;text-align:center;margin:0 auto}.screen h1{font-family:TwentysHand,Arial,sans-serif;font-size:clamp(2.7rem,4.2vw,4.5rem);font-weight:400;-webkit-text-stroke:.55px currentColor;margin:12px 0 18px;color:var(--red);text-shadow:0 2px 10px var(--cream),0 0 22px var(--cream)}.intro{font-size:clamp(1.18rem,1.55vw,1.55rem);font-weight:500;line-height:1.55;margin:10px auto 20px;text-shadow:0 1px 8px var(--cream)}.eyebrow{font-family:TwentysHand,Arial,sans-serif;font-size:1.45rem;font-weight:400;color:#a42e37;margin:0 0 6px;-webkit-text-stroke:.2px currentColor}.small-note{font-size:1.1rem;line-height:1.5;color:#57412f;margin:10px 0}.text-button{background:none;border:0;padding:10px 14px;min-height:48px;color:#4c4629;font-family:TwentysHand,Arial,sans-serif;font-size:1.6rem;-webkit-text-stroke:.2px currentColor;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.text-button:hover{color:var(--red)}
/* The scenery is continuous and extends beyond every working surface. */
.world{position:fixed;inset:0;z-index:-3;background:#ffeaca url('/assets/courtyard.webp') center bottom/cover no-repeat;pointer-events:none}.world-scene{position:absolute;top:0;left:50%;transform:translateX(-50%);width:max(100%,1000px);aspect-ratio:1672/941;mask-image:linear-gradient(#000 76%,transparent 100%)}.world-scene>img{display:block;width:100%;height:100%}.kosher-stamp{position:absolute;left:32%;top:13%;width:6.1%;aspect-ratio:1;border:3px double white;border-radius:50%;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;transform:rotate(-9deg);font-size:clamp(9px,1vw,16px);text-shadow:0 1px 2px #30210e;background:#31251b22;box-shadow:inset 0 0 0 2px #ffffff30}.kosher-stamp strong{font-size:1.5em}.kosher-stamp b{font-size:1.03em}.kosher-stamp>span{font-size:.65em;line-height:1.1}.world-wash{position:fixed;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#fff7e94d 0,transparent 25%,#fff7e965 40%,#fff7e9e3 70%,#fff7e9ef 100%)}body:not([data-screen=home]) .world-wash{background:linear-gradient(90deg,#fff7e982,#fff7e9df 22%,#fff7e9dc 80%,#fff7e980),linear-gradient(180deg,#fff7e9b0,#fff7e952)}body[data-screen=arcade] .world-wash{background:linear-gradient(180deg,#fff7e9e8 0,#fff7e9b8 22%,#fff7e956 53%,#fff7e9a1 100%)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px}.brand-title{display:flex;align-items:center;gap:15px;border:0;background:none;padding:0;font-family:TwentysHand,Arial,sans-serif;font-size:1.7rem;-webkit-text-stroke:.2px currentColor;text-shadow:0 0 12px white}.brand-title b{font-weight:400}.brand-lettering{display:block;position:relative;width:114px;aspect-ratio:725/280;overflow:hidden}.brand-lettering img{position:absolute;max-width:none;width:141.24138%;left:-21.79310%;top:-65.35714%}.top-actions{display:flex;align-items:center;gap:13px}.round-button{display:grid;place-items:center;border:0;border-radius:50%;width:58px;height:58px;background:#fff9eae8;color:#9d283a;box-shadow:0 4px 0 #d2aa60a0;font-size:1.75rem;font-weight:700;padding:11px}.round-button[aria-pressed=false]{color:#726658}.round-button svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.wallet{display:flex;align-items:center;gap:9px;padding:9px 18px;border-radius:45% 55% 47% 53% / 45% 50% 50% 55%;background:#ffdc60;font-size:1.4rem;color:#624216;font-weight:750;min-height:54px}.wallet>span{color:#a75b09;font-size:1.5rem}
.primary,.mission-button,.pizza-party{border:0;display:block;width:fit-content;max-width:100%;min-height:66px;padding:14px 36px;margin:16px auto 10px;background:var(--green);color:white;border-radius:48% 52% 47% 53% / 45% 50% 50% 55%;box-shadow:0 6px 0 #0b5831;font-family:TwentysHand,Arial,sans-serif;font-size:2rem;line-height:1.2;font-weight:400;-webkit-text-stroke:.35px currentColor;transition:transform .15s,box-shadow .15s}.primary:hover,.mission-button:hover,.pizza-party:hover{transform:translateY(-3px) rotate(-1deg)}.primary:active,.mission-button:active,.pizza-party:active{transform:translateY(3px)}.mission-button{background:var(--purple);box-shadow:0 5px 0 #4c216d;white-space:nowrap;font-size:1.85rem;margin:0}.pizza-party{background:var(--gold);color:#6b391b;box-shadow:0 5px 0 #d69230;font-size:1.8rem;margin-top:24px}.primary:disabled:hover,.mission-button:disabled:hover,.pizza-party:disabled:hover{transform:none}
/* Home: a large cast and the games share the available width. */
.shop-space{height:clamp(110px,13vw,240px)}#home-heading{font-family:TwentysGraffiti,TwentysText,sans-serif;font-size:clamp(2.8rem,4vw,4.6rem);-webkit-text-stroke:0;color:var(--blue);text-shadow:2px 3px 0 var(--gold),4px 4px 0 var(--cream);margin:0 0 20px}.home-layout{display:grid;grid-template-columns:1.12fr 1fr;align-items:start;gap:clamp(30px,4vw,86px);padding-top:5px}.crew-block,.games-block{min-width:0}.cast-row{display:flex;justify-content:space-evenly;align-items:flex-end;gap:8px;margin:0 auto;width:100%}.character-choice{position:relative;flex:1;min-width:0;display:flex;align-items:center;flex-direction:column;background:none;border:0;padding:8px 0 4px;transition:transform .2s}.character-choice:hover{transform:translateY(-7px)}.sprite{display:block;width:150px;height:300px;max-width:none;filter:drop-shadow(0 9px 5px #49342528);transform-origin:50% 94%}.character-choice .sprite{width:clamp(105px,9.4vw,188px);height:clamp(210px,18.8vw,376px);max-width:100%;object-fit:contain}.character-choice[aria-pressed=true] .sprite{filter:drop-shadow(0 0 9px #ffdc36) drop-shadow(0 9px 5px #684a2835);transform:translateY(-7px)}.character-choice strong{font-family:TwentysHand,Arial,sans-serif;font-size:clamp(1.5rem,2vw,2.25rem);font-weight:400;-webkit-text-stroke:.35px currentColor;line-height:1.25;white-space:nowrap;margin-top:7px;text-shadow:0 1px 7px white}.character-description{min-height:34px;margin:16px 0 12px;font-size:1.25rem;font-weight:500;color:#4d392b;text-shadow:0 0 10px var(--cream)}.sprite.breathing{animation:breathe 4s ease-in-out infinite}.character-choice:nth-child(2) .sprite{animation-delay:-1s}.character-choice:nth-child(3) .sprite{animation-delay:-2s}.character-choice:nth-child(4) .sprite{animation-delay:-3s}.growth-line{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:680px;margin:15px auto 9px;font-size:1.2rem;line-height:1.45}.growth-line strong{color:#a03536}.growth-track{height:13px;max-width:680px;background:#ccb78866;border-radius:99px;overflow:hidden;margin:auto}.growth-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#2bb5cd,#5cce91,#ffcd45);border-radius:inherit;transition:width .4s}.growth-note{font-size:1.1rem;color:#58402e;line-height:1.5;margin:9px 0 12px}.mission-teaser{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:right;margin:8px 0 0}.mission-teaser>div{display:flex;flex-direction:column;gap:7px}.mission-teaser small{font-size:1rem;color:#9c4d22;font-weight:650}.mission-teaser strong{font-family:TwentysHand,Arial,sans-serif;font-size:2rem;font-weight:400;-webkit-text-stroke:.3px currentColor;color:#743e27}.mission-teaser span{font-size:1.1rem;font-weight:500}.journey-links{display:flex;justify-content:space-around;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.journey-links .text-button{font-size:1.35rem;padding-inline:4px}.activity-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:22px 0 12px}.activity{flex:1;min-width:0;display:flex;align-items:center;flex-direction:column;border:0;background:none;padding:0}.activity canvas{width:clamp(135px,12vw,210px);height:auto;aspect-ratio:5/4;filter:drop-shadow(0 10px 6px #64432425);transition:transform .2s}.activity:hover canvas{transform:translateY(-8px) rotate(-4deg)}.activity strong{font-family:TwentysHand,Arial,sans-serif;font-size:clamp(1.6rem,2vw,2.25rem);font-weight:400;-webkit-text-stroke:.35px currentColor;line-height:1.2;text-shadow:0 1px 8px var(--cream)}.activity:nth-child(1) strong{color:var(--red)}.activity:nth-child(2) strong{color:var(--blue)}.activity:nth-child(3) strong{color:#167444}.activity span{font-size:1.05rem;margin-top:8px;color:#57412d}.preferences{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;margin-top:16px}.branch-row,.pace-row{display:flex;gap:9px;justify-content:center}.branch-row button,.pace-row button{border:0;background:transparent;font-family:TwentysHand,Arial,sans-serif;font-size:1.5rem;min-height:48px;padding:9px 18px;line-height:1.2;border-radius:50%;color:#684831}.branch-row button[aria-pressed=true],.pace-row button[aria-pressed=true]{background:#ffdc6b;box-shadow:0 3px 0 #d9a24a;color:#5c341e}.parent-note{font-size:1rem;color:#5b4732;margin:26px 0 8px}#load-status{font-size:1.1rem;min-height:0;margin:0}#load-status:empty{display:none}
/* Every active game uses the full-width scene rather than a framed panel. */
.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:right;margin:20px 0}.section-title h1{margin:4px 0 0;font-size:clamp(2.7rem,4vw,4.2rem)}.section-title .text-button{white-space:nowrap}.compact-spacer{height:12px}.kitchen-layout{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(330px,1.15fr) minmax(300px,1fr);gap:30px;align-items:center}.customer-scene{display:flex;flex-direction:column-reverse;align-items:center;justify-content:center;gap:20px;margin:0;min-width:0}.customer-scene .sprite{width:138px;height:276px}.speech{position:relative;max-width:100%;text-align:right;padding:20px 25px;background:#fffbedec;border-radius:47% 53% 48% 52% / 24% 30% 27% 33%;box-shadow:0 7px 12px #7c582212}.speech p{font-size:1.4rem;line-height:1.5;margin:7px 0;font-weight:600}.speech>p{font-family:TwentysHand,Arial,sans-serif;font-size:1.7rem;font-weight:400;-webkit-text-stroke:.25px currentColor;color:#a03938}.speech small{display:block;font-size:1.1rem;line-height:1.5;color:#554735;margin-top:8px}.prep-station{min-width:0}.prep-area{position:relative;width:100%;margin:auto}.prep-area canvas{display:block;width:100%;height:auto;aspect-ratio:1;filter:drop-shadow(0 15px 10px #7b4e2234);touch-action:manipulation}#prep-status{display:block;font-size:1.15rem;line-height:1.5;min-height:55px;color:#553a26;font-weight:500;margin:10px auto;max-width:100%}#prep-pizza.baking{animation:bake-glow .7s ease-in-out infinite alternate}.zone-row{display:flex;justify-content:center;gap:9px;margin:12px 0}.zone-row button{border:0;background:#fff9ebd9;border-radius:48%;padding:11px 15px;min-height:49px;font-family:TwentysHand,Arial,sans-serif;font-size:1.5rem;white-space:nowrap}.zone-row button[aria-pressed=true]{background:var(--gold);box-shadow:0 3px 0 #d09b32}.prep-actions{grid-column:2;grid-row:2;display:flex;flex-direction:column-reverse;align-items:center;justify-content:center;gap:6px}.prep-actions .primary{margin:12px auto;min-width:65%}.prep-actions .text-button{font-size:1.45rem}.toppings-tray h2{font-family:TwentysHand,Arial,sans-serif;font-size:2.1rem;font-weight:400;color:var(--blue);-webkit-text-stroke:.3px currentColor;transform:rotate(-3deg);margin:0 0 24px}.topping-palette{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 10px;min-width:0}.topping-palette button{border:0;background:none;padding:7px 2px;min-height:108px;display:flex;align-items:center;flex-direction:column;justify-content:flex-start;gap:8px;position:relative}.topping-palette canvas{width:76px;height:76px;max-width:100%;object-fit:contain;filter:drop-shadow(0 4px 3px #73552628)}.topping-palette span{font-size:1rem;line-height:1.35;font-weight:600}.topping-palette button[aria-pressed=true] canvas{filter:drop-shadow(0 0 9px #ffd745);transform:translateY(-5px)}.topping-palette button[aria-pressed=true]:after{content:'✓';position:absolute;top:0;right:0;color:var(--green);font-weight:900;font-size:1.6rem;text-shadow:0 1px 5px white}.topping-palette button:disabled{opacity:.27}
#arcade .section-title{margin:14px 0 8px}#arcade .section-title h1{font-family:TwentysGraffiti,TwentysText,sans-serif;font-size:clamp(2.3rem,3.5vw,3.9rem);-webkit-text-stroke:0;color:var(--blue);text-shadow:2px 3px 0 var(--gold)}#arcade .intro{margin:10px 0 12px}.arcade-hud{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:1.5rem;font-weight:650;max-width:1050px;margin:10px auto}.arcade-hud>span:nth-child(2){color:var(--red)}.arcade-hud>span:nth-child(3){color:#9c5923}.recipe-row{min-height:60px;display:flex;align-items:center;justify-content:center;gap:30px;margin:4px 0 10px}.recipe-item{display:flex;align-items:center;gap:10px;position:relative;font-size:1.35rem}.recipe-item canvas{width:58px;height:58px}.recipe-item.complete{color:var(--green)}.recipe-item.complete:after{content:'✓';position:absolute;right:-10px;top:-3px;font-size:1.4rem;color:var(--green);font-weight:900}.goal{font-size:1.2rem;font-weight:500}.arcade-stage{position:relative;width:100%;max-width:none;margin:auto}#arcade-canvas{display:block;width:100%;height:clamp(420px,calc(100svh - 310px),850px);touch-action:none;outline-offset:-4px}.ready-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;background:radial-gradient(ellipse at center,#fff9e9b8,transparent 72%)}.ready-overlay>strong{font-family:TwentysHand,Arial,sans-serif;font-weight:400;-webkit-text-stroke:.3px currentColor;font-size:2.6rem;max-width:90%;line-height:1.4;color:#804328;text-shadow:0 0 12px var(--cream)}.ready-overlay .primary{font-size:2.25rem;padding-inline:50px}.movement{display:flex;justify-content:center;align-items:center;gap:36px;margin:12px 0 4px}.movement p{font-size:1.2rem;max-width:500px;color:#573d2a;margin:0}.arrow-buttons{display:flex;gap:25px}.arrow-buttons .round-button{width:72px;height:62px;background:#ffdb6c;color:#754321}.arcade-stage canvas:focus:not(:focus-visible){outline:none}
/* Shared pizza, rewards, route and collection keep the same scale and lettering. */
#party>.eyebrow{margin-top:15px}.party-layout{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:6vw;margin:22px 0}#party-pizza{display:block;width:min(100%,550px);height:auto;aspect-ratio:1;margin:auto;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 16px 11px #78512433)}.diners-row{display:flex;justify-content:center;align-items:flex-end;gap:24px;flex-wrap:wrap}.diner{display:flex;flex-direction:column;align-items:center;position:relative}.diner .sprite{width:120px;height:240px}.diner b{font-family:TwentysHand,Arial,sans-serif;font-size:1.8rem;font-weight:400;-webkit-text-stroke:.25px currentColor;margin:10px 0 5px}.diner span{font-size:1.2rem}#serving-label{font-family:TwentysHand,Arial,sans-serif;font-size:1.9rem;color:#975136;min-height:35px;margin:16px 0}.happy .sprite{animation:happy-hop .55s ease-in-out}.result-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;align-items:center;min-height:70svh;padding:20px 4vw}#result-character{display:flex;justify-content:center;align-items:center}#result-character .sprite{width:clamp(175px,20vw,300px);height:clamp(350px,40vw,600px)}.result-summary{min-width:0}#result h1{font-family:TwentysGraffiti,TwentysText,sans-serif;font-size:clamp(2.5rem,3.4vw,3.9rem);-webkit-text-stroke:0;color:var(--red);text-shadow:2px 3px 0 var(--gold)}.stars{font-size:3.2rem;letter-spacing:9px;color:#f5c432;text-shadow:0 3px 0 #b87724;margin:10px 0}.result-rewards{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;font-size:1.25rem;margin:22px 0;color:#704827}.result-rewards strong{color:var(--green);font-size:1.5rem}.mission-result{margin:20px auto}.new-sticker{display:flex;justify-content:center;align-items:center;gap:22px;text-align:right}.new-sticker .sticker{width:145px;height:145px;animation:sticker-pop .6s ease-out}.new-sticker>div{display:flex;flex-direction:column;gap:10px;max-width:360px}.new-sticker strong{font-family:TwentysHand,Arial,sans-serif;font-size:1.85rem;color:#a24f26;font-weight:400}.new-sticker span{font-size:1.15rem;line-height:1.5}.quest-coins{font-size:1.2rem;font-weight:600;color:#8e5322}.result-summary .mission-button{margin:18px auto 8px}#result-album-button{display:block;margin:auto}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:2}.confetti i{position:absolute;top:-20px;width:11px;height:18px;border-radius:3px;animation:confetti-fall 2.6s ease-in forwards}
#journey,#album{padding-top:8px}.stage-path{padding:0;list-style:none;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:20px;margin:36px 0}.stage-path button{border:0;background:none;display:flex;align-items:center;flex-direction:column;gap:14px;width:100%;padding:0}.stage-path span{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#e5d3b5;box-shadow:0 5px 0 #c9ad86;color:#786044;font-weight:750;font-size:1.9rem}.stage-path small{font-family:TwentysHand,Arial,sans-serif;font-size:1.6rem;-webkit-text-stroke:.2px currentColor;line-height:1.3;max-width:160px}.stage-path .done span{background:#a4dec0;color:#155d3f;box-shadow:0 5px 0 #66ad8c}.stage-path .current span{background:#ffdc55;box-shadow:0 5px 0 #d2992e,0 0 0 9px #fff0b087;color:#844715}.stage-path [aria-current=step] span{outline:3px solid #9a6f39;outline-offset:7px}.stage-path .locked small{color:#695847}.stage-detail{display:flex;align-items:center;justify-content:center;gap:65px;margin:40px auto;max-width:1100px;text-align:right}.stage-prize{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:290px;flex:0 0 27%;gap:13px}.sticker{display:block;width:230px;height:230px;filter:drop-shadow(0 9px 6px #785c3030)}.stage-prize span{font-size:1.2rem;font-weight:500;color:#92512d;line-height:1.4}.stage-description{flex:1;min-width:0}.stage-description h2{font-family:TwentysHand,Arial,sans-serif;font-size:2.5rem;-webkit-text-stroke:.3px currentColor;font-weight:400;color:var(--blue);margin:5px 0 14px}.stage-description>p{font-size:1.3rem;line-height:1.6;margin:12px 0}.stage-description>.small-note{font-size:1.1rem}.stage-description>strong{font-size:1.2rem}.stage-description .mission-button{margin-top:14px}.stage-meter{height:12px;background:#d7c19a80;border-radius:99px;overflow:hidden;margin:14px 0}.stage-meter i{display:block;height:100%;background:linear-gradient(90deg,#39b5c5,#6acd83,#ffcf4b);border-radius:inherit}.daily-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:40px auto 8px;max-width:1100px}.daily-heading h2{font-family:TwentysGraffiti,TwentysText,sans-serif;font-size:2.3rem;font-weight:400;color:var(--purple);margin:0;text-shadow:2px 2px 0 var(--gold)}.daily-heading>span{font-size:1.2rem}.daily-list{max-width:1100px;margin:18px auto}.daily-item{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;text-align:right;border-bottom:2px dashed #d2b87780}.daily-item>div{display:flex;flex-direction:column;gap:8px}.daily-item strong{font-family:TwentysHand,Arial,sans-serif;font-size:1.9rem;font-weight:400;-webkit-text-stroke:.25px currentColor}.daily-item span{font-size:1.15rem;color:#644a32}.daily-item.done strong{color:var(--green)}.daily-item.done .mission-button{background:#c4e2cb;box-shadow:none;opacity:1;color:#246445}.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:45px 28px;margin:40px 0}.album-sticker{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0;min-width:0}.album-sticker .sticker{width:min(100%,285px);height:auto;aspect-ratio:1;transition:transform .2s}.album-sticker strong{font-family:TwentysHand,Arial,sans-serif;font-size:2rem;font-weight:400;-webkit-text-stroke:.25px currentColor;color:#763927;line-height:1.3}.album-sticker span{font-size:1.1rem;color:#665139}.album-sticker.locked .sticker{filter:grayscale(1) drop-shadow(0 5px 5px #75592719);opacity:.35}.album-sticker.unlocked:hover .sticker{transform:translateY(-9px) rotate(-4deg)}
.pause-overlay,.sticker-overlay{position:fixed;inset:0;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff7e9eb;backdrop-filter:blur(8px);text-align:center;padding:28px;overflow:auto}.pause-overlay h2,.sticker-overlay h2{font-family:TwentysHand,Arial,sans-serif;font-weight:400;font-size:3.3rem;-webkit-text-stroke:.4px currentColor;color:var(--red);margin:15px 0 8px}.pause-overlay p,.sticker-overlay p{font-size:1.3rem;line-height:1.6;max-width:630px}.sticker-overlay .sticker{width:min(380px,75vw);height:auto;aspect-ratio:1;animation:sticker-pop .45s ease-out}.toast{position:fixed;z-index:20;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%,180px);max-width:min(90vw,720px);padding:18px 27px;border-radius:50px;background:#226449;color:white;font-size:1.2rem;line-height:1.45;text-align:center;transition:transform .25s;box-shadow:0 7px 20px #31422840}.toast.show{transform:translate(-50%,0)}
@keyframes breathe{0%,100%{transform:translateY(0) rotate(-.5deg)}50%{transform:translateY(-5px) rotate(.5deg)}}@keyframes happy-hop{0%,100%{transform:translateY(0)}45%{transform:translateY(-17px) rotate(-3deg)}}@keyframes bake-glow{from{filter:drop-shadow(0 0 7px #ffac3f)}to{filter:drop-shadow(0 0 25px #ee6642)}}@keyframes confetti-fall{to{transform:translateY(90vh) rotate(450deg);opacity:0}}@keyframes sticker-pop{0%{transform:scale(.65) rotate(-14deg);opacity:0}70%{transform:scale(1.08) rotate(5deg)}100%{transform:scale(1);opacity:1}}
@media(min-width:1800px){.app{padding-inline:3vw}.home-layout{gap:6vw}.kitchen-layout{grid-template-columns:.7fr 1.15fr 1fr;gap:4vw}.prep-area{max-width:690px}.topping-palette canvas{width:100px;height:100px}.topping-palette span{font-size:1.2rem}.customer-scene .sprite{width:175px;height:350px}.speech p{font-size:1.6rem}.speech small{font-size:1.3rem}.toppings-tray h2{font-size:2.8rem}.album-grid{gap:55px}.album-sticker .sticker{width:min(100%,340px)}}
@media(max-width:1150px){.brand-title b{font-size:1.5rem}.app{padding-inline:24px}.home-layout{grid-template-columns:1fr;gap:26px}.cast-row{max-width:850px}.character-choice .sprite{width:135px;height:270px}.crew-block .growth-line,.crew-block .growth-track{max-width:720px}.games-block{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;align-items:center}.mission-teaser,.journey-links{grid-column:2}.mission-teaser{grid-row:1}.journey-links{grid-row:2}.activity-row{grid-column:1;grid-row:1/4;margin:0;gap:14px}.activity canvas{width:135px}.activity strong{font-size:1.7rem}.pizza-party{grid-column:2;grid-row:3;margin-top:8px;font-size:1.55rem;padding-inline:25px}#party-hint{grid-column:2;margin:6px 0}.preferences{grid-column:1;grid-row:4;margin:0;gap:12px}.mission-teaser strong{font-size:1.8rem}.mission-button{font-size:1.55rem;padding:12px 24px}.kitchen-layout{grid-template-columns:1.1fr 1fr;gap:26px}.prep-station{grid-column:1;grid-row:2}.toppings-tray{grid-column:2;grid-row:2}.prep-actions{grid-column:1;grid-row:3}.customer-scene{grid-column:1/-1;flex-direction:row;gap:30px}.customer-scene .sprite{width:85px;height:170px}.speech{max-width:650px;padding:14px 28px}.speech p{font-size:1.25rem}.speech>p{font-size:1.5rem}.speech small{font-size:1.05rem}.topping-palette{grid-template-columns:repeat(3,minmax(0,1fr))}.topping-palette canvas{width:66px;height:66px}.stage-path{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.stage-detail{gap:35px}.diners-row{gap:18px}.diner .sprite{width:95px;height:190px}.result-layout{padding-inline:0;gap:24px}.result-rewards{gap:14px}.album-sticker strong{font-size:1.65rem}}
@media(max-width:760px){.app{padding:10px 14px calc(22px + env(safe-area-inset-bottom,0px))}.topbar{min-height:56px;gap:10px}.brand-title b{display:none}.brand-lettering{width:110px}.top-actions{gap:8px}.round-button{width:48px;height:48px;padding:10px;font-size:1.5rem}.wallet{min-height:46px;font-size:1.15rem;padding:7px 12px;gap:5px}.world-scene{width:820px}.kosher-stamp{border-width:2px;font-size:8px}.world-wash{background:linear-gradient(180deg,#fff7e935,transparent 17%,#fff7e98f 35%,#fff7e9e8 62%,#fff7e9f2)}.shop-space{height:105px}#home-heading{font-size:clamp(2.1rem,7vw,3rem);line-height:1.3;margin-bottom:18px}.home-layout{display:block;padding-top:0}.cast-row{gap:3px}.character-choice{padding:3px 0}.character-choice .sprite{width:min(19vw,108px);height:min(38vw,216px)}.character-choice strong{font-size:clamp(1.22rem,4.3vw,1.75rem);margin-top:8px;line-height:1.35}.character-description{font-size:1.08rem;line-height:1.5;min-height:32px;margin:14px 0}.growth-line{font-size:1rem;gap:10px;margin-top:12px}.growth-track{height:12px}.growth-note{font-size:1rem}.games-block{display:block;margin-top:25px}.mission-teaser{gap:12px}.mission-teaser small{font-size:.94rem}.mission-teaser strong{font-size:1.65rem}.mission-teaser span{font-size:1rem}.mission-button{font-size:1.55rem;min-height:56px;padding:12px 22px}.journey-links{gap:10px;margin:13px 0}.journey-links .text-button{font-size:1.22rem;min-height:46px}.activity-row{display:flex;gap:9px;margin:15px 0 10px}.activity canvas{width:128px}.activity strong{font-size:clamp(1.35rem,4.7vw,1.85rem);line-height:1.3}.activity span{font-size:.97rem;line-height:1.4;margin-top:5px}.pizza-party{font-size:1.7rem;min-height:62px;padding:14px 29px;margin-top:25px}.preferences{margin-top:15px;gap:16px}.branch-row,.pace-row{gap:4px}.branch-row button,.pace-row button{font-size:1.3rem;padding:9px 12px}.parent-note{font-size:.9rem;line-height:1.6;margin-top:20px}.screen h1,.section-title h1{font-size:2.65rem}.section-title{gap:14px;margin:18px 0}.section-title .text-button{font-size:1.45rem;padding:8px 4px}.eyebrow{font-size:1.25rem}.intro{font-size:1.15rem;line-height:1.5}.small-note{font-size:1rem}.primary{font-size:1.85rem;min-height:63px;padding:14px 34px}.text-button{font-size:1.5rem}.compact-spacer{height:0}.kitchen-layout{display:flex;flex-direction:column;gap:24px}.customer-scene{width:100%;gap:14px}.customer-scene .sprite{width:78px;height:156px}.speech{flex:1;min-width:0;padding:14px 20px;border-radius:35% 28% 32% 25% / 21% 27% 22% 28%}.speech>p{font-size:1.4rem}.speech p{font-size:1.15rem}.speech small{font-size:1rem}.prep-station{width:min(100%,470px)}.prep-area{width:100%}#prep-status{font-size:1.05rem;min-height:48px;margin:7px 0 12px}.zone-row{gap:7px;margin:8px 0}.zone-row button{font-size:1.35rem;padding:10px 13px;min-height:48px}.prep-actions{gap:5px}.prep-actions .primary{margin:10px auto;min-width:70%}.prep-actions .text-button{font-size:1.3rem}.prep-actions{width:100%}.toppings-tray{width:100%}.toppings-tray h2{font-size:2rem;margin:10px 0 18px}.topping-palette{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 6px}.topping-palette button{min-height:96px;padding:4px 1px;gap:8px}.topping-palette canvas{width:62px;height:62px}.topping-palette span{font-size:.94rem;line-height:1.4}.topping-palette button[aria-pressed=true]:after{font-size:1.3rem}#arcade .section-title{margin:14px 0 6px}#arcade .section-title h1{font-size:clamp(1.95rem,6.9vw,2.8rem);line-height:1.3}#arcade .intro{font-size:1.08rem;margin:10px 0}.arcade-hud{font-size:1.15rem;gap:6px;margin:12px auto 5px}.recipe-row{min-height:54px;gap:22px;margin:4px 0}.recipe-item{font-size:1.15rem;gap:7px}.recipe-item canvas{width:49px;height:49px}.goal{font-size:1.02rem}#arcade-canvas{height:clamp(360px,calc(100svh - 285px),680px)}.ready-overlay{gap:10px}.ready-overlay>strong{font-size:2rem;line-height:1.5}.ready-overlay .primary{font-size:2rem;padding-inline:37px}.movement{gap:18px;margin-top:12px}.arrow-buttons{gap:14px}.arrow-buttons .round-button{width:59px;height:56px}.movement p{font-size:1rem;max-width:190px}.party-layout{display:flex;flex-direction:column;gap:30px;margin:18px 0}#party-pizza{width:min(100%,430px)}.diners-row{width:100%;gap:12px;flex-wrap:nowrap}.diner{flex:1;min-width:0}.diner .sprite{width:min(18vw,115px);height:min(36vw,230px)}.diner b{font-size:1.35rem;white-space:nowrap}.diner span{font-size:1.1rem}#serving-label{font-size:1.65rem}.result-layout{display:flex;flex-direction:column;gap:18px;padding:15px 0;min-height:0}#result-character .sprite{width:150px;height:300px}#result h1{font-size:2.4rem;line-height:1.25}.stars{font-size:2.7rem}.result-rewards{font-size:1.15rem;gap:10px;margin:18px 0}.result-rewards strong{font-size:1.3rem}.new-sticker{gap:15px}.new-sticker .sticker{width:110px;height:110px}.new-sticker strong{font-size:1.5rem}.new-sticker span{font-size:1rem}.quest-coins{font-size:1.05rem}.stage-path{gap:26px 12px;margin:30px 0}.stage-path span{width:57px;height:57px;font-size:1.5rem}.stage-path small{font-size:1.28rem;line-height:1.4}.stage-detail{flex-direction:column;gap:25px;margin:35px 0;text-align:center}.stage-prize{flex-basis:auto;max-width:240px}.stage-prize .sticker{width:200px;height:200px}.stage-prize span{font-size:1.1rem}.stage-description h2{font-size:2.1rem}.stage-description>p{font-size:1.15rem}.stage-description>.small-note{font-size:1rem}.stage-description>strong{font-size:1.1rem}.stage-description .mission-button{margin:16px auto}.daily-heading{margin-top:30px}.daily-heading h2{font-size:1.9rem}.daily-heading>span{font-size:1rem}.daily-item{gap:15px;padding:21px 0}.daily-item strong{font-size:1.6rem}.daily-item span{font-size:1rem}.daily-item .mission-button{font-size:1.3rem;min-height:51px;padding:11px 17px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 15px;margin:28px 0}.album-sticker .sticker{width:min(100%,230px)}.album-sticker strong{font-size:1.65rem}.album-sticker span{font-size:.98rem;line-height:1.4}.pause-overlay,.sticker-overlay{padding:22px}.pause-overlay h2,.sticker-overlay h2{font-size:2.55rem}.pause-overlay p,.sticker-overlay p{font-size:1.12rem}.toast{font-size:1.1rem;padding:16px 22px}}
@media(max-width:380px){.app{padding-inline:12px}.brand-lettering{width:96px}.top-actions{gap:6px}.round-button{width:44px;height:44px}.wallet{font-size:1.05rem;padding-inline:9px}.activity strong{font-size:1.35rem}.journey-links .text-button{font-size:1.15rem}.mission-teaser strong{font-size:1.5rem}.mission-button{padding-inline:17px;font-size:1.4rem}.topping-palette span{font-size:.9rem}.topping-palette canvas{width:58px;height:58px}.stage-path small{font-size:1.17rem}.stage-path span{width:53px;height:53px}.arcade-hud{font-size:1.05rem}.movement p{font-size:.96rem;max-width:145px}.screen h1,.section-title h1{font-size:2.35rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
