:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:#0a0a0a;color:#fafafa}.shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.game-container{max-width:500px;width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.game-header{text-align:center}.game-header h1{margin:0;font-size:2rem;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#ef4444,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{margin:.25rem 0 0;color:#ffffff80;font-size:.9rem}.stats-bar{display:flex;gap:2rem;justify-content:center}.stat{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#fff6}.stat-value{font-size:1.2rem;font-weight:600;font-variant-numeric:tabular-nums}.board-wrapper{position:relative;width:100%;max-width:420px;aspect-ratio:1}.board{position:relative;width:100%;height:100%;border:2px solid rgba(255,255,255,.15);border-radius:8px;background:#111;overflow:hidden}.cell{position:absolute;border:1px solid rgba(255,255,255,.06);pointer-events:none}.exit-marker{position:absolute;right:-2px;width:6px;background:#ef444466;border-radius:0 4px 4px 0;display:flex;align-items:center;justify-content:center;z-index:5;pointer-events:none}.exit-arrow{position:absolute;right:-24px;color:#ef4444;font-size:1.2rem;font-weight:700;animation:pulse-right 1.5s ease-in-out infinite}@keyframes pulse-right{0%,to{transform:translate(0);opacity:.6}50%{transform:translate(4px);opacity:1}}.vehicle{position:absolute;border-radius:6px;cursor:grab;z-index:10;transition:left .12s ease,top .12s ease;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;touch-action:none;box-shadow:inset 0 1px #fff3,inset 0 -1px #0000004d}.vehicle:focus-visible{outline:2px solid #fff;outline-offset:2px}.vehicle:active{cursor:grabbing}.vehicle.selected{box-shadow:0 0 0 2px #fff,inset 0 1px #fff3,inset 0 -1px #0000004d}.vehicle.goal{box-shadow:0 0 8px #ef444480,inset 0 1px #fff3}.vehicle.goal.selected{box-shadow:0 0 0 2px #fff,0 0 12px #ef444499,inset 0 1px #fff3}.car-icon{font-size:1.4rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.controls{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.puzzle-selector{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.puzzle-btn{padding:.4rem .9rem;border:1px solid rgba(255,255,255,.15);border-radius:6px;background:#ffffff0d;color:#ffffffb3;font-size:.8rem;cursor:pointer;transition:all .15s ease}.puzzle-btn:hover{background:#ffffff1a;color:#fff}.puzzle-btn.active{background:#ffffff26;border-color:#ffffff4d;color:#fff}.reset-btn{padding:.5rem 1.5rem;border:1px solid rgba(239,68,68,.3);border-radius:6px;background:#ef44441a;color:#ef4444;font-size:.85rem;cursor:pointer;transition:all .15s ease}.reset-btn:hover{background:#ef444433;border-color:#ef444480}.win-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in .3s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.win-card{text-align:center;padding:2.5rem;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:#1a1a1a;animation:scale-in .3s ease}@keyframes scale-in{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.win-card h2{margin:0 0 .5rem;font-size:1.8rem;background:linear-gradient(135deg,#22c55e,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.win-card p{margin:0 0 1.5rem;color:#fff9}.win-actions{display:flex;gap:.75rem;justify-content:center}.win-actions button{padding:.5rem 1.2rem;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#ffffff1a;color:#fff;font-size:.9rem;cursor:pointer;transition:all .15s ease}.win-actions button:hover{background:#fff3}.win-actions button:last-child{background:#22c55e33;border-color:#22c55e66;color:#22c55e}.win-actions button:last-child:hover{background:#22c55e4d}.instructions{text-align:center}.instructions p{margin:.15rem 0;font-size:.75rem;color:#ffffff4d}
