:root{color-scheme:dark;--panel: rgba(6, 10, 19, .72);--panel-strong: rgba(8, 12, 22, .88);--text: #f8fafc;--muted: #a9b6ca;--accent: #e10600;--accent-2: #36d1ff;--corner-warning: 0;--cinematic-intensity: 0;--cinematic-speed: 0;--cinematic-danger: 0;--cinematic-finish: 0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#05070c;color:var(--text)}button{font:inherit}#app{position:relative;width:100vw;min-width:320px;height:100vh;min-height:520px;overflow:hidden;background:#05070c}#game-canvas{display:block;width:100%;height:100%}.hud{position:absolute;inset:0;pointer-events:none}.hud-cluster,.leaderboard,.control-strip,.race-message{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.13);box-shadow:0 18px 48px #00000038}.hud-cluster{position:absolute;top:max(18px,env(safe-area-inset-top));width:min(290px,34vw);padding:14px 16px;background:var(--panel)}.broadcast-bug{position:absolute;left:50%;top:max(18px,env(safe-area-inset-top));display:flex;min-width:176px;transform:translate(-50%);border:1px solid rgba(255,255,255,.16);background:#040810b8;box-shadow:0 18px 48px #00000038;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:.72rem;font-weight:950;overflow:hidden}.broadcast-bug span{padding:7px 10px;background:#e10600;color:#fff}.broadcast-bug strong{min-width:112px;padding:7px 12px;color:#f8fafc;text-align:center}.hud-cluster--left{left:max(18px,env(safe-area-inset-left))}.hud-cluster--right{right:max(18px,env(safe-area-inset-right));text-align:right}.brand{margin-bottom:10px;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.race-row{display:flex;justify-content:space-between;gap:16px;padding:5px 0;color:var(--muted);font-size:.86rem}.race-row strong{color:var(--text);font-size:.95rem}.speed-wrap{display:flex;align-items:baseline;justify-content:flex-end;gap:7px}.speed-wrap span{font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,5vw,4.4rem);font-weight:950;line-height:.86}.speed-wrap small{color:var(--muted);font-weight:800;text-transform:uppercase}.meters{display:grid;gap:8px;margin-top:13px}.meters label{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;color:var(--muted);font-size:.74rem;font-weight:900}meter{width:100%;height:10px}meter::-webkit-meter-bar{border:0;border-radius:999px;background:#ffffff29}meter::-webkit-meter-optimum-value{border-radius:999px;background:linear-gradient(90deg,var(--accent-2),#d7ff37)}.race-status{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.race-status span{min-width:52px;padding:5px 8px;border:1px solid rgba(255,255,255,.12);background:#ffffff12;color:var(--muted);font-size:.7rem;font-weight:950;text-align:center;text-transform:uppercase}.race-status span.is-on{border-color:#36d1ffc7;background:#36d1ff33;color:#fff;box-shadow:0 0 24px #36d1ff3d}.leaderboard{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:72px;width:min(240px,30vw);padding:10px;background:#060a1394}.leaderboard-row{display:grid;grid-template-columns:28px 1fr;align-items:center;min-height:28px;padding:4px 7px;color:var(--muted);font-size:.8rem}.leaderboard-row span{color:#fff;font-weight:900}.leaderboard-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-row.is-player{background:linear-gradient(90deg,#e10600d1,#e106002e);color:#fff}.track-map{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:72px;width:190px;height:150px;padding:10px;background:#060a1394;border:1px solid rgba(255,255,255,.13);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 48px #00000038}.track-map svg{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);fill:none;stroke:#ffffff47;stroke-width:6}.track-map i{position:absolute;width:7px;height:7px;border-radius:999px;transform:translate(-50%,-50%);background:#ffffffb8;box-shadow:0 0 10px #ffffff57}.track-map i.is-player{width:10px;height:10px;background:#e10600;box-shadow:0 0 16px #e10600a6}.sector-strip{position:absolute;left:50%;bottom:72px;display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));width:min(430px,calc(100vw - 540px));min-width:320px;transform:translate(-50%);gap:8px;pointer-events:none}.sector-strip div{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;padding:9px 10px;background:#060a138f;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sector-strip span{color:var(--muted);font-size:.72rem;font-weight:950}.sector-strip strong{justify-self:end;font-size:.8rem}.sector-strip small{grid-column:1 / -1;color:#d7ff37e6;font-size:.68rem;font-weight:850}.sector-strip div.is-live{border-color:#36d1ff8f;background:#36d1ff21}.race-aid{position:absolute;left:50%;top:24%;transform:translate(-50%,-50%) scale(calc(.96 + var(--brake-warning) * .08));padding:9px 18px;border:1px solid rgba(255,255,255,.2);background:rgba(225,6,0,calc(.35 + var(--brake-warning) * .38));color:#fff;font-size:clamp(1rem,2.2vw,1.8rem);font-weight:950;opacity:0;pointer-events:none;text-transform:uppercase;transition:opacity .12s ease}.race-aid.is-visible{opacity:1}.race-message{position:absolute;left:50%;top:48%;width:min(520px,calc(100vw - 36px));padding:22px;pointer-events:auto;visibility:hidden;opacity:0;transform:translate(-50%,-50%) scale(.96);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;background:var(--panel-strong);text-align:center}.race-message.is-visible{visibility:visible;opacity:1;transform:translate(-50%,-50%) scale(1)}.race-message.is-countdown{width:min(320px,calc(100vw - 36px));background:#060a134d;border-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.start-lights{display:flex;justify-content:center;gap:10px;margin-bottom:18px}.start-lights span{width:clamp(30px,8vw,54px);height:clamp(30px,8vw,54px);border-radius:999px;background:#ffffff1f;border:2px solid rgba(255,255,255,.16)}.start-lights span.is-lit{background:#e10600;box-shadow:0 0 28px #e10600d1}.race-message.is-event{top:22%;width:auto;min-width:min(360px,calc(100vw - 36px));padding:12px 18px;background:#e10600c7;font-weight:900;text-transform:uppercase}.race-message h1{margin:0;font-size:clamp(2.8rem,8vw,7rem);line-height:.9;text-transform:uppercase}.race-message p{max-width:40rem;margin:16px auto 20px;color:var(--muted);font-size:1rem;line-height:1.5}.race-message button{min-width:150px;min-height:44px;border:0;border-radius:6px;background:#e10600;color:#fff;font-weight:900;cursor:pointer}.race-message button:hover{background:#ff241f}.control-strip{position:absolute;left:50%;bottom:max(18px,env(safe-area-inset-bottom));display:flex;max-width:calc(100vw - 36px);transform:translate(-50%);gap:8px;padding:8px;background:#060a138c;color:var(--muted);font-size:.72rem;font-weight:850;white-space:nowrap}.control-strip span{padding:5px 8px;background:#ffffff14}.touch-controls{position:absolute;right:max(16px,env(safe-area-inset-right));bottom:max(72px,calc(env(safe-area-inset-bottom) + 72px));display:none;grid-template-columns:repeat(3,50px);gap:7px;pointer-events:auto}.touch-controls button{width:50px;height:46px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#080c16ad;color:#fff;font-weight:950}.touch-controls button[data-touch=boost]{grid-column:span 3;width:100%;height:48px;color:#041016;background:#36d1ff}.hud:after{position:absolute;inset:0;pointer-events:none;content:"";background:radial-gradient(circle at 50% 85%,rgba(54,209,255,calc(var(--corner-warning) * .1)),transparent 28%),linear-gradient(90deg,rgba(225,6,0,calc(var(--corner-warning) * .22)),transparent 18%,transparent 82%,rgba(225,6,0,calc(var(--corner-warning) * .22)));mix-blend-mode:screen}.hud:before{position:absolute;inset:0;pointer-events:none;content:"";background:linear-gradient(180deg,rgba(255,255,255,calc(var(--cinematic-finish) * .08)),transparent 16%,transparent 72%,rgba(54,209,255,calc(var(--cinematic-speed) * .08))),radial-gradient(circle at 50% 82%,rgba(225,6,0,calc(var(--cinematic-danger) * .14)),transparent 34%);mix-blend-mode:screen}:root[data-cinematic=danger] .broadcast-bug span{background:#ff4230}:root[data-cinematic=finish] .broadcast-bug span{background:#fff;color:#05070c}:root[data-cinematic=pressure] .broadcast-bug strong,:root[data-cinematic=speed] .broadcast-bug strong{color:#36d1ff}@media(max-width:820px){#app{min-height:580px}.hud-cluster{width:min(220px,calc(50vw - 22px));padding:11px}.leaderboard{display:none}.broadcast-bug{top:166px;min-width:144px;font-size:.64rem}.broadcast-bug span,.broadcast-bug strong{padding:6px 8px}.track-map,.sector-strip,.control-strip{display:none}.touch-controls{display:grid;right:10px;bottom:max(14px,env(safe-area-inset-bottom))}.brand{font-size:.7rem}.race-row{font-size:.74rem}.race-status{margin-top:8px}}@media(max-width:560px){.hud-cluster{top:12px;width:calc(50vw - 16px)}.hud-cluster--left{left:10px}.hud-cluster--right{right:10px}.meters label{grid-template-columns:34px 1fr;gap:4px;font-size:.68rem}.hud-cluster--left .race-row:nth-of-type(n+4){display:none}.speed-wrap span{font-size:2.35rem}.meters{gap:6px;margin-top:9px}.race-status{gap:6px}.race-status span{min-width:44px;padding:4px 6px;font-size:.64rem}.race-message{padding:18px}.race-message p{font-size:.92rem}}
