.race-setup{margin:22px 0;padding:24px;background:#eee5f7;border:1px solid #d1c1e7;border-radius:22px;color:#30203e}.race-setup-title{display:flex;justify-content:space-between;gap:12px;align-items:center}.race-setup-title strong{font-size:24px}.race-setup-title span{font-size:12px;color:#6d587d}.race-settings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.race-settings-grid label,.race-setting-toggles label{font-size:12px;font-weight:700}.race-settings-grid select{display:block;width:100%;margin-top:7px;border:1px solid #c5b1dd;background:#fff9f4;border-radius:10px;padding:11px;color:#30203e}.race-setting-toggles{display:flex;gap:20px;flex-wrap:wrap;margin-top:17px}.race-secondary-actions,.season-rewards{display:flex;gap:10px;flex-wrap:wrap}.race-secondary-actions button,.season-rewards button,.replay-library button{padding:10px 16px;border:1px solid #b9a3cf;border-radius:12px;background:#fff7e8;color:#342241;font-weight:700;cursor:pointer}.local-season{margin-top:24px;padding:22px;background:#eee5f7;border-radius:18px;color:#30203e}.local-season li{margin:8px 0}.season-rewards .equipped{background:#d7f75b}.season-rewards button:disabled{opacity:.45;cursor:default}.replay-library{width:min(760px,90vw);border:0;border-radius:22px;padding:26px;background:#f8effc;color:#30203e}.replay-library-row{display:flex;align-items:center;gap:9px;padding:14px 0;border-top:1px solid #d9cae7}.replay-library-row strong{flex:1}.kart-tools{position:absolute;left:22px;top:95px;max-width:70%;display:flex;align-items:center;gap:7px;flex-wrap:wrap;z-index:7;pointer-events:auto}.kart-tools button,.kart-tools select{border:1px solid #ffffff30;border-radius:9px;background:#271b3bce;color:#fff4ec;padding:8px 10px;font:700 10px system-ui;cursor:pointer}.kart-tools button:disabled{opacity:.5;cursor:default}.energy-readout{display:flex;align-items:center;gap:7px;padding:7px 10px;background:#271b3bcc;border-radius:9px;font:700 10px system-ui}.energy-readout meter{width:70px;height:13px;accent-color:#7de9fa}.kart-tools>span:not(.energy-readout){font:700 10px system-ui;background:#271b3bcc;padding:7px;border-radius:7px}.kart-tools>span:empty{display:none}#kartSpectatorLabel{font:10px system-ui}#kartReplayTools{position:absolute;bottom:145px;left:24px;right:24px;z-index:10;display:flex;align-items:center;gap:16px;background:#291c42df;padding:12px;border-radius:12px;color:#fff}#kartReplayTools[hidden]{display:none}#kartReplayTools label{display:flex;gap:10px;align-items:center;flex:1}#kartReplaySeek{flex:1;accent-color:#d5fa6d}#kartReplayRate{color:#fff;background:#44305c;border:0;padding:8px;border-radius:8px}#kartProgressNote{font-size:12px!important}.kart-results-mode .kart-tools,.kart-results-mode #kartReplayTools{display:none}.kart-key-guide{max-width:440px;line-height:1.6}.kart-item.charging{box-shadow:0 0 0 3px #ffdc8a,0 0 22px #ffbe55}.kart-stage.rear-view:after{content:'REAR VIEW';position:absolute;bottom:155px;left:50%;transform:translateX(-50%);font:700 12px system-ui;color:#fff8eb;letter-spacing:.15em;pointer-events:none}.kart-results-scroll{max-height:32vh!important}.kart-result-actions{flex-wrap:wrap}.kart-result-actions button{font-size:12px!important;padding:12px!important}.lobby-rule-controls{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0}.lobby-rule-controls label{font-size:12px;font-weight:700}.lobby-rule-controls select{display:block;padding:10px;border-radius:10px;margin-top:5px;background:#fff5e7;color:#332242;border:1px solid #c6addb}.lobby-votes{font-size:12px;color:#665175}.lobby-player .vote-tag{font-size:10px}
@media(max-width:700px){.race-settings-grid{grid-template-columns:1fr 1fr}.race-setup{padding:16px}.race-setup-title{align-items:flex-start;flex-direction:column}.kart-tools{left:8px;top:92px;max-width:62%;gap:4px}.kart-tools button{padding:7px;font-size:9px}.energy-readout{padding:6px}.energy-readout meter{width:40px}#kartReplayTools{bottom:185px;left:8px;right:8px;font-size:10px;gap:7px}.replay-library-row{flex-wrap:wrap}.replay-library-row strong{min-width:100%}.kart-result-actions button{font-size:10px!important;padding:9px!important}.kart-tools #kartSplitHint{max-width:160px}.race-setting-toggles{gap:10px}}

.lobby-autoqueue{display:block;margin-top:18px;font-size:13px;color:#665175}.lobby-rule-controls{align-items:flex-end}.lobby-votes{max-width:480px;line-height:1.6}.cup-summary{margin:12px 0;max-height:110px;overflow:auto}.kart-intro .kart-tools{display:none}.kart-pending-results .kart-tools{max-width:45%}@media(max-width:700px){.kart-pending-results .kart-tools{display:none}}

@media(max-width:700px){.kart-track-map{top:100px}}

.kart-item{display:flex;align-items:center;justify-content:center;gap:12px}.kart-item-icon{width:38px;height:38px;flex:none}.kart-item:disabled .kart-item-icon{opacity:.65}

.kart-lap-notice{position:absolute;left:50%;top:20%;transform:translateX(-50%);padding:12px 26px;border-radius:18px;background:#302440df;color:#fff6dc;font-size:clamp(18px,2.4vw,32px);font-weight:900;letter-spacing:.06em;pointer-events:none;box-shadow:0 4px 18px #22173144;z-index:5}.kart-lap-notice[hidden]{display:none}#kartMusic{white-space:nowrap}@media(max-width:800px){#kartMusic{font-size:11px;padding:8px}}
.vehicle-stat-line{display:block;font-size:11px;line-height:1.65;letter-spacing:.03em;color:#eadff6}.kart-condition{position:absolute;left:28px;bottom:202px;display:flex;align-items:center;gap:9px;background:#292039be;padding:8px 12px;border-radius:10px;font:700 10px Arial;color:#fff4e4;pointer-events:none}.kart-condition meter{width:82px;height:8px}.kart-disruption{position:absolute;inset:24% 26%;z-index:40;padding:30px;background:#145ab9ed;border:1px solid #a5c8ff;border-radius:15px;color:#fff;pointer-events:none;font-family:Arial}.kart-disruption[hidden]{display:none}.kart-disruption strong{font-size:64px}.kart-disruption h3{font-size:24px}.kart-disruption p{font-size:14px}@media(max-width:640px){.kart-condition{left:12px;bottom:180px}.kart-disruption{inset:25% 10%}}

.racer-picker{width:min(1050px,94vw);max-height:92vh;overflow:auto;border:1px solid #a483bd;border-radius:24px;padding:30px;background:#282039;color:#fff1db}.racer-picker::backdrop{background:#171020ce}.racer-picker h2{font-size:32px}.picker-close{float:right;background:none;color:#fff;border:0;font-size:28px}.racer-picker-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:20px 0}.picker-car{background:#392c50;border:2px solid #695778;border-radius:15px;color:#fff3df;padding:10px;display:flex;flex-direction:column;gap:7px;align-items:center}.picker-car.selected{border-color:#d9ff4b;background:#4a4160}.picker-car .character-portrait{display:block;width:100%;height:130px}.picker-car small{font-size:10px;line-height:1.5}.picker-car strong{font-size:12px;color:#ddfda1}@media(max-width:700px){.racer-picker-grid{grid-template-columns:repeat(2,1fr)}.picker-car .character-portrait{height:90px}}
/* Sunset race guidance: compact, non-interactive, safe around the existing HUD. */
.sunset-coach{position:absolute;top:155px;left:22px;display:grid;gap:7px;max-width:min(360px,48vw);pointer-events:none;font:600 11px/1.5 system-ui;color:#fff1df;z-index:8}.sunset-coach[hidden],.sunset-coach [hidden]{display:none}.sunset-coach>div{padding:8px 12px;background:#211832c9;border:1px solid #ffffff20;border-radius:12px;backdrop-filter:blur(5px)}#kartLineCoach{border-left:3px solid #b6fa85}#kartRouteCoach{border-left:3px solid #f1be7e}#kartDraftCoach{color:#b4f4ff;display:grid;grid-template-columns:auto 90px;gap:3px 10px}#kartDraftCoach span{grid-column:1/-1}#kartDraftCoach meter{width:90px;accent-color:#8ce7ff}#kartGhostDelta[data-ahead=true]{color:#b0f9c5}#kartGhostDelta[data-ahead=false]{color:#ffd09b}.kart-threat[data-urgent=true]{border-color:#ff725e;box-shadow:0 0 20px #ff665844}.picker-car .kit-name{color:#e2f78b}.picker-stats{display:grid;gap:5px;margin-top:10px;font-size:10px}.picker-stats label{display:flex;justify-content:space-between;gap:8px}.picker-stats meter{width:70px;accent-color:#b6ed76}.picker-drive{margin-top:12px;width:100%;padding:12px;border:1px solid #ffffff45;background:#ffffff0e;color:inherit;border-radius:12px}.picker-copy{max-width:650px;opacity:.75;font-size:12px}@media(max-width:700px){.sunset-coach{top:122px;left:12px;max-width:52vw;font-size:10px}.sunset-coach>div{padding:5px 8px}.picker-stats meter{width:45px}}
#kartSplitHint[data-ahead=true]{color:#b0f9c5}#kartSplitHint[data-ahead=false]{color:#f2ded7}
