.game-instructions{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#f0f5ff;border-radius:14px;padding:18px 22px;margin:18px 0}.game-instructions p{margin:0}.positive{color:#086850}.negative{color:#b13737}.game-modes{border:0;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.game-modes legend{font-weight:700;margin-bottom:12px}.game-modes label{position:relative;cursor:pointer;border:2px solid #dce5f5;border-radius:14px;padding:16px;background:white;text-align:center}.game-modes input{position:absolute;top:12px;left:12px;accent-color:#254fe5}.game-modes b{display:block;font-size:36px}.game-modes span{font-size:14px;color:#59657b}.game-modes label:has(:checked){background:#254fe5;border-color:#254fe5;color:white;box-shadow:0 5px 15px #254fe525}.game-modes label:has(:checked) span{color:white}.game-start-row{display:flex;align-items:end;justify-content:space-between;gap:20px}.game-shell{overflow:hidden;border:1px solid #cedbf0;border-radius:22px;background:white;box-shadow:0 14px 45px #132c4c0c}.game-hud{display:flex;gap:26px;align-items:center;padding:20px 26px}.game-hud h2,.game-hud p{margin:0}.game-hud h2 span{color:#254fe5;font-size:32px}.hud-count{margin-left:auto}.hud-score{display:flex;align-items:center;gap:12px}.hud-score b{font-size:36px;color:#254fe5;font-variant-numeric:tabular-nums}.game-hint{background:#183c70;color:white;padding:12px 26px;font-weight:600}.game-stage{position:relative;height:410px;background:#edf8ff;overflow:hidden}.lane{position:absolute;left:0;right:0;height:88px;background:#dcebf5;border-block:2px dashed #b5d4e6}.lane-yes{top:156px;background:#d9f1e6;border-color:#a2d7c1}.lane-no{bottom:0}.gate{position:absolute;left:15px;width:148px;height:177px;border:9px solid;border-bottom:0;border-radius:16px 16px 0 0;z-index:3;pointer-events:none;display:flex;align-items:center;flex-direction:column;justify-content:flex-start}.gate-yes{top:68px;border-color:#138567;background:linear-gradient(90deg,#c6eadc40,transparent)}.gate-no{bottom:0;border-color:#2d609c;background:linear-gradient(90deg,#c6dcef40,transparent)}.gate span{position:absolute;top:-40px;background:#138567;color:white;padding:7px 8px;white-space:nowrap;border-radius:9px;font-size:15px;font-weight:750}.gate-no span{background:#2d609c}.gate small{position:absolute;top:10px;font-size:12px;color:#33576b;background:#ffffffc9;border-radius:4px;padding:2px 4px}.entry-label{position:absolute;right:24px;bottom:16px;color:#526d83;font-size:14px}.route-status{position:absolute;top:12px;right:20px;font-size:14px;font-weight:650;color:#385b74}.animal{--px:47.5%;--py:67.5%;position:absolute;width:210px;height:210px;background:none;border:0;padding:0;z-index:2;cursor:pointer;transition:top .5s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;filter:none!important}.animal:disabled{opacity:1;cursor:default}.animal-body{display:block;width:100%;height:100%;position:relative;animation:walking .45s ease-in-out infinite alternate;transform-origin:50% 90%}.animal-art{position:absolute;inset:0;background-image:url('/assets/animals.png');background-size:200% 200%;background-position:0 0}.animal-1{--px:39%;--py:67%}.animal-1 .animal-art{background-position:100% 0}.animal-2{--px:49.5%;--py:58%}.animal-2 .animal-art{background-position:0 100%}.animal-3{--px:43%;--py:60%}.animal-3 .animal-art{background-position:100% 100%}.jersey-number{position:absolute;left:var(--px);top:var(--py);transform:translate(-50%,-50%);min-width:38%;border:2px solid #30e5ee;border-radius:6px;background:#08283d;color:#c8fffc;font:800 24px/1.15 ui-monospace,monospace;letter-spacing:.04em;padding:3px 4px;text-shadow:0 0 6px #5afce966;box-shadow:0 1px 4px #001e3466}.animal-selection{display:none;position:absolute;top:0;left:24%;background:#117759;color:white;border-radius:20px;padding:3px 10px;font-size:14px;font-weight:700}.animal.chosen .animal-selection{display:block}.animal:focus-visible{outline:3px solid #ffbb25;border-radius:20px}.game-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 26px}.game-bottom>div{display:flex;align-items:center;gap:16px}.game-bottom strong{font:800 30px ui-monospace,monospace;color:#183c70}.game-time{height:5px;background:#e8eff6}.game-time div{height:100%;background:#ffbf35}.game-feedback{padding:20px 26px;min-height:116px;background:#f4f7fd}.game-feedback strong,.game-feedback span{display:block}.game-feedback.right{background:#e5f7ee;color:#155840}.game-feedback.wrong{background:#fff0e8;color:#843f24}.pause-overlay{position:absolute;inset:0;z-index:8;background:#eaf3fff2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}.pause-overlay strong{font-size:30px}.is-paused .animal-body{animation-play-state:paused}.gate-good{animation:gate-good .8s ease}.gate-bad{animation:gate-bad .8s ease}.final-score span{font-size:24px}@keyframes walking{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-5px) rotate(2deg)}}@keyframes gate-good{50%{box-shadow:0 0 28px #27c98a}}@keyframes gate-bad{50%{box-shadow:0 0 28px #ef7353}}@media(prefers-reduced-motion:reduce){.animal-body{animation:none}.animal{transition:none}.gate-good,.gate-bad{animation:none}}@media(max-width:760px){.game-instructions{grid-template-columns:1fr}.game-modes{grid-template-columns:repeat(3,1fr)}.game-modes label{padding:12px}.game-start-row{align-items:stretch;flex-direction:column}.game-hud{padding:16px;gap:12px;flex-wrap:wrap}.game-hud h2{font-size:22px}.hud-count{font-size:14px}.hud-score b{font-size:28px}.game-hud>.secondary{padding:8px 12px}.game-hint{font-size:14px;padding:12px 16px}.game-stage{height:375px}.gate{left:9px;width:116px;height:147px;border-width:7px}.gate-yes{top:56px}.gate span{font-size:12px;padding:6px;top:-33px}.gate small{font-size:12px}.lane-yes{top:126px}.animal{width:170px;height:170px}.jersey-number{font-size:20px}.route-status{top:7px;right:10px;font-size:12px;max-width:55%;text-align:right}.game-bottom{padding:14px;flex-wrap:wrap;gap:12px}.game-bottom .primary{width:100%;font-size:14px}.game-bottom strong{font-size:27px}.game-feedback{padding:16px;font-size:15px;min-height:136px}.animal-selection{font-size:12px}.entry-label{font-size:12px;right:12px}}

/* Concurrent animals retain independent controls and feedback. */
.animal{width:180px;height:180px;transition:top .3s ease}.animal.chosen{z-index:4}.animal.chosen .animal-body{animation-duration:.18s}.animal-controls{display:flex;gap:10px;flex-wrap:wrap}.number-choice{font:800 23px ui-monospace,monospace;padding:10px 16px;border:2px solid #254fe5;border-radius:12px;background:#fff;color:#183c70;min-width:90px}.number-choice:disabled{background:#e3f6ec;border-color:#138567;color:#138567;opacity:1}.game-bottom{align-items:center}.game-bottom>div{gap:10px}.feedback-item{padding:8px 0}.feedback-item+.feedback-item{border-top:1px solid #ccd7e1}.feedback-item.right{color:#155840}.feedback-item.wrong{color:#843f24}.game-feedback{background:#f4f7fd!important}.jersey-number{font-size:22px}@media(max-width:760px){.animal{width:130px;height:130px}.jersey-number{font-size:19px;letter-spacing:0}.animal-selection{font-size:12px;left:10%;white-space:nowrap}.game-bottom{display:block}.animal-controls{margin-top:10px}.number-choice{font-size:20px;padding:10px;min-width:80px}.game-stage{height:350px}.gate{width:100px}.route-status{max-width:50%}}

.hud-timer{display:flex;flex-direction:column;gap:2px}.hud-timer span{font-size:14px;color:#59657b}.hud-timer b{font:800 30px ui-monospace,monospace;color:#183c70}.time-warning{color:#b13737!important}.game-hint{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}#speed-level{white-space:nowrap;font-weight:500}.game-hud{gap:18px}.game-hud .hud-count{margin-left:auto}@media(max-width:760px){.hud-timer b{font-size:26px}header{gap:12px;flex-wrap:wrap}header>.eyebrow{font-size:15px}}
