@layer reset{@font-face{font-family:Fredoka;src:url(/assets/fonts/fredoka-ui.woff2)format("woff2");font-style:normal;font-weight:300 700;font-display:swap}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{color:var(--ink);background:var(--deep-plum);font-synthesis:none;font-family:Fredoka,Trebuchet MS,system-ui,sans-serif;font-size:1rem;font-weight:500;line-height:1.35;overflow:hidden}button,input,select{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:44px;min-height:44px;box-shadow:var(--button-depth);background:linear-gradient(145deg,#fffdf5,#f0eaf7);border:2px solid #fffaf2;border-radius:20px;padding:8px 12px}button,a,input,select,[tabindex]{overflow-wrap:anywhere;scroll-margin:8px}:focus-visible{outline-offset:3px;outline:2px solid #765394}.maze-board:focus-visible{outline-offset:-7px;outline:2px solid #ba9bdd}.dialog-body:focus-visible{outline-offset:-4px;outline:2px solid #a28caf}@media (forced-colors:active){:focus-visible{outline:2px solid highlight}}h1,h2,h3,p{margin:0}h1,h2,h3,strong,b{font-weight:650}small{font-size:.875rem}h1{font-size:1.75rem}h2{font-size:1.375rem}h3{font-size:1rem}ul{margin:0;padding:0;list-style:none}img{max-width:100%;display:block}[hidden]{display:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button:hover:not(:disabled){background-color:#fff;border-color:#807097}button:active:not(:disabled){box-shadow:inset 0 2px 3px #44364b26}button[aria-pressed=true]{background:linear-gradient(140deg,#e9d9ff,#e9eafb);border-color:#8a6bab}button:disabled{cursor:default;color:#76687d;box-shadow:none;background:#efebef}.primary-button{color:#fffdf4;background:linear-gradient(155deg,#bf4c79,#90406e 65%,#754480);border-color:#fff3d1;min-height:48px;font-weight:600;box-shadow:inset 0 2px #fff5,0 4px #704868,0 7px 12px #49345824}.secondary-button{min-height:48px}.art-fallback{border:1px dashed var(--edge);color:#5c4966;background:#f1e9f1;border-radius:12px;place-items:center;width:100%;height:100%;font-size:.875rem;display:grid}@media (width>=1600px) and (height>=900px){html{font-size:20px}}}@layer tokens{:root{--ink:#44324f;--muted-ink:#63516f;--focus:#765394;--plum:#4c2d5d;--deep-plum:#34203f;--violet:#7856a9;--lilac:#c7a9e5;--soft-lilac:#eee4f7;--cream:#fff9e9;--paper:#fffdf5;--peach:#ffd7bd;--coral:#ee826f;--mint:#a8dfc8;--teal:#42aaa7;--gold:#f5bf4f;--sky:#73c9e6;--pearl:#fffaf3;--edge:#cbbace;--rim:inset 0 0 0 1px #fffdf9,inset 0 2px 0 #fff;--surface-depth:var(--rim),0 3px 0 #8f76902b,0 7px 15px #48305112;--button-depth:inset 0 2px 0 #fff,0 4px 0 #907c9755,0 5px 10px #48305112;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}}@layer scene{.goal-sprite{z-index:2;object-fit:contain;filter:drop-shadow(0 2px 2px #45224b52);width:84%;height:84%;animation:2s ease-in-out infinite goal-glow;position:absolute;inset:8%}.object-layer{z-index:6;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.player-layer{pointer-events:none;z-index:9;place-items:center;transition:none;animation:none;display:grid;position:absolute;overflow:visible}.camera-world{z-index:0;pointer-events:none;transition:none;position:absolute;overflow:visible}.maze-board.portal-active .camera-world{transition:none}.maze-object{object-fit:contain;filter:drop-shadow(0 2px 2px #371b3e57);width:92%;height:92%;position:absolute;bottom:0}.player-sprite{object-fit:contain;filter:drop-shadow(0 2px 2px #371b3e57);transform-origin:50% 100%;z-index:2;width:92%;height:92%;position:absolute;bottom:-1%;left:50%;transform:translate(-50%)}.player-held-weapon{z-index:var(--held-z);left:var(--held-left);top:var(--held-top);width:var(--held-size);height:var(--held-size);object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 2px #371b3e57);transform:rotate(var(--held-rotation));transform-origin:var(--held-grip-x) var(--held-grip-y);position:absolute}.object-sword,.object-potion,.object-boots,.object-key{width:70%;height:70%;animation:2.8s ease-in-out infinite item-shine;inset:15%}.object-enemy{transform-origin:50% 100%;width:82%;height:82%;animation:2.4s ease-in-out infinite goblin-bob;bottom:-1%;left:50%;transform:translate(-50%)}.object-portal{object-fit:contain;filter:drop-shadow(0 2px 3px #4a376042);width:92%;height:92%;animation:1.8s ease-in-out infinite portal-pad-breathe;inset:4%}.object-door{width:92%;height:92%;inset:4%}.power-badge{z-index:15;color:#fff;letter-spacing:-.04em;paint-order:stroke fill;text-shadow:-1px -1px #39324f,1px -1px #39324f,-1px 1px #39324f,1px 1px #39324f,0 2px 2px #2a233a73;width:auto;min-width:0;height:auto;box-shadow:none;font-weight:700;font-size:clamp(10px, calc(25cqw / var(--grid-size,13)), 20px);-webkit-text-stroke:clamp(.8px, calc(1.9cqw / var(--grid-size,13)), 1.5px) #39324f;background:0 0;border:0;border-radius:0;place-items:center;padding:0;line-height:.92;display:block;position:absolute;top:-9%;left:50%;transform:translate(-50%)}.player-power,.enemy-power{background:0 0}.item-amount{z-index:14;background:var(--coral);color:#fff;border:1.5px solid #fff;border-radius:999px;padding:1px 4px;font-size:clamp(8px,.9cqw,13px);font-weight:700;line-height:1.3;position:absolute;bottom:4%;right:1%;box-shadow:0 2px 5px #3c1e424d}.object-kind-animal .animal-sprite{transform-origin:50% 88%}.pet-follower>img{object-fit:contain;transform-origin:50% 90%;filter:drop-shadow(0 1px 1px #362a403d);width:74%;height:74%;animation:1.18s ease-in-out infinite pet-follower-bob}.object-kind-animal[data-animal-motion=hop] .animal-sprite,.pet-follower[data-animal-motion=hop]>img{animation:1.02s ease-in-out infinite friend-motion-hop}.object-kind-animal[data-animal-motion=waddle] .animal-sprite,.pet-follower[data-animal-motion=waddle]>img{animation:1.08s ease-in-out infinite friend-motion-waddle}.object-kind-animal[data-animal-motion=prance] .animal-sprite,.pet-follower[data-animal-motion=prance]>img{animation:1.16s cubic-bezier(.35,.05,.45,1) infinite friend-motion-prance}.object-kind-animal[data-animal-motion=sway] .animal-sprite,.pet-follower[data-animal-motion=sway]>img{animation:1.28s ease-in-out infinite friend-motion-sway}.object-kind-animal[data-animal-motion=snuggle] .animal-sprite,.pet-follower[data-animal-motion=snuggle]>img{animation:1.46s ease-in-out infinite friend-motion-snuggle}.object-kind-animal[data-animal-motion=scamper] .animal-sprite,.pet-follower[data-animal-motion=scamper]>img{animation:1.12s ease-in-out infinite friend-motion-scamper}.pet-follower:after{z-index:7;color:#fff5b9;content:attr(data-flourish);font-size:clamp(8px, calc(18cqw / var(--grid-size,13)), 16px);opacity:0;pointer-events:none;text-shadow:0 0 4px #fff,0 1px 3px #704c808c;line-height:1;animation:1.62s ease-in-out infinite friend-flourish-pop;position:absolute;top:4%;right:5%}.animal-stack:after{z-index:7;color:#fff5b9;font-size:clamp(8px, calc(18cqw / var(--grid-size,13)), 16px);opacity:0;pointer-events:none;text-shadow:0 0 4px #fff,0 1px 3px #704c808c;content:attr(data-flourish);line-height:1;animation:1.62s ease-in-out infinite friend-flourish-pop;position:absolute;top:4%;right:5%}.rescue-presentation:after{z-index:7;color:#fff5b9;opacity:0;pointer-events:none;text-shadow:0 0 4px #fff,0 1px 3px #704c808c;content:attr(data-flourish);font-size:clamp(15px,5cqw,34px);line-height:1;animation:.82s ease-in-out friend-flourish-pop;position:absolute;top:-14%;right:-7%}.object-kind-animal .animal-stack:after,.object-kind-animal[data-flourish] .animal-stack:after{content:attr(data-flourish)}.object-kind-enemy[data-enemy-motion] .object-enemy{transform-origin:50% 92%}.object-kind-enemy[data-enemy-motion=squish] .object-enemy{animation:1.32s ease-in-out infinite enemy-motion-squish}.object-kind-enemy[data-enemy-motion=flutter] .object-enemy{animation:1.08s ease-in-out infinite enemy-motion-flutter}.object-kind-enemy[data-enemy-motion=stomp] .object-enemy{animation:1.42s ease-in-out infinite enemy-motion-stomp}.object-kind-enemy[data-enemy-motion=skitter] .object-enemy{animation:.94s ease-in-out infinite enemy-motion-skitter}.object-kind-enemy[data-enemy-motion=swagger] .object-enemy{animation:1.48s ease-in-out infinite enemy-motion-swagger}.object-kind-enemy[data-enemy-motion=bob] .object-enemy{animation:1.36s ease-in-out infinite enemy-motion-bob}.object-kind-enemy[data-enemy-motion=hop] .object-enemy{animation:1.08s ease-in-out infinite enemy-motion-hop}.terrain-ambient-decoration{pointer-events:none;position:absolute}.maze-board[data-terrain-theme=pearl-grotto]>.terrain-ambient-decoration{z-index:18;color:#ffffffa8;letter-spacing:.45em;text-align:right;pointer-events:none;text-shadow:0 0 7px #cbaaffc7;width:30%;font-size:clamp(9px,1.6cqw,20px);animation:4.4s ease-in-out infinite terrain-ambient-drift;position:absolute;top:9%;right:7%}.maze-board[data-terrain-theme=pearl-grotto]>.terrain-ambient-decoration:before{content:"✦　·　✧"}.maze-board[data-terrain-theme=harvest-bramble]>.terrain-ambient-decoration{z-index:18;letter-spacing:.45em;text-align:right;pointer-events:none;color:#ffe2b8b8;text-shadow:0 0 7px #ff9a8f9e;width:30%;font-size:clamp(9px,1.6cqw,20px);animation:4.4s ease-in-out infinite terrain-ambient-drift;position:absolute;top:9%;right:7%}.maze-board[data-terrain-theme=harvest-bramble]>.terrain-ambient-decoration:before{content:"❀　·　✦"}:root:is([data-motion=reduced],[data-quality=static]) .object-kind-animal .animal-sprite,:root:is([data-motion=reduced],[data-quality=static]) .pet-follower>img,:root:is([data-motion=reduced],[data-quality=static]) .object-kind-enemy .object-enemy,:root:is([data-motion=reduced],[data-quality=static]) .pet-follower:after,:root:is([data-motion=reduced],[data-quality=static]) .animal-stack:after,:root:is([data-motion=reduced],[data-quality=static]) .rescue-presentation:after{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .terrain-ambient-decoration{opacity:.55;animation:none}.maze-terrain-svg>.terrain-water,.maze-terrain-svg>.terrain-lava,.maze-terrain-svg>.terrain-poison{stroke:none;filter:none}.object-antidote-leaf{object-fit:contain;filter:drop-shadow(0 2px 2px #2e5b4c38);width:82%;height:82%;inset:9%}.object-color-name{z-index:16;color:#fff;max-width:88%;font-size:clamp(6px, calc(16cqw / var(--grid-size,13)), 10px);letter-spacing:.02em;text-overflow:ellipsis;text-shadow:0 1px 1px #2e1f376b;text-transform:uppercase;white-space:nowrap;border:1px solid #ffffffeb;border-radius:999px;padding:1px clamp(3px,.28cqw,6px);font-weight:700;line-height:1.25;position:absolute;bottom:3%;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 1px 3px #31213a2e}.color-name-red{background:#df6681}.color-name-blue{background:#5b88d8}.color-name-yellow{background:#d79a2d}.player-layer:before{color:#fff1a6;font-size:clamp(5px, calc(11cqw / var(--grid-size,13)), 10px);opacity:0;pointer-events:none;text-shadow:0 0 4px #efab49;content:"";z-index:-1;filter:blur(3px);width:60%;height:16%;transform:translate(var(--cast-shadow-x,0),var(--cast-shadow-y,3px));background:#352a5242;border-radius:50%;animation:.42s ease-out step-spark;position:absolute;bottom:7%;left:20%}.player-layer:after{z-index:3;color:#fff1a6;font-size:clamp(5px, calc(11cqw / var(--grid-size,13)), 10px);content:"✦";opacity:0;pointer-events:none;text-shadow:0 0 4px #efab49;animation:.42s ease-out 55ms step-spark;position:absolute;bottom:2%;right:17%}:root:is([data-motion=reduced],[data-quality=static]) .player-layer:before,:root:is([data-motion=reduced],[data-quality=static]) .player-layer:after,:root:is([data-motion=reduced],[data-quality=static]) .object-enemy,:root:is([data-motion=reduced],[data-quality=static]) .object-key,:root:is([data-motion=reduced],[data-quality=static]) .object-potion,:root:is([data-motion=reduced],[data-quality=static]) .object-sword,:root:is([data-motion=reduced],[data-quality=static]) .object-boots,:root:is([data-motion=reduced],[data-quality=static]) .goal-sprite{animation:none}.maze-terrain-svg{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0;overflow:hidden}.goal-layer{z-index:5;pointer-events:none;place-items:center;display:grid;position:absolute}.goal-layer:before{content:"";pointer-events:none;background:#ffde6357;border-radius:50%;position:absolute;inset:16%;box-shadow:0 0 15px #ffd758b8}:root[data-motion=full] .maze-board[data-travel-state=moving] .player-sprite{animation:.64s ease-in-out infinite ame-travel-sway}@keyframes ame-travel-sway{0%,to{rotate:-1deg}50%{rotate:1deg}}.player-layer.move-a:before{animation:.26s ease-out step-spark-a}.player-layer.move-a:after{animation:.26s ease-out 28ms step-spark-a}.player-layer.move-b:before{animation:.26s ease-out step-spark-b}.player-layer.move-b:after{animation:.26s ease-out 28ms step-spark-b}.object-animal{object-fit:contain;width:72%;height:72%}.animal-stack{place-items:center;display:grid;position:absolute;inset:1%}.animal-stack .animal-sprite{z-index:2;object-fit:contain;filter:drop-shadow(0 1px 1px #3c2d433b);width:94%;height:94%;position:absolute;bottom:1%}.animal-stack .animal-cage{z-index:3;object-fit:contain;opacity:1;filter:none;width:100%;height:100%;position:absolute;inset:0}:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-a,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-b,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-a:before,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-a:after,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-b:before,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.move-b:after{animation:none}.maze-board.exploration-camera{cursor:pointer;border-color:#575575;border-radius:clamp(14px,1.55cqw,21px);box-shadow:0 5px #403d5c,0 13px 25px #342c4745,inset 0 0 0 2px #ffffffad}.maze-board.exploration-camera:after{z-index:25;opacity:1;border-radius:inherit;content:"";pointer-events:none;width:auto;height:auto;animation:none;position:absolute;inset:0;transform:none;box-shadow:inset 0 0 clamp(11px,2.2cqw,20px) #332d4733}.touch-joystick{z-index:32;pointer-events:none;position:absolute;inset:0;overflow:hidden}.touch-joystick-origin{aspect-ratio:1;pointer-events:none;top:var(--touch-origin-y);left:var(--touch-origin-x);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#483e6638;border:2px solid #ffffffb8;border-radius:50%;place-items:center;width:clamp(34px,11cqw,46px);font-style:normal;line-height:1;display:grid;position:absolute;box-shadow:0 0 0 2px #554a7433,inset 0 0 12px #ffffff2e}.touch-joystick-cursor{aspect-ratio:1;pointer-events:none;top:var(--touch-cursor-y);left:var(--touch-cursor-x);color:#fff;text-shadow:0 1px 2px #412b4b85;background:linear-gradient(145deg,#ffdc68fa,#e87088f5);border:2px solid #fffffff5;border-radius:50%;place-items:center;width:clamp(28px,8.5cqw,40px);font-size:clamp(11px,3.6cqw,16px);font-style:normal;font-weight:700;line-height:1;display:grid;position:absolute;box-shadow:0 0 0 2px #5c456f61,0 5px 13px #352a4847,0 0 16px #ffe071a3}.touch-joystick.active .touch-joystick-origin{background:#4e436d47}.pet-followers{z-index:8;pointer-events:none;position:absolute;inset:0;overflow:visible}.pet-follower{pointer-events:none;place-items:end center;transition:none;display:grid;position:absolute;overflow:visible}.pet-follower-image{object-fit:contain;transform-origin:50% 90%;filter:drop-shadow(0 1px 1px #362a403d);width:74%;height:74%;animation:1.18s ease-in-out infinite pet-follower-bob}.pet-follower:nth-child(2)>img,.pet-follower:nth-child(2) .pet-follower-image{animation-delay:-.37s}.pet-follower:nth-child(3)>img,.pet-follower:nth-child(3) .pet-follower-image{animation-delay:-.73s}:root:is([data-motion=reduced],[data-quality=static]) .pet-follower-image{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .pet-follower{will-change:auto;transition:none}.player-layer.presentation-hidden{visibility:hidden}.battle-presentation{z-index:24;pointer-events:none;position:absolute;inset:0;overflow:visible}.battle-presentation:before{z-index:1;background:radial-gradient(circle at var(--battle-focus-x,50%) var(--battle-focus-y,50%), #fff5a394, #fff0 23%);content:"";opacity:0;animation:battle-flash var(--battle-duration,2.22s) ease-out both;position:absolute;inset:0}.battle-combatant{z-index:3;transform-origin:50% 82%;place-items:center;display:grid;position:absolute;overflow:visible}.battle-combatant .battle-sprite{object-fit:contain;filter:drop-shadow(0 2px 2px #372a4247);width:82%;height:82%;position:absolute;bottom:-1%;left:50%;transform:translate(-50%)}.battle-ame{animation:battle-ame-lunge var(--battle-duration,2.22s) cubic-bezier(.22, .78, .29, 1) both}.battle-enemy{animation:battle-enemy-lunge var(--battle-duration,2.22s) cubic-bezier(.22, .78, .29, 1) both}.battle-held-weapon{z-index:var(--held-z);left:var(--held-left);top:var(--held-top);width:var(--held-size);height:var(--held-size);object-fit:contain;filter:drop-shadow(0 2px 2px #371b3e4d);transform:rotate(var(--held-rotation));transform-origin:var(--held-grip-x) var(--held-grip-y);animation:battle-weapon-swish var(--battle-duration,2.22s) ease-out both;position:absolute}.battle-impact{z-index:9;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.battle-impact b{z-index:2;color:#fff9cc;opacity:0;text-shadow:0 0 4px #fff,0 0 12px #ffc74e,0 0 24px #ff855bb8;animation:battle-impact-star var(--battle-duration,2.22s) ease-out both;font-size:clamp(18px,9cqw,48px);line-height:1;position:absolute}.battle-impact i{aspect-ratio:1;opacity:0;width:clamp(3px,1.1cqw,7px);transform:rotate(var(--spark-angle)) translateY(0) scale(.2);animation:battle-impact-spark var(--battle-duration,2.22s) cubic-bezier(.18, .72, .24, 1) both;background:linear-gradient(145deg,#fffbd1,#ffc04f 58%,#ee7878);border:1px solid #ffffffdb;border-radius:50% 50% 44% 10%;position:absolute;box-shadow:0 0 5px #ffc74ecc}.battle-presentation.battle-won .battle-ame .player-power{animation:power-number-rise var(--battle-duration,2.22s) cubic-bezier(.22, .78, .3, 1) both}.battle-presentation.battle-won .battle-enemy .enemy-power{animation:enemy-power-drain var(--battle-duration,2.22s) cubic-bezier(.22, .78, .3, 1) both}.rescue-presentation{z-index:25;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.rescue-presentation-pet{z-index:4;object-fit:contain;filter:drop-shadow(0 2px 2px #3c2d4333);transform-origin:50% 88%;width:96%;height:96%;animation:.87s cubic-bezier(.2,.78,.25,1) both rescued-friend-first-hop;position:absolute;bottom:-1%;left:50%;transform:translate(-50%)}.rescue-cage-half{z-index:6;pointer-events:none;position:absolute;inset:-3%;overflow:visible}.rescue-cage-half img{object-fit:contain;width:100%;height:100%}.cage-half-left{clip-path:inset(0 50% 0 0);transform-origin:24% 72%;animation:.87s cubic-bezier(.22,.82,.32,1) both cage-left-pop-open}.cage-half-right{clip-path:inset(0 0 0 50%);transform-origin:76% 72%;animation:.87s cubic-bezier(.22,.82,.32,1) both cage-right-pop-open}.rescue-happy-burst{z-index:8;pointer-events:none;position:absolute;inset:0}.rescue-happy-burst i{z-index:8;pointer-events:none;color:#ff7ca5;opacity:0;text-shadow:0 1px #fff,0 0 5px #ffb267a6;width:auto;height:auto;font-size:clamp(6px,2.2cqw,13px);font-style:normal;line-height:1;animation:.87s cubic-bezier(.18,.75,.25,1) both rescue-heart-pop;position:absolute;inset:43% 0 0 50%;transform:translate(-50%,-50%)}.rescue-happy-burst i:first-child{--heart-x:-72%;--heart-y:-84%}.rescue-happy-burst i:nth-child(2){--heart-x:-36%;--heart-y:-112%}.rescue-happy-burst i:nth-child(3){--heart-x:6%;--heart-y:-128%}.rescue-happy-burst i:nth-child(4){--heart-x:48%;--heart-y:-108%}.rescue-happy-burst i:nth-child(5){--heart-x:78%;--heart-y:-68%}.rescue-happy-burst i:nth-child(6){--heart-x:-82%;--heart-y:-40%}.rescue-happy-burst i:nth-child(7){--heart-x:86%;--heart-y:-26%}.maze-board.rescue-active .player-layer{animation:.87s ease-in-out both rescue-ame-cheer}.terrain-hole-layer{z-index:2;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.terrain-hole-layer img{object-fit:contain;filter:none;width:100%;height:100%;transform:scale(.96)}.object-spring-boots{width:84%;height:84%;inset:8%}.jump-presentation{z-index:25;pointer-events:none;animation:spring-jump-travel var(--jump-duration,.54s) cubic-bezier(.2, .72, .22, 1) both;place-items:center;display:grid;position:absolute;overflow:visible}.jump-presentation-shadow{z-index:1;filter:blur(2px);transform-origin:50%;width:70%;height:19%;animation:spring-jump-shadow var(--jump-duration,.54s) ease-in-out both;background:#3220423d;border-radius:50%;position:absolute;bottom:4%;left:15%}.jump-presentation-body{transform-origin:50% 88%;width:100%;height:100%;animation:spring-jump-arc var(--jump-duration,.54s) cubic-bezier(.22, .74, .24, 1) both;place-items:center;display:grid;position:relative}.jump-presentation-sprite{z-index:4;object-fit:contain;filter:drop-shadow(0 3px 2px #371b3e47);width:94%;height:94%;position:absolute;bottom:0}.jump-presentation-boots{z-index:6;object-fit:contain;width:42%;height:42%;position:absolute;bottom:-4%;right:17%;transform:rotate(-5deg)}.jump-presentation-weapon{z-index:7;object-fit:contain;filter:drop-shadow(0 2px 2px #371b3e47);width:57%;height:57%;position:absolute;bottom:7%;right:-1%;transform:rotate(-7deg)}.jump-spring-squash{z-index:2;opacity:0;width:55%;height:18%;animation:spring-jump-ring var(--jump-duration,.54s) ease-out both;border:3px solid #ffe870eb;border-radius:50%;position:absolute;bottom:-2%;right:10%;box-shadow:0 0 8px #ffbd54b8}.jump-presentation[data-hole-count="3"] .jump-presentation-body{filter:drop-shadow(0 0 6px #ffdf687a)}:root:is([data-motion=reduced],[data-quality=static]) .maze-board.battle-active,:root:is([data-motion=reduced],[data-quality=static]) .battle-presentation:before,:root:is([data-motion=reduced],[data-quality=static]) .battle-ame,:root:is([data-motion=reduced],[data-quality=static]) .battle-enemy,:root:is([data-motion=reduced],[data-quality=static]) .battle-held-weapon,:root:is([data-motion=reduced],[data-quality=static]) .battle-impact b,:root:is([data-motion=reduced],[data-quality=static]) .battle-impact i,:root:is([data-motion=reduced],[data-quality=static]) .battle-ame .player-power,:root:is([data-motion=reduced],[data-quality=static]) .battle-enemy .enemy-power,:root:is([data-motion=reduced],[data-quality=static]) .rescue-presentation-pet{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .rescue-cage-half{animation:none;display:none}:root:is([data-motion=reduced],[data-quality=static]) .rescue-happy-burst i,:root:is([data-motion=reduced],[data-quality=static]) .maze-board.rescue-active .player-layer{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .jump-presentation{transform:translate(var(--jump-x), var(--jump-y));animation:none}:root:is([data-motion=reduced],[data-quality=static]) .jump-presentation-body,:root:is([data-motion=reduced],[data-quality=static]) .jump-presentation-shadow,:root:is([data-motion=reduced],[data-quality=static]) .jump-spring-squash{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .rescue-happy-burst{display:none}.object-kind-enemy:before,.pet-follower:before{content:"";z-index:-1;filter:blur(3px);width:60%;height:16%;transform:translate(var(--cast-shadow-x,0),var(--cast-shadow-y,3px));background:#352a5242;border-radius:50%;position:absolute;bottom:7%;left:20%}.terrain-wall-depth,.terrain-wall-highlight{pointer-events:none}.object-treasure{filter:drop-shadow(0 4px 3px #4f386933);width:84%;height:84%;animation:1.25s ease-in-out infinite alternate treasure-idle}.treasure-amount{color:#855e13;background:#fff4bb}.player-layer.power-legendary .player-power{color:#fff;background:linear-gradient(90deg,#ff78b8,#ffd74b,#6fe3a1,#68c8ff,#b68cff,#ff78b8) 0 0/300% 100%;-webkit-background-clip:text;background-clip:text;animation:1.4s linear infinite legendary-rainbow,.7s ease-in-out infinite alternate legendary-pulse}.player-layer.power-legendary .player-sprite{filter:drop-shadow(0 0 4px #fff)drop-shadow(0 0 8px #ff7db9)drop-shadow(0 0 11px #65d9ff)}:root:is([data-motion=reduced],[data-quality=static]) .object-treasure,:root:is([data-motion=reduced],[data-quality=static]) .player-layer.power-legendary .player-power{animation:none}.player-layer>.player-power{top:auto;bottom:91%}.object-layer>.enemy-power{top:auto;bottom:82%}.camera-edge-top>.power-badge{top:1%;bottom:auto}.camera-edge-top>.player-sprite,.camera-edge-top>.object-enemy{bottom:-7%}.battle-ame .battle-sprite{z-index:2;width:94%;height:94%}.battle-enemy .battle-sprite{width:88%;height:88%}.battle-ame>.player-power,.jump-presentation-body>.player-power{top:auto;bottom:92%}.battle-enemy>.enemy-power{top:auto;bottom:87%}.portal-presentation{z-index:46;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.portal-presentation-pad{object-fit:contain;filter:drop-shadow(0 0 11px #ffee9ed9);width:108%;height:108%;animation:.695s cubic-bezier(.2,.78,.3,1) both portal-arrival-pad;position:absolute;inset:-4%}.portal-presentation-body{z-index:4;place-items:center;animation:.695s cubic-bezier(.16,.8,.3,1.08) both portal-arrival-ame;display:grid;position:absolute;inset:0}.portal-presentation-sprite{object-fit:contain;filter:drop-shadow(0 2px 2px #371b3e57);z-index:2;width:94%;height:94%;position:absolute;bottom:-1%}.portal-presentation-weapon{z-index:var(--held-z);left:var(--held-left);top:var(--held-top);width:var(--held-size);height:var(--held-size);object-fit:contain;transform:rotate(var(--held-rotation));transform-origin:var(--held-grip-x) var(--held-grip-y);filter:drop-shadow(0 2px 2px #371b3e57);position:absolute}.portal-presentation-body>.player-power{top:auto;bottom:92%}.portal-presentation-rings,.portal-presentation-rings i{z-index:3;border:3px solid #ffffffdb;border-radius:50%;animation:.61s ease-out both portal-arrival-ring;position:absolute;inset:7%}.portal-presentation-rings i:first-child{animation-delay:80ms}.portal-presentation-rings i:nth-child(2){animation-delay:.16s}.portal-presentation-rings i:nth-child(3){animation-delay:.24s}.portal-presentation-sparkles{z-index:8;color:#fff6c8;font-size:clamp(10px, calc(24cqw / var(--grid-size,13)), 22px);white-space:nowrap;text-shadow:0 0 8px #fff,0 2px 2px #5f4d78;font-weight:700;animation:.695s ease-out both portal-arrival-sparkle;position:absolute;top:-18%;left:50%;transform:translate(-50%)}.portal-presentation-sparkles b{color:#fff;font-size:1.25em}.map-pickup-toast{z-index:58;color:#fff;text-align:center;pointer-events:none;paint-order:stroke fill;-webkit-text-stroke:clamp(1px, .16cqw, 1.8px) #302a43;text-shadow:-1px -1px #302a43,1px -1px #302a43,-1px 1px #302a43,1px 1px #302a43,0 3px 5px #241d3480;-webkit-text-stroke-width:clamp(1.2px, .18cqw, 2.2px);justify-content:center;align-items:center;gap:clamp(8px,.9cqw,13px);width:max-content;max-width:84%;font-size:clamp(19px,2.25cqw,34px);font-weight:700;line-height:1.08;animation:1.85s cubic-bezier(.2,.76,.3,1) both map-pickup-float;display:flex;position:absolute;top:47%;left:50%;transform:translate(-50%,18px)scale(.86)}.map-pickup-toast>span{-webkit-text-stroke:0;filter:drop-shadow(0 2px 1px #30253a66);flex:none;font-size:1.15em}.map-pickup-toast>strong{overflow-wrap:anywhere;min-width:0}:root:is([data-motion=reduced],[data-quality=static]) .player-layer,:root:is([data-motion=reduced],[data-quality=static]) .camera-world{will-change:auto;transition:none}:root:is([data-motion=reduced],[data-quality=static]) .map-pickup-toast{opacity:1;animation:none;transform:translate(-50%,-28px)}:root:is([data-motion=reduced],[data-quality=static]) .object-portal,:root:is([data-motion=reduced],[data-quality=static]) .portal-presentation-pad,:root:is([data-motion=reduced],[data-quality=static]) .portal-presentation-body,:root:is([data-motion=reduced],[data-quality=static]) .portal-presentation-rings,:root:is([data-motion=reduced],[data-quality=static]) .portal-presentation-rings i,:root:is([data-motion=reduced],[data-quality=static]) .portal-presentation-sparkles{animation:none}.map-pickup-toast>img{object-fit:contain;filter:drop-shadow(0 3px 2px #30253a6b);-webkit-text-stroke:0;flex:none;width:clamp(46px,5.2cqw,76px);height:clamp(46px,5.2cqw,76px)}.map-pickup-toast.notice-anchored{color:#fff5a6;-webkit-text-stroke:clamp(1.5px, .24cqw, 3px) #52345f;text-shadow:0 0 6px #fff,0 0 14px #ffcc52f2,0 4px 4px #321e3c73;width:max-content;max-width:none;font-size:clamp(24px,3.8cqw,52px);animation:1.55s cubic-bezier(.16,.8,.24,1) both map-power-gain-float;top:auto;transform:translate(-50%,6px)scale(.72)}:root:is([data-motion=reduced],[data-quality=static]) .map-pickup-toast.notice-anchored{opacity:1;animation:none;transform:translate(-50%,-34px)}.terrain-water-fx{pointer-events:none;transform-box:fill-box;transform-origin:50%;opacity:.72;mix-blend-mode:screen;animation:2.8s ease-in-out infinite water-surface-shimmer}.terrain-lava-fx{pointer-events:none;transform-box:fill-box;transform-origin:50%;opacity:.82;mix-blend-mode:screen;animation:1.65s ease-in-out infinite lava-heat-shimmer}.terrain-poison-fx{pointer-events:none;transform-box:fill-box;transform-origin:50%;opacity:.9;mix-blend-mode:screen}.water-ripple-marks path{fill:none;stroke:#d7fbffdb;stroke-width:.035px;stroke-linecap:round;stroke-dasharray:.18 .12 .42 .22;animation:3.2s linear infinite water-ripple-travel}.lava-shimmer-marks circle{fill:#ffe77e91;transform-box:fill-box;transform-origin:50%;animation:1.45s ease-in-out infinite alternate lava-core-pulse}.lava-shimmer-marks circle:nth-child(2){animation-delay:-.72s}.lava-shimmer-marks path{fill:none;stroke:#fff7bfb8;stroke-width:.055px;stroke-linecap:round;stroke-dasharray:.28 .15;animation:1.3s linear infinite lava-vein-flow}.poison-bubble{fill:#e5b2ff75;stroke:#ffecffe0;stroke-width:.025px;transform-box:fill-box;transform-origin:50%;animation:2.35s ease-in infinite poison-bubble-rise}.poison-bubble.bubble-b{animation-duration:2.75s;animation-delay:-.7s}.poison-bubble.bubble-c{animation-duration:2.05s;animation-delay:-1.45s}.poison-bubble.bubble-d{animation-duration:2.55s;animation-delay:-1.9s}.object-layer[data-key-color=red]{--lock-core:#ff6f9f;--lock-glow:#ff5691eb}.object-layer[data-key-color=blue]{--lock-core:#57c9ff;--lock-glow:#3aabfff0}.object-layer[data-key-color=yellow]{--lock-core:#ffd75b;--lock-glow:#ffb826f0}.object-layer[data-key-color] .object-key{animation:2s ease-in-out infinite colour-key-hover}.object-layer[data-key-color] .object-door{animation:2.4s ease-in-out infinite colour-door-breathe}.door-opening-presentation{z-index:32;pointer-events:none;place-items:center;display:grid;position:absolute;overflow:visible}.door-opening-presentation:before{z-index:4;border:clamp(2px, .24cqw, 4px) solid var(--magic-pale);content:"";opacity:0;filter:drop-shadow(0 0 8px var(--magic-glow));border-radius:50%;animation:1.22s cubic-bezier(.16,.76,.23,1) both door-rune-ring;position:absolute;inset:-16%}.door-opening-presentation:after{z-index:4;border:clamp(2px, .24cqw, 4px) solid var(--magic-pale);content:"";opacity:0;filter:drop-shadow(0 0 8px var(--magic-glow));border-style:dashed;border-radius:50%;animation:1.22s cubic-bezier(.16,.76,.23,1) 95ms reverse both door-rune-ring;position:absolute;inset:-31%}.door-opening-sprite{z-index:2;object-fit:contain;width:98%;height:98%;animation:1.28s cubic-bezier(.16,.75,.24,1) both door-magic-dissolve;position:absolute;inset:1%}.door-opening-halo{z-index:1;border:clamp(2px, .22cqw, 4px) solid var(--magic-core);box-shadow:0 0 8px 2px var(--magic-glow), inset 0 0 9px 2px var(--magic-glow);border-radius:22%;animation:1.2s ease-out both door-halo-bloom;position:absolute;inset:4%}.door-opening-motif{z-index:5;color:var(--magic-pale);font-size:clamp(20px, calc(53cqw / var(--grid-size,13)), 48px);text-shadow:0 0 5px #fff, 0 0 12px var(--magic-glow), 0 0 20px var(--magic-core);line-height:1;animation:1.14s cubic-bezier(.15,.8,.2,1) both door-motif-pop;position:absolute}.door-opening-particles{z-index:6;position:absolute;inset:-24%;overflow:visible}.door-opening-particles>i{color:var(--magic-pale);font-size:clamp(8px, calc(22cqw / var(--grid-size,13)), 20px);opacity:0;text-shadow:0 0 4px #fff, 0 0 9px var(--magic-glow);animation:door-particle-shower 1.12s cubic-bezier(.16, .76, .23, 1) var(--burst-delay) both;font-style:normal;line-height:1;position:absolute;top:50%;left:50%}:root:is([data-motion=reduced],[data-quality=static]) .terrain-water-fx,:root:is([data-motion=reduced],[data-quality=static]) .terrain-lava-fx{opacity:.62;animation:none}:root:is([data-motion=reduced],[data-quality=static]) .water-ripple-marks path,:root:is([data-motion=reduced],[data-quality=static]) .lava-shimmer-marks circle,:root:is([data-motion=reduced],[data-quality=static]) .lava-shimmer-marks path,:root:is([data-motion=reduced],[data-quality=static]) .poison-bubble,:root:is([data-motion=reduced],[data-quality=static]) .object-layer[data-key-color] .object-key,:root:is([data-motion=reduced],[data-quality=static]) .object-layer[data-key-color] .object-door{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .door-opening-sprite{opacity:.42;filter:brightness(1.35) drop-shadow(0 0 7px var(--magic-glow));animation:none}:root:is([data-motion=reduced],[data-quality=static]) .door-opening-halo{opacity:.8;animation:none}:root:is([data-motion=reduced],[data-quality=static]) .door-opening-motif{opacity:1;animation:none}:root:is([data-motion=reduced],[data-quality=static]) .door-opening-presentation:before,:root:is([data-motion=reduced],[data-quality=static]) .door-opening-presentation:after,:root:is([data-motion=reduced],[data-quality=static]) .door-opening-particles>i{animation:none}:root:is([data-motion=reduced],[data-quality=static]) .terrain-poison-fx{opacity:.62}:root:is([data-motion=reduced],[data-quality=static]) .door-opening-particles{display:none}@keyframes goal-glow{0%,to{filter:drop-shadow(0 1px 2px #5c3e6833);transform:scale(.96)rotate(-1deg)}50%{filter:drop-shadow(0 0 7px #ffda57bd);transform:scale(1.04)rotate(1deg)}}@keyframes item-shine{0%,to{filter:drop-shadow(0 1px 1px #3e2f462e);transform:translateY(0)}50%{filter:drop-shadow(0 0 5px #ffe575b8);transform:translateY(-3%)}}@keyframes goblin-bob{0%,to{transform:translate(-50%)translateY(0)rotate(-1deg)}50%{transform:translate(-50%)translateY(-3%)rotate(1deg)}}@keyframes portal-pad-breathe{0%,to{filter:drop-shadow(0 2px 3px #4a37603d);transform:scale(.96)}50%{filter:drop-shadow(0 0 8px #ffefa6b3);transform:scale(1.025)}}@keyframes pet-follower-bob{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-7%)rotate(2deg)}}@keyframes friend-motion-hop{0%,to{transform:translateY(0)rotate(-1deg)scale(1)}46%{transform:translateY(-9%)rotate(2deg)scale(1.03,.98)}64%{transform:translateY(0)scale(.98,1.03)}}@keyframes friend-motion-waddle{0%,to{transform:translateY(0)rotate(-4deg)}30%{transform:translateY(-3%)rotate(4deg)}62%{transform:translateY(0)rotate(-3deg)}}@keyframes friend-motion-prance{0%,to{transform:translate(0)rotate(-2deg)}28%{transform:translate(-2%,-7%)rotate(3deg)}56%{transform:translate(2%)rotate(-1deg)}76%{transform:translate(1%,-5%)rotate(2deg)}}@keyframes friend-motion-sway{0%,to{transform:rotate(-3deg)}50%{transform:translateY(-3%)rotate(4deg)}}@keyframes friend-motion-snuggle{0%,to{transform:scale(1)}45%{transform:translateY(1%)scale(1.035,.97)}72%{transform:translateY(-2%)scale(.99,1.025)}}@keyframes friend-motion-scamper{0%,to{transform:translate(-2%)rotate(-2deg)}34%{transform:translate(3%,-5%)rotate(3deg)}66%{transform:translate(-1%)rotate(-1deg)}}@keyframes friend-flourish-pop{0%,64%,to{opacity:0;transform:translateY(5px)rotate(-10deg)scale(.55)}74%{opacity:.9;transform:translateY(-2px)rotate(7deg)scale(1.12)}90%{opacity:0;transform:translateY(-11px)rotate(12deg)scale(.86)}}@keyframes enemy-motion-squish{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)translateY(3%)scale(1.055,.92)}}@keyframes enemy-motion-flutter{0%,to{transform:translate(-50%)translateY(1%)rotate(-2deg)}50%{transform:translate(-50%)translateY(-8%)rotate(3deg)}}@keyframes enemy-motion-stomp{0%,to{transform:translate(-50%)scale(1)}36%{transform:translate(-50%)translateY(-3%)rotate(-1deg)}51%{transform:translate(-50%)translateY(2%)scale(1.04,.96)}}@keyframes enemy-motion-skitter{0%,to{transform:translate(-52%)rotate(-2deg)}50%{transform:translate(-46%)rotate(2deg)}}@keyframes enemy-motion-swagger{0%,to{transform:translate(-50%)rotate(-3deg)}50%{transform:translate(-50%)translateY(-4%)rotate(3deg)}}@keyframes enemy-motion-bob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-6%)scale(1.02)}}@keyframes enemy-motion-hop{0%,to{transform:translate(-50%)translateY(0)}44%{transform:translate(-50%)translateY(-9%)rotate(3deg)}63%{transform:translate(-50%)scale(1.03,.96)}}@keyframes terrain-ambient-drift{0%,to{opacity:.36;transform:translateY(3px)}50%{opacity:.9;transform:translate(-7px,-7px)}}@keyframes step-spark{0%{opacity:.8;transform:translateY(0)scale(.5)}to{opacity:0;transform:translateY(-85%)scale(1.2)rotate(25deg)}}@keyframes ame-hop-a{0%{transform:translateY(4%)scale(.97)}58%{transform:translateY(-2.5%)scale(1.015)}to{transform:translateY(0)scale(1)}}@keyframes ame-hop-b{0%{transform:translateY(4%)scale(.97)}58%{transform:translateY(-2.5%)scale(1.015)}to{transform:translateY(0)scale(1)}}@keyframes step-spark-a{0%{opacity:.74;transform:translateY(0)scale(.52)}to{opacity:0;transform:translateY(-72%)scale(1.08)rotate(20deg)}}@keyframes step-spark-b{0%{opacity:.74;transform:translateY(0)scale(.52)}to{opacity:0;transform:translateY(-72%)scale(1.08)rotate(20deg)}}@keyframes battle-camera-punch{0%,9%,22%,29%,42%,49%,62%,to{transform:scale(1)}15%{transform:scale(1.025)}34%{transform:scale(1.032)}54%{transform:scale(1.046)}78%{transform:scale(1.035)}88%{transform:scale(1)}}@keyframes battle-flash{0%,11%,20%,30%,40%,50%,61%,73%,to{opacity:0}15%,34%{opacity:.78}54%{opacity:1}80%{opacity:.42}}@keyframes battle-ame-lunge{0%,7%,23%,28%,43%,48%,63%{transform:translate(0)scale(1)}13%,32%,52%{transform:translate(var(--battle-x), var(--battle-y)) scale(1.08)}15%,34%,54%{transform:translate(var(--battle-x), var(--battle-y)) scale(.93, 1.1)}20%,39%,60%{transform:translate(0)scale(.96,1.04)}72%{transform:translateY(-8%)rotate(-2deg)scale(1.07)}82%{transform:translateY(1%)rotate(2deg)scale(1.03,.97)}to{transform:translate(0)scale(1)}}@keyframes battle-enemy-lunge{0%,7%,23%,28%,43%,48%,63%{opacity:1;transform:translate(0)scale(1)}13%,32%,52%{transform:translate(var(--battle-back-x), var(--battle-back-y)) scale(1.06);opacity:1}15%{transform:translate(var(--battle-back-x), var(--battle-back-y)) rotate(-5deg) scale(.94, 1.09);opacity:1}34%{transform:translate(var(--battle-back-x), var(--battle-back-y)) rotate(5deg) scale(.93, 1.1);opacity:1}54%{transform:translate(var(--battle-back-x), var(--battle-back-y)) rotate(-7deg) scale(.91, 1.12);opacity:1}20%,39%,60%{transform:translate(var(--battle-recoil-x), var(--battle-recoil-y)) scale(1.04);opacity:1}78%{opacity:1;transform:translateY(-4%)rotate(4deg)scale(.9)}85%,to{opacity:0;transform:translate(-3%,-18%)rotate(-10deg)scale(1.42)}}@keyframes battle-weapon-swish{0%,8%,22%,28%,42%,48%,63%{transform:rotate(var(--held-rotation))}15%,34%,54%{transform:rotate(calc(var(--held-rotation) + 52deg)) scale(1.14)}20%,39%,60%{transform:rotate(calc(var(--held-rotation) - 16deg)) scale(1.05)}72%,to{transform:rotate(calc(var(--held-rotation) + 11deg))}}@keyframes battle-impact-star{0%,11%,21%,30%,41%,50%,62%,to{opacity:0;transform:scale(.15)rotate(-20deg)}15%,34%,54%{opacity:1;transform:scale(1.18)rotate(8deg)}19%,38%,59%{opacity:.5;transform:scale(.72)rotate(20deg)}}@keyframes battle-impact-spark{0%,11%,22%,30%,41%,50%,62%,to{transform:rotate(var(--spark-angle)) translateY(0) scale(.2);opacity:0}15%,34%,54%{transform:rotate(var(--spark-angle)) translateY(-4px) scale(1);opacity:1}20%,39%,60%{transform:rotate(var(--spark-angle)) translateY(clamp(-38px, -8cqw, -14px)) scale(.38);opacity:0}}@keyframes power-number-rise{0%,13%,23%,31%,43%,51%,63%{color:#d96769;transform:scale(1)}17%,36%,56%{color:#e47b55;transform:scale(1.13)rotate(-2deg)}78%{color:#d25e7d;transform:scale(1.2)rotate(2deg)}88%{color:#e47b55;transform:scale(1.07)rotate(-1deg)}to{color:#d96769;transform:scale(1)}}@keyframes enemy-power-drain{0%,13%,23%,31%,43%,51%,63%{color:#fff;transform:scale(1)}17%,36%,56%{color:#fff3a0;transform:scale(1.2)rotate(2deg)}76%{color:#ffd6e8;transform:scale(.9)rotate(-3deg)}84%,to{color:#fff;opacity:0;transform:scale(.62)}}@keyframes rescued-friend-first-hop{0%,22%{opacity:.4;transform:translate(-50%)translateY(4%)scale(.78,.7)}39%{opacity:1;transform:translate(-50%)translateY(-38%)rotate(-4deg)scale(1.12,.94)}55%{opacity:1;transform:translate(-50%)translateY(0)rotate(3deg)scale(.92,1.1)}72%{opacity:1;transform:translate(-50%)translateY(-21%)rotate(3deg)scale(1.06,.96)}88%{opacity:1;transform:translate(-50%)translateY(0)rotate(-2deg)scale(.96,1.05)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes cage-left-pop-open{0%,13%{opacity:1;transform:translate(0)rotate(0)scale(1)}28%{opacity:1;transform:translate(-8%,-4%)rotate(-9deg)scale(1.04)}48%{opacity:0;transform:translate(-35%,-20%)rotate(-24deg)scale(.94)}to{opacity:0;transform:translate(-35%,-20%)rotate(-24deg)scale(.94)}}@keyframes cage-right-pop-open{0%,13%{opacity:1;transform:translate(0)rotate(0)scale(1)}28%{opacity:1;transform:translate(8%,-4%)rotate(9deg)scale(1.04)}48%{opacity:0;transform:translate(35%,-20%)rotate(24deg)scale(.94)}to{opacity:0;transform:translate(35%,-20%)rotate(24deg)scale(.94)}}@keyframes rescue-heart-pop{0%,28%{opacity:0;transform:translate(-50%,-50%)scale(.2)}42%{opacity:1}78%{transform:translate(calc(-50% + var(--heart-x)), calc(-50% + var(--heart-y))) rotate(12deg) scale(1.12);opacity:.85}to{transform:translate(calc(-50% + var(--heart-x)), calc(-50% + var(--heart-y) - 16%)) rotate(20deg) scale(.65);opacity:0}}@keyframes rescue-ame-cheer{0%,22%,to{transform:translateY(0)rotate(0)}38%{transform:translateY(-8%)rotate(-2deg)}55%{transform:translateY(0)rotate(2deg)}72%{transform:translateY(-5%)rotate(1deg)}}@keyframes spring-jump-travel{0%{transform:translate(0)}to{transform:translate(var(--jump-x), var(--jump-y))}}@keyframes spring-jump-shadow{0%,to{opacity:.72;transform:scale(1)}16%{opacity:.52;transform:scale(.78)}48%{opacity:.2;transform:scale(.43)}72%{opacity:.4;transform:scale(.68)}90%{opacity:.74;transform:scale(1.08,.82)}}@keyframes spring-jump-arc{0%{transform:translateY(7%)scale(1.08,.86)}15%{transform:translateY(-20%)rotate(-2deg)scale(.94,1.12)}46%{transform:translateY(var(--jump-apex,-72%)) rotate(-4deg) scale(1.06)}68%{transform:translateY(var(--jump-descent,-38%)) rotate(3deg) scale(1.03)}88%{transform:translateY(5%)scale(1.11,.86)}to{transform:translateY(0)scale(1)}}@keyframes spring-jump-ring{0%,14%{opacity:0;transform:scale(.28)}24%{opacity:1;transform:scale(.72)}52%{opacity:0;transform:scale(1.28)}76%{opacity:.8;transform:scale(.52)}to{opacity:0;transform:scale(1.18)}}@keyframes treasure-idle{to{filter:drop-shadow(0 6px 4px #4f38692b)brightness(1.06);transform:translateY(-4%)rotate(1.5deg)}}@keyframes legendary-rainbow{to{background-position:300% 0}}@keyframes legendary-pulse{to{filter:brightness(1.2);transform:scale(1.12)}}@keyframes portal-arrival-pad{0%{opacity:.15;transform:rotate(-18deg)scale(.72)}35%{opacity:1;transform:rotate(5deg)scale(1.13)}to{opacity:.82;transform:rotate(0)scale(1)}}@keyframes portal-arrival-ame{0%,20%{opacity:0;transform:translateY(44%)rotate(-7deg)scale(.28)}54%{opacity:1;transform:translateY(-18%)rotate(3deg)scale(1.16)}76%{transform:translateY(4%)rotate(-1deg)scale(.96)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes portal-arrival-ring{0%{opacity:.95;transform:scale(.2)}to{opacity:0;transform:scale(1.7)}}@keyframes portal-arrival-sparkle{0%,18%{opacity:0;transform:translate(-50%,30%)scale(.5)}48%{opacity:1;transform:translate(-50%,-10%)scale(1.15)}to{opacity:0;transform:translate(-50%,-70%)scale(.88)}}@keyframes map-pickup-float{0%{opacity:0;transform:translate(-50%,18px)scale(.86)}13%{opacity:1;transform:translate(-50%)scale(1.06)}72%{opacity:1;transform:translate(-50%,-35px)scale(1)}to{opacity:0;transform:translate(-50%,-72px)scale(1.02)}}@keyframes map-power-gain-float{0%{opacity:0;transform:translate(-50%,8px)scale(.55)rotate(-5deg)}16%{opacity:1;transform:translate(-50%,-9px)scale(1.22)rotate(3deg)}38%{transform:translate(-50%,-22px)scale(1)rotate(-1deg)}76%{opacity:1;transform:translate(-50%,-46px)scale(1.04)}to{opacity:0;transform:translate(-50%,-78px)scale(.9)}}@keyframes water-surface-shimmer{0%,to{opacity:.48}50%{opacity:.88}}@keyframes lava-heat-shimmer{0%,to{opacity:.6}48%{opacity:.94}72%{opacity:.73}}@keyframes water-ripple-travel{to{stroke-dashoffset:-1.3px}}@keyframes lava-core-pulse{0%{opacity:.38;transform:scale(.72)}to{opacity:.92;transform:scale(1.18)}}@keyframes lava-vein-flow{to{stroke-dashoffset:-.86px}}@keyframes poison-bubble-rise{0%{opacity:0;transform:translateY(5px)scale(.45)}18%{opacity:.9}78%{opacity:.72;transform:translateY(-11px)scale(1)}92%{opacity:1;transform:translateY(-13px)scale(1.18)}to{opacity:0;transform:translateY(-15px)scale(1.48)}}@keyframes colour-key-hover{0%,to{filter:drop-shadow(0 0 3px var(--lock-glow)) drop-shadow(0 2px 2px #3623434d);transform:translateY(1%)scale(.97)}50%{filter:brightness(1.09) drop-shadow(0 0 8px var(--lock-glow)) drop-shadow(0 0 13px var(--lock-core));transform:translateY(-5%)scale(1.045)}}@keyframes colour-door-breathe{0%,to{filter:drop-shadow(0 2px 2px #3623433d) drop-shadow(0 0 2px var(--lock-glow))}50%{filter:brightness(1.055) drop-shadow(0 0 6px var(--lock-glow))}}@keyframes door-rune-ring{0%{opacity:0;transform:scale(.35)rotate(-35deg)}22%{opacity:.92}72%{opacity:.76;transform:scale(1.08)rotate(105deg)}to{opacity:0;transform:scale(1.48)rotate(175deg)}}@keyframes door-magic-dissolve{0%{opacity:1;filter:drop-shadow(0 0 3px var(--magic-glow));transform:scale(1)}24%{opacity:1;filter:brightness(1.22) drop-shadow(0 0 11px var(--magic-glow));transform:scale(1.035)}58%{opacity:.92;filter:brightness(1.7) saturate(1.2) drop-shadow(0 0 17px var(--magic-core));transform:scale(1.08)}to{opacity:0;filter:brightness(2.1)blur(2px);transform:scale(1.24)}}@keyframes door-halo-bloom{0%{opacity:0;transform:scale(.82)}18%{opacity:1}65%{opacity:.92;transform:scale(1.14)}to{opacity:0;transform:scale(1.38)}}@keyframes door-motif-pop{0%{opacity:0;transform:scale(.35)rotate(-20deg)}28%{opacity:1;transform:scale(1.28)rotate(8deg)}58%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(1.8)rotate(14deg)}}@keyframes door-particle-shower{0%{opacity:0;top:50%;left:50%;transform:translate(-50%,-50%)scale(.2)}14%{opacity:1}72%{opacity:.98}to{left:calc(50% + var(--burst-x));top:calc(50% + var(--burst-y));opacity:0;transform:translate(-50%, -50%) scale(var(--burst-scale)) rotate(170deg)}}.vfx-rewards{z-index:44;pointer-events:none;contain:strict;width:100%;height:100%;position:absolute;inset:0}}@layer shell{.app-frame{width:100%;height:100dvh;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}.app-frame:has(.play-shell){padding:0}.play-shell[data-layout]{--play-padding:8px;padding:max(var(--play-padding),var(--safe-top)) max(var(--play-padding),var(--safe-right)) max(var(--play-padding),var(--safe-bottom)) max(var(--play-padding),var(--safe-left))}.play-shell[data-layout=compact-landscape]{--play-padding:4px}.game-stage-slot,.game-stage{width:100%;min-width:0;height:100%;min-height:0;position:relative}.game-stage{isolation:isolate;background:radial-gradient(at 4% 3%,#fff9e9 0,#0000 52%),linear-gradient(130deg,#e5d5f0,#e2f2e7);overflow:hidden;container:game-stage/size}.play-shell{grid-template-columns:var(--board-size) minmax(0,1fr);gap:var(--shell-gap);align-items:center;min-width:0;height:100%;min-height:0;padding:8px;display:grid}.maze-panel{width:var(--board-size);height:var(--board-size);border-radius:20px;min-width:0;min-height:0;display:grid;position:relative;box-shadow:0 3px #85738c,0 8px 18px #3e2d5526}.maze-board{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;cursor:crosshair;background:#f8ead8;border:4px solid #69597c;border-radius:20px;width:100%;min-width:0;height:100%;min-height:0;display:grid;position:relative;overflow:hidden;container:maze-board/size}.deck-feedback .feedback-bar{color:#594263;justify-content:center;align-items:center;gap:8px;padding:4px 8px;font-size:.9rem;display:flex}.feedback-icon,.deck-feedback img{flex:none;width:22px;height:22px}.save-warning{z-index:60;color:#684120;background:#fff3cf;border:2px solid #956927;border-radius:10px;padding:10px;position:absolute;top:8px;left:8px;right:8px}.ambient-star,.rotate-message{display:none}@media (width>=1600px) and (height>=900px){.play-shell[data-layout]{--play-padding:24px}}@media (orientation:portrait){.rotate-message{z-index:200;text-align:center;color:var(--plum);background:radial-gradient(at 30% 20%,#fff1be,#efe5fb 60%,#ccece0);flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:32px;font-size:1.4rem;display:flex;position:fixed;inset:0}.rotate-message img{width:min(180px,40vw)}.rotate-message>span{font-size:1.1rem}}}@layer hud{.adventure-hud{min-width:0;height:100%;min-height:0;box-shadow:var(--surface-depth);scrollbar-width:thin;touch-action:pan-y;background:linear-gradient(150deg,#fffbedf5,#f3edf9f5 65%,#e7f5ed);border:2px solid #fffaf2;border-radius:26px;flex-direction:column;align-self:stretch;gap:10px;padding:14px;display:flex;position:relative;overflow:auto;container:adventure-deck/inline-size}.hud-reader{display:contents}.hud-header{flex-direction:column;flex:none;gap:8px;display:flex}.level-kicker{color:var(--muted-ink);font-size:.8rem;display:block}.hud-title h2{font-size:clamp(1.15rem,2.8cqw,1.6rem);line-height:1.1}.hud-counters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.power-counter,.wallet-pill{background:linear-gradient(140deg,#fff8e0,#f3e7f9);border:2px solid #fff;border-radius:22px;align-items:center;gap:8px;min-width:0;padding:4px 10px 4px 4px;display:flex;box-shadow:0 3px #9c86ad30}.power-counter{background:linear-gradient(135deg,#fff6e4,#fae2eb);flex:1.1}.wallet-pill{background:linear-gradient(135deg,#fff5be,#fffaf0);flex:1}.science-wallet{background:linear-gradient(135deg,#dff6ef,#e1efff)}.power-counter,.wallet-pill{min-width:max-content}.power-counter img,.wallet-pill img{flex-shrink:0}.power-counter img{border-radius:50%;width:clamp(44px,9cqw,80px);height:clamp(44px,9cqw,80px)}.wallet-pill img{width:clamp(36px,7cqw,62px);height:clamp(36px,7cqw,62px)}.power-counter>span,.wallet-pill>span{flex-direction:column;line-height:1.05;display:flex}.power-counter small,.wallet-pill small{font-size:.8rem}.power-counter b,.wallet-pill b{font-size:clamp(1.3rem,4cqw,2rem)}.tabular-number .tabular-digits{grid-auto-columns:.66em;grid-auto-flow:column;gap:0;display:inline-grid}.tabular-digits>span{text-align:center;display:block}.step-pill{color:var(--muted-ink);white-space:nowrap;font-size:.75rem}.objective-card{background:linear-gradient(110deg,#fff2c5,#fffbee 62%,#eee6f8);border:2px solid #fff;border-radius:20px;flex:none;align-items:center;gap:12px;min-height:64px;padding:8px 12px;display:flex;box-shadow:0 3px #9b85a329}.objective-card>div{flex:1;min-width:0}.objective-card h3{color:#805d48;font-size:.8rem}.objective-card p{font-size:1rem;line-height:1.25}.objective-hint-button{border-radius:18px;flex:0 0 60px;place-items:center;width:60px;min-height:60px;padding:3px;font-size:.8rem;display:grid}.objective-hint-button img{width:38px;height:38px}.adventure-overview{--slot-size:var(--fitted-slot-size,48px);grid-template-columns:var(--map-size) minmax(0,1fr);flex:1 1 0;align-content:center;align-items:center;gap:14px;min-width:0;min-height:0;display:grid}.adventure-equipment{flex-direction:column;gap:16px;min-width:0;display:flex}.rescue-card h3,.bag-card h3{flex-wrap:wrap;align-items:baseline;gap:5px;margin-bottom:8px;font-size:1rem;display:flex}.rescue-card h3>span,.bag-card h3>span{margin-left:auto}.rescue-card h3 small{color:var(--muted-ink);font-size:.7rem}.rescue-list,.inventory-grid{grid-template-columns:repeat(var(--fitted-columns,auto-fit),var(--slot-size));gap:6px;display:grid}.rescue-list li,.inventory-grid li{min-width:0}.rescue-friend,.inventory-slot{width:var(--slot-size);height:var(--slot-size);background:linear-gradient(140deg,#f2e7fb,#ffefbf);border:2px solid #fff;border-radius:18px;place-items:center;min-width:0;min-height:0;padding:2px;display:grid;position:relative;box-shadow:0 3px #9b85a330}.rescue-friend img,.inventory-slot img{width:100%;height:100%}.rescue-friend.waiting>img:first-child{filter:grayscale(.8);opacity:.58}.rescue-friend .rescue-cage{width:100%;height:100%;position:absolute;inset:0}.inventory-slot.missing{box-shadow:none;background:#ece7ef;border:2px dashed #c6b9d0}.inventory-slot.missing img{filter:grayscale();opacity:.4}.rescue-friend.rescued,.inventory-slot.found{background:linear-gradient(140deg,#e8f8e6,#fff1b8)}.maze-map-card{width:var(--map-size);flex-direction:column;align-self:start;gap:4px;min-width:0;display:flex}.maze-map-heading{align-items:center;gap:4px;font-size:.875rem;display:flex}.maze-map-heading small{margin-left:auto;font-size:.75rem}.maze-minimap{width:var(--map-size);height:var(--map-size);aspect-ratio:1;background:#39354f;border:2px solid #625674;border-radius:8px;display:grid;position:relative;overflow:hidden;box-shadow:0 2px #746683}.minimap-tile{background:#39364f;min-width:0;min-height:0;position:relative}.minimap-tile.map-floor{background:#f6d991}.minimap-tile.map-wall{background:#7473a2}.minimap-tile.map-water{background:#55bfc0}.minimap-tile.map-lava{background:#ef8065}.minimap-tile.map-poison{background:#a583c4}.minimap-tile.map-hole{background:#272334}.minimap-tile.in-view{box-shadow:inset 0 0 0 .5px #fff4}.minimap-tile.remembered{filter:saturate(.56)brightness(.9);opacity:.86}.minimap-tile.map-fog{background:#3a374f}.map-marker,.map-player{z-index:3;aspect-ratio:1;background:#fff8d6;border-radius:50%;width:68%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 .5px #38314da3}.marker-exit{background:#ffd65a;border-radius:22%;width:80%;transform:translate(-50%,-50%)rotate(45deg)}.marker-enemy{background:#dc6674}.marker-sword{background:#f8f6ff;border-radius:18%;transform:translate(-50%,-50%)rotate(45deg)scaleX(.42)}.marker-boots,.marker-spring-boots{background:#986f55;border-radius:42% 42% 28% 28%}.marker-antidote-leaf{background:#87c065;border-radius:0 80%}.marker-potion{background:#ef77ad;width:62%}.marker-key{background:#f7c851;width:58%}.marker-door{background:#9a6e62;border-radius:18%;width:86%;box-shadow:inset 0 0 0 .5px #fff,0 0 0 .5px #4e4664}.marker-animal{background:#fff7df;width:74%}.marker-portal{background:#ed86ae;border:1px solid #fff;width:86%}.marker-mint-clover{background:#62c9a8}.marker-violet-moon{background:#9b86dc}.marker-red{background:#de6876}.marker-blue{background:#5b9fd0}.marker-yellow{background:#edbd4c}.map-player{z-index:6;background:#3e9f7e;border:1px solid #fff;width:92%;box-shadow:0 0 0 1px #2b4a43}.map-camera-frame{z-index:5;pointer-events:none;border:1px solid #fff;border-radius:2px;position:absolute;box-shadow:0 0 0 1px #827bae}.guided-marker{outline-offset:1px;outline:2px solid #fff}.maze-map-key{color:var(--muted-ink);flex-wrap:wrap;gap:3px 6px;font-size:.75rem;line-height:1.2;display:flex}.maze-map-key>span{align-items:center;gap:3px;display:inline-flex}.maze-map-key i{border:1px solid #7f718b;border-radius:2px;width:8px;height:8px}.key-current{background:#f7d987}.key-seen{background:#86849f}.key-fog{background:#3a374f}.maze-map-nudge{font-size:.75rem;display:flex}.maze-map-nudge img{width:20px;height:20px}.maze-map-heading{gap:6px;font-size:1rem}.maze-map-heading img{width:30px;height:30px}.maze-minimap{border:3px solid #776288;border-radius:14px;box-shadow:0 4px #8c7798,0 7px 12px #49345822}.maze-map-key{margin-top:5px}.deck-feedback{background:#fffcf480;border:1px solid #e1d2df;border-radius:14px;flex:0 0 48px;align-items:center;height:48px;display:grid;overflow:auto}.deck-controls{flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.controls-card{flex-direction:column;grid-area:1/2;align-items:center;gap:7px;display:flex}.controls-card p{text-align:center;color:var(--muted-ink);font-size:.75rem}.controls-card p br,.controls-card p span{display:none}.utility-row{grid-area:1/1;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.utility-row button{border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:64px;padding:4px;font-size:.8rem;line-height:1.15;display:flex}.utility-row button>span{overflow-wrap:normal;word-break:normal}.utility-row img{width:clamp(30px,5cqw,48px);height:clamp(30px,5cqw,48px)}.utility-row [data-focus-id=story] img{border-radius:50%}.thumb-pad{touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(150deg,#d2c1ec,#a58abb);border:2px solid #fffaf2;border-radius:30px;grid-template:repeat(3,1fr)/repeat(3,1fr);width:clamp(152px,25cqw,190px);height:clamp(152px,25cqw,190px);padding:2px;display:grid;position:relative;box-shadow:inset 0 3px 4px #fff9,0 5px #7b628f,0 8px 16px #4d365527}.thumb-pad button{z-index:2;color:#fffaf4;touch-action:none;background:linear-gradient(155deg,#927bb8,#6d568f);border:1px solid #d9ccef;border-radius:12px;min-width:0;min-height:0;padding:0;font-size:1.2rem;line-height:1;position:relative;box-shadow:inset 0 1px #ffffff65,0 2px #644c81}.dpad-up{grid-area:1/2}.dpad-left{grid-area:2/1}.dpad-right{grid-area:2/3}.dpad-down{grid-area:3/2}.thumb-pad button.suggested-move{color:#5b4071;background:linear-gradient(#ffe9ac,#eccb79)}.thumb-pad[data-direction=up] .dpad-up,.thumb-pad[data-direction=down] .dpad-down,.thumb-pad[data-direction=left] .dpad-left,.thumb-pad[data-direction=right] .dpad-right{color:#4b345e;background:#f8d994;box-shadow:inset 0 2px 4px #79538140}.thumb-stick{pointer-events:none;grid-area:2/2;place-items:center;display:grid}.thumb-stick i{background:#fff7e6b3;border-radius:50%;width:16px;height:16px;box-shadow:inset 0 1px 2px #fff}.thumb-pad[data-steering] .thumb-stick{z-index:3;grid-area:auto;position:absolute;inset:0}.thumb-pad[data-steering] .thumb-stick i{width:42px;height:42px;translate:var(--stick-x,0px) var(--stick-y,0px);background:radial-gradient(circle at 35% 30%,#fff8e0,#edd496);border:2px solid #fffdf0;box-shadow:0 3px 7px #4a335844}.objective-dock{flex:none}.objective-dock button{width:100%}.adventure-hud[data-reader] .hud-reader{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:auto}.phone-more,.phone-hint{display:none}@media (height>=601px) and (height<=800px){.adventure-hud{gap:8px;padding:12px}.controls-card p{display:none}}@container adventure-deck (width<=430px){.adventure-overview{--slot-size:48px;gap:8px}.rescue-card h3 small,.step-pill{display:none}.utility-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.utility-row button{min-height:52px;font-size:.75rem}.utility-row img{width:28px;height:28px}}@media (height<=600px){.adventure-hud{border-radius:20px;gap:5px;padding:8px}.hud-header{gap:4px}.level-kicker{display:none}.hud-title h2{font-size:1.1rem}.power-counter img{width:44px;height:44px}.wallet-pill img{width:34px;height:34px}.hud-counters{gap:5px}.objective-card{min-height:48px;padding:3px 6px}.objective-card h3{display:none}.objective-hint-button{flex-basis:48px;width:48px;min-height:48px}.objective-hint-button img{width:30px;height:30px}.adventure-overview{--slot-size:48px;gap:8px}.adventure-equipment{gap:8px}.rescue-card h3,.bag-card h3{margin-bottom:4px;font-size:.875rem}.deck-feedback{flex-basis:30px;height:30px}.maze-map-heading{font-size:.875rem}.maze-map-heading img{width:22px;height:22px}.maze-map-key{margin-top:2px;font-size:.65rem}.thumb-pad{width:152px;height:152px}.controls-card p{display:none}.utility-row{gap:5px}.utility-row button{min-height:52px}.utility-row img{width:30px;height:30px}}.play-shell[data-layout=compact-landscape] .adventure-hud{gap:4px;padding:4px 6px}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]){grid-template-rows:auto auto minmax(0,1fr) 40px;grid-template-columns:minmax(0,1fr) 152px;display:grid;overflow:hidden}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .hud-reader{display:contents}.play-shell[data-layout=compact-landscape] .hud-header{padding-right:104px;position:relative}.play-shell[data-layout=compact-landscape] .hud-title h2{font-size:.875rem}.play-shell[data-layout=compact-landscape] .level-kicker{display:none}.play-shell[data-layout=compact-landscape] .phone-more{width:48px;height:48px;padding:0;font-size:.75rem;display:block;position:absolute;top:0;right:0}.play-shell[data-layout=compact-landscape] .phone-hint{display:block;position:absolute;top:0;right:52px}.play-shell[data-layout=compact-landscape] .phone-hint .objective-hint-button{gap:0;width:48px;height:48px;min-height:48px;font-size:.65rem}.play-shell[data-layout=compact-landscape] .phone-hint img{width:24px;height:24px}.play-shell[data-layout=compact-landscape] .hud-counters{gap:6px}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill){box-shadow:none;background:0 0;border:0;flex:0 auto;gap:3px;padding:0}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill) img{width:26px;height:26px}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill)>span{flex-direction:row;align-items:baseline;gap:3px}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill) b{font-size:1rem}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill) small{font-size:.7rem}.play-shell[data-layout=compact-landscape] .step-pill{display:none}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) :is(.hud-header,.objective-card){grid-column:1/-1}.play-shell[data-layout=compact-landscape] .objective-card{border-radius:12px;min-height:0;padding:2px 6px}.play-shell[data-layout=compact-landscape] .objective-card h3{display:none}.play-shell[data-layout=compact-landscape] .objective-card p{font-size:.875rem;line-height:1.15}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .adventure-overview{grid-area:3/1/5/-1}.play-shell[data-layout=compact-landscape] .adventure-overview{--slot-size:30px;grid-template-columns:var(--map-size) minmax(0,1fr);flex:1 1 0;grid-template-rows:auto minmax(0,1fr);align-content:stretch;align-items:end;gap:2px 8px}.play-shell[data-layout=compact-landscape] .adventure-equipment{grid-area:1/1/auto/-1;grid-template-columns:1fr 1fr;align-items:start;gap:8px;display:grid}.play-shell[data-layout=compact-landscape] .maze-map-card{grid-area:2/1;align-self:end;margin-bottom:43px}.play-shell[data-layout=compact-landscape] :is(.rescue-list,.inventory-grid){gap:3px}.play-shell[data-layout=compact-landscape] :is(.rescue-friend,.inventory-slot){border-width:1px;border-radius:10px}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card) h3{margin-bottom:3px;font-size:.75rem}.play-shell[data-layout=compact-landscape] .rescue-card h3 small{display:none}.play-shell[data-layout=compact-landscape] .maze-map-heading{font-size:.75rem}.play-shell[data-layout=compact-landscape] .maze-map-heading img{width:18px;height:18px}.play-shell[data-layout=compact-landscape] :is(.maze-map-key,.maze-map-nudge){display:none}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .deck-controls{grid-area:3/2/5;place-self:end}.play-shell[data-layout=compact-landscape] .thumb-pad{border-radius:23px;width:152px;height:152px}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .deck-feedback{z-index:2;border-radius:8px;grid-area:4/1;width:100%;height:40px;min-height:0;padding-inline:3px;display:grid;overflow:hidden}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .deck-feedback .feedback-bar{text-align:center;gap:3px;min-width:0;padding:2px 3px;font-size:.7rem;line-height:1.1}.play-shell[data-layout=compact-landscape] .adventure-hud:not([data-reader]) .deck-feedback img{width:20px;height:20px}.play-shell[data-emergency] :is(.power-counter,.wallet-pill) img{display:none}.play-shell[data-emergency] .adventure-overview{--slot-size:24px}.play-shell[data-emergency] .maze-map-heading img{display:none}@media (height<=449px){.play-shell[data-layout=compact-landscape] .adventure-equipment{flex-direction:column;align-items:stretch;gap:1px;display:flex}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card){grid-template-columns:54px minmax(0,1fr);align-items:center;gap:4px;display:grid}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card) h3{gap:1px 3px;margin:0;line-height:1.05}}@media (height<=340px){.play-shell[data-layout=compact-landscape] .adventure-overview{--slot-size:24px}}@media (width>=740px) and (height<=340px){.play-shell[data-layout=compact-landscape] .adventure-equipment{flex-direction:row;gap:4px;display:flex}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card){flex-direction:row;align-items:center;gap:4px;min-width:0;display:flex}.play-shell[data-layout=compact-landscape] .rescue-card{flex:0 0 190px}.play-shell[data-layout=compact-landscape] .bag-card{flex:1 1 0}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card) h3{flex:0 0 54px;width:54px}.play-shell[data-layout=compact-landscape] :is(.rescue-list,.inventory-grid){flex-wrap:nowrap;display:flex}}.play-shell[data-emergency] .adventure-hud{gap:1px;padding:0 4px}.play-shell[data-emergency] .hud-header{gap:2px;min-height:48px}.play-shell[data-emergency] .objective-card{border-width:1px;padding:0 4px}.play-shell[data-emergency] .adventure-overview{grid-template-rows:auto minmax(0,1fr);gap:1px 8px}.play-shell[data-emergency] .adventure-equipment{flex-direction:column;align-items:stretch;gap:2px;display:flex}.play-shell[data-emergency] :is(.rescue-card,.bag-card){grid-template-columns:62px minmax(0,1fr);align-items:center;gap:4px;display:grid}.play-shell[data-emergency] :is(.rescue-card,.bag-card) h3{flex-wrap:nowrap;gap:1px 3px;margin:0;line-height:1.05}.play-shell[data-emergency] :is(.rescue-list,.inventory-grid){gap:2px}.play-shell[data-emergency] .objective-card p{line-height:1.15}.adventure-hud[data-enlarged] .adventure-overview{flex:none;min-height:min-content}@media (height>=450px){.play-shell[data-layout=compact-landscape] .adventure-hud{gap:8px;padding:10px}.play-shell[data-layout=compact-landscape] .hud-title h2{font-size:1.1rem}.play-shell[data-layout=compact-landscape] :is(.power-counter,.wallet-pill) img{width:36px;height:36px}.play-shell[data-layout=compact-landscape] .objective-card p{font-size:1rem}.play-shell[data-layout=compact-landscape] .adventure-overview{--slot-size:clamp(48px,calc((100cqw/2 - 24px)/var(--collection-columns)),96px)}.play-shell[data-layout=compact-landscape] .adventure-overview[data-dense]{--slot-size:48px}.play-shell[data-layout=compact-landscape] :is(.rescue-card,.bag-card) h3,.play-shell[data-layout=compact-landscape] .maze-map-heading{font-size:.875rem}.play-shell[data-layout=compact-landscape] .maze-map-card{align-self:end}.play-shell[data-layout=compact-landscape] .deck-controls{bottom:16px;right:16px}}.play-shell[data-layout=compact-landscape] .adventure-hud[data-reader] .hud-reader{flex:1 1 0;margin-bottom:160px}.play-shell[data-layout=compact-landscape] .adventure-hud[data-reader] .objective-dock .objective-hint-button{justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;display:flex}.play-shell[data-layout=compact-landscape] .adventure-hud[data-reader] .objective-dock img{width:28px;height:28px}}@layer screens{.front-door-screen,.title-screen{isolation:isolate;width:100%;height:100%;position:relative;overflow:hidden}.front-door-background,.front-door-shade,.title-background{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.front-door-shade{z-index:-1;background:linear-gradient(90deg,#fff2ca22,#0000 55%)}.front-door-content{flex-direction:column;justify-content:center;align-items:center;gap:24px;width:50%;height:100%;padding:4vw;display:flex}.front-door-logo{object-fit:contain;width:100%;max-height:58%}.front-door-actions{justify-content:center;gap:18px;width:90%;display:flex}.front-door-actions button{border:4px solid #fff9e7;border-radius:999px;min-height:clamp(56px,9vh,100px);font-size:clamp(1.2rem,2vw,1.8rem);font-weight:600}.front-door-play{color:#fffdf4;background:linear-gradient(145deg,#c8507c,#943d70 70%,#7b498b);flex:1.5;justify-content:center;align-items:center;gap:18px;display:flex;box-shadow:inset 0 3px #ffffff4d,0 6px #7c526b,0 10px 24px #50345333}.front-door-play img{width:clamp(40px,5vw,84px);height:clamp(40px,5vw,84px)}.front-door-exit{color:#fffdf7;background:linear-gradient(145deg,#9380ac,#5d527e);flex:1;box-shadow:inset 0 3px #ffffff4d,0 6px #63556e}.front-door-exit-note{text-align:center;background:#fff9ed;border-radius:18px;max-width:440px;padding:10px 16px}.front-door-version{color:#fff;text-shadow:0 1px 3px #32243c;font-size:.8rem;position:absolute;bottom:10px;right:16px}.title-screen{grid-template-rows:minmax(0,1fr) minmax(0,max-content);grid-template-columns:minmax(0,48%) minmax(0,1fr);gap:14px 3vw;padding:3vh 4vw 5vh;display:grid}.title-logo{object-fit:contain;object-position:left center;grid-area:1/1;justify-self:start;width:80%;height:100%}.title-hero{object-fit:contain;object-position:bottom right;pointer-events:none;width:51%;height:76%;position:absolute;bottom:0;right:0}.title-copy{touch-action:pan-y;background:linear-gradient(140deg,#fff9e4ed,#f3eaf4e8);border:3px solid #fffaf0;border-radius:30px;flex-direction:column;grid-area:2/1;align-self:start;gap:14px;min-height:0;max-height:100%;padding:18px;display:flex;overflow:auto;box-shadow:inset 0 2px #fff,0 5px #a28b9e44,0 14px 30px #634c6622}.title-copy>*{flex-shrink:0}.title-welcome{color:#655076;font-size:1rem;line-height:1.3}.title-actions{flex-direction:column;gap:12px;display:flex}.title-play-button{text-align:left;color:#fffdf4;background:linear-gradient(145deg,#c34f7c,#943d70 75%,#7b498b);border:3px solid #fff7dd;border-radius:24px;align-items:center;gap:16px;min-height:86px;padding:8px 18px;display:flex;box-shadow:inset 0 2px #fff5,0 5px #79516a}.title-play-button>span:first-child img{width:64px;height:64px}.title-play-button strong,.title-play-button small{display:block}.title-play-button strong{font-size:1.6rem}.title-play-button small{margin-top:3px;font-size:.8rem}.title-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.title-secondary-actions button{background:linear-gradient(140deg,#fffbee,#f2eaf9);justify-content:center;align-items:center;gap:10px;min-height:62px;padding:6px 10px;line-height:1.15;display:flex}.title-secondary-actions img{flex-shrink:0;width:42px;height:42px}.title-progress{text-align:center;gap:8px;display:flex}.title-progress>span{background:linear-gradient(135deg,#fdf1c1,#ebe4f5);border:2px solid #fff9ed;border-radius:16px;flex:1;padding:7px 4px}.title-progress b,.title-progress small{display:block}.title-progress b{color:#aa456f;font-size:1.5rem}.title-progress small{font-size:.75rem}.title-sound{z-index:2;border-radius:50%;width:62px;height:62px;padding:8px;position:absolute;top:16px;right:20px}.title-sound img{width:42px;height:42px}.title-version{background:#fffaf1dd;align-items:center;gap:6px;min-height:36px;padding:4px 8px;font-size:.7rem;display:flex;position:absolute;bottom:8px;right:12px}.title-version img{width:22px;height:22px}.title-fireflies,.book-sparkles{display:none}@media (height<=650px){.front-door-content{gap:16px;padding:3vw}.title-screen{grid-template-rows:minmax(0,1fr) minmax(0,max-content);gap:8px;padding:12px 3vw 38px}.title-logo{width:64%}.title-copy{border-radius:24px;gap:8px;padding:12px}.title-welcome{font-size:.875rem}.title-play-button{min-height:64px;padding:5px 12px}.title-play-button strong{font-size:1.25rem}.title-play-button>span:first-child img{width:48px;height:48px}.title-secondary-actions{gap:8px}.title-secondary-actions button{min-height:48px;font-size:.875rem}.title-secondary-actions img{width:32px;height:32px}.title-progress>span{padding:3px}.title-progress b{font-size:1.2rem}}@media (height<=450px){.front-door-content{gap:10px;width:51%}.front-door-logo{max-height:60%}.front-door-actions{gap:10px;width:100%}.front-door-actions button{border-width:3px;min-height:52px}.title-screen{grid-template-rows:1fr;grid-template-columns:53% 1fr;padding:8px 3vw 30px}.title-logo{object-position:left center;width:21%;height:17%;position:absolute;top:4px;left:3vw}.title-hero{width:47%;height:78%}.title-copy{grid-area:1/1;align-self:end;gap:4px;max-height:83%;padding:6px}.title-welcome{display:none}.title-actions{gap:4px}.title-play-button{gap:8px;min-height:52px}.title-play-button>span:first-child img{width:40px;height:40px}.title-play-button strong{font-size:1.1rem}.title-play-button small{font-size:.75rem}.title-secondary-actions{gap:6px}.title-secondary-actions button{gap:4px;min-height:48px;padding:3px;font-size:.8rem}.title-secondary-actions img{width:26px;height:26px}.title-secondary-actions button:last-child{grid-column:auto!important}.title-progress{gap:4px}.title-progress b{font-size:1rem}.title-progress small{font-size:.65rem}.title-sound{width:48px;height:48px;padding:5px;top:5px;right:5px}.title-sound img{width:30px;height:30px}.title-version{min-height:24px;padding:1px 6px;font-size:.65rem;bottom:3px;right:5px}}@media (height<=450px) and (width<=650px){.title-screen{grid-template-columns:58% minmax(0,1fr)}.title-hero{width:42%}}.quick-sound-control{align-items:center;gap:8px;display:inline-flex}.quick-sound-control button{border-radius:50%;place-items:center;width:54px;height:54px;min-height:44px;padding:5px;display:grid}.quick-sound-control img{width:38px;height:38px}.quick-sound-settings{color:#755d87}.title-sound-controls{z-index:2;position:absolute;top:14px;right:18px}@media (height<=450px){.quick-sound-control{gap:4px}.quick-sound-control button{width:48px;height:48px}.quick-sound-control img{width:32px;height:32px}.title-sound-controls{top:4px;right:5px}}.achievements-screen{--book-ink:#493858;--book-muted:#65506d;--book-edge:#c5b0d4;height:100%;min-height:0;color:var(--book-ink);background:radial-gradient(at 9% 0,#fff0b8 0,#0000 46%),radial-gradient(at 100% 100%,#ccecdf,#0000 46%),linear-gradient(130deg,#fff8e7,#e7ddf3);flex-direction:column;gap:18px;padding:clamp(12px,1.6vw,28px);font-weight:500;display:flex}.book-header{flex:none;align-items:center;gap:20px;min-width:0;display:flex}.book-heading{flex:1;min-width:0}.book-heading h1{letter-spacing:-.015em;font-size:clamp(1.65rem,2.7vw,2.5rem);font-weight:650;line-height:1.08}.book-eyebrow{color:var(--book-muted);margin-bottom:5px;font-size:.85rem;font-weight:550;display:block}.book-header button{background:linear-gradient(140deg,#fffdf3,#f5eacf);border:3px solid #fffef8;border-radius:32px;justify-content:center;align-items:center;gap:10px;min-height:68px;padding:8px 18px;font-size:1.05rem;font-weight:600;line-height:1.1;display:flex;box-shadow:inset 0 2px #fff,0 4px #ab91ac55,0 6px 16px #5b426914}.book-header button:hover{filter:brightness(1.025);border-color:#b49aca}.book-header button:active{transform:translateY(2px);box-shadow:inset 0 2px #69527316,0 2px #ab91ac55}.book-header button img{flex:none;width:46px;height:46px}.book-header .book-resume{color:#34664f;background:linear-gradient(140deg,#f0fff3,#c8e9da)}.book-header .book-new-maze{background:linear-gradient(135deg,#fff3c9,#f4e6fc)}.book-header .book-sound{width:68px;padding:8px}.book-header-actions{flex:none;align-items:center;gap:10px;display:flex}.book-volume{filter:drop-shadow(0 8px 12px #5a426018);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.book-tabs{flex:none;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:10px;padding:0 28px;display:grid}.book-tabs button{--tab-color:#e3d4f4;background:linear-gradient(160deg,#fff9ec,var(--tab-color));border:2px solid #c7afd7;border-bottom:0;border-radius:22px 22px 0 0;justify-content:center;align-items:center;gap:10px;min-width:0;min-height:72px;padding:10px 12px 16px;font-size:1rem;font-weight:600;line-height:1.15;display:flex;position:relative;box-shadow:inset 0 2px #fffc}.book-tabs button span{white-space:nowrap}.book-tabs [data-book-tab=mazes]{--tab-color:#e0d9fb}.book-tabs [data-book-tab=friends]{--tab-color:#f6d9d9}.book-tabs [data-book-tab=bestiary]{--tab-color:#d9ece4}.book-tabs [data-book-tab=stats]{--tab-color:#d1eafa}.book-tabs [data-book-tab=achievements]{--tab-color:#f7df9e}.book-tabs button img{flex:none;width:46px;height:46px}.book-tabs [data-book-tab=bestiary] img{border-radius:50%;width:43px;height:43px}.book-tabs button[aria-selected=true]{z-index:2;background:linear-gradient(180deg,var(--tab-color),#fffaf0 82%);color:#493255;border-color:#aa8dbc;box-shadow:inset 0 4px #fff7,0 -3px #b49bc25c}.book-tabs button[aria-selected=true]:after{content:"";background:#fffaf0;height:9px;position:absolute;inset:auto 10px -5px}.book-tabs button:hover{border-color:#916ca9}.book-paper{background:#fffaf0;border:3px solid #fffdf5;border-radius:22px 22px 26px 26px;flex:1;min-width:0;min-height:0;padding:6px 8px 12px 26px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #cbb6d2,0 4px #b7a1c6,0 8px #eee5ed,0 11px #a891ba}.book-paper:before{content:"";pointer-events:none;background:linear-gradient(90deg,#d9c5bd90,#fff7e4,#c6afb254);border-radius:8px;width:8px;position:absolute;top:18px;bottom:18px;left:13px}.book-scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#aa8bbe #f0e7ef;touch-action:pan-y;flex:1;min-width:0;min-height:0;padding:24px 24px 30px 18px;scroll-padding:18px;display:block;overflow:auto}.book-page-heading{justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px;display:flex}.book-page-heading>div{min-width:0}.book-page-heading h2{font-size:clamp(1.4rem,1.8vw,1.9rem);font-weight:650;line-height:1.15}.book-page-heading p{color:var(--book-muted);margin-top:8px;font-size:1rem;line-height:1.4}.book-count{font-variant-numeric:tabular-nums;background:#eee3f6;border:2px solid #fff;border-radius:22px;flex:none;justify-content:center;align-items:center;padding:10px 16px;font-size:.95rem;font-weight:600;display:inline-flex;box-shadow:0 2px #a891bc33}.book-character-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;display:grid}.book-character-card{min-width:0;color:var(--book-ink);text-align:center;background:linear-gradient(145deg,#fff8df,#f4eafd);border:3px solid #fffcf7;border-radius:24px;flex-direction:column;align-items:center;gap:7px;padding:14px 14px 16px;display:flex;box-shadow:inset 0 0 0 1px #dac5df99,0 4px #b19dbf42}.book-friend-card:nth-child(3n+2){background:linear-gradient(140deg,#fff6d1,#e5f3e7)}.book-friend-card:nth-child(3n){background:linear-gradient(140deg,#fbe5e9,#f4edff)}.book-character-card.has-memory{border-color:#fffcf0}button.book-character-card:hover{border-color:#ba99cf;box-shadow:inset 0 0 0 1px #fff,0 5px #b19dbf55}button.book-character-card:active{transform:translateY(2px);box-shadow:inset 0 2px #82629b17,0 2px #b19dbf55}.book-character-art{background:radial-gradient(at 50% 64%,#fff8bb88,#0000 68%);border-radius:50%;place-items:center;width:148px;max-width:100%;height:140px;display:grid}.book-character-card .book-character-art img{width:128px;height:128px}.book-character-card>strong{font-size:1.1rem;font-weight:650;line-height:1.15}.book-character-greeting{color:var(--book-muted);font-size:1rem;line-height:1.35}.book-rescue-count{color:#51654e;font-variant-numeric:tabular-nums;margin-top:auto;padding:7px 10px 0;font-size:.88rem;font-weight:550;display:block}.book-rescue-count b{font-size:1.12em}.book-earlier-friends>img{width:112px;height:112px;margin-block:14px}.book-field-note{background:linear-gradient(115deg,#f8edcf,#eee7f9);border:2px solid #fff;border-radius:20px;align-items:center;gap:16px;max-width:920px;margin:0 0 22px;padding:12px 20px;display:flex;box-shadow:0 3px #ad91bb2c}.book-field-note>img{border:3px solid #fff;border-radius:50%;flex:none;width:70px;height:70px}.book-field-note p{font-size:1rem;line-height:1.4}.book-guardian-card{background:linear-gradient(145deg,#e9f2e3,#f6ecfd)}.book-guardian-card .book-character-greeting{font-size:1rem}.book-unknown-card{color:#71627c;background:linear-gradient(145deg,#f2edf6,#f0eadf);border-color:#fffdf4;box-shadow:inset 0 0 0 1px #d7cbdb,0 4px #b19dbf29}.book-unknown-art{color:#bca7c8;text-shadow:0 2px #fff;place-items:center;width:124px;max-width:100%;height:140px;font-size:4.8rem;font-weight:600;display:grid}.book-unknown-card .book-rescue-count{color:#75667d}.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.badge-card{min-width:0;min-height:158px;color:var(--book-ink);text-align:left;background:linear-gradient(135deg,#f2eaff,#fff3c9);border:3px solid #fffdf8;border-radius:24px;align-items:center;gap:18px;padding:18px;display:flex;box-shadow:inset 0 0 0 1px #d9c7e255,0 4px #b29cbe40}.badge-card.earned:nth-child(3n+2){background:linear-gradient(135deg,#fbe5ec,#fff3cf)}.badge-card.earned:nth-child(3n){background:linear-gradient(135deg,#e4f4e7,#fff2c5)}.badge-card.earned:hover{border-color:#d0a964}.badge-card.earned:active{transform:translateY(2px)}.badge-art-wrap{flex:0 0 104px;place-items:center;width:104px;height:112px;display:grid}.badge-art-wrap img{width:104px;height:104px}.badge-copy{min-width:0}.badge-copy strong{margin-top:4px;font-size:1.12rem;font-weight:650;line-height:1.2;display:block}.badge-copy small{color:#775273;font-size:.8rem;display:block}.badge-description{margin-top:7px;font-size:1rem;line-height:1.35;display:block}.badge-card.locked{color:#6d6279;background:linear-gradient(130deg,#ece6f2,#f3eef2)}.badge-card.locked .badge-art-wrap img{filter:grayscale();opacity:.48}.badge-card.locked .badge-copy small{color:#726379}.maze-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.maze-record-card{text-align:left;background:linear-gradient(125deg,#fff3ca,#e7f2e8);border:3px solid #fffdf7;border-radius:23px;grid-template-columns:52px minmax(0,1fr) 68px;align-items:center;gap:12px;min-width:0;padding:18px;display:grid;box-shadow:inset 0 0 0 1px #d4c5da66,0 4px #b79fc13d}.maze-record-card:hover:not(:disabled){border-color:#aa89c0}.maze-record-card:active:not(:disabled){transform:translateY(2px)}.record-number{color:#fff;background:linear-gradient(145deg,#ae96cb,#8164a8);border-radius:50%;place-items:center;width:52px;height:52px;font-size:1.4rem;font-weight:600;display:grid;box-shadow:inset 0 2px #ffffff60,0 3px #644785}.record-copy{min-width:0}.record-copy strong{font-size:1.1rem;font-weight:650;line-height:1.2;display:block}.record-copy small,.record-skill{color:#705779;margin-top:4px;font-size:.82rem;font-style:normal;line-height:1.25;display:block}.record-best{text-align:center;min-width:0}.record-best b{font-variant-numeric:tabular-nums;font-size:1.4rem;display:block}.record-best small{font-size:.78rem;line-height:1.2;display:block}.record-lock-art{width:42px;height:42px;margin-inline:auto}.record-friends{flex-wrap:wrap;grid-column:2/-1;gap:7px;min-height:52px;display:flex}.record-friends img{opacity:.52;filter:grayscale(.65);width:52px;height:52px}.record-friends img.saved{opacity:1;filter:none}.record-friends img.saved-unknown{opacity:.7;filter:none}.maze-record-card.active-run{background:linear-gradient(135deg,#fff1c3,#e5d7f4);border-color:#9980b6;box-shadow:inset 0 0 0 2px #fff9,0 4px #8a6aab80}.maze-record-card:disabled{color:#756780;background:linear-gradient(140deg,#f0eaf3,#eee9ed);border:3px solid #fffcf6;box-shadow:inset 0 0 0 1px #cbbdd22b,0 3px #b7a5bd22}.maze-record-card:disabled .record-number{color:#685777;background:#cdc0d9;box-shadow:inset 0 1px #fff8}.surprise-records{background:linear-gradient(125deg,#f3e9fb,#fff1cc);border:3px solid #fff;border-radius:26px;margin-top:34px;padding:24px;box-shadow:inset 0 0 0 1px #d7bee144,0 4px #c0a2bf3b}.surprise-records .book-page-heading{margin-bottom:18px}.surprise-explainer{align-items:center;gap:20px;display:flex}.surprise-explainer-star{flex:none;width:104px;height:104px}.surprise-explainer>div{flex:1;min-width:0}.surprise-explainer strong{font-size:1.1rem;display:block}.surprise-explainer p{margin-top:6px;font-size:1rem;line-height:1.4}.surprise-explainer>button{background:linear-gradient(140deg,#fff3b8,#f3c896);border:2px solid #fff;border-radius:22px;min-height:56px;padding:12px 18px;font-weight:600}.surprise-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.surprise-record-grid article{background:#fffdf0c9;border:2px solid #fff9;border-radius:20px;align-items:center;gap:12px;padding:14px;display:flex}.surprise-record-grid img{flex:none;width:48px;height:48px}.surprise-record-grid article>div{flex:1;min-width:0}.surprise-record-grid article>span{text-align:center}.surprise-record-grid strong{font-size:1rem}.surprise-record-grid small{margin-top:3px;font-size:.8rem;line-height:1.25;display:block}.book-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.book-stats article{background:linear-gradient(130deg,#fff1c8,#eee5fb);border:3px solid #fff;border-radius:26px;align-items:center;gap:20px;min-width:0;padding:24px;display:flex;box-shadow:inset 0 0 0 1px #d9c7e255,0 4px #b29cbe40}.book-stats article:nth-child(3n+2){background:linear-gradient(135deg,#f8dfe8,#fff5dc)}.book-stats article:nth-child(3n){background:linear-gradient(135deg,#e0f1e3,#e5edff)}.book-stats img{flex:none;width:88px;height:88px}.book-stats b{font-variant-numeric:tabular-nums;font-size:2.3rem;font-weight:650;line-height:1.1;display:block}.book-stats strong{margin-top:8px;font-size:1rem;font-weight:550;display:block}.book-new-beginning{background:#f5edf277;border:2px dashed #c4accb;border-radius:24px;justify-content:space-between;align-items:center;gap:24px;margin-top:36px;padding:24px;display:flex}.book-new-beginning>div{max-width:680px}.book-new-beginning h2{font-size:1.35rem}.book-new-beginning p{color:var(--book-muted);margin-top:8px;font-size:1rem;line-height:1.4}.book-new-beginning button{border-radius:22px;flex:none;justify-content:center;align-items:center;gap:8px;min-height:52px;font-weight:550;display:flex}.book-new-beginning button img{width:32px;height:32px}@media (width<=1500px){.book-character-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.badge-grid,.maze-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1280px){.book-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.book-header{gap:12px}.book-header button{gap:6px;min-height:58px;padding:6px 12px}.book-header button img{width:38px;height:38px}.book-header .book-sound{width:58px}.book-tabs{gap:8px;padding-inline:18px}.book-tabs button{gap:6px}.book-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.achievements-screen{gap:12px}.book-header{gap:10px}.book-header-actions{gap:6px}.book-header button{padding-inline:10px;font-size:1rem}.book-eyebrow{font-size:.8rem}.book-tabs{gap:6px;padding-inline:12px}.book-tabs button{flex-direction:column;gap:2px;min-height:70px;padding:6px 4px 11px;font-size:.95rem}.book-tabs button img{width:36px;height:36px}.book-tabs [data-book-tab=bestiary] img{width:34px;height:34px}.book-scroll{padding:18px 14px 24px 8px}.book-paper{padding-left:20px}.book-paper:before{width:5px;left:10px}.book-character-grid{gap:12px}.book-character-card{padding:10px}.badge-card{gap:12px;padding:14px}.badge-art-wrap{flex-basis:88px;width:88px}.badge-art-wrap img{width:88px;height:88px}.maze-record-card{grid-template-columns:44px minmax(0,1fr) 56px;gap:9px;padding:14px}.record-number{width:44px;height:44px}.surprise-records{padding:18px}.surprise-explainer{flex-wrap:wrap;gap:14px}.surprise-explainer>div{flex-basis:260px}.surprise-explainer>button{margin-left:auto}.surprise-record-grid{grid-template-columns:minmax(0,1fr)}.book-new-beginning{flex-wrap:wrap;gap:16px}}@media (width<=700px){.book-heading h1{font-size:1.45rem}.book-heading .book-eyebrow{display:none}.book-header button{border-width:2px;gap:4px;min-height:48px;padding:5px 8px;font-size:.9rem}.book-header button img{width:30px;height:30px}.book-header .book-sound{width:48px}.book-header .book-back{flex-direction:column;gap:0}.book-header .book-back img{width:28px;height:28px}.book-header .book-back span{font-size:.78rem}.book-header-actions{gap:4px}.book-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.badge-grid,.maze-record-grid{grid-template-columns:minmax(0,1fr)}.book-page-heading{flex-wrap:wrap;align-items:start;gap:10px;margin-bottom:16px}.book-page-heading h2{font-size:1.35rem}.book-page-heading p{font-size:1rem}.book-count{padding:6px 10px;font-size:.9rem}.book-tabs button{font-size:.83rem}.book-field-note{gap:10px;padding:12px}.book-field-note>img{width:56px;height:56px}.book-stats{gap:12px}.book-stats article{gap:12px;padding:14px}.book-stats img{width:58px;height:58px}.book-stats b{font-size:1.8rem}.book-stats strong{font-size:.95rem}}@media (height<=500px){.achievements-screen{gap:7px;padding:8px 10px 13px}.book-header{gap:10px}.book-heading .book-eyebrow{display:none}.book-heading h1{font-size:1.4rem}.book-header button{border-width:2px;gap:5px;min-height:44px;padding:3px 10px;font-size:.95rem}.book-header button img{width:32px;height:32px}.book-header .book-back{flex-direction:row;gap:5px}.book-header .book-back span{font-size:.95rem}.book-header .book-sound{width:46px}.book-tabs button{border-radius:16px 16px 0 0;flex-direction:row;gap:5px;min-height:48px;padding:4px 6px 8px;font-size:.88rem}.book-tabs button img{width:30px;height:30px}.book-tabs [data-book-tab=bestiary] img{width:29px;height:29px}.book-scroll{padding-top:14px}.book-character-art{height:120px}.book-character-card .book-character-art img{width:112px;height:112px}.book-unknown-art{height:120px}}@media (width<=620px) and (height<=500px){.book-header{gap:6px}.book-heading h1{font-size:1.15rem}.book-header button{gap:3px;padding-inline:5px;font-size:.82rem}.book-header .book-back span{font-size:.82rem}.book-header button img{width:27px;height:27px}.book-header .book-sound{width:44px}.book-tabs{gap:4px;padding-inline:4px}.book-tabs button{flex-direction:column;gap:1px;min-height:56px;padding:3px 2px 7px;font-size:.8rem}.book-tabs button img{width:27px;height:27px}.book-tabs [data-book-tab=bestiary] img{width:26px;height:26px}}@media (height<=420px){.achievements-screen{gap:4px;padding:4px 6px 9px;overflow:hidden}.book-header{min-height:48px}.book-heading h1{font-size:1.1rem}.book-header button{min-height:48px;padding:3px 7px}.book-header button img{width:28px;height:28px}.book-header .book-sound{width:48px}.book-tabs{gap:4px;padding-inline:5px}.book-tabs button{flex-direction:row;gap:3px;min-height:48px;padding:3px 4px 7px;font-size:.78rem}.book-tabs button img,.book-tabs [data-book-tab=bestiary] img{width:26px;height:26px}.book-paper{border-width:2px;padding:3px 4px 8px 15px}.book-paper:before{inset-block:9px;width:4px;left:7px}.book-scroll{padding:8px 7px 10px 2px;scroll-padding:7px}.book-page-heading{gap:8px;margin-bottom:10px}.book-page-heading h2{font-size:1.15rem}.book-page-heading p{margin-top:3px;font-size:.88rem;line-height:1.2}.book-count{padding:4px 8px;font-size:.78rem}.badge-grid{gap:8px}.badge-card{border-width:2px;border-radius:18px;gap:10px;min-height:132px;padding:8px 10px}.badge-art-wrap{flex-basis:72px;width:72px;height:80px}.badge-art-wrap img{width:72px;height:72px}.badge-copy strong{font-size:1rem}.badge-description{margin-top:4px;font-size:.88rem;line-height:1.2}}@media (width<=620px) and (height<=420px){.book-tabs button{white-space:nowrap;flex-direction:column;gap:0;padding-inline:2px;font-size:.72rem}.book-tabs button img,.book-tabs [data-book-tab=bestiary] img{width:24px;height:24px}}@media (forced-colors:active){.book-paper,.book-character-card,.badge-card,.maze-record-card,.book-stats article,.book-tabs button{box-shadow:none;border:2px solid canvastext}.book-tabs button[aria-selected=true]{border-bottom:3px solid highlight}.badge-card.locked .badge-art-wrap img{opacity:.6}}}@layer dialogs{.modal-backdrop{z-index:100;padding:max(12px,var(--safe-top)) max(12px,var(--safe-right)) max(12px,var(--safe-bottom)) max(12px,var(--safe-left));-webkit-backdrop-filter:blur(14px)saturate(.85);backdrop-filter:blur(14px)saturate(.85);background:#372a4c70;place-items:center;display:grid;position:fixed;inset:0}.modal-card{background:radial-gradient(at 100% 0,#fbe5dacc,#0000 50%),linear-gradient(130deg,#fffbedf0,#f5edfaf0 65%,#e7f5f0f0);border:2px solid #fff7f4;border-radius:30px;flex-direction:column;width:min(780px,100%);min-width:0;min-height:0;max-height:100%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #fff9,0 0 0 1px #bba7d1,0 0 32px #f5e5ff80,0 8px #80638c55,0 24px 60px #241c4955}.dialog-header{border-bottom:1px solid #ddcadb88;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px 12px;display:flex}.dialog-header h2{overflow-wrap:anywhere;font-size:1.5rem;line-height:1.15}.dialog-header h2:focus{outline:none}.modal-close{border-radius:50%;flex:0 0 max(48px,2rem);place-items:center;width:max(48px,2rem);height:max(48px,2rem);min-height:48px;padding:0;line-height:1;display:grid}.modal-close span{width:20px;height:20px;display:block;position:relative}.modal-close span:before,.modal-close span:after{content:"";background:currentColor;border-radius:2px;width:22px;height:3px;position:absolute;top:8.5px;left:-1px;rotate:45deg}.modal-close span:after{rotate:-45deg}.dialog-body{overscroll-behavior:contain;scrollbar-width:thin;touch-action:pan-y;flex-direction:column;gap:12px;min-height:0;padding:20px 24px;scroll-padding:8px;display:flex;overflow:auto}.dialog-body>*{flex-shrink:0}.dialog-footer{background:#fff9f180;border-top:1px solid #ddcadb;flex:none;padding:10px 16px 14px}.dialog-footer>button{width:100%}.modal-actions{flex-wrap:wrap;gap:8px;display:flex}.modal-actions button{flex:120px}.modal-lead{text-align:center;font-size:1.1rem;line-height:1.5}.presentation-art{flex:none;align-self:center;place-items:center;width:200px;height:200px;display:grid}.presentation-art img{width:100%;height:100%}.presentation-unavailable{align-content:center;gap:8px}.presentation-unavailable img{width:64px;height:64px}.presentation-fallback-label{text-align:center;font-size:1rem}.dialog-blocker{width:min(760px,100%)}.blocker-hint-card{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:12px;display:grid}.blocker-hint-card strong{font-size:1.25rem}.blocker-hint-card p{margin-top:8px;line-height:1.5}.modal-art{align-self:center;width:144px;height:144px}.hint-card{background:#f7efd9;border-radius:16px;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;padding:16px;display:grid}.hint-card small{grid-column:2}.hint-spark img{width:72px;height:72px}.hint-spark{width:72px;height:72px;font-size:1.875rem}.help-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.help-step{align-items:center;gap:8px;display:flex}.help-step img{flex:none;width:72px;height:72px}.help-step p{font-size:1rem;line-height:1.4}.story-body{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:16px;display:grid}.story-speaker{justify-items:center;gap:8px;display:grid}.story-speaker .presentation-art{background:#fff0bc;border:4px solid #fff8da;border-radius:50%;overflow:hidden;box-shadow:0 4px #be9ab34d,0 6px 18px #7e618533}.story-speaker strong{font-size:1rem}.story-copy{font-size:1.125rem;line-height:1.55}.story-copy blockquote{margin:0}.story-thinking-strip{background:#e7f1e9;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.story-thinking-icon{font-size:1.5rem}.story-thinking-strip strong,.story-thinking-strip small{display:block}.story-thinking-strip p{font-size:1rem}.dialog-progress{text-align:center;font-size:.875rem}.power-equation{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.power-opportunities{flex-wrap:wrap;gap:12px;display:flex}.encounter-overview{grid-template-columns:128px minmax(0,1fr);align-items:center;gap:12px;display:grid}.compact-presentation{width:128px;height:128px}.power-opportunities article{text-align:center;background:#f6efd9;border:1px solid #cdb8d0;border-radius:14px;flex:180px;justify-items:center;gap:6px;padding:12px;display:grid}.power-opportunities img{width:64px;height:64px}.power-side{text-align:center;display:grid}.power-side strong{font-variant-numeric:tabular-nums;font-size:2.25rem}.power-side small{font-size:1rem}.power-equation>b{font-size:2.25rem}.tester-level-grid,.level-picker-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.tester-level-grid button,.level-picker-list button{text-align:left;align-items:center;gap:8px;display:flex}.tester-level-grid button>b,.level-picker-list button>b{color:#7f4f87;flex:0 0 28px;font-size:1.25rem}.tester-level-grid button>span,.level-picker-list button>span{min-width:0}.tester-level-grid strong,.level-picker-list strong{overflow-wrap:anywhere;display:block}.tester-level-grid small,.level-picker-list small,.level-picker-list em{font-size:.875rem;font-style:normal;display:block}.tester-level-grid i,.level-picker-list i{margin-left:auto;font-style:normal}.tester-level-grid .current,.level-picker-list .current{background:#eaf2df;border:2px solid #70856b}.more-actions,.sound-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.more-actions button{justify-content:center;align-items:center;gap:8px;min-height:48px;display:flex}.more-actions img{width:32px;height:32px}.sound-track{text-transform:capitalize;text-align:center;font-size:1.125rem}fieldset{border:1px solid #c5afc9;border-radius:12px;min-width:0;margin:0}.preference-options{flex-wrap:wrap;gap:8px;display:flex}.preference-options label{cursor:pointer;align-items:center;gap:6px;min-height:44px;padding:6px;display:flex}.preference-options input{accent-color:#77528d;width:24px;height:24px}.modal-card:has(.sound-layout){width:min(920px,100%)}.sound-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.sound-player{background:linear-gradient(135deg,#fff0c9,#f6e8f7 70%,#e6f4ec);border:2px solid #fffaf0;border-radius:24px;flex-direction:column;grid-row:1/4;justify-content:center;gap:16px;padding:18px;display:flex;box-shadow:0 3px #b8a2ba30}.sound-track{overflow-wrap:anywhere;font-weight:600}.sound-levels{gap:8px;display:grid}.sound-levels label{gap:2px;display:grid}.sound-levels label>span{justify-content:space-between;gap:12px;display:flex}.sound-levels input{accent-color:#986099;cursor:pointer;width:100%;min-width:0;height:36px}.sound-controls button{min-height:48px;padding:8px}.sound-layout fieldset{background:#fffbf4a6;border-color:#d5bddb;padding:8px 12px 10px}.sound-layout legend{padding:0 6px;font-size:1rem;font-weight:600}.sound-layout .preference-options{gap:4px 8px}.sound-layout .preference-options label{min-height:48px;padding:4px}.sound-persistence,.sound-layout>[role=alert]{text-align:center;grid-column:1/-1;font-size:1rem}.dialog-celebration{width:min(740px,100%)}.dialog-celebration .presentation-art{background:linear-gradient(125deg,#fbe9ed88,#e7f4e888,#e6edfb88,#f8e7fa88);border-radius:24px;box-shadow:inset 0 0 0 1px #fffdf9}.win-summary{justify-content:center;align-items:center;gap:12px;display:flex}.win-star-art{width:80px;height:80px}.win-summary strong,.win-summary span{display:block}.win-summary strong{font-size:1.5rem}.rescued-result-row{grid-template-columns:repeat(var(--friend-count,3),minmax(0,1fr));gap:8px;display:grid}.rescued-result{text-align:center;flex-direction:column;justify-content:start;align-items:center;min-width:0;display:flex}.rescued-result img{width:104px;height:104px}.rescued-result>span{font-size:.875rem}.rescued-result:not(.rescued) img{opacity:.55}.perfect-banner{background:#edf5df;border:1px solid #c3d2ae;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:8px;display:flex}.perfect-banner img{width:40px;height:40px}.story-outro-card{background:#f0e8f5;border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.story-outro-card img{border:3px solid #fff8e0;border-radius:50%;flex:none;width:72px;height:72px}.story-outro-card p{margin-top:4px}.reward-panel,.tester-preview-banner{background:#fff1d6;border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.reward-pouch,.tester-preview-banner>img{width:64px;height:64px}.reward-copy{flex:1;min-width:0}.reward-copy strong,.reward-copy span,.reward-copy small,.tester-preview-banner small{display:block}.reward-copy strong{font-size:1.375rem}.reward-badge{background:#fff9ed;border:1px solid #dcb88d;border-radius:10px;padding:8px}.collection-strip{flex-wrap:wrap;gap:8px;display:flex}.collection-pop{align-items:center;gap:8px;display:flex}.modal-reward-art{width:64px;height:64px}.collection-pop strong,.collection-pop small{display:block}.dialog-celebration:has(.win-summary){width:min(1060px,100%)}.dialog-celebration:has(.win-summary) .dialog-header{border:0;justify-content:center}.dialog-celebration:has(.win-summary) .dialog-header h2{color:#72509a;font-size:2rem}.dialog-celebration:has(.win-summary) .dialog-body{background:radial-gradient(at 50% 15%,#ffeaaa99,#0000 65%);gap:12px;padding-top:0;position:relative}.celebration-burst{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.confetti-piece{top:-15px;left:calc(4% + var(--i)*8%);width:9px;height:17px;animation:win-confetti 2.6s calc(var(--i)*-90ms) ease-out both;background:#df84aa;border-radius:3px;position:absolute}.confetti-piece:nth-child(3n){background:#e8c253}.confetti-piece:nth-child(3n+1){background:#8ecdb6}@keyframes win-confetti{0%{opacity:1;translate:-10px -30px;rotate:0deg}to{opacity:0;translate:25px 550px;rotate:260deg}}.rescued-result{background:linear-gradient(140deg,#f4eaff,#fff1bd 70%,#e1f4e5);border:3px solid #fffef5;border-radius:24px;padding:12px 8px 8px;box-shadow:0 4px #a38bab38}.rescued-result img{transform-origin:50% 85%;width:clamp(88px,13vh,160px);height:clamp(88px,13vh,160px)}.rescued-result>span{font-size:1rem;line-height:1.3}.rescued-result{--win-duration:2.2s;--win-phase:0s;--win-reach:3px;--win-tilt:3deg;--win-hop:4px}.rescued-result.rescued img{animation:win-sway var(--win-duration) ease-in-out var(--win-phase) infinite}.rescued-result.rescued[data-animal-motion=hop] img{animation-name:win-hop}.rescued-result.rescued[data-animal-motion=waddle] img{animation-name:win-waddle}.rescued-result.rescued[data-animal-motion=prance] img{animation-name:win-prance}.rescued-result.rescued[data-animal-motion=scamper] img{animation-name:win-scamper}.rescued-result.rescued[data-animal-motion=snuggle] img{animation-name:win-snuggle}.rescued-result[data-species=bunny]{--win-duration:1.65s;--win-phase:-.2s;--win-reach:2px;--win-tilt:3deg;--win-hop:8px}.rescued-result[data-species=fox]{--win-duration:1.95s;--win-phase:-.8s;--win-reach:5px;--win-tilt:3deg;--win-hop:2px}.rescued-result[data-species=kitten]{--win-duration:2.75s;--win-phase:-.4s;--win-reach:1.5px;--win-tilt:4deg;--win-hop:1.5px}.rescued-result[data-species=puppy]{--win-duration:1.7s;--win-phase:-.6s;--win-reach:3.5px;--win-tilt:4deg;--win-hop:3px}.rescued-result[data-species=duckling]{--win-duration:1.8s;--win-phase:-.3s;--win-reach:3px;--win-tilt:5deg;--win-hop:1px}.rescued-result[data-species=hedgehog]{--win-duration:3.5s;--win-phase:-1.2s;--win-reach:1px;--win-tilt:3deg;--win-hop:2px}.rescued-result[data-species=fawn]{--win-duration:2.4s;--win-phase:-.7s;--win-reach:3px;--win-tilt:2deg;--win-hop:4px}.rescued-result[data-species=red-panda]{--win-duration:2.9s;--win-phase:-1.1s;--win-reach:2px;--win-tilt:5deg;--win-hop:2px}.rescued-result[data-species=otter]{--win-duration:2.1s;--win-phase:-1.3s;--win-reach:4px;--win-tilt:2deg;--win-hop:4px}.rescued-result[data-species=lamb]{--win-duration:2.05s;--win-phase:-.5s;--win-reach:1px;--win-tilt:2deg;--win-hop:6px}.rescued-result[data-species=capybara]{--win-duration:4.8s;--win-phase:-1.5s;--win-reach:.5px;--win-tilt:1.5deg;--win-hop:1px}.rescued-result[data-species=chinchilla]{--win-duration:2.45s;--win-phase:-.9s;--win-reach:1px;--win-tilt:3.5deg;--win-hop:2px}.rescued-result[data-species=alpaca]{--win-duration:3.1s;--win-phase:-.3s;--win-reach:2px;--win-tilt:1.5deg;--win-hop:3px}.rescued-result[data-species=penguin]{--win-duration:2.2s;--win-phase:-.95s;--win-reach:4px;--win-tilt:4deg;--win-hop:1px}.rescued-result[data-species=koala]{--win-duration:4.4s;--win-phase:-1.9s;--win-reach:.5px;--win-tilt:2deg;--win-hop:1.5px}.rescued-result[data-species=pitter-patter-parasol]{--win-duration:1.55s;--win-phase:-.45s;--win-reach:2px;--win-tilt:3deg;--win-hop:3px}.rescued-result[data-species=lanternling]{--win-duration:3.6s;--win-phase:-.6s;--win-reach:1px;--win-tilt:2.5deg;--win-hop:3px}.rescued-result[data-species=emberdown-phoenix]{--win-duration:2.15s;--win-phase:-.75s;--win-reach:3px;--win-tilt:3.5deg;--win-hop:6px}.rescued-result[data-species=meadowstep-faunling]{--win-duration:2.65s;--win-phase:-1.2s;--win-reach:4px;--win-tilt:2.5deg;--win-hop:5px}.rescued-result[data-species=minerva-moon-owl]{--win-duration:3.8s;--win-phase:-1.4s;--win-reach:.5px;--win-tilt:2deg;--win-hop:1px}.rescued-result[data-species=tessera-dolphin]{--win-duration:2.35s;--win-phase:-1.05s;--win-reach:3px;--win-tilt:4deg;--win-hop:7px}.rescued-result[data-species=mallowmusk-aroma-wisp]{--win-duration:4.1s;--win-phase:-1.7s;--win-reach:2px;--win-tilt:3deg;--win-hop:4px}.rescued-result[data-species=breezeling-sylph]{--win-duration:3.25s;--win-phase:-.85s;--win-reach:3px;--win-tilt:4.5deg;--win-hop:5px}.rescued-result[data-species=griffin-cub]{--win-duration:2.85s;--win-phase:-.55s;--win-reach:2.5px;--win-tilt:2deg;--win-hop:3.5px}.rescued-result[data-species=emberbelly-dragonling]{--win-duration:2.3s;--win-phase:-.35s;--win-reach:2.3px;--win-tilt:4deg;--win-hop:1.5px}.rescued-result[data-species=cloudstep-pegasus]{--win-duration:3.35s;--win-phase:-1.25s;--win-reach:3.5px;--win-tilt:2deg;--win-hop:6px}.rescued-result[data-species=three-tumble-cerberus]{--win-duration:1.85s;--win-phase:-1.05s;--win-reach:4.5px;--win-tilt:3.5deg;--win-hop:2.5px}.rescued-result[data-species=riddlekit-sphinx]{--win-duration:3.9s;--win-phase:-.65s;--win-reach:.8px;--win-tilt:2.2deg;--win-hop:1px}.rescued-result[data-species=tidecurl-hippocamp]{--win-duration:3.45s;--win-phase:-1.45s;--win-reach:2px;--win-tilt:3.8deg;--win-hop:3px}.rescued-result[data-species=ripplecap-kappa]{--win-duration:2.55s;--win-phase:-.15s;--win-reach:2.5px;--win-tilt:3deg;--win-hop:1px}.rescued-result[data-species=rainbow-horn-unicorn]{--win-duration:2.7s;--win-phase:-1.1s;--win-reach:3px;--win-tilt:2.5deg;--win-hop:3px}.rescued-result[data-species=green-tea-skeleton]{--win-duration:4.25s;--win-phase:-.2s;--win-reach:.5px;--win-tilt:1deg;--win-hop:.5px}@keyframes win-sway{0%,15%,to{rotate:calc(-1 * var(--win-tilt));translate:calc(-1 * var(--win-reach)) 0}50%,65%{rotate:var(--win-tilt);translate:var(--win-reach) 0}}@keyframes win-hop{0%,65%,to{translate:0;rotate:0deg}25%{translate:0 calc(-1 * var(--win-hop));rotate:calc(-1 * var(--win-tilt))}45%{translate:var(--win-reach) 0;rotate:var(--win-tilt)}}@keyframes win-waddle{0%,15%,to{rotate:calc(-1 * var(--win-tilt));translate:calc(-1 * var(--win-reach)) 0}50%,65%{rotate:var(--win-tilt);translate:var(--win-reach) calc(-1 * var(--win-hop))}}@keyframes win-prance{0%,10%,to{translate:calc(-1 * var(--win-reach)) 0;rotate:calc(-1 * var(--win-tilt))}35%{translate:0 calc(-1 * var(--win-hop));rotate:var(--win-tilt)}65%,75%{translate:var(--win-reach) 0;rotate:calc(-1 * var(--win-tilt))}}@keyframes win-scamper{0%,15%,to{translate:calc(-1 * var(--win-reach)) 0;rotate:calc(-1 * var(--win-tilt))}45%,65%{translate:var(--win-reach) calc(-1 * var(--win-hop));rotate:var(--win-tilt)}}@keyframes win-snuggle{0%,20%,to{translate:0;rotate:0deg}40%,65%{rotate:calc(-1 * var(--win-tilt));translate:var(--win-reach) var(--win-hop)}}:root[data-quality=lite] .modal-backdrop,:root[data-quality=static] .modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#493957b8}:root[data-quality=static] .modal-card{background:#fcf5eb}@media (height<=450px){.modal-backdrop{padding:max(6px,var(--safe-top)) max(8px,var(--safe-right)) max(6px,var(--safe-bottom)) max(8px,var(--safe-left))}.dialog-header{padding:6px 12px}.dialog-header h2{font-size:1.25rem}.dialog-body{gap:10px;padding:10px 12px}.dialog-footer{padding:6px 12px 8px}.presentation-art{width:128px;height:128px}.story-body,.blocker-hint-card{grid-template-columns:128px minmax(0,1fr);gap:12px}.story-copy{font-size:1rem}.win-star-art{width:56px;height:56px}}@media (width<=600px){.tester-level-grid,.level-picker-list,.help-grid{grid-template-columns:minmax(0,1fr)}}@media (height<=800px){.dialog-celebration:has(.win-summary) .dialog-header{padding:8px 18px}.dialog-celebration:has(.win-summary) .dialog-header h2{font-size:1.6rem}.dialog-celebration:has(.win-summary) .dialog-body{gap:8px;padding:0 16px 12px}.rescued-result{padding:8px 6px}.rescued-result img{width:96px;height:96px}.story-outro-card{padding:8px 10px}.story-outro-card img{width:56px;height:56px}.collection-strip{gap:6px 12px}.modal-reward-art{width:44px;height:44px}}@media (height<=600px) and (orientation:landscape){.dialog-celebration:has(.win-summary) .dialog-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:min-content;align-content:start;gap:8px 12px;display:grid}.dialog-celebration:has(.win-summary) .dialog-header h2{font-size:1.4rem}.win-summary{grid-area:1/1;gap:8px}.win-summary strong{font-size:1.25rem}.win-summary span{font-size:1rem}.dialog-celebration:has(.win-summary) .win-star-art{width:48px;height:48px}.perfect-banner{grid-area:1/2;padding:4px 8px;font-size:1rem}.perfect-banner img{width:32px;height:32px}.rescued-result-row{grid-area:2/1/auto/-1}.rescued-result{border-width:2px;border-radius:20px;padding:5px 4px}.rescued-result img{width:80px;height:80px}.story-outro-card{grid-area:3/1/5;align-items:center;gap:8px;padding:8px}.story-outro-card img{width:48px;height:48px}.story-outro-card p{font-size:1rem;line-height:1.3}.story-outro-card small{font-size:.875rem;line-height:1.25}.reward-panel,.tester-preview-banner{grid-area:3/2;gap:8px;padding:8px;position:relative}.reward-pouch,.tester-preview-banner>img{width:40px;height:40px}.reward-copy>span{padding-right:64px;font-size:.875rem}.reward-copy strong{font-size:1.125rem}.reward-breakdown{font-size:.875rem;line-height:1.25}.reward-badge{padding:2px 4px;font-size:.875rem;position:absolute;top:5px;right:6px}.collection-strip{grid-area:4/2;gap:6px}.dialog-celebration:not(:has(.story-outro-card)) :is(.reward-panel,.tester-preview-banner,.collection-strip){grid-column:1/-1}.collection-pop{background:#fff8e980;border:1px solid #fff8ed;border-radius:12px;flex:120px;gap:6px;min-width:0;padding:4px 6px}.collection-pop strong{font-size:.875rem;line-height:1.2}.collection-pop small{font-size:.75rem}.modal-reward-art{flex:0 0 36px;width:36px;height:36px}}@media (height<=450px) and (orientation:landscape){.modal-card:has(.sound-layout) .dialog-body{padding:8px 10px}.sound-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.85fr);gap:8px}.sound-player{border-radius:18px;grid-row:auto;gap:8px;padding:8px}.sound-track{font-size:1rem;line-height:1.25}.sound-controls{gap:6px}.sound-controls button{padding:4px;font-size:1rem}.sound-layout fieldset{padding:4px 5px 6px}.sound-layout .preference-options{flex-direction:column;gap:0}.sound-layout .preference-options label{padding:2px;font-size:1rem;line-height:1.2}.sound-layout .preference-options input{flex:0 0 22px;width:22px;height:22px;margin:2px}.sound-layout>.sound-persistence{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dialog-celebration:has(.win-summary) .dialog-header{padding:4px 12px}.dialog-celebration:has(.win-summary) .dialog-header h2{font-size:1.25rem}.dialog-celebration:has(.win-summary) .dialog-body{gap:6px 10px;padding:0 10px 8px}.win-summary{gap:6px}.win-summary strong{font-size:1.125rem}.win-summary span{font-size:.875rem}.dialog-celebration:has(.win-summary) .win-star-art{width:36px;height:36px}.perfect-banner{gap:5px;font-size:.875rem;line-height:1.2}.perfect-banner img{width:28px;height:28px}.rescued-result-row{gap:5px}.rescued-result{border-radius:16px;padding:3px 3px 4px}.rescued-result img{width:80px;height:80px}.rescued-result>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.story-outro-card{gap:6px;padding:5px 6px}.story-outro-card img{width:36px;height:36px}.story-outro-card p{margin-top:2px;font-size:.875rem;line-height:1.2}.story-outro-card small{font-size:.75rem;line-height:1.2}.reward-panel,.tester-preview-banner{gap:6px;padding:5px 6px}.reward-pouch,.tester-preview-banner>img{width:32px;height:32px}.reward-copy>span{font-size:.75rem}.reward-copy strong{font-size:1rem}.reward-breakdown{font-size:.875rem;line-height:1.15}.collection-pop{gap:4px;padding:3px 4px}.collection-pop small{display:none}.modal-reward-art{flex-basis:30px;width:30px;height:30px}}@media (width<=650px) and (height<=450px) and (orientation:landscape){.dialog-celebration:has(.win-summary) .dialog-header{padding:2px 10px}.dialog-celebration:has(.win-summary) .dialog-header h2{font-size:1.25rem;line-height:1.1}.dialog-celebration:has(.win-summary) .dialog-body{grid-template-columns:28px minmax(0,1fr) auto minmax(0,1fr);gap:4px 8px;padding:0 8px 4px}.dialog-celebration:has(.win-summary) .dialog-footer{padding:5px 8px 6px}.dialog-celebration:has(.win-summary) .dialog-footer button{min-height:48px}.win-summary,.perfect-banner,.story-outro-card small,.reward-copy>span,.collection-pop>div{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rescued-result-row{grid-area:1/1/auto/-1;gap:4px}.rescued-result{border-radius:14px;padding:2px}.rescued-result img{width:64px;height:64px}.story-outro-card{grid-area:2/1/auto/-1;padding:6px;display:block}.story-outro-card>img{display:none}.story-outro-card p{margin:0;font-size:.875rem;line-height:1.2}.reward-panel,.reward-copy{display:contents}.tester-preview-banner{grid-area:3/1/auto/-1;gap:4px;min-height:48px;padding:4px}.reward-pouch{grid-area:3/1;align-self:center}.reward-pouch,.tester-preview-banner>img{flex:0 0 28px;width:28px;height:28px}.reward-copy strong{grid-area:3/2;align-self:center;font-size:1rem;line-height:1.2}.reward-badge{white-space:nowrap;grid-area:3/3;align-self:center;padding:2px 4px;font-size:.875rem;position:static}.reward-breakdown{text-align:center;grid-area:4/1/auto/-1;font-size:.875rem;line-height:1.2}.collection-strip{grid-area:3/4;justify-content:end;align-items:center;gap:4px}.collection-pop{flex:none;gap:0;padding:2px}.modal-reward-art{flex-basis:32px;width:32px;height:32px}}}@layer comfort{:root:is([data-motion=reduced],[data-quality=static]) *,:root:is([data-motion=reduced],[data-quality=static]) :before,:root:is([data-motion=reduced],[data-quality=static]) :after{scroll-behavior:auto;transition:none;animation:none}:root[data-quality=lite]{--surface-depth:var(--rim),0 2px 0 #8f76902b;--button-depth:inset 0 1px 0 #fff,0 1px 0 #907c9738}:root[data-quality=static]{--surface-depth:var(--rim);--button-depth:none}:is(button,[role=button],.adventure-hud,.maze-board,.thumb-pad){-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}:is(button,.adventure-hud,.maze-board,.thumb-pad) img{-webkit-user-drag:none}:is(input,textarea,[contenteditable=true],[data-selectable=true]){-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}:root[data-quality=lite] .maze-board :is(.camera-world img,.player-sprite,.player-held-weapon){filter:none}:root[data-quality=lite] .maze-board :is(.maze-object,.animal-sprite,.pet-follower-image,.pet-follower>img,.goal-sprite){animation:none}:root[data-quality=lite] :is(.pet-follower,.animal-stack):after,:root[data-quality=lite] .maze-board:after{content:none;animation:none}:root[data-quality=lite] .terrain-ambient-decoration{display:none}:root[data-quality=lite] :is(.object-kind-enemy,.pet-follower,.player-layer):before{filter:none;background:radial-gradient(#352a5242 0%,#352a5218 46%,#0000 72%)}:root[data-quality=lite] .terrain-wall-depth{filter:none}:root[data-quality=lite] :is(.terrain-water-fx,.terrain-lava-fx,.terrain-poison-fx){display:none}:root[data-quality=lite] :is(.water-ripple-marks path,.lava-shimmer-marks circle,.lava-shimmer-marks path,.poison-bubble){animation:none}:root[data-quality=lite] .touch-joystick-origin{-webkit-backdrop-filter:none;backdrop-filter:none}@media (forced-colors:active){button,.modal-card,.objective-card,.maze-board{border:2px solid canvastext}:focus-visible{box-shadow:none;outline:3px solid highlight}.inventory-slot.missing img{opacity:1}}@media (prefers-contrast:more){:root{--edge:#715b7c;--muted-ink:#44324f}}}
