:root{--ui-font-body: "IBM Plex Sans", "Segoe UI", sans-serif;--ui-font-display: "Rajdhani", "IBM Plex Sans", "Segoe UI", sans-serif;--ui-text-primary: #e2e8f0;--ui-text-muted: #9fb3d1;--ui-text-accent: #7dd3fc;--ui-team-player: #38bdf8;--ui-team-player-strong: #22d3ee;--ui-team-opponent: #fb923c;--ui-team-opponent-strong: #ef4444;--ui-bg-app: radial-gradient(circle at 20% 18%, #1f2937, #020617 58%);--ui-bg-card: rgba(2, 8, 24, .78);--ui-bg-card-strong: rgba(6, 18, 44, .86);--ui-bg-button: rgba(15, 23, 42, .88);--ui-bg-button-hover: rgba(30, 41, 59, .92);--ui-border-soft: rgba(100, 116, 139, .45);--ui-border-strong: rgba(56, 189, 248, .52);--ui-shadow-card: 0 16px 45px rgba(2, 6, 23, .45);--ui-radius-sm: 8px;--ui-radius-md: 12px;--ui-radius-lg: 16px;--ui-space-xs: 4px;--ui-space-sm: 8px;--ui-space-md: 12px;--ui-space-lg: 16px;--ui-space-xl: 20px;--ui-duration-fast: .12s;--ui-duration-mid: .22s;color:var(--ui-text-primary);font-family:var(--ui-font-body);background:var(--ui-bg-app)}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{overflow:hidden}.ui-btn{border:1px solid var(--ui-border-soft);background:var(--ui-bg-button);color:var(--ui-text-primary);border-radius:var(--ui-radius-sm);padding:7px 10px;font-size:12px;line-height:1.25;cursor:pointer;transition:transform var(--ui-duration-fast) ease,border-color var(--ui-duration-fast) ease,background-color var(--ui-duration-fast) ease,box-shadow var(--ui-duration-fast) ease}.ui-btn:hover:not(:disabled){background:var(--ui-bg-button-hover);border-color:#7dd3fc94;transform:translateY(-1px)}.ui-btn:active:not(:disabled){transform:translateY(0)}.ui-btn:disabled{opacity:.55;cursor:not-allowed}.ui-btn--primary{background:linear-gradient(135deg,#0ea5e957,#1e40af5c);border-color:#38bdf8bf;box-shadow:0 0 0 1px #38bdf833 inset}.ui-btn--secondary{background:#0f172ae6}.ui-btn--ghost{background:#0f172a94}.ui-btn--block{width:100%;text-align:left}.ui-btn--sm{padding:5px 8px}.ui-chip{border:1px solid var(--ui-border-soft);background:#0f172ad1;color:var(--ui-text-primary);border-radius:var(--ui-radius-sm);padding:5px 9px;font-size:12px;cursor:pointer}.ui-chip.active{border-color:#38bdf8cc;color:#d7f2ff}.ui-chip:disabled{opacity:.55;cursor:not-allowed}.notifications-layer{position:fixed;right:16px;top:16px;z-index:36;display:grid;gap:8px;width:min(360px,calc(100vw - 26px));pointer-events:none}.notifications-toolbar{justify-self:end;display:flex;gap:6px;pointer-events:auto}.notifications-clear.hidden{display:none}.notifications-toasts{display:grid;gap:8px;pointer-events:none}.notification-toast{border:1px solid rgba(100,116,139,.46);border-radius:12px;background:#030c1ee0;box-shadow:0 14px 30px #02061785;padding:10px 11px;display:flex;justify-content:space-between;gap:10px;pointer-events:auto;animation:toast-in .16s ease-out}.notification-toast.tone-success{border-color:#4ade8094}.notification-toast.tone-warning{border-color:#fbbf2494}.notification-toast.tone-error{border-color:#f8717199}.toast-copy{display:grid;gap:3px}.toast-title{margin:0;font-size:12px;font-weight:700;color:#e2e8f0}.toast-message{margin:0;font-size:12px;color:#bfdbfe;line-height:1.3}.toast-dismiss{border:1px solid rgba(100,116,139,.45);border-radius:999px;background:#0f172ad6;color:#cbd5e1;width:22px;height:22px;cursor:pointer;align-self:flex-start}.toast-dismiss:hover{border-color:#7dd3fcad;color:#e2e8f0}.notifications-feed{pointer-events:auto;border:1px solid rgba(100,116,139,.5);border-radius:14px;background:#030c1eeb;box-shadow:0 16px 36px #0206178c;max-height:min(56vh,420px);overflow:hidden;display:grid;grid-template-rows:auto 1fr}.notifications-feed.hidden{display:none}.notifications-feed h3{margin:0;padding:10px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#dbeafe;border-bottom:1px solid rgba(71,85,105,.55)}.notifications-feed-list{margin:0;padding:9px;list-style:none;display:grid;gap:8px;overflow-y:auto}.notifications-feed-list li{border:1px solid rgba(71,85,105,.5);border-radius:10px;background:#0f172a99;padding:8px}.notifications-feed-list li.tone-success{border-color:#4ade807a}.notifications-feed-list li.tone-warning{border-color:#fbbf2473}.notifications-feed-list li.tone-error{border-color:#f8717185}.feed-time,.feed-title,.feed-message{margin:0}.feed-time{color:#93c5fd;font-size:10px}.feed-title{color:#e2e8f0;font-size:12px;font-weight:600;margin-top:2px}.feed-message{color:#bfdbfe;font-size:12px;margin-top:3px}.notifications-empty{color:#93c5fd;font-size:12px}.hud{position:fixed;top:var(--ui-space-lg);left:var(--ui-space-lg);right:var(--ui-space-lg);z-index:12;width:auto;pointer-events:none;display:grid;gap:10px}.hud-top{display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(280px,1fr);gap:12px;align-items:center}.hud-top-meter{pointer-events:auto;border:1px solid rgba(100,116,139,.46);border-radius:14px;padding:9px 11px;background:#020818b8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:var(--ui-shadow-card);min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:8px 10px;align-items:center}.hud-top-meter.player{justify-self:start;width:min(520px,100%)}.hud-top-meter.bot{justify-self:end;width:min(520px,100%);grid-template-columns:minmax(0,1fr) auto}.hud-top-meter.bot .meter-avatar-wrap{order:2}.hud-top-meter .meter-head{grid-column:2;grid-row:1;margin:0}.hud-top-meter .bar{grid-column:1 / -1;grid-row:2;width:100%}.hud-top-meter.bot .meter-head{grid-column:1;text-align:right}.hud-top-meter.bot .meter-head span:first-child{order:2}.hud-top-meter.bot .meter-head span:last-child{order:1}.meter-avatar-wrap{width:52px;aspect-ratio:1;border-radius:10px;border:1px solid rgba(125,211,252,.46);background:#0f172ac7;overflow:hidden;box-shadow:inset 0 0 0 1px #38bdf82e;grid-row:1}.meter-avatar{width:100%;height:100%;object-fit:cover;display:block}.hud-top-center{pointer-events:auto;min-width:170px;border:1px solid rgba(100,116,139,.56);border-radius:999px;padding:8px 18px 9px;background:radial-gradient(circle at 48% 32%,#0e74904d,#020818e6 74%);box-shadow:0 20px 38px #0206177a,inset 0 0 0 1px #38bdf829;text-align:center}.hud-side-card{pointer-events:auto;width:min(352px,calc(100vw - 24px));padding:10px 11px;border:1px solid var(--ui-border-soft);border-radius:var(--ui-radius-lg);background:#020818ab;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:var(--ui-shadow-card)}.hud-brand{display:grid;gap:0}.hud-header{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.hud-identity{min-width:120px;border:1px solid rgba(71,85,105,.5);border-radius:10px;padding:5px 7px;background:#0f172a9e;display:grid;gap:1px;text-align:right}.identity-callsign{margin:0;font-size:11px;font-weight:700;color:#e2e8f0}.identity-rank{margin:0;font-size:10px;color:#a5b4fc}.identity-wallet{margin:0;font-size:10px;color:#7dd3fc}.hud-kicker{margin:0;color:#8ab9ff;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.hud h1{margin:0;font-family:var(--ui-font-display);font-size:22px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#eaf3ff}.hint{margin:6px 0 8px;color:var(--ui-text-muted);font-size:11px;line-height:1.28;transition:opacity var(--ui-duration-mid) ease}.hint.contextual.hidden{opacity:0;pointer-events:none;height:0;margin:0;overflow:hidden}.hud-primary{display:grid;gap:6px;margin-bottom:6px}.series{margin:0;padding:4px 7px;border:1px solid rgba(59,130,246,.45);border-radius:var(--ui-radius-sm);background:#1e40af3d;color:#bfdbfe;font-size:11px}.series.hidden{display:none}.timer{margin:0;color:#f8fafc;font-family:var(--ui-font-display);font-size:45px;font-weight:700;letter-spacing:.03em;line-height:1}.hud-vitals{display:grid;gap:6px}.meter{margin:0}.meter-head{display:flex;justify-content:space-between;margin-bottom:3px;font-size:11px}.bar{width:100%;height:9px;border-radius:99px;overflow:hidden;background:#1e293b;border:1px solid rgba(100,116,139,.35)}.bar.player{border-color:#38bdf873}.bar.bot{border-color:#fb923c73}.fill{height:100%;width:100%;transition:width 80ms linear}.fill.player{background:linear-gradient(90deg,var(--ui-team-player-strong),var(--ui-team-player))}.fill.bot{background:linear-gradient(90deg,var(--ui-team-opponent),var(--ui-team-opponent-strong))}.status{margin:6px 0 0;font-size:12px;color:#cbd5e1}.status.warning{color:#f59e0b}.status.success{color:#22c55e}.status.error{color:#f87171}.status.network{margin-top:6px;font-size:12px;color:var(--ui-text-accent)}.status.network.hidden{display:none}.hud-top .series{margin:0 0 4px;padding:3px 10px;display:inline-block}.hud-top .series.hidden{display:none}.hud-top .meter-head{font-size:14px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;justify-content:space-between;gap:10px}.hud-top .bar{height:14px}.hud-tactical{margin-top:7px}.hud-radar-panel{position:fixed;left:var(--ui-space-lg);bottom:var(--ui-space-lg);z-index:12;pointer-events:auto;width:min(290px,calc(100vw - 24px));border:1px solid var(--ui-border-soft);border-radius:14px;background:#020818a3;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:var(--ui-shadow-card);padding:10px 12px;display:grid;gap:8px}.hud-radar-panel .radar{width:136px;justify-self:start}.hud-radar-panel .radar-note{margin:0;color:#dbeafe;font-size:12px}.radar{width:92px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(125,211,252,.38);background:radial-gradient(circle at 30% 28%,#0ea5e92e,#0206171f 52%),#030c1eb8;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #7dd3fc1a,0 10px 22px #02061759}.radar-grid,.radar-center,.radar-dot{position:absolute;left:50%;top:50%}.radar-grid{width:86%;height:86%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(125,211,252,.2);box-shadow:0 0 0 13px #38bdf817,0 0 0 26px #38bdf80f}.radar-center{width:6px;height:6px;border-radius:50%;transform:translate(-50%,-50%);background:#e2e8f0cc}.radar-dot{width:10px;height:10px;border-radius:50%;transform:translate(calc(-50% + var(--radar-x, 0px)),calc(-50% + var(--radar-y, 0px)));box-shadow:0 0 0 1px #0f172abf;transition:transform var(--ui-duration-fast) linear}.radar-dot.player{background:var(--ui-team-player);box-shadow:0 0 0 1px #0f172abf,0 0 10px #38bdf8cc}.radar-dot.bot{background:var(--ui-team-opponent);box-shadow:0 0 0 1px #0f172abf,0 0 10px #fb923cbf}.radar-dot.outside{animation:radar-ping .72s ease-in-out infinite alternate}.radar-note{margin:0;font-size:11px;line-height:1.28;color:#bfdbfe}@keyframes radar-ping{0%{transform:translate(calc(-50% + var(--radar-x, 0px)),calc(-50% + var(--radar-y, 0px))) scale(1)}to{transform:translate(calc(-50% + var(--radar-x, 0px)),calc(-50% + var(--radar-y, 0px))) scale(1.24)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-7px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes reward-pulse{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes overlay-drift{0%{transform:translateY(0) scale(1);opacity:.88}to{transform:translateY(-8px) scale(1.03);opacity:1}}@keyframes shine-pass{0%{transform:translate(-88%) rotate(8deg);opacity:0}35%{opacity:1}to{transform:translate(88%) rotate(8deg);opacity:0}}.match-highlights{margin:var(--ui-space-sm) 0 0;padding:0 0 0 16px;list-style:disc;display:grid;gap:3px;color:#cbd5e1;font-size:12px}.match-highlights.hidden{display:none}.results-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:24;display:flex;align-items:center;justify-content:center;padding:22px;pointer-events:none;background:radial-gradient(circle at 50% 35%,#0e347833,#02061700 62%),linear-gradient(180deg,#02061747,#0206178f)}.results-overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 18% 22%,#0ea5e92b,#02061700 48%),radial-gradient(circle at 84% 18%,#38bdf821,#02061700 44%);animation:overlay-drift 9s ease-in-out infinite alternate}.results-overlay.hidden{display:none}.results-card{width:min(760px,calc(100vw - 44px));border:1px solid rgba(100,116,139,.58);border-radius:18px;background:linear-gradient(145deg,#071126f2,#030a19ed);box-shadow:0 28px 80px #020617a3;padding:18px;display:grid;gap:10px;pointer-events:auto;position:relative;overflow:hidden}.results-card:before{content:"";position:absolute;inset:-80% -42% auto;height:70%;background:linear-gradient(120deg,#38bdf800,#38bdf82e,#38bdf800);transform:rotate(8deg);pointer-events:none;animation:shine-pass 3.8s ease-in-out infinite}.results-card.tone-success{border-color:#4ade80b8}.results-card.tone-error{border-color:#f87171b8}.results-card.tone-warning{border-color:#fbbf24b8}.results-kicker{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:10px;color:#93c5fd}.results-title{margin:0;font-family:var(--ui-font-display);font-size:38px;line-height:1;letter-spacing:.04em;text-transform:uppercase}.results-subtitle{margin:0;color:#dbeafe;font-size:14px}.results-reward{margin:0;border:1px solid rgba(56,189,248,.48);border-radius:10px;background:#0284c724;color:#bae6fd;padding:8px 10px;font-size:13px;animation:reward-pulse .28s ease-out}.results-reward.hidden{display:none}.results-series{margin:0;padding:8px 10px;border-radius:10px;border:1px solid rgba(125,211,252,.4);background:#0f172a99;color:#bfdbfe;font-size:13px}.results-series.hidden{display:none}.results-highlights{margin:0;padding:0 0 0 18px;color:#cbd5e1;font-size:13px;display:grid;gap:4px}.results-highlights.hidden{display:none}.post-game-note{margin:0;color:#cbd5e1;font-size:12px;line-height:1.35}.post-game-note.hidden{display:none}.results-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ui-choice-card{border:1px solid rgba(100,116,139,.5);border-radius:12px;background:#0f172ac7;color:#e2e8f0;text-align:left;padding:10px;display:grid;gap:4px;cursor:pointer;transition:transform var(--ui-duration-fast) ease,border-color var(--ui-duration-fast) ease,background-color var(--ui-duration-fast) ease,box-shadow var(--ui-duration-fast) ease}.ui-choice-card:hover:not(:disabled){transform:translateY(-1px);background:#1e293bdb}.ui-choice-card:disabled{opacity:.45;cursor:not-allowed}.ui-choice-card.locked{opacity:.36;filter:saturate(.75)}.ui-choice-card .choice-title{font-size:15px;font-weight:700;letter-spacing:.01em}.ui-choice-card .choice-desc{font-size:12px;color:#9fb3d1;line-height:1.3}.ui-choice-card.tone-player{border-color:#38bdf88c}.ui-choice-card.tone-opponent{border-color:#fb923c85}.ui-choice-card.selected{border-color:#4ade80cc;box-shadow:0 0 0 1px #4ade8047 inset}.center-status{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:20;max-width:min(1100px,calc(100vw - 80px));padding:14px 24px;text-align:center;pointer-events:none;color:#e6f3ff;font-family:var(--ui-font-display);font-size:clamp(28px,4.8vw,56px);font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 0 22px rgba(56,189,248,.46),0 10px 28px rgba(2,6,23,.7);border:1px solid rgba(125,211,252,.42);border-radius:18px;background:linear-gradient(130deg,#05162ed1,#020617b8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 20px 46px #02061785}.center-status.hidden{display:none}.event-banner{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:26;min-width:240px;max-width:min(560px,calc(100vw - 48px));text-align:center;padding:10px 14px;border-radius:999px;border:1px solid rgba(125,211,252,.45);background:#030c1ee0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#dbeafe;font-family:var(--ui-font-display);font-size:19px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 12px 28px #0206177a}.event-banner.hidden{display:none}.event-banner.tone-neutral{border-color:#7dd3fc8a;color:#dbeafe}.event-banner.tone-warning{border-color:#fbbf24b3;color:#fde68a}.event-banner.tone-success{border-color:#4ade80b3;color:#bbf7d0}.event-banner.tone-error{border-color:#f87171b8;color:#fecaca}.garage-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 20% 22%,#0e749047,#02061700 58%),radial-gradient(circle at 82% 16%,#1e40af3d,#02061700 54%),#020617b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.garage-modal:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 24% 78%,#38bdf821,#02061700 46%),radial-gradient(circle at 78% 70%,#0ea5e91a,#02061700 44%);animation:overlay-drift 11s ease-in-out infinite alternate-reverse}.garage-modal.hidden{display:none}.garage-modal-shell{width:min(1340px,calc(100vw - 44px));height:min(94vh,940px);display:flex;flex-direction:column;border-radius:20px;border:1px solid rgba(100,116,139,.52);background:linear-gradient(160deg,#071125f2,#030919ed);box-shadow:0 34px 90px #020617a3;overflow:hidden;position:relative}.garage-modal-header{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid rgba(71,85,105,.6);background:linear-gradient(135deg,#0c4a6e66,#0206178c)}.garage-modal-header h2{margin:0;font-size:18px;letter-spacing:.06em;text-transform:uppercase}.garage-modal-subtitle{margin:4px 0 0;font-size:12px;color:#93c5fd}.garage-modal-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.garage-modal-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(340px,44%) minmax(420px,56%);gap:14px;padding:14px}.garage-preview-card{border:1px solid rgba(71,85,105,.55);border-radius:14px;padding:12px;background:linear-gradient(180deg,#07142ddb,#030a17bd);display:flex;flex-direction:column;min-height:0}.garage-preview-card h3{margin:0 0 10px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#dbeafe}.garage-preview-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:10px}.garage-preview-preset-group{display:flex;gap:6px;flex-wrap:wrap}.garage-preview-controls .ui-chip.active{border-color:#38bdf8cc;color:#e0f2fe}.garage-preview-lighting{display:grid;gap:4px;font-size:11px;color:#93c5fd;max-width:180px}.garage-preview-lighting select{border-radius:8px;border:1px solid rgba(100,116,139,.5);background:#0f172ad9;color:#dbeafe;padding:4px 6px}.garage-preview-stage{position:relative;flex:1;min-height:290px;border:1px solid rgba(71,85,105,.6);border-radius:12px;overflow:hidden;background:radial-gradient(circle at 36% 18%,#173269,#050b1f 66%)}.garage-preview-canvas{width:100%;height:100%;display:block}.garage-preview-hint{margin:10px 0 0;font-size:11px;color:#93c5fd}.garage-panel-body{min-height:0;overflow-y:auto;border:1px solid rgba(71,85,105,.55);border-radius:14px;padding:12px;background:#030a19c4}.garage-panel-body p,.garage-panel-body label{margin:0 0 8px;font-size:12px;color:#cbd5e1}.garage-panel-body .delta{font-size:10px;border:1px solid rgba(100,116,139,.45);border-radius:999px;padding:2px 6px;letter-spacing:.01em}.garage-panel-body .delta.positive{color:#86efac;border-color:#4ade8075;background:#14532d5c}.garage-panel-body .delta.negative{color:#fca5a5;border-color:#f871717a;background:#7f1d1d47}.garage-panel-body .delta.neutral{color:#cbd5e1;border-color:#64748b66;background:#1e293b59}.garage-panel-body select{width:100%;margin-top:4px;border-radius:8px;border:1px solid rgba(100,116,139,.4);background:#0f172acc;color:#e2e8f0;padding:6px 8px}.garage-chassis{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.garage-queue-panel{margin:0 0 10px;border-radius:12px;border:1px solid rgba(71,85,105,.48);padding:10px;background:#0f172a8c}.garage-queue-panel h3{margin:0 0 4px;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:#f8fafc}.garage-queue-panel p{margin:0}.garage-queue-panel.tone-queued{border-color:#38bdf88f;background:linear-gradient(145deg,#0f172ad1,#0284c721)}.garage-queue-panel.tone-inMatch{border-color:#fbbf2485;background:linear-gradient(145deg,#0f172ad1,#b4530929)}.garage-queue-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.garage-playstyle{margin:0 0 8px;color:#c7d2fe}.garage-slot .ui-btn--sm{min-width:96px;text-align:right}.garage-stats,.garage-budget,.garage-rewards,.garage-coins,.garage-progression{color:#93c5fd}.garage-missions{margin:0 0 8px;border:1px solid rgba(71,85,105,.45);border-radius:10px;padding:8px;background:#0f172a8c}.garage-missions h3{margin:0 0 6px;font-size:12px;color:#f8fafc;letter-spacing:.02em}.garage-missions ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.garage-missions li{display:flex;justify-content:space-between;gap:8px;font-size:11px}.garage-missions li.completed{color:#86efac}.garage-missions li.active{color:#cbd5e1}.garage-compare-card{margin:0 0 10px;border:1px solid rgba(71,85,105,.48);border-radius:12px;padding:10px;background:#081126bd}.garage-compare-card h3{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#f8fafc}.garage-compare-headline{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:#dbeafe}.garage-arrow{color:#60a5fa}.garage-compare-grid{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.garage-compare-economy{margin:8px 0 4px}.garage-compare-validity.valid{color:#4ade80}.garage-compare-validity.invalid{color:#f87171}.garage-parts-toolbar{border:1px solid rgba(71,85,105,.45);border-radius:10px;background:#0f172a8a;padding:8px;margin:0 0 10px}.garage-filter-row{display:flex;gap:6px;flex-wrap:wrap}.garage-sort-select,.garage-search{display:grid;gap:4px;margin-top:8px;color:#cbd5e1}.garage-search input{border-radius:8px;border:1px solid rgba(100,116,139,.4);background:#0f172acc;color:#e2e8f0;padding:6px 8px}.garage-validity.valid{color:#4ade80}.garage-validity.invalid{color:#f87171}.garage-lock{min-height:16px;color:transparent}.garage-lock.active{color:#fbbf24}.garage-message{min-height:16px}.garage-parts{display:grid;gap:8px;margin-top:10px}.garage-slot{border:1px solid rgba(71,85,105,.45);border-radius:10px;padding:8px;background:#0f172a8c}.garage-slot h3{margin:0 0 6px;font-size:12px;color:#f8fafc}.garage-slot ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.garage-slot li{display:flex;gap:8px;justify-content:space-between;align-items:center;border-radius:8px;padding:5px 6px}.garage-slot li.preview-active{background:#1e40af3d;border:1px solid rgba(56,189,248,.4)}.garage-slot strong{display:block;font-size:12px;font-weight:600}.garage-slot span{font-size:11px;color:#94a3b8}.garage-slot-empty{margin:0;font-size:11px;color:#94a3b8}.garage-part-actions{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.garage-part-deltas{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px}.onboarding-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:36;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 20% 20%,#0e74903d,#02061700 56%),radial-gradient(circle at 78% 18%,#1e40af38,#02061700 52%),#020617c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.onboarding-modal.hidden{display:none}.onboarding-shell{width:min(1320px,calc(100vw - 36px));height:min(94vh,920px);display:flex;flex-direction:column;border-radius:20px;border:1px solid rgba(100,116,139,.5);background:linear-gradient(155deg,#071125f2,#020918f0);box-shadow:0 34px 88px #020617a3;overflow:hidden}.onboarding-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid rgba(71,85,105,.58);background:linear-gradient(135deg,#0c4a6e61,#02061785)}.onboarding-header h2{margin:0;font-size:18px;letter-spacing:.05em;text-transform:uppercase}.onboarding-header p{margin:4px 0 0;font-size:12px;color:#93c5fd}.onboarding-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(280px,34%) minmax(0,1fr);gap:14px;padding:14px}.onboarding-summary{border:1px solid rgba(71,85,105,.52);border-radius:14px;padding:14px;background:linear-gradient(180deg,#07142dd6,#030a17bd);display:grid;justify-items:center;align-content:start;gap:10px}.onboarding-summary h3{margin:0;font-size:13px;letter-spacing:.04em;text-transform:uppercase;justify-self:start}.onboarding-summary img{width:min(220px,80%);aspect-ratio:1 / 1;object-fit:cover;border-radius:16px;border:1px solid rgba(125,211,252,.42);background:#0f172adb;box-shadow:inset 0 0 0 1px #3b82f62e}.onboarding-summary-name{margin:0;font-size:18px;font-weight:700;color:#f8fafc}.onboarding-summary-chassis{margin:0;font-size:13px;color:#cbd5e1}.onboarding-form{min-height:0;overflow-y:auto;border:1px solid rgba(71,85,105,.52);border-radius:14px;padding:14px;background:#030a19c7}.onboarding-form label{display:grid;gap:6px;margin:0 0 8px;font-size:12px;color:#cbd5e1}.onboarding-form input{border-radius:8px;border:1px solid rgba(100,116,139,.45);background:#0f172adb;color:#e2e8f0;padding:8px 10px}.onboarding-form h3{margin:12px 0 8px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#f8fafc}.onboarding-hint{margin:0;font-size:11px;color:#93c5fd}.onboarding-avatars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.onboarding-avatar{border:1px solid rgba(100,116,139,.5);border-radius:10px;padding:3px;background:#0f172ab3;cursor:pointer;transition:border-color .14s ease,transform .14s ease}.onboarding-avatar img{display:block;width:100%;aspect-ratio:1 / 1;border-radius:8px;object-fit:cover}.onboarding-avatar:hover{border-color:#38bdf89e}.onboarding-avatar.active{border-color:#38bdf8db;box-shadow:0 0 0 1px #38bdf847 inset;transform:translateY(-1px)}.onboarding-avatar:disabled{opacity:.6;cursor:not-allowed}.onboarding-chassis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.onboarding-chassis-option{border:1px solid rgba(100,116,139,.5);border-radius:10px;padding:10px;display:grid;gap:4px;text-align:left;background:#0f172ab8;color:#e2e8f0;cursor:pointer}.onboarding-chassis-option span{font-size:13px;font-weight:700}.onboarding-chassis-option small{color:#94a3b8;font-size:11px}.onboarding-chassis-option.active{border-color:#38bdf8d9;background:linear-gradient(145deg,#0f172ae0,#0e749038)}.onboarding-chassis-option:disabled{opacity:.62;cursor:not-allowed}.onboarding-error{margin:10px 0 0;color:#fca5a5;font-size:12px}.onboarding-error.hidden{display:none}.onboarding-actions{margin-top:14px;display:flex;justify-content:flex-end}@media(max-width:1120px){.notifications-layer{right:10px;top:10px;width:min(320px,calc(100vw - 20px))}.garage-modal{padding:10px}.garage-modal-shell{width:100%;height:96vh}.garage-modal-layout{grid-template-columns:1fr;gap:10px;padding:10px}.garage-preview-stage{min-height:220px}.garage-panel-body{max-height:48vh}.garage-part-actions{flex-direction:row}.garage-slot li{align-items:flex-start}.onboarding-modal{padding:10px}.onboarding-shell{width:100%;height:96vh}.onboarding-layout{grid-template-columns:1fr;gap:10px;padding:10px}.onboarding-summary{grid-template-columns:auto 1fr;align-items:center;gap:10px 14px;justify-items:start}.onboarding-summary img{width:112px;border-radius:12px;grid-row:span 3}.onboarding-avatars{grid-template-columns:repeat(5,minmax(0,1fr))}.results-action-grid{grid-template-columns:1fr}}@media(max-width:820px){.hud{right:8px;left:8px}.hud-top{grid-template-columns:1fr;gap:8px}.hud-top-center{justify-self:center;min-width:150px}.hud-top-meter.player,.hud-top-meter.bot{width:100%;justify-self:stretch}.hud-top-meter.bot{grid-template-columns:auto minmax(0,1fr)}.hud-top-meter.bot .meter-avatar-wrap{order:0}.hud-side-card{width:min(94vw,380px)}.hud-radar-panel{left:8px;bottom:8px;width:min(94vw,320px)}.center-status{max-width:calc(100vw - 28px);padding:12px 14px;font-size:clamp(24px,7vw,34px);letter-spacing:.04em}.hud-header{flex-direction:column}.hud-identity{width:100%;text-align:left}.hud-tactical{grid-template-columns:1fr}.radar{width:92px}.results-title{font-size:32px}.garage-modal-actions{justify-content:flex-start}.garage-preview-controls{gap:6px}.garage-preview-lighting{max-width:none}.garage-part-actions{width:100%;justify-content:flex-end}.onboarding-chassis{grid-template-columns:1fr}.onboarding-avatars{grid-template-columns:repeat(4,minmax(0,1fr))}.onboarding-actions{justify-content:stretch}.onboarding-actions .ui-btn{width:100%}.notifications-layer{width:min(94vw,360px);right:3vw;top:8px}}
