.pattern-play{--hot:#75b8bd;--deep:#43838c;--sky:#91dcea;--ink:#54456e}.pattern-play .prek-immersive-heading p{color:#638d92}.pattern-play.is-immersive .prek-machine{width:min(1320px,100%);background:#65aab1;box-shadow:0 10px 0 #407b83,0 22px 42px #2d51555c}.pattern-play.is-immersive .prek-prompt,.pattern-play.is-immersive .prek-status{background:#fffdf1e8;box-shadow:0 7px 20px #51466c3d}.pattern-play .prek-stars svg{color:#aaa1b8;fill:#ece6ef}.pattern-play .prek-stars svg.is-done{color:#d69012;fill:#ffe05b}.pattern-play .prek-stars svg.is-current{color:#795cca;fill:#c6a3ff}.pattern-play-scene{position:absolute;inset:0;overflow:hidden;border-radius:0!important;background:#f4d9ad;box-shadow:none!important;isolation:isolate}.pattern-play-background{z-index:0;object-fit:cover;object-position:center;image-rendering:auto;transform:translateZ(0) scale(1.002);backface-visibility:hidden}.pattern-play-light{position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(180deg,#ffffff0b 0 55%,#79583312 100%)}.pp-pattern-label{position:absolute;z-index:5;top:105px;right:20%;left:20%;margin:0;color:#fffdf3;font-size:clamp(18px,2.2vw,27px);font-weight:1000;letter-spacing:.05em;text-align:center;text-shadow:0 3px 0 #9f7048,0 7px 13px #57402f82}.pp-pattern-line{position:absolute;z-index:6;top:190px;left:50%;display:grid;width:min(1010px,84%);height:190px;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;justify-items:center;gap:clamp(4px,1vw,14px);translate:-50% 0}.pp-pattern-slot{position:relative;display:grid;width:min(100%,142px);aspect-ratio:1;place-items:center;padding:0;border:0;color:inherit;background:transparent;box-shadow:none}button.pp-pattern-slot{appearance:none}.pp-piece{position:relative;display:grid;width:100%;height:100%;place-items:center;pointer-events:none}.pp-piece>i{display:block;width:74%;aspect-ratio:1;background:linear-gradient(135deg,#fff9 0 15%,transparent 28%),var(--piece-color);box-shadow:inset -10px -11px #0002,inset 5px 6px #fff4,0 11px 7px #634c363d;filter:drop-shadow(0 4px 3px #674d5333)}.pp-circle>i{border-radius:50%}.pp-square>i{border-radius:20%}.pp-star>i{clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 93%,50% 71%,21% 93%,32% 56%,2% 35%,39% 34%)}.pp-triangle>i{clip-path:polygon(50% 2%,98% 94%,2% 94%)}.pp-heart>i{clip-path:polygon(50% 94%,43% 87%,18% 66%,8% 53%,3% 39%,3% 27%,8% 16%,17% 9%,28% 7%,39% 12%,50% 25%,61% 12%,72% 7%,83% 9%,92% 16%,97% 27%,97% 39%,92% 53%,82% 66%,57% 87%)}.pp-empty{cursor:default;border-radius:28%;outline:4px dashed #ffffffc9;outline-offset:-10px;background:#fff8df66}.pp-question{color:#fff;font-size:clamp(58px,7vw,86px);font-weight:1000;line-height:1;text-shadow:0 4px 0 #967b9d,0 8px 13px #604c675c}.pp-empty.is-correct{outline-style:solid;animation:pp-slot-glow .65s ease-in-out infinite alternate}.pp-choices{position:absolute;z-index:8;right:6%;bottom:7%;left:27%;display:grid;height:23%;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;gap:clamp(16px,5vw,72px)}.pp-choices button{position:relative;display:block;width:min(100%,145px);aspect-ratio:1;cursor:grab;appearance:none;padding:0;border:0;color:inherit;background:transparent;box-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pp-choices button:disabled{cursor:default}.pp-choices button:hover:not(:disabled){transform:translateY(-8px) scale(1.045)}.pp-choices button:active:not(:disabled){transform:translateY(2px) scale(.94)}.pp-choices button:focus-visible{outline:5px solid #fff56e;outline-offset:3px;border-radius:28%}.pp-choices .pp-piece>i{width:79%}.pp-choices button.is-wrong{animation:pp-choice-wiggle .5s ease-in-out}.pp-helper{position:absolute;z-index:7;bottom:2%;left:1%;width:clamp(210px,19.8vw,264px);aspect-ratio:1;pointer-events:none;transform-origin:50% 92%;filter:drop-shadow(0 14px 8px #674b3857)}.pp-helper img{object-fit:contain;object-position:center bottom;opacity:0;transition:opacity .12s linear}.pp-helper.is-happy .cherry-happy,.pp-helper.is-idle .cherry-idle,.pp-helper.is-surprised .cherry-surprised{opacity:1}.pp-helper.is-idle{animation:pp-breathe 2.8s ease-in-out infinite}.pp-helper.is-happy{animation:pp-character-cheer .7s cubic-bezier(.2,1.35,.4,1)}.pp-helper.is-surprised{animation:pp-character-wiggle .45s ease-in-out}.pp-feedback{position:absolute;z-index:9;right:8%;bottom:1.3%;left:27%;margin:0;color:#fffef5;font-size:clamp(15px,1.8vw,21px);font-weight:1000;line-height:1.1;text-align:center;text-shadow:0 3px 0 #8f6748,0 7px 13px #57402f82}@keyframes pp-slot-glow{to{transform:translateY(-6px) scale(1.055);filter:drop-shadow(0 0 16px #fff178)}}@keyframes pp-choice-wiggle{25%{transform:translateX(-9px) rotate(-5deg)}65%{transform:translateX(8px) rotate(4deg)}}@keyframes pp-breathe{50%{transform:translateY(-5px) scale(1.015)}}@keyframes pp-character-cheer{42%{transform:translateY(-20px) rotate(4deg) scale(1.08)}}@keyframes pp-character-wiggle{25%{transform:translateX(-8px) rotate(-2deg)}65%{transform:translateX(7px) rotate(2deg)}}@media (min-width:651px){.pattern-play.is-immersive .prek-screen{min-height:0;aspect-ratio:16/9}}@media (max-width:1000px){.pp-pattern-label{top:151px}.pp-pattern-line{top:215px;width:94%;height:170px}.pp-choices{right:3%;bottom:6%;left:28%;height:22%}.pp-helper{width:clamp(180px,22.8vw,228px)}}@media (max-width:650px){.pattern-play-background{object-position:center}.pp-pattern-label{top:121px;font-size:16px}.pp-pattern-line{top:155px;width:98%;height:145px;gap:1px}.pp-pattern-slot{width:100%}.pp-piece>i{width:79%;box-shadow:inset -6px -7px #0002,inset 3px 4px #fff4,0 7px 5px #634c363d}.pp-empty{outline-width:3px;outline-offset:-6px}.pp-question{font-size:clamp(40px,12vw,58px)}.pp-choices{right:1%;bottom:6%;left:31%;height:20%;gap:4px}.pp-choices button{width:min(100%,92px)}.pp-helper{bottom:4%;left:-8%;width:154px}.pp-feedback{right:3%;bottom:1%;left:31%;font-size:13px}}@media (max-height:700px) and (min-width:651px){.pp-pattern-label{top:96px}.pp-pattern-line{top:125px;height:155px;width:min(900px,78%)}.pp-choices{height:22%}.pp-helper{width:198px}}@media (prefers-reduced-motion:reduce){.pp-choices button.is-wrong,.pp-empty.is-correct,.pp-helper{animation:none!important}.pp-helper img{transition:none}}