.pattern-train-game{--hot:#f18b70;--deep:#a9534e;--ink:#484b62;background:linear-gradient(180deg,#9edff3,#dcf1d0 67%,#96ce69 0)}.pattern-train-game .prek-immersive-heading p{color:#52746f}.pattern-train-game.is-immersive .prek-machine{background:#e99a77;box-shadow:0 10px 0 #a95c52,0 22px 42px #4d493b40}.pattern-train-game.is-immersive .prek-prompt,.pattern-train-game.is-immersive .prek-status{background:#fffaf0df;box-shadow:0 7px 20px #4f5a4830}.pattern-train-game.is-immersive .prek-stars svg{color:#8ea09b;fill:#d9e5da}.pattern-train-game.is-immersive .prek-stars svg.is-done{color:#d18d19;fill:#ffda57}.pattern-train-game.is-immersive .prek-stars svg.is-current{color:#ae5f50;fill:#f39a7b}.pattern-train-game .pt-scene{position:absolute;z-index:0;inset:0;width:100%;height:100%;min-height:0;margin:0;overflow:hidden;padding:0;border:0;border-radius:0;background:#9fdef0;box-shadow:none}.pattern-train-game .pt-scene:before{display:none}.pattern-train-game .pt-scene-background{position:absolute!important;z-index:0;inset:0!important;width:100%!important;height:100%!important;object-fit:cover;object-position:center center;image-rendering:auto;filter:saturate(1.02) contrast(1.025);transform:translateZ(0);backface-visibility:hidden}.pattern-train-game .pt-scene-light{position:absolute;z-index:1;inset:0;pointer-events:none;background:radial-gradient(circle at 53% 24%,#fff5 0 9%,transparent 36%),linear-gradient(180deg,#fff1 0 48%,transparent 67%,#44662b0f);mix-blend-mode:soft-light}.pattern-train-game .pt-train{position:absolute;z-index:8;bottom:32.35%;left:50%;display:flex;width:min(88%,900px);height:clamp(220px,27vw,285px);align-items:flex-end;justify-content:center;filter:drop-shadow(0 2px 2px #39462b32);transform:translate3d(-50%,0,0) scale(1.12);transform-origin:52% 100%;will-change:transform}.pattern-train-game .pt-wagons{display:flex;min-width:0;height:100%;flex:0 0 72.727%;align-items:flex-end;justify-content:flex-end}.pattern-train-game .pt-locomotive{position:relative;width:27.273%;height:100%;flex:0 0 27.273%;margin-left:0}.pattern-train-game .pt-train.is-long{width:min(96%,1080px)}.pattern-train-game .pt-train.is-long .pt-wagons{flex-basis:80%}.pattern-train-game .pt-train.is-long .pt-locomotive{width:20%;flex-basis:20%}.pattern-train-game .pt-car img,.pattern-train-game .pt-locomotive img{object-fit:contain;object-position:center bottom;user-select:none;-webkit-user-drag:none;transform:scale(1.035);transform-origin:center bottom}.pattern-train-game .pt-car{position:relative;width:calc(100% / var(--car-count));height:auto;aspect-ratio:4/3;min-width:0;flex:1 1 0;margin-right:0;padding:0;border:0;color:#fff;background:transparent;font:inherit;transform-origin:50% 100%}.pattern-train-game .pt-car strong{position:absolute;z-index:3;top:38.5%;left:50%;display:grid;width:clamp(43px,43%,72px);aspect-ratio:1;place-items:center;padding:3px;border:3px solid #fff8;border-radius:28%;color:#fff;background:radial-gradient(circle at 28% 22%,#fff9 0 7%,transparent 8%),linear-gradient(145deg,#fff4,transparent 46%),var(--block);box-shadow:inset -6px -7px 0 #00000017,inset 3px 3px 0 #ffffff42,0 3px 0 #83564252,0 5px 9px #1b596638;font-size:clamp(8px,1.25vw,14px);font-weight:1000;line-height:1;text-shadow:0 2px 2px #45323873;transform:translate(-50%,-50%)}.pattern-train-game .pt-empty-car{pointer-events:none}.pattern-train-game .pt-empty-car strong{border:3px dashed #d69354;border-radius:50%;color:#cf6253;background:#fffbd8f2;box-shadow:inset 0 2px 5px #fff,0 2px 0 #dcae35,0 4px 8px #1b596638;font-size:clamp(27px,3.7vw,45px);text-shadow:0 2px 0 #fff,0 0 8px #fff;animation:pt-question-pulse 1.15s ease-in-out infinite alternate}.pattern-train-game .pt-empty-car>span{position:absolute;z-index:2;top:20%;left:31%;width:38%;height:39%;pointer-events:none;border-radius:50%;background:radial-gradient(circle,#fff9 0 38%,#ffe77854 58%,transparent 74%);filter:blur(2px);animation:pt-slot-glow 1.15s ease-in-out infinite alternate}.pattern-train-game .pt-empty-car.is-filled{animation:pt-car-pop .64s cubic-bezier(.2,1.55,.35,1) both}.pattern-train-game .pt-empty-car.is-filled strong{border-style:solid;border-color:#fff8;border-radius:28%;color:#fff;background:radial-gradient(circle at 28% 22%,#fff9 0 7%,transparent 8%),linear-gradient(145deg,#fff4,transparent 46%),var(--block);font-size:clamp(8px,1.25vw,14px);text-shadow:0 2px 2px #45323873;animation:pt-block-pop .58s cubic-bezier(.2,1.65,.35,1) both}.pattern-train-game .pt-steam{position:absolute;z-index:10;top:3%;right:5.8%;width:90px;height:82px;pointer-events:none}.pattern-train-game .pt-steam i{position:absolute;right:6px;bottom:4px;width:24px;height:24px;border-radius:50%;background:#fffde8d9;box-shadow:inset 0 -3px 7px #a8d5dc5c,0 3px 8px #5b7b7c24;opacity:0}.pattern-train-game .pt-train.is-complete .pt-steam i{animation:pt-steam-puff 1.15s ease-out infinite}.pattern-train-game .pt-train.is-complete .pt-steam i:nth-child(2){animation-delay:.28s}.pattern-train-game .pt-train.is-complete .pt-steam i:nth-child(3){animation-delay:.56s}.pattern-train-game .pt-train.is-moving{animation:pt-depart 1.58s cubic-bezier(.42,.02,.62,.98) both}.pattern-train-game .pt-choices{position:absolute;z-index:12;left:50%;bottom:8.6%;display:flex;width:min(540px,78%);align-items:flex-end;justify-content:space-around;gap:clamp(18px,5vw,68px);transform:translateX(-50%)}.pattern-train-game .pt-choices button{position:relative;display:grid;width:clamp(88px,10vw,118px);height:clamp(80px,9vw,106px);padding:0;place-items:center;cursor:pointer;border:0;border-radius:24px;background:transparent;font:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pattern-train-game .pt-choices button:before{content:"";position:absolute;z-index:-1;right:6%;bottom:3%;left:6%;height:18%;border-radius:50%;background:#36541d4a;filter:blur(7px)}.pattern-train-game .pt-choices button span{position:relative;display:grid;width:76%;aspect-ratio:1;place-items:center;border:4px solid #ffffffa6;border-radius:25%;color:#fff;background:radial-gradient(circle at 28% 22%,#fff 0 6%,transparent 7%),linear-gradient(145deg,#fff5,transparent 45%),var(--block);box-shadow:inset -9px -10px 0 #00000018,inset 4px 4px 0 #ffffff4d,0 6px 0 #7b59495c,0 12px 16px #3a4d2640;font-size:clamp(11px,1.55vw,17px);font-weight:1000;line-height:1;text-shadow:0 2px 2px #45323878;transform:translateZ(0);transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.pattern-train-game .pt-choices button:hover span{filter:brightness(1.08);transform:translateY(-6px) scale(1.06)}.pattern-train-game .pt-choices button:active span{transform:translateY(3px) scale(.95)}.pattern-train-game .pt-choices button:focus-visible{outline:5px solid #fff26c;outline-offset:3px}.pattern-train-game .pt-choices button.is-wrong span{animation:pt-choice-shake .52s ease-in-out}.pattern-train-game .pt-feedback{position:absolute!important;z-index:11;right:12px;bottom:2.1%;left:12px;margin:0;color:#fdfbea;font-size:clamp(13px,1.7vw,18px);font-weight:900;text-align:center;text-shadow:0 2px 4px #3d552fbd}.pattern-train-game .pt-feedback.is-active{color:#fff4b2;animation:pt-feedback-pop .35s ease-out}@keyframes pt-question-pulse{to{transform:translate(-50%,-50%) scale(1.09)}}@keyframes pt-slot-glow{to{opacity:.62;transform:scale(1.08)}}@keyframes pt-car-pop{0%{transform:scale(.86)}62%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes pt-block-pop{0%{opacity:.2;transform:translate(-50%,-50%) scale(.2) rotate(-12deg)}72%{transform:translate(-50%,-50%) scale(1.16) rotate(3deg)}}@keyframes pt-steam-puff{0%{opacity:0;transform:translateZ(0) scale(.35)}24%{opacity:.85}to{opacity:0;transform:translate3d(-34px,-62px,0) scale(1.55)}}@keyframes pt-depart{0%,12%{transform:translate3d(-50%,0,0) scale(1.12)}22%{transform:translate3d(-53%,0,0) scale(1.12)}to{transform:translate3d(118%,0,0) scale(1.12)}}@keyframes pt-choice-shake{0%,to{transform:translateX(0) rotate(0)}24%{transform:translateX(-8px) rotate(-5deg)}52%{transform:translateX(7px) rotate(4deg)}76%{transform:translateX(-3px) rotate(-2deg)}}@keyframes pt-feedback-pop{0%{opacity:0;transform:translateY(5px) scale(.96)}}@media (max-width:760px){.pattern-train-game .pt-train{bottom:32.3%;width:90%;height:clamp(155px,34vw,225px)}.pattern-train-game .pt-train.is-long{width:98%}.pattern-train-game .pt-car strong{top:39%}.pattern-train-game .pt-steam{top:5%;right:4%;transform:scale(.76);transform-origin:right bottom}.pattern-train-game .pt-choices{bottom:9.5%;width:min(450px,86%);gap:13px}.pattern-train-game .pt-feedback{bottom:2.6%}}@media (max-width:520px){.pattern-train-game .pt-train{bottom:32.2%;width:94%;height:170px}.pattern-train-game .pt-train.is-long{width:100%}.pattern-train-game .pt-car strong{width:34px;border-width:2px;font-size:0}.pattern-train-game .pt-empty-car strong{font-size:23px}.pattern-train-game .pt-empty-car.is-filled strong{font-size:0}.pattern-train-game .pt-choices{bottom:9.7%;width:92%}.pattern-train-game .pt-choices button{width:82px;height:78px}.pattern-train-game .pt-choices button span{width:70%;border-width:3px;font-size:10px}.pattern-train-game .pt-feedback{right:7px;bottom:1.6%;left:7px;font-size:12px}}@media (prefers-reduced-motion:reduce){.pattern-train-game .pt-choices button.is-wrong span,.pattern-train-game .pt-empty-car strong,.pattern-train-game .pt-empty-car.is-filled,.pattern-train-game .pt-empty-car.is-filled strong,.pattern-train-game .pt-empty-car>span,.pattern-train-game .pt-feedback.is-active,.pattern-train-game .pt-train.is-complete .pt-steam i,.pattern-train-game .pt-train.is-moving{animation-duration:.01ms!important;animation-iteration-count:1!important}}