:root{--bg: #0b1730;--panel: #0f2146;--accent: #9d4cff;--accent2: #23d6e7;--text: #e8e8ff;--muted: #7a87a6;--good: #00c853;--bad: #ff5252}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);font-family:Inter,system-ui,Arial,sans-serif;color:var(--text)}.app{max-width:1200px;margin:0 auto;padding:16px}:root{--header-h: 72px}.header{display:flex;align-items:center;justify-content:space-between;min-height:var(--header-h);padding:12px 16px;margin-bottom:16px;position:sticky;top:0;z-index:60;background:linear-gradient(180deg,#11111cd9,#11111c99);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(157,76,255,.35);box-shadow:0 8px 24px #9d4cff1f}.header__nav{display:flex;gap:12px}.logo{position:relative;display:flex;align-items:center;gap:12px}.logo__stack{display:inline-flex;flex-direction:column;line-height:1}.logo__word{font-weight:900;letter-spacing:.18em;font-size:18px;color:var(--text);text-shadow:0 0 6px rgba(255,255,255,.1)}.logo__word--accent{color:var(--accent2);text-shadow:0 0 12px var(--accent2),0 0 24px var(--accent2)}.logo__glow{position:absolute;top:-6px;right:-10px;bottom:-8px;left:-10px;border-radius:14px;pointer-events:none;box-shadow:0 0 24px #9d4cff59,inset 0 0 18px #9d4cff33;animation:logoPulse 2.2s ease-in-out infinite alternate}@keyframes logoPulse{0%{box-shadow:0 0 18px #9d4cff40,inset 0 0 10px #9d4cff1f}to{box-shadow:0 0 30px #9d4cff73,inset 0 0 18px #9d4cff33}}.btn{border:1px solid var(--accent);background:transparent;color:var(--text);padding:10px 14px;border-radius:10px;cursor:pointer;transition:.2s}.btn:hover{box-shadow:0 0 12px var(--accent)}.btn.primary{border-color:var(--accent2)}.btn.success{border-color:var(--good)}.btn.danger{border-color:var(--bad)}.btn.small{padding:6px 8px;font-size:.9rem}.btn.nav{font-weight:700}.btn.nav.active{box-shadow:0 0 18px var(--accent2)}.btn--glow{border:none;background:linear-gradient(90deg,#9d4cff26,#9d4cff59);box-shadow:0 0 14px #9d4cff59}.btn--glow:hover{box-shadow:0 0 18px #9d4cff8c}.btn--soft{background:linear-gradient(180deg,#ffffff0f,#ffffff05);border:1px solid rgba(255,255,255,.12)}.btn--ghost{background:transparent;border:1px dashed rgba(255,255,255,.25)}.input{padding:10px 12px;border-radius:8px;border:1px solid var(--muted);background:transparent;color:var(--text);min-width:180px}.picker{width:28px;height:28px;border:1px solid var(--muted);border-radius:6px;background:transparent}.controls{display:grid;grid-template-columns:1fr 2fr 2fr auto;gap:12px;margin-bottom:12px;position:sticky;top:calc(var(--header-h) + 8px);z-index:40;background:linear-gradient(180deg,#161623d9,#16162399);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(157,76,255,.32);border-radius:14px;padding:12px;box-shadow:0 6px 24px #9d4cff1f}.controls .cluster{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cluster--tight .btn{min-width:110px}.controls .btn,.controls .input,.controls .picker,.car-row__buttons .btn{pointer-events:auto}.page.garage .garage__list{display:flex;flex-direction:column;gap:12px;margin-top:8px}.car-row{display:grid;grid-template-rows:auto 1fr;gap:10px;background:linear-gradient(to right,rgba(157,76,255,.08),transparent);border:1px solid rgba(157,76,255,.3);padding:10px;border-radius:14px;position:relative;z-index:1}.car-row__top{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px}.car-row__buttons{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}.car-row__name{min-width:0;font-size:1.2rem;letter-spacing:.1em;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-row__track .lane{position:relative;height:56px;border-top:2px dashed #fff2;border-bottom:2px dashed #fff2}.car-sprite{position:absolute;top:10px;left:0;width:64px;height:32px;border:3px solid var(--accent2);border-radius:24px;box-shadow:0 0 12px var(--accent2) inset,0 0 12px var(--accent2)}.finish-line{position:absolute;right:0;top:0;height:100%;width:4px;background:linear-gradient(#0f0,#0f0 50%,transparent 50%);background-size:4px 16px}.car-row__track,.car-row__track .lane{pointer-events:none}.garage__footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.count{font-size:1.4rem;letter-spacing:.15em;color:var(--accent2);text-shadow:0 0 10px var(--accent2)}.pagination{display:flex;align-items:center;gap:8px}.pagination span{opacity:.9;letter-spacing:.2em}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:50}.overlay__card{background:var(--panel);padding:24px;border-radius:16px;border:1px solid var(--accent2);text-align:center;min-width:320px;box-shadow:0 0 24px var(--accent2)}.overlay__title{font-size:1.2rem;color:var(--muted)}.overlay__name{font-size:2rem;letter-spacing:.2em;margin:8px 0}.overlay__time{opacity:.8;margin-bottom:10px}.winner-card{position:relative;padding:32px 24px;border-radius:20px;background:linear-gradient(145deg,var(--panel),#1a1a1a);box-shadow:0 0 30px var(--accent2);text-align:center;animation:popIn .3s ease}.overlay__close{position:absolute;top:12px;right:12px;background:#ff2a2a;border:none;color:#fff;font-size:18px;font-weight:700;border-radius:50%;width:32px;height:32px;cursor:pointer;transition:.2s}.overlay__close:hover{background:#f55;box-shadow:0 0 12px red}.overlay__title{font-size:1.4rem;margin-bottom:12px;color:var(--accent2);text-shadow:0 0 12px var(--accent2)}.overlay__name{font-size:2.4rem;margin-bottom:8px;font-weight:700;letter-spacing:.1em}.overlay__time{font-size:1.1rem;margin-bottom:20px;opacity:.85}.overlay__actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.overlay__actions .btn{min-width:140px;padding:12px 18px;font-size:1rem;font-weight:600;border-radius:12px}.btn.success{border:none;background:linear-gradient(90deg,#22c55e,#16a34a);color:#fff;box-shadow:0 0 15px #16a34a88}.btn.success:hover{background:linear-gradient(90deg,#16a34a,#15803d)}.btn.danger{border:none;background:linear-gradient(90deg,#ef4444,#dc2626);color:#fff;box-shadow:0 0 15px #dc262688}.btn.danger:hover{background:linear-gradient(90deg,#dc2626,#b91c1c)}@keyframes popIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.car-sprite.broken{position:relative;box-shadow:0 0 20px red inset,0 0 20px red;border-color:red!important}.car-broken-cross{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:28px;color:red;text-shadow:0 0 8px #f00,0 0 12px #f33}.engine-broke-label{margin-top:4px;font-size:1rem;font-weight:700;color:#f33;text-shadow:0 0 8px #f00,0 0 12px #f33,0 0 20px #f66;animation:neonPulse 1.5s infinite alternate}@keyframes neonPulse{0%{text-shadow:0 0 5px #f00,0 0 10px #f33,0 0 20px #f66}to{text-shadow:0 0 10px #f00,0 0 20px #f33,0 0 30px #f99}}.table{width:100%;border-collapse:collapse;background:transparent}.table th,.table td{border-bottom:1px solid #fff2;padding:10px;text-align:left}.car-chip{width:52px;height:26px;border:3px solid var(--accent);border-radius:24px;box-shadow:0 0 10px var(--accent) inset}@media (max-width: 964px){.controls{grid-template-columns:1fr}.car-row__track .lane{height:48px}.header__nav{gap:8px}.btn.nav{padding:8px 10px}}
