:root{color:#20352f;font-synthesis:none;text-rendering:optimizelegibility;--sky:#dff4f7;--pond:#5bc2c4;--pond-dark:#237d87;--leaf:#3b9b70;--leaf-dark:#287153;--sun:#ffd84d;--coral:#e96e65;--coral-dark:#b94f49;--plum:#67457d;--ink:#20352f;--ink-soft:#4d645e;--cream:#fff9e8;--white:#fff;--focus:#075cc5;--soft-shadow:0 12px 0 #20352f14, 0 24px 54px #20352f29;--button-shadow:0 7px 0 #20352f26, 0 14px 24px #20352f1f;background:#dff4ee;font-family:Arial Rounded MT Bold,Trebuchet MS,ui-rounded,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--sky);min-width:320px;min-height:100%}body{min-width:320px;min-height:100%;margin:0;overflow-x:hidden}button,input,select{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:4px solid var(--focus);outline-offset:4px}button:disabled{cursor:default}img,svg{max-width:100%;display:block}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell{isolation:isolate;background:linear-gradient(#dff4f7 0%,#e8f8ee 100%);min-height:100dvh;position:relative;overflow:hidden}.app-shell:before{z-index:-3;background-image:var(--scene-image);content:"";background-position:50%;background-size:cover;position:fixed;inset:0}.app-shell:after{z-index:-2;content:"";pointer-events:none;background:linear-gradient(#ffffff40,#fff9e826),radial-gradient(circle at 50% 42%,#fff3,#0000 68%);position:fixed;inset:0}.screen{width:min(100%,1280px);min-height:100dvh;padding:max(10px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}.screen.puzzle-screen{grid-template-rows:auto minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.puzzle-screen .puzzle-play{align-self:start;height:calc(100% - 8px);min-height:0}.utility-bar{z-index:40;grid-template-columns:64px 1fr auto;align-items:center;gap:10px;min-height:64px;display:grid;position:relative}.utility-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.utility-language-picker{min-height:50px;color:var(--plum);background:#ffffffe6;border:2px solid #20304017;border-radius:17px;align-items:center;gap:5px;padding:4px 8px;display:inline-flex;box-shadow:0 5px #2030401c}.utility-language-picker select{max-width:112px;height:48px;min-height:48px;color:inherit;cursor:pointer;background:0 0;border:0;padding:2px 20px 2px 2px;font:800 .86rem/1.2 Trebuchet MS,system-ui,sans-serif}.utility-language-picker:focus-within{outline:4px solid var(--focus);outline-offset:3px}.utility-language-picker select:focus{outline:0}.utility-button{cursor:pointer;background:#fffffff0;border:2px solid #20352f1a;border-radius:18px;place-items:center;width:54px;min-width:48px;height:54px;min-height:48px;padding:0;transition:transform .15s,box-shadow .15s;display:grid;box-shadow:0 5px #20352f1f}.utility-button:hover{transform:translateY(-2px)}.utility-button:active{transform:translateY(3px);box-shadow:0 2px #20352f1f}.utility-button.primary-home{width:60px;height:60px;color:var(--leaf-dark);border-radius:21px}.utility-button .icon{width:29px;height:29px}.utility-title{min-width:0;color:var(--plum);text-align:center;text-shadow:0 2px #ffffffb8;margin:0;font-size:clamp(1rem,3vw,1.65rem);line-height:1}.icon{width:1.6em;height:1.6em}.main-button,.secondary-button{cursor:pointer;border-radius:23px;justify-content:center;align-items:center;gap:12px;min-height:64px;padding:13px 25px;transition:transform .15s,box-shadow .15s;display:inline-flex}.main-button{min-width:min(100%,300px);color:var(--white);background:var(--leaf);box-shadow:0 8px 0 var(--leaf-dark), 0 16px 30px #2871533d;border:0;font-size:clamp(1.08rem,2.7vw,1.4rem)}.main-button:hover,.secondary-button:hover{transform:translateY(-2px)}.main-button:active{box-shadow:0 3px 0 var(--leaf-dark);transform:translateY(5px)}.secondary-button{background:#fffffff0;border:2px solid #20352f21;font-size:1.02rem;box-shadow:0 5px #20352f1c}.text-button{min-height:48px;color:var(--plum);cursor:pointer;background:0 0;border:0;border-bottom:2px solid;padding:8px 12px}.brand-pill,.eyebrow{width:fit-content;color:var(--leaf-dark);letter-spacing:.05em;text-transform:uppercase;background:#dcf2dc;border-radius:999px;margin:0 auto 10px;padding:6px 14px;font-size:.82rem}.welcome-card,.puzzle-book,.puzzle-play{box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9e8e8;border:3px solid #ffffffbf}.welcome-card{text-align:center;border-radius:clamp(28px,5vw,50px);justify-items:center;width:min(100%,760px);margin:clamp(12px,4vh,44px) auto 0;padding:clamp(20px,4vw,46px);display:grid}.welcome-card h1,.book-heading h1,.puzzle-prompt h1{color:var(--plum);letter-spacing:-.05em;margin:0;line-height:.96}.welcome-card h1{font-size:clamp(2.8rem,8vw,5.4rem)}.welcome-card>p:not(.brand-pill){max-width:38rem;margin:14px 0 0;font-family:Trebuchet MS,system-ui,sans-serif;font-size:clamp(1rem,2.4vw,1.25rem);line-height:1.4}.pond-hero{width:min(100%,500px);height:clamp(150px,25vw,215px);margin:12px 0 18px;position:relative}.pond-hero-subject{z-index:2;aspect-ratio:1;width:clamp(112px,23vw,170px);display:block;position:absolute}.pond-hero-subject img,.pond-hero-subject .puzzle-image-fallback{object-fit:contain;filter:drop-shadow(0 8px #20352f1f);width:100%;height:100%}.pond-hero-subject.hero-1{bottom:0;left:4%;rotate:-5deg}.pond-hero-subject.hero-2{z-index:3;bottom:8px;left:34%}.pond-hero-subject.hero-3{bottom:0;right:3%;rotate:4deg}.hero-lily-pad{background:#8acb6b;border:4px solid #4b8d65;border-radius:50%;height:38px;position:absolute;bottom:8px;left:6%;right:8%;box-shadow:0 8px #237d872e}.hero-ripple{border:3px solid #237d8759;border-radius:50%;position:absolute;bottom:0}.hero-ripple.ripple-one{width:46%;height:26px;left:0}.hero-ripple.ripple-two{width:42%;height:22px;right:0}.play-puzzles-button{z-index:5;position:relative}.language-picker{width:min(100%,430px);color:var(--ink-soft);text-align:start;gap:6px;margin-top:14px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.9rem;font-weight:700;display:grid}.language-picker select{width:100%;min-height:48px;color:var(--ink);background:#fffffff5;border:2px solid #20352f2e;border-radius:15px;padding:8px 40px 8px 12px}.welcome-card .language-draft-notice{max-width:36rem;color:var(--plum);background:#ffffffd1;border:2px solid #67457d33;border-radius:14px;margin-top:9px;padding:8px 11px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.82rem;line-height:1.35}.welcome-card .welcome-note{color:var(--ink-soft);margin-top:10px;font-size:.92rem}.puzzle-book{border-radius:clamp(25px,4vw,44px);width:min(100%,1120px);margin:10px auto 0;padding:clamp(18px,3vw,34px)}.book-heading{text-align:center}.book-heading h1{font-size:clamp(2.4rem,6vw,4.6rem)}.book-heading>p:last-child,.puzzle-prompt>p:last-child{margin:8px 0 0;font-family:Trebuchet MS,system-ui,sans-serif}.book-stages{gap:24px;margin-top:22px;display:grid}.book-stage{background:#dcf2dc9e;border-radius:28px;padding:16px}.book-stage:nth-child(2){background:#dff4f7b8}.book-stage:nth-child(3){background:#ffd84d33}.book-stage h2{color:var(--leaf-dark);text-align:center;margin:0 0 12px;font-size:clamp(1.15rem,2.5vw,1.45rem)}.puzzle-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.puzzle-card{min-width:0;min-height:190px;box-shadow:var(--button-shadow);cursor:pointer;background:#ffffffeb;border:3px solid #20352f1f;border-radius:26px;grid-template-columns:minmax(92px,1fr) minmax(96px,.72fr);align-items:center;padding:10px;transition:transform .16s,box-shadow .16s;display:grid}.puzzle-card:hover{transform:translateY(-4px)rotate(-.5deg)}.puzzle-card:active{transform:translateY(3px);box-shadow:0 3px #20352f21}.puzzle-card.can-resume{border-color:var(--sun);background:#fffbed}.puzzle-card-picture{aspect-ratio:1;place-items:center;display:grid}.puzzle-card-picture img,.puzzle-card-picture .puzzle-image-fallback{object-fit:contain;filter:drop-shadow(0 5px #20352f1a);width:100%;height:100%}.puzzle-card-copy{justify-items:center;gap:8px;display:grid}.puzzle-card-copy strong{color:var(--plum);font-size:clamp(1.05rem,2.3vw,1.35rem)}.puzzle-card-copy small{color:var(--ink-soft);font-family:Trebuchet MS,system-ui,sans-serif;font-size:.78rem}.piece-pips{justify-content:center;gap:5px;display:flex}.piece-pips i{background:var(--pond);border-radius:50%;width:15px;height:10px;box-shadow:inset 0 -2px #20352f26}.puzzle-play{border-radius:clamp(24px,4vw,42px);align-content:center;width:min(100%,1120px);min-height:calc(100dvh - 88px);margin:8px auto 0;padding:clamp(12px,2vw,24px);display:grid}.puzzle-prompt{text-align:center}.puzzle-prompt .eyebrow{margin-bottom:4px}.puzzle-prompt h1{font-size:clamp(1.8rem,4vw,3.1rem)}.puzzle-prompt>p:last-child{min-height:1.35em;color:var(--ink-soft);font-size:clamp(.95rem,2vw,1.15rem)}.puzzle-workspace{grid-template-columns:minmax(280px,1fr) minmax(230px,.55fr);align-items:center;gap:clamp(14px,3vw,34px);width:min(100%,920px);margin:10px auto 0;display:grid}.phase-celebrating .puzzle-workspace,.phase-complete .puzzle-workspace{grid-template-columns:1fr}.puzzle-board{aspect-ratio:1;touch-action:none;background:radial-gradient(circle at 50% 45%,#ffffffbf,#dff4f78c 58%,#5bc2c43d);border:5px solid #237d878f;border-radius:42px;justify-self:center;width:min(100%,560px);position:relative;overflow:hidden;box-shadow:inset 0 -10px #237d871a,0 9px #20352f1a}.complete-master,.complete-ghost{object-fit:contain;filter:drop-shadow(0 8px #20352f1f);width:100%;height:100%;position:absolute;inset:0}.phase-separating .complete-master{animation:.6s ease-in both master-separate}.phase-separating .piece-tray{pointer-events:none;animation:.6s ease-out both tray-separate}.phase-separating .tray-piece{animation:.6s cubic-bezier(.2,.78,.3,1) both tray-piece-separate}.complete-ghost{filter:grayscale(.3)}.assembled-picture{z-index:1;position:absolute;inset:0}.board-piece,.active-slot-ripple{top:var(--piece-y);left:var(--piece-x);width:var(--piece-width);height:var(--piece-height);position:absolute}.board-piece{place-items:stretch stretch;display:grid}.board-piece img,.board-piece .puzzle-image-fallback{object-fit:fill;width:100%;height:100%}.board-piece.is-slot{opacity:.12;filter:grayscale(1) sepia(.2) drop-shadow(0 0 2px var(--pond-dark))}.guide-strong .board-piece.is-slot{opacity:.2;filter:grayscale(1) sepia(.2) drop-shadow(0 0 3px var(--pond-dark))}.board-piece.is-slot.is-active{opacity:.42;filter:grayscale(.7) drop-shadow(0 0 3px var(--plum)) drop-shadow(0 0 6px white);animation:1.15s ease-in-out infinite slot-pulse}.strong-hint .board-piece.is-slot.is-active{opacity:.72;filter:grayscale(.4) drop-shadow(0 0 5px var(--plum)) drop-shadow(0 0 9px white)}.board-piece.is-placed{opacity:1;filter:drop-shadow(0 5px #20352f1f);animation:.42s cubic-bezier(.2,.85,.3,1.12) both piece-arrive}.board-piece.is-placed.is-fitting.fit-drag{animation-duration:.26s}.active-slot-ripple{z-index:0;border:5px solid #237d8759;border-radius:50%;animation:1.4s ease-out infinite ripple-pulse;scale:1.1}.piece-tray{background:linear-gradient(#dff1c4,#badc91);border:4px solid #75a967;border-radius:34px;min-width:0;padding:15px;box-shadow:inset 0 -8px #2871531a,0 8px #20352f1a}.piece-tray:before{color:var(--leaf-dark);content:"Puzzle pieces";letter-spacing:.04em;text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:.82rem;display:block}.piece-tray-grid{grid-template-columns:repeat(2,minmax(92px,1fr));gap:12px;display:grid}.piece-count-2,.piece-count-3{grid-template-columns:1fr}.tray-piece{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#ffffffeb;border:3px solid #20352f21;border-radius:25px;place-items:center;width:100%;min-width:80px;min-height:104px;padding:8px;display:grid;position:relative;box-shadow:0 6px #20352f21}.tray-piece:active{cursor:grabbing}.tray-piece:disabled{cursor:default}.tray-piece img,.tray-piece .puzzle-image-fallback{object-fit:contain;filter:drop-shadow(0 5px #20352f1f);pointer-events:none;width:100%;height:94px}.tray-piece.is-dragging{opacity:.28}.tray-piece.idle-hint{animation:1.2s ease-in-out piece-sparkle}.tray-piece.piece-bob{animation:.36s ease-in-out piece-bob}.dragging-piece{z-index:100;width:130px;height:130px;box-shadow:var(--soft-shadow);pointer-events:none;background:#ffffffe6;border-radius:28px;place-items:center;display:grid;position:fixed;translate:-50% -50%}.dragging-piece img,.dragging-piece .puzzle-image-fallback{object-fit:contain;width:112px;height:112px}.completion-bubbles{pointer-events:none;position:absolute;inset:0}.completion-bubbles i{background:#5bc2c433;border:4px solid #fffc;border-radius:50%;width:26px;height:26px;animation:1.2s ease-out both bubble-rise;position:absolute}.completion-bubbles i:first-child{bottom:10%;left:13%}.completion-bubbles i:nth-child(2){width:38px;height:38px;animation-delay:.13s;bottom:18%;right:14%}.completion-bubbles i:nth-child(3){width:18px;height:18px;animation-delay:.24s;bottom:7%;right:31%}.phase-celebrating .assembled-picture,.phase-complete .assembled-picture{transform-origin:50%}.phase-celebrating .celebration-picture-bob .assembled-picture{animation:1.2s ease-in-out picture-bob}.phase-celebrating .celebration-small-hop .assembled-picture{animation:1.2s ease-out picture-hop}.phase-celebrating .celebration-tail-swish-bubbles .board-piece[data-piece-number="2"]{transform-origin:0;animation:1.2s ease-in-out tail-swish}.phase-celebrating .celebration-head-nod .board-piece[data-piece-number="1"]{transform-origin:100% 100%;animation:1.2s ease-in-out head-nod}.phase-celebrating .celebration-head-wave .board-piece[data-piece-number="1"]{transform-origin:100% 100%;animation:1.2s ease-in-out head-wave}.phase-celebrating .celebration-wing-flutter .board-piece[data-piece-number="1"]{transform-origin:100%;animation:1.2s ease-in-out left-wing-flutter}.phase-celebrating .celebration-wing-flutter .board-piece[data-piece-number="3"]{transform-origin:0;animation:1.2s ease-in-out right-wing-flutter}.phase-celebrating .celebration-bloom-sway .board-piece[data-piece-number="1"],.phase-celebrating .celebration-bloom-sway .board-piece[data-piece-number="2"]{transform-origin:bottom;animation:1.2s ease-in-out bloom-open}.phase-celebrating .celebration-boat-rock .assembled-picture{animation:1.2s ease-in-out boat-rock}.phase-celebrating .celebration-rainbow-shimmer .assembled-picture{animation:1.2s ease-in-out rainbow-shimmer}.completion-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:12px;display:flex}.next-puzzle-button{min-width:240px}.narration-caption{z-index:35;width:fit-content;max-width:min(90vw,650px);color:var(--ink-soft);text-align:center;background:#ffffffe8;border:2px solid #20352f1a;border-radius:999px;margin:4px auto -2px;padding:6px 14px;font-family:Trebuchet MS,system-ui,sans-serif;font-size:.92rem;position:relative}.puzzle-image-fallback{border:3px dashed var(--pond-dark);min-width:64px;min-height:64px;color:var(--plum);background:#fff9e8e6;border-radius:24px;place-items:center;display:grid}.fallback-mark{aspect-ratio:1;place-items:center;width:58%;display:grid}.fallback-mark>span{background:#ffd84d73;border:5px solid;width:74%;height:74%;display:block}.fallback-mark-circle>span{border-radius:50%}.fallback-mark-triangle>span{background:0 0;border:25px solid #0000;border-top:0;border-bottom:43px solid;width:0;height:0}.fallback-mark-square>span{border-radius:7px}.fallback-mark-diamond>span{border-radius:5px;rotate:45deg}.forced-colours-piece-mark{display:none}.media-retry-panel{z-index:60;right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));border:3px solid var(--pond-dark);background:var(--cream);width:min(760px,100% - 24px);min-height:70px;box-shadow:var(--soft-shadow);border-radius:24px;justify-content:space-between;align-items:center;gap:15px;margin:0 auto;padding:12px;display:flex;position:fixed}.media-retry-panel div{gap:3px;display:grid}@keyframes master-separate{to{opacity:0;scale:.88}}@keyframes tray-separate{0%{opacity:0}}@keyframes tray-piece-separate{0%{opacity:0;transform:translate(-72px)translateY(-14px)scale(.62)}}@keyframes slot-pulse{50%{opacity:.66;scale:1.035}}@keyframes ripple-pulse{0%{opacity:.55;scale:.85}to{opacity:0;scale:1.25}}@keyframes piece-arrive{0%{opacity:.2;scale:.76}to{opacity:1;scale:1}}@keyframes piece-bob{30%{transform:translateY(-8px)rotate(-4deg)}65%{transform:translateY(3px)rotate(3deg)}}@keyframes piece-sparkle{35%,70%{border-color:var(--sun);scale:1.05;box-shadow:0 6px #20352f21,0 0 0 10px #ffd84d66}}@keyframes bubble-rise{0%{opacity:0;translate:0 20px}35%{opacity:1}to{opacity:0;translate:0 -85px}}@keyframes picture-bob{40%{transform:translateY(-10px)rotate(-2deg)}70%{transform:translateY(3px)rotate(1deg)}}@keyframes picture-hop{38%{transform:translateY(-25px)scale(1.02)}62%{transform:translateY(3px)scale(.98)}}@keyframes picture-sway{30%{transform:rotate(-3deg)}65%{transform:rotate(3deg)}}@keyframes tail-swish{30%{transform:rotate(-7deg)}65%{transform:rotate(6deg)}}@keyframes head-nod{35%{transform:rotate(5deg)translateY(3px)}68%{transform:rotate(-2deg)}}@keyframes head-wave{30%{transform:rotate(-5deg)translateY(-3px)}65%{transform:rotate(4deg)}}@keyframes left-wing-flutter{30%{transform:rotate(4deg)scaleX(.94)}60%{transform:rotate(-3deg)scaleX(1.025)}}@keyframes right-wing-flutter{30%{transform:rotate(-4deg)scaleX(.94)}60%{transform:rotate(3deg)scaleX(1.025)}}@keyframes bloom-open{30%{transform:rotate(-2deg)scale(.96,1.04)}60%{transform:rotate(2deg)scale(1.025,.99)}}@keyframes boat-rock{30%{transform:rotate(-3deg)translateY(-4px)}65%{transform:rotate(3deg)translateY(2px)}}@keyframes rainbow-shimmer{45%{filter:brightness(1.12)saturate(1.08);transform:scale(1.025)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.reduce-motion .board-piece.is-slot.is-active,.reduce-motion .active-slot-ripple,.reduce-motion .tray-piece.idle-hint,.reduce-motion .tray-piece.piece-bob,.reduce-motion .completion-bubbles i,.reduce-motion .phase-celebrating .assembled-picture,.reduce-motion .phase-celebrating .board-piece{animation:none}.reduce-motion .board-piece.is-slot.is-active,.reduce-motion .tray-piece.idle-hint,.reduce-motion .tray-piece.piece-bob{box-shadow:0 0 0 8px #ffd84d73}.reduce-motion .tray-piece.idle-hint{box-shadow:none;animation:1.2s linear reduced-static-halo}.reduce-motion.phase-separating .complete-master,.reduce-motion.phase-separating .piece-tray,.reduce-motion.phase-separating .tray-piece{animation:.22s ease-in-out both reduced-separation-fade}.reduce-motion.phase-separating .complete-master{animation-direction:reverse}.reduce-motion .board-piece.is-placed{animation:.18s ease-out both reduced-piece-arrive}@keyframes reduced-piece-arrive{0%{opacity:.35}to{opacity:1}}@keyframes reduced-separation-fade{0%{opacity:0}to{opacity:1}}@keyframes reduced-static-halo{10%,90%{box-shadow:0 0 0 8px #ffd84d73}}@media (prefers-reduced-motion:reduce){.reduce-motion.phase-separating .complete-master,.reduce-motion.phase-separating .piece-tray,.reduce-motion.phase-separating .tray-piece{animation:.22s ease-in-out both reduced-separation-fade!important}.reduce-motion.phase-separating .complete-master{animation-direction:reverse!important}.reduce-motion .tray-piece.idle-hint{animation:1.2s linear reduced-static-halo!important}}@media (forced-colors:active){.puzzle-card,.tray-piece,.puzzle-board,.piece-tray,.utility-button,.main-button,.secondary-button{border:3px solid buttontext}.board-piece.is-slot{opacity:.65}.board-piece.is-slot.is-active{outline-offset:4px;outline:5px solid highlight}.forced-colours-piece-mark{z-index:3;aspect-ratio:1;color:buttontext;background:canvas;border:3px solid buttontext;border-radius:18px;place-items:center;width:58%;display:grid;position:absolute;inset:21%}.forced-colours-piece-mark .fallback-mark{width:100%}.board-piece img,.tray-piece img{opacity:.2}}@media (width<=900px){.puzzle-card{grid-template-columns:1fr;min-height:168px}.puzzle-card-picture{min-height:105px}.puzzle-workspace{grid-template-columns:minmax(260px,1fr) minmax(190px,.48fr)}.piece-tray-grid,.piece-count-2,.piece-count-3{grid-template-columns:repeat(2,minmax(80px,1fr))}}@media (orientation:portrait) and (width<=900px){.puzzle-workspace{grid-template-columns:1fr;gap:12px}.puzzle-board{width:min(100%,560px)}.piece-tray{justify-self:center;width:min(100%,620px)}.piece-tray-grid,.piece-count-4{grid-template-columns:repeat(4,minmax(80px,1fr))}.piece-count-3{grid-template-columns:repeat(3,minmax(80px,1fr))}.piece-count-2{grid-template-columns:repeat(2,minmax(80px,1fr))}.phase-separating .tray-piece{animation-name:tray-piece-separate-portrait}}@media (width<=700px){.utility-bar{grid-template-columns:54px 1fr auto;gap:6px}.utility-button{border-radius:16px;width:48px;height:48px}.utility-button.primary-home{width:52px;height:52px}.puzzle-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.puzzle-workspace{grid-template-columns:1fr;gap:12px}.puzzle-board{width:min(100%,420px)}.piece-tray{justify-self:center;width:min(100%,520px);padding:10px}.piece-tray-grid,.piece-count-3{grid-template-columns:repeat(3,minmax(80px,1fr))}.piece-count-2,.piece-count-4{grid-template-columns:repeat(2,minmax(80px,1fr))}.tray-piece{min-height:88px}.tray-piece img,.tray-piece .puzzle-image-fallback{height:76px}}@media (width<=520px){.utility-language-picker{min-height:44px;padding-inline:6px}.utility-language-picker select{max-width:78px;font-size:.78rem}.screen{padding-right:max(9px, env(safe-area-inset-right));padding-left:max(9px, env(safe-area-inset-left))}.utility-title{font-size:.92rem}.utility-actions{gap:4px}.welcome-card{margin-top:8px;padding:22px 14px}.pond-hero{height:145px;margin-block:8px 13px}.pond-hero-subject{width:112px}.puzzle-book{padding:16px 10px}.book-stage{padding:10px}.puzzle-card-grid{gap:9px}.puzzle-card{border-radius:21px;min-height:145px;padding:7px}.puzzle-card-picture{min-height:90px}.puzzle-card-copy{gap:4px}.puzzle-card-copy small{display:none}.puzzle-play{border-radius:25px;min-height:auto;padding:10px 7px 13px}.puzzle-prompt .eyebrow{display:none}.puzzle-prompt>p:last-child{margin-top:4px}.puzzle-board{border-radius:30px;width:min(100%,350px)}.piece-tray:before{display:none}.piece-tray-grid,.piece-count-3{grid-template-columns:repeat(3,minmax(80px,1fr));gap:7px}.piece-count-2{grid-template-columns:repeat(2,minmax(80px,1fr));gap:7px}.piece-count-4{grid-template-columns:repeat(2,minmax(80px,1fr))}.tray-piece{border-radius:19px;min-height:80px;padding:5px}.tray-piece img,.tray-piece .puzzle-image-fallback{height:72px}.completion-actions{display:grid}.completion-actions>*{width:100%}.media-retry-panel{flex-direction:column;align-items:stretch}}@media (height>=581px) and (height<=800px){.phase-complete .puzzle-board{width:min(100%,420px)}.phase-complete .puzzle-prompt>p:last-child{min-height:auto;margin-top:3px}.phase-complete .completion-actions{margin-top:7px}}@media (width<=430px){.utility-actions{grid-template-rows:repeat(2,52px);grid-template-columns:repeat(3,48px);gap:4px;display:grid}.utility-actions .back-button{grid-area:2/1}.utility-actions .replay-button{grid-area:2/2}.utility-actions .sound-button{grid-area:2/3}.utility-language-picker{grid-area:1/1/auto/4;gap:0;width:100%;min-width:0;height:52px;min-height:52px;padding:0 4px}.utility-language-picker>:first-child{display:none}.utility-language-picker select{flex:auto;width:100%;min-width:0;max-width:none;font-size:.75rem}}@media (width<=370px){.puzzle-board{width:292px}.puzzle-card-copy strong{font-size:.98rem}}@media (orientation:portrait) and (height<=650px){.screen{min-height:100dvh;padding-top:max(5px, env(safe-area-inset-top));padding-bottom:max(5px, env(safe-area-inset-bottom))}.utility-bar{min-height:48px}.utility-actions{grid-template-rows:repeat(2,48px);row-gap:0}.utility-language-picker,.utility-language-picker select{height:48px;min-height:48px}.utility-button,.utility-button.primary-home{width:48px;height:48px}.welcome-card{margin-top:3px;padding-block:13px}.welcome-card h1{font-size:2.55rem}.welcome-card>p:not(.brand-pill){margin-top:6px;font-size:.92rem}.pond-hero{height:112px;margin-block:2px 6px}.pond-hero-subject{width:92px}.welcome-card .welcome-note,.puzzle-prompt h1{display:none}.puzzle-prompt>p:last-child{min-height:auto;margin:0;font-size:.86rem;line-height:1.1}.puzzle-play{min-height:0;margin-top:0;padding:2px}.puzzle-screen .puzzle-play{height:100%;margin-top:0}.puzzle-workspace{gap:0;margin-top:0}.puzzle-board{border-width:4px;width:min(100%,288px)}.piece-tray{border-width:3px;padding:0 3px}.piece-tray-grid,.piece-count-2,.piece-count-3,.piece-count-4{gap:2px}.tray-piece{min-height:80px;padding:0 5px}.tray-piece img,.tray-piece .puzzle-image-fallback{height:72px}.completion-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}.completion-actions .next-puzzle-button{min-width:0}.completion-actions .text-button{grid-column:1/-1}}@media (orientation:landscape) and (height<=580px){.screen{min-height:100svh;padding-top:max(5px, env(safe-area-inset-top));padding-bottom:max(6px, env(safe-area-inset-bottom))}.utility-bar{min-height:48px}.utility-button,.utility-button.primary-home{width:48px;height:48px}.welcome-card{text-align:left;grid-template-rows:auto auto auto auto;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);margin-top:3px;padding:12px 22px}.welcome-card .brand-pill,.welcome-card h1,.welcome-card>p{grid-column:1;justify-self:start}.pond-hero{grid-area:1/2/span 4;height:190px;margin:0}.play-puzzles-button{grid-column:1;min-height:54px}.welcome-note{display:none}.puzzle-play{height:calc(100dvh - 58px);min-height:0;margin-top:0;padding:6px 12px;overflow:hidden}.puzzle-screen .puzzle-play{height:100%;margin-top:0}.puzzle-prompt{z-index:2;position:absolute;top:58px;left:50%;translate:-50%}.puzzle-prompt .eyebrow{display:none}.puzzle-prompt h1{font-size:1.5rem}.puzzle-prompt>p:last-child{margin:0;font-size:.82rem}.puzzle-workspace{grid-template-columns:minmax(270px,1fr) minmax(230px,.65fr);gap:12px;width:min(100%,830px);height:calc(100% - 18px);margin-top:18px}.puzzle-board{width:min(100%,288px)}.piece-tray-grid,.piece-count-2,.piece-count-3,.piece-count-4{grid-template-columns:repeat(2,minmax(80px,1fr))}.tray-piece{min-height:82px}.tray-piece img,.tray-piece .puzzle-image-fallback{height:72px}.phase-complete .puzzle-board{width:min(100%,230px)}.phase-complete .completion-actions{margin-top:4px}}@keyframes tray-piece-separate-portrait{0%{opacity:0;transform:translateY(-54px)scale(.62)}}
