: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}.game{max-width:900px;margin:0 auto;padding:1.5rem;min-height:100vh}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header h1{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.balance{font-size:1.25rem;font-weight:600;color:#2ecc71;background:#2ecc711a;padding:.4rem 1rem;border-radius:.5rem;border:1px solid rgba(46,204,113,.2)}.track-container{position:relative;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:1rem;margin-bottom:1.5rem}.countdown{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;font-weight:800;color:#f39c12;text-shadow:0 0 40px rgba(243,156,18,.5);z-index:10;animation:pulse .8s ease-in-out}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}50%{transform:translate(-50%,-50%) scale(1.2);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.lane{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.lane:last-child{margin-bottom:0}.lane-label{width:110px;display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;border-left:3px solid;flex-shrink:0}.horse-emoji{font-size:1.1rem}.horse-name{font-size:.85rem;font-weight:500;white-space:nowrap}.winner-badge{font-size:.6rem;font-weight:700;color:#f1c40f;background:#f1c40f26;padding:.1rem .3rem;border-radius:.2rem;margin-left:auto;animation:flash .5s ease-in-out infinite alternate}@keyframes flash{0%{opacity:.6}to{opacity:1}}.track{position:relative;flex:1;height:36px;background:#ffffff0a;border-radius:.4rem;overflow:hidden}.track-marker{position:absolute;top:0;bottom:0;width:1px;background:#ffffff0f}.finish-line{position:absolute;right:0;top:0;bottom:0;width:3px;background:repeating-linear-gradient(to bottom,#fafafa,#fafafa 4px,#0a0a0a 4px,#0a0a0a 8px)}.horse-runner{position:absolute;top:50%;transform:translate(-50%,-50%);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:left .05s linear}.panel{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:.75rem;padding:1.5rem}.panel h2{margin:0 0 1rem;font-size:1.2rem;font-weight:600}.horse-select{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.horse-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:2px solid transparent;border-radius:.5rem;background:#ffffff0a;color:#fafafa;cursor:pointer;font-size:.9rem;transition:all .15s}.horse-btn:hover{background:#ffffff14}.horse-btn.selected{transform:scale(1.02)}.odds{font-size:.75rem;color:#ffffff80;margin-left:.25rem}.bet-controls{margin-bottom:1rem}.bet-controls label{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.bet-controls input{width:80px;padding:.4rem .6rem;border:1px solid rgba(255,255,255,.15);border-radius:.35rem;background:#ffffff0f;color:#fafafa;font-size:.95rem;outline:none}.bet-controls input:focus{border-color:#ffffff4d}.race-btn{width:100%;padding:.75rem 1.5rem;border:none;border-radius:.5rem;background:#e67e22;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s}.race-btn:hover:not(:disabled){background:#d35400}.race-btn:disabled{opacity:.4;cursor:not-allowed}.result-panel{text-align:center}.result-panel h2{font-size:1.5rem}.result-msg{font-size:1.1rem;margin:.5rem 0;color:#fffc}.broke{color:#e74c3c;font-weight:600;margin:1rem 0}.result-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1rem}.result-actions .race-btn{width:auto}
