html,body{margin:0;padding:0;min-height:100%;background:var(--pk-bg);color:var(--pk-text, #332D3A);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body{overscroll-behavior:none;-webkit-text-size-adjust:100%}#root{min-height:100dvh}[data-child],[data-child] *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pk-auth{min-height:100dvh;display:grid;align-content:start;justify-items:center;gap:1.25rem;padding:max(2rem,env(safe-area-inset-top)) 1.25rem 2.5rem;box-sizing:border-box;text-align:center}.pk-auth-logo{width:min(60vw,220px);height:auto;margin-top:6vh}.pk-auth h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--pk-purple-deep)}.pk-auth p{margin:0;max-width:32ch;line-height:1.5;color:var(--pk-text-soft)}.pk-auth form,.pk-auth-actions{width:100%;max-width:360px;display:grid;gap:1rem;text-align:left}.pk-field{display:grid;gap:.4rem}.pk-field span{font-size:.9rem;font-weight:600;color:var(--pk-text)}.pk-field input{width:100%;box-sizing:border-box;padding:.9rem 1rem;font-size:1rem;font-family:inherit;color:var(--pk-text);background:var(--pk-surface);border:2px solid var(--pk-beige);border-radius:14px;transition:border-color .12s ease}.pk-field input:focus{outline:none;border-color:var(--pk-purple-soft)}.pk-btn{width:100%;padding:1rem 1.5rem;font-size:1rem;font-family:inherit;font-weight:700;color:var(--pk-white-warm);background:var(--pk-purple);border:none;border-radius:16px;cursor:pointer;transition:background .12s ease}.pk-btn:active{background:var(--pk-purple-deep)}.pk-btn:disabled{opacity:.55;cursor:default}.pk-btn-quiet{background:none;color:var(--pk-text-soft);font-weight:600;text-decoration:underline}.pk-btn-quiet:active{background:none}.pk-note{margin:0;padding:.85rem 1rem;border-radius:14px;font-size:.95rem;line-height:1.45;text-align:left;background:var(--pk-pink-soft);color:var(--pk-text)}.pk-note-calm{background:var(--pk-surface);border:2px solid var(--pk-beige);color:var(--pk-text-soft)}.pk-pin-note{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--pk-surface);border:2px solid var(--pk-purple-soft);color:var(--pk-text-soft)}.pk-pin-note b{font-size:1.5rem;font-weight:700;letter-spacing:.25em;text-indent:.25em;font-variant-numeric:tabular-nums;color:var(--pk-purple-deep)}.pk-steps{margin:0;padding-left:1.25rem;text-align:left;line-height:1.7;color:var(--pk-text)}.pk-code,.pk-ages{border:none;margin:0;padding:0}.pk-code legend,.pk-ages legend{padding:0;margin-bottom:.5rem;font-size:.95rem;font-weight:600;color:var(--pk-text)}.pk-code>div{display:grid;grid-auto-flow:column;gap:.4rem}.pk-code input{width:100%;min-width:0;box-sizing:border-box;padding:.75rem 0;font-family:inherit;font-size:1.4rem;font-weight:700;text-align:center;text-transform:uppercase;color:var(--pk-text);background:var(--pk-surface);border:2px solid var(--pk-beige);border-radius:12px}.pk-code input:focus{outline:none;border-color:var(--pk-purple-soft)}.pk-ages>div{display:grid;grid-auto-flow:column;gap:.5rem}.pk-ages button{padding:.7rem 0;font-family:inherit;font-size:1.15rem;font-weight:700;color:var(--pk-text-soft);background:var(--pk-surface);border:2px solid var(--pk-beige);border-radius:14px;cursor:pointer}.pk-ages button[data-active=true]{color:var(--pk-white-warm);background:var(--pk-purple);border-color:var(--pk-purple)}.pk-reveal{position:relative}.pk-eye{position:absolute;right:.5rem;bottom:.5rem;display:grid;place-items:center;width:44px;height:44px;padding:0;background:none;border:none;border-radius:10px;color:var(--pk-text-soft);cursor:pointer}.pk-eye svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.pk-platforms{display:grid;gap:.6rem}.pk-platforms button{padding:1rem 1.25rem;font-family:inherit;font-size:1rem;font-weight:600;text-align:left;color:var(--pk-text);background:var(--pk-surface);border:2px solid var(--pk-beige);border-radius:16px;cursor:pointer}.pk-platforms button[data-guess=true]{border-color:var(--pk-purple-soft)}.pk-platforms button:active{background:var(--pk-beige)}.pk-mascot{width:min(38vw,180px);aspect-ratio:1;margin:0 auto;background-image:var(--pk-mascot-src);background-repeat:no-repeat;background-position:center;background-size:contain}.pk-mascot[data-frames]{background-size:calc(var(--pk-mascot-frames) * 100%) 100%;background-position:0 0;animation:pk-frames calc(var(--pk-mascot-frames) * .11s) steps(var(--pk-mascot-frames),jump-none) infinite}@keyframes pk-frames{to{background-position:100% 0}}.pk-mascot[data-frames][data-mascot=celebrating]{animation-iteration-count:1;animation-duration:.7s}@keyframes pk-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes pk-talk{0%,to{transform:scaleY(1)}50%{transform:scaleY(.88)}}@keyframes pk-lean{0%,to{transform:translateY(0)}50%{transform:translateY(6%)}}@keyframes pk-cheer{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-10%) rotate(-6deg)}60%{transform:translateY(-4%) rotate(6deg)}}@keyframes pk-wake{0%{transform:scale(.8) translateY(8%);opacity:0}60%{transform:scale(1.06) translateY(0);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.pk-mascot:not([data-frames])[data-mascot=idle]{animation:pk-breathe 3.1s ease-in-out infinite}.pk-mascot:not([data-frames])[data-mascot=speaking]{animation:pk-talk .38s ease-in-out infinite}.pk-mascot:not([data-frames])[data-mascot=pointing]{animation:pk-lean 1.2s ease-in-out infinite}.pk-mascot:not([data-frames])[data-mascot=celebrating]{animation:pk-cheer .7s ease-out 2}.pk-mascot:not([data-frames])[data-mascot=encouraging]{animation:pk-breathe .9s ease-in-out 2}.pk-mascot:not([data-frames])[data-mascot=listening]{animation:pk-breathe 1.6s ease-in-out infinite}.pk-mascot:not([data-frames])[data-mascot=thinking]{animation:pk-lean 1.8s ease-in-out infinite}.pk-mascot:not([data-frames])[data-mascot=wake]{animation:pk-wake 1s ease-out 1}.pk-mascot:not([data-frames])[data-mascot=bye]{animation:pk-breathe 3.2s ease-in-out infinite}.pk-mascot.pk-breathing:not([data-frames])[data-mascot=idle]{animation:pk-breathe 3.1s ease-in-out infinite}.pk-mascot.pk-breathing[data-frames]{animation:pk-frames calc(var(--pk-mascot-frames) * .11s) steps(var(--pk-mascot-frames),jump-none) infinite,pk-breathe 3.1s ease-in-out infinite}.pk-mascot.pk-breathing[data-frames][data-mascot=celebrating]{animation:pk-frames .7s steps(var(--pk-mascot-frames),jump-none) 1,pk-breathe 3.1s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.pk-mascot{animation:none!important}}@keyframes pk-bounce{0%,to{transform:scale(1)}30%{transform:scale(.93)}60%{transform:scale(1.04)}}@keyframes pk-marks{0%{opacity:0}35%{opacity:.85}to{opacity:0}}.pk-tile{position:relative;display:grid;place-items:center;min-width:var(--pk-touch-min);min-height:var(--pk-touch-min);width:100%;aspect-ratio:1;border:none;border-radius:var(--pk-radius);background:var(--pk-tile);box-shadow:0 3px 10px #00000012;padding:8%;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pk-tile img{width:100%;height:100%;object-fit:contain}.pk-tile:before,.pk-tile:after{content:"";position:absolute;top:50%;width:16px;height:40%;border:4px solid transparent;border-radius:50%;opacity:0;pointer-events:none;transform:translateY(-50%)}.pk-tile:before{left:-16px;border-left-color:var(--pk-purple-soft)}.pk-tile:after{right:-16px;border-right-color:var(--pk-purple-soft)}.pk-tile[data-bounce=true]{animation:pk-bounce .42s ease-out}.pk-tile[data-bounce=true]:before,.pk-tile[data-bounce=true]:after{animation:pk-marks .42s ease-out}.pk-tile[data-chosen=true]{animation:pk-bounce .42s ease-out;background:var(--pk-tile-ok);box-shadow:0 0 0 5px var(--pk-yellow-sun)}.pk-tile[data-hint=true]{animation:pk-hint 1.6s ease-in-out infinite}@keyframes pk-hint{0%,to{box-shadow:0 3px 10px #00000012,0 0 0 0 var(--pk-purple-soft)}50%{box-shadow:0 3px 10px #00000012,0 0 0 5px var(--pk-purple-soft)}}.pk-sparkles{position:absolute;top:-14%;right:-14%;bottom:-14%;left:-14%;background-position:center;background-size:contain;background-repeat:no-repeat;pointer-events:none;z-index:2;animation:pk-sparkle .7s var(--pk-settle) both}@keyframes pk-sparkle{0%{opacity:0;transform:scale(.6)}35%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1.15)}}@media (prefers-reduced-motion: reduce){.pk-tile[data-hint=true]{animation:none;box-shadow:0 0 0 5px var(--pk-purple-soft)}.pk-sparkles{animation:none;opacity:.9}}.pk-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--pk-gap);padding:var(--pk-gap);align-content:center;min-height:100dvh;box-sizing:border-box}@media (prefers-reduced-motion: reduce){.pk-tile[data-bounce=true],.pk-tile[data-chosen=true]{animation:none}.pk-tile[data-bounce=true]:before,.pk-tile[data-bounce=true]:after{animation:none;opacity:.85}}.pk-stage{display:grid;align-content:center;justify-items:center;gap:4vh;min-height:100dvh;padding:4vw;box-sizing:border-box}.pk-hero{width:min(56vw,260px);aspect-ratio:1;object-fit:contain}[data-screen=welcome] .pk-mascot{width:min(66vw,300px)}.pk-tap-mascot{position:relative;border:none;background:none;padding:4vw;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pk-tap-mascot[data-ready=true]{border-radius:50%}.pk-tap-mascot[data-ready=true]:before,.pk-tap-mascot[data-ready=true]:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid var(--pk-purple);border-radius:50%;pointer-events:none;animation:pk-pulse-ring 2.6s ease-out infinite}.pk-tap-mascot[data-ready=true]:after{animation-delay:1.3s}.pk-mute[data-squash]:before,.pk-mute[data-squash]:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid currentColor;border-radius:50%;pointer-events:none;animation:pk-ripple .7s var(--pk-settle)}.pk-mute[data-squash]:after{animation-delay:.12s}@media (prefers-reduced-motion: reduce){.pk-tap-mascot[data-ready=true]:before,.pk-tap-mascot[data-ready=true]:after,.pk-mute[data-squash]:before,.pk-mute[data-squash]:after{animation:none;opacity:0}}.pk-video{width:100%;aspect-ratio:16 / 9;background:var(--pk-purple-deep);border-radius:var(--pk-radius);overflow:hidden}.pk-video iframe,.pk-video video{width:100%;height:100%;border:0;display:block}.pk-video video{object-fit:contain}[data-screen=welcome],[data-screen=loading],[data-screen=come-back],[data-step=intro],[data-step=echo],[data-step=chant],[data-screen=lesson] [data-step=tap-to-start]{background-repeat:no-repeat;background-position:center;background-size:cover}[data-screen=welcome],[data-screen=loading],[data-step=intro],[data-step=echo]{background-image:var(--pk-scene-meadow)}[data-step=chant],[data-screen=lesson] [data-step=tap-to-start]{background-image:var(--pk-scene-magical)}[data-step=chant][data-mode=audio-only]{background-image:none;background-color:var(--pk-chant-ground)}[data-screen=come-back]{background-image:var(--pk-scene-sky)}.pk-paint{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:100dvh;box-sizing:border-box;padding:max(var(--pk-gap-lg),env(safe-area-inset-top)) var(--pk-gap) max(var(--pk-gap-lg),env(safe-area-inset-bottom));gap:var(--pk-gap);background-color:var(--pk-bg)}.pk-paint .pk-mascot{flex:0 0 auto;width:88px}.pk-canvas{flex:0 1 auto;width:100%;max-width:min(100%,calc(42vh * var(--pk-paint-aspect, 1)));aspect-ratio:var(--pk-paint-aspect, 1);border-radius:var(--pk-radius);overflow:hidden;background:var(--pk-surface)}.pk-canvas svg{display:block;width:100%;height:100%;touch-action:none}.pk-canvas [data-outline],.pk-canvas [data-paint]{pointer-events:none}.pk-palette{flex:0 0 auto;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--pk-gap-sm);width:100%}.pk-blob{position:relative;width:var(--pk-touch-min);height:var(--pk-touch-min);border:4px solid var(--pk-surface);border-radius:50%;padding:0;box-shadow:0 2px 6px #0000002e;transition:bottom .14s var(--pk-settle),transform .14s var(--pk-settle),box-shadow .14s var(--pk-settle)}.pk-blob[data-selected=true]{bottom:10px;transform:scale(1.14);box-shadow:0 8px 16px #00000042}[data-step=paint][data-alive=true] .pk-canvas{animation:pk-paint-alive .9s ease-in-out 2}@keyframes pk-paint-alive{0%,to{transform:scale(1) rotate(0)}30%{transform:scale(1.035) rotate(-1.1deg)}70%{transform:scale(1.035) rotate(1.1deg)}}@media (prefers-reduced-motion: reduce){.pk-blob,[data-step=paint][data-alive=true] .pk-canvas{transition:none;animation:none}}.pk-mute{position:absolute;top:var(--pk-gap-sm);right:var(--pk-gap-sm);width:var(--pk-touch-min);height:var(--pk-touch-min);display:grid;place-items:center;padding:18px;border:none;border-radius:50%;background:transparent;color:var(--pk-purple-soft);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pk-mute svg{width:100%;height:100%}.pk-mute[data-muted=true]{background:var(--pk-purple);color:var(--pk-cream)}@media (orientation: landscape){.pk-grid{grid-template-columns:repeat(2,minmax(var(--pk-touch-min),40vh));justify-content:center;gap:var(--pk-gap-sm);padding:var(--pk-gap-sm)}.pk-hero{width:min(40vh,260px)}.pk-stage{gap:2vh;padding:2vh 4vw}.pk-paint{flex-direction:row;align-items:center;justify-content:center;padding:var(--pk-gap-sm) var(--pk-gap);height:100dvh;min-height:0}.pk-paint .pk-mascot{width:64px;align-self:flex-start}.pk-canvas{max-width:min(100%,calc(82vh * var(--pk-paint-aspect, 1)))}.pk-mute{top:auto;right:auto;bottom:var(--pk-gap-sm);left:var(--pk-gap-sm)}.pk-palette{flex-direction:column;flex-wrap:wrap;width:auto;max-height:100%;align-content:center}}.pk-paint-again,.pk-book-enter{width:112px;height:112px;padding:8px;border:none;border-radius:50%;background:transparent;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;animation:pk-paint-again-in .42s ease-out both}.pk-paint-again svg,.pk-book-enter svg{width:100%;height:100%;display:block}.pk-come-back-actions{display:flex;align-items:center;justify-content:center;gap:var(--pk-gap)}@keyframes pk-paint-again-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.pk-paint-again,.pk-book-enter{animation:none}}.pk-match{display:flex;align-items:center;justify-content:center;gap:var(--pk-gap);width:100%;padding:var(--pk-gap-sm);box-sizing:border-box}.pk-match-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(10px,2vh,18px)}[data-step=match]{display:grid;align-content:center;justify-items:center;gap:2vh;min-height:100dvh;padding:4vw;box-sizing:border-box}[data-step=match] .pk-mascot{width:min(22vw,96px)}.pk-match-sound{position:relative;flex:0 0 auto;width:var(--pk-touch-min);height:var(--pk-touch-min);display:grid;place-items:center;padding:20px;border:none;border-radius:50%;background:var(--pk-purple);color:var(--pk-cream);box-shadow:0 3px 10px #0000002e;cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;transition:box-shadow .16s var(--pk-settle),opacity .2s var(--pk-settle)}.pk-match-sound svg{width:100%;height:100%;display:block}.pk-match-sound[data-held=true]{z-index:2;box-shadow:0 0 0 6px var(--pk-yellow-sun),0 8px 18px #00000042}.pk-match-sound[data-matched=true],.pk-match-tile[data-matched=true]{opacity:.45;pointer-events:none}.pk-match-sound[data-landed=true],.pk-match-tile[data-matched=true]{animation:pk-bounce .42s ease-out}.pk-match-tile{position:relative;display:grid;place-items:center;flex:0 0 auto;width:min(30vw,124px);height:min(30vw,124px);min-width:var(--pk-touch-min);min-height:var(--pk-touch-min);border:none;border-radius:var(--pk-radius);background:var(--pk-tile);box-shadow:0 3px 10px #00000012;padding:8%;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .2s var(--pk-settle)}.pk-match-tile img{width:100%;height:100%;object-fit:contain}.pk-match-tile[data-matched=true]{background:var(--pk-tile-ok)}.pk-match-tile[data-bounce=true]{animation:pk-bounce .42s ease-out}.pk-match-sound[data-invite=true]:before,.pk-match-sound[data-invite=true]:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid var(--pk-purple-soft);border-radius:50%;pointer-events:none;animation:pk-pulse-ring 2.6s ease-out infinite}.pk-match-sound[data-invite=true]:after{animation-delay:1.3s}[data-step=match][data-held] .pk-match-tile:not([data-matched=true]):after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border:2px solid var(--pk-purple-soft);border-radius:calc(var(--pk-radius) + 3px);pointer-events:none;animation:pk-pulse-ring 2.2s ease-out infinite}.pk-match-sound[data-squash]:before,.pk-match-sound[data-squash]:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px solid var(--pk-purple-soft);border-radius:50%;pointer-events:none;animation:pk-ripple .7s var(--pk-settle)}.pk-match-sound[data-squash]:after{animation-delay:.12s}@media (prefers-reduced-motion: reduce){.pk-match-sound[data-landed=true],.pk-match-tile[data-bounce=true],.pk-match-tile[data-matched=true]{animation:none}.pk-match-sound[data-squash]:before,.pk-match-sound[data-squash]:after,.pk-match-sound[data-invite=true]:before,.pk-match-sound[data-invite=true]:after,[data-step=match][data-held] .pk-match-tile:after{animation:none;opacity:0}}@media (orientation: landscape) and (max-height: 560px){.pk-match{flex-direction:column;gap:var(--pk-gap-sm)}.pk-match-col{flex-direction:row}[data-step=match] .pk-mascot{width:64px}}.pk-match-tile[data-hint=true]{animation:pk-hint 1.6s ease-in-out infinite}[data-step=find],[data-step=missing],[data-step=recipe]{display:grid;align-content:center;justify-items:center;gap:2vh;min-height:100dvh;box-sizing:border-box;padding:calc(var(--pk-gap-sm) + env(safe-area-inset-top)) env(safe-area-inset-right) calc(var(--pk-gap-sm) + env(safe-area-inset-bottom)) env(safe-area-inset-left);background-color:var(--pk-bg);background-size:cover;background-position:center bottom;background-repeat:no-repeat}[data-step=find] .pk-mascot,[data-step=missing] .pk-mascot,.pk-recipe-ask .pk-mascot,[data-step=recipe]>.pk-mascot{width:min(26vw,104px);margin:0 auto}[data-step=missing] .pk-grid,.pk-recipe-grid .pk-grid{min-height:0;width:100%;padding:0 var(--pk-gap)}.pk-find-stage{position:relative;width:min(100vw,calc(100dvh - 150px));aspect-ratio:1}.pk-find-object{position:absolute;padding:0;border:none;border-radius:50%;background:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pk-find-object img{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 4px 6px rgb(0 0 0 / 18%))}.pk-find-object:disabled{cursor:default}.pk-find-object[data-bounce=true]{animation:pk-wobble .45s ease-in-out}.pk-find-object[data-hint=true] img{animation:pk-find-hint 1.6s ease-in-out infinite}.pk-find-object[data-found=true]{z-index:2;box-shadow:0 0 0 4px var(--pk-yellow-sun);animation:pk-bounce .42s ease-out}@keyframes pk-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}@keyframes pk-find-hint{0%,to{filter:drop-shadow(0 4px 6px rgb(0 0 0 / 18%))}50%{filter:drop-shadow(0 0 12px var(--pk-purple-soft))}}.pk-shelf{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:var(--pk-gap);padding:0 var(--pk-gap) 8px;border-bottom:6px solid var(--pk-shelf);border-radius:0 0 4px 4px}.pk-shelf-slot{position:relative;display:grid;place-items:center;width:96px;height:96px}.pk-shelf-slot img{width:100%;height:100%;object-fit:contain}[data-phase=ask] .pk-shelf-slot{width:80px;height:80px}.pk-shelf-slot[data-gone=true]{border:3px dashed var(--pk-purple-soft);border-radius:50%;box-sizing:border-box;animation:pk-gap-breathe 1.6s ease-in-out infinite}.pk-shelf-slot[data-back=true] img{animation:pk-home .6s var(--pk-spring) both}.pk-swirl{position:absolute;left:50%;top:50%;width:120%;height:auto;translate:-50% -50%;pointer-events:none;animation:pk-swirl 1.4s linear}@keyframes pk-gap-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes pk-home{0%{opacity:0;transform:translateY(60px) scale(.5)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pk-swirl{0%{opacity:0;transform:rotate(0) scale(.6)}25%{opacity:1}to{opacity:1;transform:rotate(300deg) scale(1)}}.pk-recipe-ask{display:flex;align-items:center;justify-content:center;gap:var(--pk-gap)}.pk-thought{position:relative;display:grid;place-items:center;width:104px;height:104px;border-radius:50%;background:var(--pk-surface);box-shadow:0 4px 14px #0000001f}.pk-thought img{width:70%;height:70%;object-fit:contain}.pk-thought[data-shown=false]{visibility:hidden}.pk-thought[data-shown=true]{animation:pk-enter .55s var(--pk-spring) both}@media (prefers-reduced-motion: reduce){.pk-thought[data-shown=true]{animation:none}}.pk-thought:before,.pk-thought:after{content:"";position:absolute;border-radius:50%;background:var(--pk-surface);box-shadow:0 2px 6px #0000001a}.pk-thought:before{width:18px;height:18px;left:-14px;bottom:10px}.pk-thought:after{width:10px;height:10px;left:-28px;bottom:2px}.pk-recipe-grid{width:100%;padding-top:var(--pk-gap);border-radius:var(--pk-radius) var(--pk-radius) 0 0;background:var(--pk-bg)}.pk-kitchen{position:relative;display:grid;justify-items:center;align-content:end;gap:2vh;width:min(100vw,400px);min-height:min(56dvh,420px)}.pk-work{position:relative;display:grid;place-items:center;width:62%;aspect-ratio:1}.pk-station{position:absolute;top:22%;right:0;bottom:0;left:0;width:100%;height:78%;object-fit:contain}.pk-ingredient{position:relative;z-index:1;width:56%;height:56%;object-fit:contain}[data-action=wash] .pk-ingredient{animation:pk-wash .6s ease-in-out infinite}[data-action=cut] .pk-ingredient{animation:pk-chop .5s ease-in-out infinite}[data-action=drop] .pk-ingredient{animation:pk-home .6s var(--pk-spring) both}.pk-splash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;object-fit:contain;animation:pk-splash .8s ease-out infinite}.pk-bowl{position:relative;display:grid;place-items:end center;width:46%;aspect-ratio:1.3}.pk-bowl[data-full=true]{width:72%;aspect-ratio:1;place-items:center}.pk-bowl-art,.pk-dish{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.pk-dish{animation:pk-bounce .52s ease-out}.pk-bowl-contents{position:relative;display:flex;justify-content:center;margin-bottom:26%}.pk-bowl-contents img{width:44px;height:44px;object-fit:contain;margin:0 -4px}.pk-bowl-contents img:last-child{animation:pk-home .52s var(--pk-spring) both}@keyframes pk-wash{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-6px) rotate(-6deg)}75%{transform:translate(6px) rotate(6deg)}}@keyframes pk-chop{0%,to{transform:scale(1)}45%{transform:scale(1.06,.92)}}@keyframes pk-splash{0%{opacity:.9;transform:translateY(0) scale(.9)}to{opacity:0;transform:translateY(-14px) scale(1.1)}}@media (prefers-reduced-motion: reduce){.pk-find-object[data-bounce=true],.pk-find-object[data-found=true],.pk-shelf-slot[data-gone=true],.pk-shelf-slot[data-back=true] img,.pk-swirl,.pk-ingredient,.pk-splash,.pk-dish,.pk-bowl-contents img:last-child,.pk-match-tile[data-hint=true]{animation:none}.pk-find-object[data-hint=true] img{animation:none;filter:drop-shadow(0 0 12px var(--pk-purple-soft))}}@media (orientation: landscape) and (max-height: 560px){[data-step=find],[data-step=missing],[data-step=recipe]{grid-auto-flow:column;justify-content:center;gap:var(--pk-gap);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.pk-find-stage{width:min(calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom)),calc(100vw - 150px))}[data-step=missing]{grid-auto-flow:row;grid-template-columns:auto auto;grid-template-areas:"dragon grid" "shelf  grid";align-items:center}[data-step=missing]>.pk-mascot{grid-area:dragon;width:72px}[data-step=missing]>.pk-shelf{grid-area:shelf;gap:var(--pk-gap-sm);padding-inline:var(--pk-gap-sm)}[data-step=missing]>.pk-grid{grid-area:grid;width:auto}[data-step=missing] .pk-shelf-slot,[data-step=missing][data-phase=ask] .pk-shelf-slot{width:64px;height:64px}}[data-screen=lesson][data-world] [data-step=intro],[data-screen=lesson][data-world] [data-step=echo]{background-image:var(--pk-unit-scene)}.pk-celebrate{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:1}.pk-confetti{position:absolute;top:-8vh;width:2.2vw;min-width:9px;height:3.4vw;min-height:14px;border-radius:2px;opacity:0;animation-name:pk-fall;animation-timing-function:linear;animation-fill-mode:forwards}.pk-confetti:nth-child(3n){border-radius:50%;height:2.4vw;min-height:10px}.pk-confetti:nth-child(6n+1){background:var(--pk-yellow-sun)}.pk-confetti:nth-child(6n+2){background:var(--pk-purple-soft)}.pk-confetti:nth-child(6n+3){background:var(--pk-blue-sky)}.pk-confetti:nth-child(6n+4){background:var(--pk-green-soft)}.pk-confetti:nth-child(6n+5){background:var(--pk-pink-warm)}.pk-confetti:nth-child(6n){background:var(--pk-gold)}@keyframes pk-fall{0%{opacity:0;transform:translate(0) rotate(0)}12%{opacity:1}35%{transform:translate(var(--pk-drift, 0),38vh) rotate(calc(var(--pk-spin, 520deg) * .35))}70%{opacity:1;transform:translate(calc(var(--pk-drift, 0) * -.65),78vh) rotate(calc(var(--pk-spin, 520deg) * .72))}to{opacity:0;transform:translate(calc(var(--pk-drift, 0) * .3),114vh) rotate(var(--pk-spin, 520deg))}}.pk-star{position:absolute;width:11vw;min-width:44px;aspect-ratio:1;display:grid;place-items:center;opacity:0;animation:pk-star-pop 2.6s ease-out forwards}.pk-star:before{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;border-radius:50%;background:radial-gradient(circle,#ffc83d8c,#ffc83d38 42%,#ffc83d00 70%);animation:pk-halo 2.6s ease-out forwards;animation-delay:inherit}@keyframes pk-halo{0%{opacity:0;transform:scale(.55)}24%{opacity:1;transform:scale(1.12)}60%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.4)}}.pk-star svg{position:relative;width:100%;height:100%;fill:var(--pk-yellow-sun)}@keyframes pk-star-pop{0%{opacity:0;transform:scale(.3) rotate(-18deg)}22%{opacity:1;transform:scale(1.15) rotate(4deg)}38%{transform:scale(1) rotate(0)}75%{opacity:1}to{opacity:0;transform:scale(1.05)}}[data-screen=come-back][data-arrived=true] .pk-mascot[data-mascot=bye]{animation:pk-arrive 2.4s cubic-bezier(.22,1,.36,1) both,pk-breathe 3.2s ease-in-out 2.4s infinite}@keyframes pk-arrive{0%{opacity:0;transform:translateY(26%) scale(.86)}45%{opacity:.7}74%{opacity:1;transform:translateY(-3.5%) scale(1.035)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.pk-celebrate{display:none}[data-screen=come-back][data-arrived=true] .pk-mascot[data-mascot=bye]{animation:none}}.pk-coach{width:var(--pk-touch-min);height:var(--pk-touch-min);border:none;border-radius:50%;background:var(--pk-purple-soft);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pk-coach[data-phase=idle]{animation:pk-coach-breathe 2.8s ease-in-out infinite}.pk-coach[data-phase=speaking]{animation:pk-coach-talk .38s ease-in-out infinite}.pk-coach[data-phase=listening]{background:var(--pk-yellow-sun);animation:pk-coach-listen 1.4s ease-out infinite}@keyframes pk-coach-breathe{0%,to{transform:scale(1);opacity:.75}50%{transform:scale(1.06);opacity:1}}@keyframes pk-coach-talk{0%,to{transform:scale(1)}50%{transform:scale(.94)}}@keyframes pk-coach-listen{0%{box-shadow:0 0 #ffc83d8c}to{box-shadow:0 0 0 26px #ffc83d00}}@media (prefers-reduced-motion: reduce){.pk-coach{animation:none!important}}@keyframes pk-enter{0%{opacity:0;transform:translateY(10px) scale(.6)}to{opacity:1;transform:translateY(0) scale(1)}}[data-stagger]>*:not([data-entered]){animation:pk-enter .55s var(--pk-spring) backwards}[data-stagger]>*:nth-child(1){animation-delay:0ms}[data-stagger]>*:nth-child(2){animation-delay:90ms}[data-stagger]>*:nth-child(3){animation-delay:.18s}[data-stagger]>*:nth-child(4){animation-delay:.27s}[data-stagger]>*:nth-child(5){animation-delay:.36s}[data-stagger]>*:nth-child(6){animation-delay:.45s}[data-stagger]>*:nth-child(7){animation-delay:.54s}[data-stagger]>*:nth-child(8){animation-delay:.63s}[data-stagger]>*:nth-child(9){animation-delay:.72s}[data-stagger]>*:nth-child(10){animation-delay:.81s}[data-stagger]>*:nth-child(11){animation-delay:.9s}[data-stagger]>*:nth-child(n+12){animation-delay:.99s}@keyframes pk-squash{0%{transform:scale(1)}30%{transform:scale(1.12,.82)}55%{transform:scale(.93,1.09)}75%{transform:scale(1.04,.97)}to{transform:scale(1)}}[data-tap][data-squash]>svg,[data-tap][data-squash]>img,[data-tap][data-squash]>.pk-mascot{animation:pk-squash .5s var(--pk-settle)}[data-tap-pad][data-squash]{animation:pk-squash .5s var(--pk-settle)}[data-tap-pad][data-squash]:after{content:"";position:absolute;top:-16px;right:-8px;bottom:-16px;left:-8px}@keyframes pk-pulse-ring{0%{transform:scale(.9);opacity:.45}to{transform:scale(1.35);opacity:0}}@keyframes pk-ripple{0%{transform:scale(.6);opacity:.6}to{transform:scale(2.1);opacity:0}}@media (prefers-reduced-motion: reduce){[data-tap][data-squash]>svg,[data-tap][data-squash]>img,[data-tap][data-squash]>.pk-mascot,[data-tap-pad][data-squash],[data-stagger]>*{animation:none}[data-stagger]>*{opacity:1;transform:none}}.pk-freeplay{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--pk-gap-sm);width:100%;height:100dvh;padding:max(var(--pk-gap-sm),env(safe-area-inset-top)) 0 max(var(--pk-gap-sm),env(safe-area-inset-bottom));box-sizing:border-box;background:var(--pk-bg);overflow:hidden}.pk-bar{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 2px;box-sizing:border-box;gap:2px}.pk-bar-side{display:flex;align-items:center;gap:2px}.pk-icon-btn,.pk-tool,.pk-strip .pk-blob{flex:0 0 auto}.pk-icon-btn{width:var(--pk-touch-min);height:var(--pk-touch-min);display:grid;place-items:center;padding:18px;border:none;border-radius:50%;background:var(--pk-surface);color:var(--pk-purple);box-shadow:0 2px 6px #00000024;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .12s ease-out,opacity .16s ease-out}.pk-icon-btn svg{width:100%;height:100%;display:block}.pk-icon-btn:disabled{opacity:.28}.pk-icon-btn[data-icon=clear]{color:var(--pk-text-soft)}.pk-freeplay-stage{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--pk-gap-sm);width:100%;min-height:0}.pk-page{position:relative;flex:0 1 auto;display:flex;align-items:center;justify-content:center;min-height:0;width:100%;max-height:100%;padding:0 8px;box-sizing:border-box}.pk-page .pk-icon-btn{display:none}@media (min-width: 560px){.pk-page{gap:var(--pk-gap-sm)}.pk-page .pk-icon-btn{display:grid}}.pk-freeplay-canvas{width:min(100%,100cqh);max-width:100%;height:auto;aspect-ratio:1;border-radius:var(--pk-radius);overflow:hidden;background:var(--pk-surface);box-shadow:0 2px 10px #0000001f}.pk-freeplay-stage{container-type:size}.pk-freeplay-canvas svg{display:block;width:100%;height:100%;touch-action:none}.pk-freeplay-canvas [data-outline],.pk-freeplay-canvas [data-paint]{pointer-events:none}.pk-freeplay-canvas [data-paint][data-erasing=true]{pointer-events:auto}.pk-rail{flex:0 0 auto;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:2px}.pk-tool{width:var(--pk-touch-min);height:var(--pk-touch-min);display:grid;place-items:center;padding:19px;border:4px solid transparent;border-radius:var(--pk-radius);background:var(--pk-surface);color:var(--pk-purple);box-shadow:0 2px 6px #00000024;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .14s ease-out,box-shadow .14s ease-out}.pk-tool svg{width:100%;height:100%;display:block}.pk-tool[data-selected=true]{border-color:var(--pk-purple);background:var(--pk-purple);color:var(--pk-surface);box-shadow:0 6px 14px #0000003d}.pk-strip{flex:0 0 auto;display:flex;align-items:center;gap:var(--pk-gap-sm);width:100%;padding:10px var(--pk-gap-sm) 6px;box-sizing:border-box;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none}.pk-strip::-webkit-scrollbar{display:none}.pk-strip .pk-blob{position:relative;flex:0 0 auto;width:var(--pk-touch-min);height:var(--pk-touch-min);border:4px solid var(--pk-surface);border-radius:50%;padding:0;scroll-snap-align:center;box-shadow:0 2px 6px #0000002e;transition:bottom .14s var(--pk-settle),transform .14s var(--pk-settle),box-shadow .14s var(--pk-settle)}.pk-strip .pk-blob[data-selected=true]{bottom:4px;transform:scale(1.1);box-shadow:0 8px 16px #00000042}[data-alive="1"] .pk-freeplay-canvas{animation:pk-freeplay-bounce .82s ease-in-out 2}[data-alive="2"] .pk-freeplay-canvas{animation:pk-freeplay-sway .9s ease-in-out 2}[data-alive="3"] .pk-freeplay-canvas{animation:pk-freeplay-pop .7s ease-out 2}@keyframes pk-freeplay-bounce{0%,to{transform:translateY(0) scale(1)}35%{transform:translateY(-14px) scale(1.04)}65%{transform:translateY(2px) scale(.99)}}@keyframes pk-freeplay-sway{0%,to{transform:scale(1) rotate(0)}30%{transform:scale(1.035) rotate(-2.2deg)}70%{transform:scale(1.035) rotate(2.2deg)}}@keyframes pk-freeplay-pop{0%{transform:scale(1)}40%{transform:scale(1.07) rotate(1.4deg)}70%{transform:scale(.98) rotate(-.8deg)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.pk-freeplay-canvas,.pk-icon-btn,.pk-tool,.pk-strip .pk-blob{animation:none;transition:none}}@media (min-width: 560px){.pk-freeplay-stage{flex-direction:row}.pk-rail{flex-direction:column;gap:var(--pk-gap-sm)}.pk-freeplay{padding:max(var(--pk-gap-sm),env(safe-area-inset-top)) max(var(--pk-gap-sm),env(safe-area-inset-right)) max(var(--pk-gap-sm),env(safe-area-inset-bottom)) max(var(--pk-gap-sm),env(safe-area-inset-left))}}@media (orientation: landscape) and (max-height: 560px){.pk-freeplay{flex-direction:row;align-items:stretch;gap:4px;padding:env(safe-area-inset-top) max(var(--pk-gap-sm),env(safe-area-inset-right)) env(safe-area-inset-bottom) max(var(--pk-gap-sm),env(safe-area-inset-left))}.pk-bar{flex-direction:column;justify-content:space-between;width:auto;height:100%;padding:2px 0}.pk-bar-side{flex-direction:column}.pk-freeplay-stage{flex:1 1 auto;flex-direction:row;height:100%}.pk-rail{flex-direction:column;gap:2px}.pk-page .pk-icon-btn{display:none}.pk-strip{flex-direction:column;width:auto;height:100%;padding:var(--pk-gap-sm) 6px;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y proximity}}.pk-finished{position:absolute;left:0;right:0;bottom:var(--pk-gap-lg);display:flex;align-items:center;justify-content:center;gap:var(--pk-gap);animation:pk-finished-in .42s ease-out both}.pk-finished .pk-icon-btn{width:96px;height:96px;background:var(--pk-purple);color:var(--pk-surface);box-shadow:0 6px 16px #00000042}.pk-freeplay[data-finished] .pk-freeplay-stage{padding-bottom:calc(96px + var(--pk-gap-lg));box-sizing:border-box}@keyframes pk-finished-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.pk-finished{animation:none}}.pk-book{display:flex;flex-direction:column;gap:var(--pk-gap-sm);width:100%;min-height:100dvh;padding:max(var(--pk-gap-sm),env(safe-area-inset-top)) var(--pk-gap-sm) max(var(--pk-gap-sm),env(safe-area-inset-bottom));box-sizing:border-box;background:var(--pk-bg)}.pk-book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--pk-gap);padding:var(--pk-gap-sm)}.pk-book-card{position:relative;aspect-ratio:1;display:grid;place-items:center;padding:12px;border:none;border-radius:var(--pk-radius);box-shadow:0 4px 12px #00000029;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .12s ease-out}.pk-book-thumb{width:100%;height:100%;object-fit:contain;border-radius:calc(var(--pk-radius) - 8px);background:var(--pk-surface);pointer-events:none}.pk-book-lock{position:absolute;right:8px;bottom:8px;width:40px;height:40px;padding:8px;box-sizing:border-box;border-radius:50%;background:var(--pk-surface);color:var(--pk-purple);box-shadow:0 2px 6px #0000002e}.pk-book-lock svg{width:100%;height:100%;display:block}.pk-book-card[data-refused]{animation:pk-book-bounce .36s ease-out}@keyframes pk-book-bounce{0%,to{transform:scale(1)}30%{transform:scale(.93)}60%{transform:scale(1.04)}}@media (prefers-reduced-motion: reduce){.pk-book-card[data-refused]{animation:none}}.pk-parent{height:100dvh;overflow:hidden;box-sizing:border-box;max-width:560px;margin:0 auto;display:flex;flex-direction:column;background:var(--pk-bg);color:var(--pk-text);line-height:1.5}.pk-parent-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:max(1.25rem,env(safe-area-inset-top)) 1.25rem .75rem}.pk-parent h1{margin:0;font-size:1.3rem;font-weight:700;letter-spacing:-.01em}.pk-parent h2{margin:0 0 .7rem;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--pk-text-soft)}.pk-parent-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem 1.25rem 1.5rem}.pk-parent-body section+section,.pk-parent-body section+p{margin-top:1.75rem}.pk-card{background:var(--pk-surface);border:1px solid var(--pk-beige);border-radius:18px;padding:.9rem 1rem}.pk-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.pk-stat{text-align:center;padding:.9rem .5rem}.pk-stat b{display:block;font-size:1.7rem;font-weight:700;line-height:1.1;color:var(--pk-purple-deep);font-variant-numeric:tabular-nums}.pk-stat b i{font-style:normal;font-size:.9rem;font-weight:700;margin-left:.1em}.pk-stat span{display:block;margin-top:.3rem;font-size:.72rem;line-height:1.3;color:var(--pk-text-soft)}.pk-units{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}.pk-unit{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:.3rem .75rem}.pk-unit img,.pk-unit-blank{width:40px;height:40px;object-fit:contain;grid-row:span 2}.pk-unit-blank{border-radius:10px;background:var(--pk-beige)}.pk-unit b{font-weight:600;align-self:end}.pk-unit i{font-style:normal;font-size:.85rem;font-weight:600;color:var(--pk-text-soft);font-variant-numeric:tabular-nums;align-self:end}.pk-bar{grid-column:2 / -1;height:8px;border-radius:99px;background:var(--pk-beige);overflow:hidden;align-self:start}.pk-bar span{display:block;height:100%;border-radius:99px;background:var(--pk-purple-soft)}.pk-next{margin:0;text-align:center;font-weight:600;color:var(--pk-purple-deep);background:var(--pk-blue-soft);border-color:transparent}.pk-wordgroups{display:grid;gap:.6rem}.pk-wordgroup{padding:0;overflow:hidden}.pk-wordgroup>summary{display:grid;grid-template-columns:40px 1fr auto 14px;align-items:center;gap:.75rem;padding:.85rem 1rem;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.pk-wordgroup>summary::-webkit-details-marker{display:none}.pk-wordgroup>summary img,.pk-wordgroup>summary .pk-unit-blank{width:40px;height:40px;object-fit:contain}.pk-wordgroup>summary b{font-weight:600}.pk-wordgroup>summary i{font-style:normal;font-size:.85rem;font-weight:600;color:var(--pk-text-soft);font-variant-numeric:tabular-nums}.pk-wordgroup>summary:after{content:"";width:8px;height:8px;border-right:2px solid var(--pk-text-soft);border-bottom:2px solid var(--pk-text-soft);transform:rotate(45deg) translate(-2px,-2px);transition:transform .15s ease}.pk-wordgroup[open]>summary:after{transform:rotate(-135deg) translate(-2px,-2px)}.pk-words{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}.pk-wordgroup .pk-words{padding:.25rem .6rem .8rem;border-top:1px solid var(--pk-beige)}.pk-words li{display:flex;align-items:center;gap:.85rem;padding:.6rem .9rem}.pk-wordgroup .pk-words li:first-child{margin-top:.5rem}.pk-words li[data-learned=false]{opacity:.45}.pk-words img{width:38px;height:38px;object-fit:contain;flex:none}.pk-word{flex:1;display:flex;flex-direction:column;line-height:1.25}.pk-word b{font-weight:600}.pk-word em{font-style:normal;font-size:.85rem;color:var(--pk-text-soft)}.pk-check{width:22px;height:22px;flex:none}.pk-check circle{fill:var(--pk-green-leaf)}.pk-check path{fill:none;stroke:var(--pk-white-warm);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.pk-empty{margin:.75rem 0 0;color:var(--pk-text-soft);font-size:.9rem}.pk-settings{display:grid;gap:.6rem}.pk-setting{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.2rem 1rem}.pk-setting b{font-weight:600}.pk-setting span{color:var(--pk-text-soft);text-align:right}.pk-setting small{grid-column:1 / -1;font-size:.8rem;color:var(--pk-text-soft)}.pk-pin{font-size:1.15rem;font-weight:700;letter-spacing:.25em;color:var(--pk-purple-deep)!important;font-variant-numeric:tabular-nums}.pk-build{font-size:.72rem;word-break:break-all}.pk-signout{width:100%;margin-top:.5rem}.pk-pin-change{grid-column:1 / -1;justify-self:start;padding:.4rem .9rem;font-size:.82rem}.pk-pin-form{grid-template-columns:1fr;gap:.6rem}.pk-pin-form label{display:grid;gap:.3rem;font-size:.85rem;color:var(--pk-text-soft)}.pk-pin-form input{box-sizing:border-box;padding:.6rem .8rem;font-size:1.2rem;font-family:inherit;font-variant-numeric:tabular-nums;letter-spacing:.3em;text-align:center;color:var(--pk-text);background:var(--pk-bg);border:2px solid var(--pk-beige);border-radius:12px}.pk-pin-form input:focus{outline:none;border-color:var(--pk-purple-soft)}.pk-pin-note-error{padding:.5rem .7rem;border-radius:10px;background:var(--pk-pink-soft);font-size:.8rem}.pk-pin-form-actions{display:flex;gap:.5rem}.pk-pin-form-actions button{flex:1}.pk-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:.25rem;flex-shrink:0;padding:.4rem .5rem calc(.4rem + env(safe-area-inset-bottom));background:var(--pk-surface);border-top:1px solid var(--pk-beige)}.pk-tabs button{display:grid;justify-items:center;gap:.15rem;padding:.45rem .2rem;font-family:inherit;font-size:.7rem;font-weight:600;color:var(--pk-text-soft);background:none;border:none;border-radius:12px;cursor:pointer}.pk-tabs button[data-active=true]{color:var(--pk-purple);background:var(--pk-bg)}.pk-tabs svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.pk-gate{min-height:100dvh;box-sizing:border-box;display:grid;align-content:center;justify-items:center;gap:1.25rem;padding:2rem 1.25rem;background:var(--pk-bg);color:var(--pk-text);text-align:center}.pk-gate form{display:grid;gap:1rem;width:100%;max-width:260px}.pk-gate label{font-size:.95rem;color:var(--pk-text-soft)}.pk-gate input{width:100%;box-sizing:border-box;padding:.9rem 1rem;font-size:1.75rem;font-family:inherit;font-variant-numeric:tabular-nums;letter-spacing:.4em;text-align:center;text-indent:.4em;color:var(--pk-text);background:var(--pk-surface);border:2px solid var(--pk-beige);border-radius:14px}.pk-gate input:focus{outline:none;border-color:var(--pk-purple-soft)}.pk-gate input::-webkit-outer-spin-button,.pk-gate input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.pk-parent-btn{padding:.7rem 1.1rem;font-family:inherit;font-size:.95rem;font-weight:600;color:var(--pk-purple-deep);background:var(--pk-surface);border:1px solid var(--pk-beige);border-radius:12px;cursor:pointer}.pk-parent-btn:active{background:var(--pk-beige)}.pk-parent-btn-primary{width:100%;padding:.95rem 1.5rem;font-size:1rem;font-weight:700;color:var(--pk-white-warm);background:var(--pk-purple);border:none;border-radius:14px}.pk-parent-btn-primary:active{background:var(--pk-purple-deep)}.pk-gate-wrong{margin:0;padding:.7rem 1rem;border-radius:12px;background:var(--pk-pink-soft);color:var(--pk-text);font-size:.9rem}:root{--pk-purple: #6F4CC3;--pk-purple-deep: #5637A5;--pk-purple-soft: #8B6BDD;--pk-yellow-sun: #FFC83D;--pk-yellow-warm: #FFD95A;--pk-gold: #FFB51B;--pk-green-leaf: #79B94A;--pk-green-soft: #A9D86E;--pk-blue-sky: #58B7E8;--pk-blue-soft: #BFEAF8;--pk-pink-warm: #F49AA6;--pk-pink-soft: #F9C8CE;--pk-orange: #F2A53B;--pk-cream: #FFF9EE;--pk-white-warm: #FFFEFA;--pk-beige: #F3EBDD;--pk-text: #332D3A;--pk-text-soft: #6F6876;--pk-bg: var(--pk-cream);--pk-surface: var(--pk-white-warm);--pk-tile: var(--pk-white-warm);--pk-tile-ok: var(--pk-green-soft);--pk-accent: var(--pk-purple);--pk-mascot: var(--pk-purple);--pk-sparkle: var(--pk-gold);--pk-chant-ground: #000000;--pk-paint-red: #E4572E;--pk-paint-blue: #3D7DD8;--pk-paint-yellow: #F2C230;--pk-paint-green: #5BA84A;--pk-paint-orange: #EE8A3C;--pk-paint-purple: #8B5BC7;--pk-paint-pink: #EE8FA8;--pk-paint-brown: #8A5A3C;--pk-paint-black: #2E2A33;--pk-paint-white: #FFFFFF;--pk-freeplay-red: #E4572E;--pk-freeplay-orange: #EE8A3C;--pk-freeplay-yellow: #F2C230;--pk-freeplay-green: #5BA84A;--pk-freeplay-teal: #2FA39B;--pk-freeplay-sky: #58B7E8;--pk-freeplay-blue: #3D7DD8;--pk-freeplay-purple: #8B5BC7;--pk-freeplay-pink: #EE8FA8;--pk-freeplay-brown: #8A5A3C;--pk-freeplay-grey: #9A93A3;--pk-freeplay-black: #2E2A33;--pk-shelf: #D9CDB6;--pk-gap-sm: 2vw;--pk-gap: 4vw;--pk-gap-lg: 4vh;--pk-radius: 24px;--pk-touch-min: 88px;--pk-spring: cubic-bezier(.34, 1.56, .64, 1);--pk-settle: cubic-bezier(.22, 1, .36, 1)}.pk-roster{margin:0;padding:0;list-style:none;display:grid;gap:.6rem}.pk-roster-row{display:grid;gap:.15rem}.pk-roster-row b{font-weight:600}.pk-roster-row .pk-empty{margin:0;font-size:.85rem;font-style:italic}.pk-roster-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.pk-roster-actions button{flex:1 1 calc(50% - .25rem);min-width:7rem;padding:.5rem .7rem;font-size:.82rem}.pk-btn-danger{color:var(--pk-text);background:var(--pk-pink-soft);border-color:var(--pk-pink-warm)}.pk-btn-danger:active{background:var(--pk-pink-warm)}.pk-school-id{display:flex;align-items:center;justify-content:space-between;gap:1rem}.pk-school-id>div{display:flex;align-items:baseline;gap:.6rem}.pk-school-id span{color:var(--pk-text-soft);font-size:.85rem}.pk-school-id .pk-empty{margin:0;font-style:italic}.pk-inline-form{display:grid;gap:.6rem;margin-top:.5rem}.pk-inline-form label{display:grid;gap:.3rem;font-size:.85rem;color:var(--pk-text-soft)}.pk-inline-form input{box-sizing:border-box;padding:.6rem .8rem;font-size:1rem;font-family:inherit;color:var(--pk-text);background:var(--pk-bg);border:2px solid var(--pk-beige);border-radius:12px}.pk-inline-form input:focus{outline:none;border-color:var(--pk-purple-soft)}.pk-inline-form-actions{display:flex;gap:.5rem}.pk-inline-form-actions button{flex:1}.pk-credentials{display:grid;gap:.5rem;margin-top:.75rem}.pk-credentials div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem .8rem;background:var(--pk-bg);border-radius:10px;font-variant-numeric:tabular-nums}.pk-credentials b{font-weight:700;color:var(--pk-purple-deep)}
