/* Shared layout safeguards and the expanded activities. */
main,.panel,.hero>div,.pg-split>div{min-width:0}button{max-width:100%}.parent-details summary{cursor:pointer;padding:18px;background:#fffdf5;border-radius:20px}.parent-details .panel{margin-top:12px}
.mission-actions,.beat-options,.pet-outfits,.pet-bubble-play{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:20px 0}.mission-actions button,.pet-outfits button,.pet-bubble-play button{font-size:38px;min-width:78px;min-height:78px;border:3px solid #d6e5d6;border-radius:24px;background:#fffaf0}.mission-actions button[aria-pressed=true]{border-color:#b08239;box-shadow:0 0 0 5px #eed48d66}.mission-actions small{display:block;font-size:15px}
.story-scene{display:block;width:100%;border-radius:18px;overflow:hidden;background:#d9ecdf}.story-feature{cursor:pointer;outline:none}.story-feature .found-ring{visibility:hidden;pointer-events:none}.story-feature.found .found-ring,.story-feature.hint .found-ring,.story-feature:focus-visible .found-ring{visibility:visible}.story-feature.hint .found-ring{stroke-dasharray:7 5}.story-feature:focus-visible .found-ring{stroke:#345f95}.scene h2{margin-bottom:10px}.story-scene>path:first-of-type{animation:scene-light 5s ease-in-out infinite}@keyframes scene-light{50%{opacity:.82}}
.word-picture{font-size:100px;text-align:center}.word-picture .garden-sprite{width:1.5em;height:1.5em}.word-model,.word-slots{display:flex;justify-content:center;gap:10px;font-size:clamp(25px,6vw,48px);letter-spacing:.1em;margin:20px 0}.word-slots span{min-width:40px;border-bottom:4px solid #bed0af}.word-slots .done{color:#386b52}
.beat-score{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:25px 0}.beat-score span{min-width:65px;padding:18px;border:2px solid #d4dfcd;border-radius:20px;background:#fffdf5;font-size:24px}.beat-score .done{background:#d9edce}.beat-score .active,.beat-options .active{background:#f8de91;box-shadow:0 0 0 5px #e9c26266}.beat-options .drum{min-width:95px;max-width:180px;flex:1;padding:20px 10px}.beat-options b,.beat-options small{display:block}.beat-options small{font-size:16px;margin-top:15px}
.fish-intro{text-align:center;background:#fff6d8;border:3px solid #e3c984;border-radius:25px;padding:22px;margin-bottom:20px}.fish-intro>div{font-size:80px}.tank-ornament{position:absolute;bottom:10px;left:45%;font-size:70px;pointer-events:none}.water-world[data-decoration="1"]{background:linear-gradient(#d5e9f8,#90b3d9)}.water-world[data-decoration="2"]{background:linear-gradient(#ccefe7,#78b8b2)}.calm-bugs .bug-button{animation:none!important}
.crop-stage{width:100%;max-width:170px;height:130px}.finished-character{display:block;margin:20px auto;border:0;background:#e7eedb;border-radius:35px;padding:30px;font-size:100px}.finished-character.greeting{animation:character-greeting .8s ease-in-out}.packed-toys{display:flex;gap:3px;flex-wrap:wrap}.packed-toys>span{width:28px;height:30px;display:inline-flex}.packed-toys svg,.packed-toys .garden-sprite{width:100%;height:100%}.puzzle-slot.placed,.silhouette-slot.placed{animation:piece-land .25s ease-out}.pet-bubble-play button:not(:disabled){border-radius:50%;background:#d9eef1;color:#477780;animation:bob 2s ease-in-out infinite}.pet-bubble-play button:disabled{background:#fff0b7;opacity:1}.memory .card.open,.board .card.open{animation:piece-land .22s ease-out}.board .card.matched{box-shadow:0 0 0 4px #bdd8a9}
@keyframes piece-land{from{transform:scale(.9);opacity:.65}to{transform:scale(1);opacity:1}}@keyframes character-greeting{25%,75%{transform:rotate(-7deg) translateY(-12px)}50%{transform:rotate(7deg)}}
@media(max-width:650px){.two-scenes{grid-template-columns:1fr}.story-scene{max-height:420px}.mission-actions{gap:8px}.beat-options{gap:7px}.beat-options .drum{min-width:75px}.word-slots{gap:5px}.word-slots span{min-width:28px}.fish-intro{padding:16px}.pet-outfits button,.pet-bubble-play button{min-width:65px;min-height:65px}.parent-details{width:100%}}
@media(prefers-reduced-motion:reduce){.story-scene>path,.pet-bubble-play button,.finished-character,.puzzle-slot,.silhouette-slot,.board .card{animation:none!important}}

.picture-guide{margin:0 0 20px;background:#fffaf0;border:1px solid #dbe5d6;border-radius:20px;padding:14px 18px}.picture-guide summary{cursor:pointer;font-weight:bold}.picture-guide>div{display:flex;gap:16px;justify-content:space-around;flex-wrap:wrap}.picture-guide p{text-align:center;max-width:180px}.picture-guide b{display:block;font-size:40px}.music-animation .solo-note{transform:translateY(-18px) rotate(10deg);transition:transform .15s}

.pair-gallery{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;font-size:45px;margin:20px}.pair-gallery span{animation:character-greeting .8s ease-in-out}.pair-gallery .garden-sprite{width:1.2em;height:1.2em}
