.filecatch-game{height:min(400px,calc(100dvh - 350px));min-height:290px;display:flex;flex-direction:column;gap:5px;font-family:Arial,sans-serif}
.catch-prompt{display:flex;justify-content:space-between;flex-wrap:wrap;background:#183947;padding:7px 10px;border-left:3px solid #79edff;font-size:.9rem}.catch-prompt strong{color:#8aeeff}.catch-prompt p{width:100%;margin:2px 0 0;font-size:.85rem}.catch-reading{display:flex;gap:.6rem;align-items:center;font-size:.9rem;min-height:36px}.catch-reading>span{font: .7rem 'Courier New',monospace;color:#ffc68a;flex:none}.catch-board{position:relative;flex:1;min-height:115px;border:1px solid #5485a0;background:repeating-linear-gradient(90deg,#0a1827 0%,#0a1827 calc(33.333% - 1px),#34576b calc(33.333% - 1px),#34576b 33.333%);overflow:hidden}.chute-labels{display:flex;justify-content:space-around;color:#8fcbdf;font: .7rem 'Courier New',monospace;padding:4px}.falling-file{position:absolute;top:24px;transform:translateX(-50%);width:29%;max-width:235px;padding:4px 6px;border:2px solid #ffc277;background:#f0dfb8;color:#142a38;z-index:2}.falling-file>span{font:bold .65rem 'Courier New',monospace;display:block}.falling-file small{display:block;font-size:.8rem;line-height:1.2}.file-basket{position:absolute;bottom:3px;transform:translateX(-50%);width:27%;height:37px;border:3px solid #8be7ef;border-top:0;display:flex;align-items:center;justify-content:center;gap:5px;color:#adf4fa;background:#173c4c}.file-basket>span:last-child{font:bold .7rem 'Courier New',monospace}.avatar-art.basket-agent{width:32px;height:32px;max-width:32px}.catch-controls{display:flex;justify-content:center;gap:6px}.catch-controls button{padding:5px 12px;font-size:.85rem;min-height:35px}.catch-options{display:flex;gap:1rem;justify-content:center;font-size:.8rem}.catch-options label{display:flex;align-items:center;gap:5px}.catch-options input{width:16px;height:16px;margin:0}.catch-status{font-size:.8rem;line-height:1.25;min-height:32px;margin:0!important;color:#ffddaa}.falling-file[hidden]{display:none}
@media(max-width:700px){.filecatch-game{height:360px;min-height:320px}.catch-reading{font-size:.85rem;display:block}.catch-reading>span{display:none}.falling-file small{font-size:.7rem}.catch-controls{gap:3px;flex-wrap:wrap}.catch-controls button{padding:4px 7px}.file-basket>span:last-child{font-size:.55rem}.catch-prompt{font-size:.8rem}}
main:has(.filecatch-game)>.essential-question{display:none}.filecatch-game{height:min(450px,calc(100dvh - 325px));min-height:290px}.falling-file small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}


.falling-file small{display:block;-webkit-line-clamp:unset;overflow:visible;font-size:.875rem;line-height:1.25}.falling-file{width:30%;max-width:none}.catch-reading{min-height:26px}.catch-board{min-height:155px}

/* Original raster props; the critter remains the student's selected sprite. */
.chute-labels{height:42px;padding:0;position:relative;z-index:3;pointer-events:none}.chute-labels>span{width:33.333%;position:relative;text-align:center}.chute-pipe{position:absolute;top:-57px;left:50%;transform:translateX(-50%);width:110px;height:110px;background:url('assets/arcade-pipes-cart.png') 0% 0%/200% 100%;image-rendering:pixelated}.chute-labels b{position:relative;top:3px;background:#062b2a;color:#d0ffdf;padding:2px 4px;font-size:.65rem}.falling-file{top:48px}.file-basket{width:120px;height:58px;border:0;background:none;transition:left .24s ease-in-out;bottom:0;z-index:4}.cart-art{position:absolute;width:120px;height:120px;bottom:-14px;left:0;background:url('assets/arcade-pipes-cart.png') 100% 0%/200% 100%;image-rendering:pixelated}.file-basket .basket-agent{position:absolute;left:-22px;bottom:3px;width:38px;height:38px;max-width:38px;transform:scaleX(var(--run-facing,1))}.cart-running .basket-agent{animation:critter-trot .12s steps(2) infinite}.catch-board{border-bottom:3px solid #a5c2c8;box-shadow:inset 0 -5px #1c4655}
@keyframes critter-trot{50%{translate:0 -4px}}
.reduced .file-basket{transition:none}.reduced .cart-running .basket-agent{animation:none}@media(prefers-reduced-motion:reduce){.file-basket{transition:none}.cart-running .basket-agent{animation:none}}
@media(max-width:700px){.file-basket{width:86px}.cart-art{width:86px;height:86px;bottom:-9px}.file-basket .basket-agent{width:28px;height:28px;left:-13px}}
