:root{--browser-safe-area-top: env(safe-area-inset-top, 0px);--browser-safe-area-right: env(safe-area-inset-right, 0px);--browser-safe-area-bottom: env(safe-area-inset-bottom, 0px);--browser-safe-area-left: env(safe-area-inset-left, 0px);--telegram-safe-area-top: 0px;--telegram-safe-area-right: 0px;--telegram-safe-area-bottom: 0px;--telegram-safe-area-left: 0px;--telegram-content-safe-area-top: 0px;--telegram-content-safe-area-right: 0px;--telegram-content-safe-area-bottom: 0px;--telegram-content-safe-area-left: 0px;--app-safe-area-top: max(var(--browser-safe-area-top), var(--telegram-safe-area-top), var(--telegram-content-safe-area-top));--app-safe-area-right: max(var(--browser-safe-area-right), var(--telegram-safe-area-right), var(--telegram-content-safe-area-right));--app-safe-area-bottom: max(var(--browser-safe-area-bottom), var(--telegram-safe-area-bottom), var(--telegram-content-safe-area-bottom));--app-safe-area-left: max(var(--browser-safe-area-left), var(--telegram-safe-area-left), var(--telegram-content-safe-area-left));--app-viewport-height: 100vh;--app-viewport-stable-height: 100vh;--focus-ring-color: #148476;color:#111513;background:linear-gradient(135deg,rgba(229,55,42,.08) 0 25%,transparent 25% 50%,rgba(20,132,118,.08) 50% 75%,transparent 75%),repeating-linear-gradient(90deg,rgba(17,21,19,.04) 0 1px,transparent 1px 26px),#f4efe2;background-size:28px 28px,26px 26px,auto;font-family:Segoe UI,Tahoma,sans-serif;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports (height: 100dvh){:root{--app-viewport-height: 100dvh;--app-viewport-stable-height: 100dvh}}*{box-sizing:border-box}@media(any-pointer:coarse){.app-root,.app-root *{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.is-text-selectable,.is-text-selectable *{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}}.is-hidden{display:none!important}html,body{margin:0;width:100%;height:var(--app-viewport-height);overflow:hidden}body{width:100vw;height:var(--app-viewport-height)}button{font:inherit}:where(button,input,select,textarea):focus-visible{outline:3px solid var(--focus-ring-color);outline-offset:3px}:where(.mode-card,.campaign-league-card,.track-button,.bike-button,.garage-appearance-option,.garage-loadout-option,.campaign-live-button,.primary-button,.quiet-button,.danger-button,.hud-button,.preset-button,.settings-scale-button,.toggle-control):focus-visible{transform:translate(-2px,-2px)}#root{width:100%;height:var(--app-viewport-height)}.app-root{width:100%;height:var(--app-viewport-height);display:flex;align-items:stretch;justify-content:stretch}.game-canvas{width:100%;height:100%;max-width:none;max-height:none;display:block;image-rendering:pixelated;background:#fff;touch-action:none}.shell-root,.race-root{width:100%;height:var(--app-viewport-height)}.shell-root{min-height:var(--app-viewport-stable-height);overflow:auto}.home-screen,.app-screen,.result-screen,.shell-loading{width:min(1120px,100%);min-height:100%;margin:0 auto;padding:max(18px,var(--app-safe-area-top)) max(16px,var(--app-safe-area-right)) max(18px,var(--app-safe-area-bottom)) max(16px,var(--app-safe-area-left))}.home-screen{display:grid;grid-template-rows:auto 1fr auto;gap:18px}.shell-loading{display:grid;place-items:center;align-content:center;gap:12px;text-align:center}.shell-loading h1,.shell-loading p{margin:0}.loading-mark{width:72px;height:72px;border:8px solid #111513;border-right-color:#e5372a;border-bottom-color:#148476;border-radius:50%;animation:shell-spin .9s linear infinite}@keyframes shell-spin{to{transform:rotate(360deg)}}.brand-panel,.admin-panel,.track-editor-panel,.online-panel,.online-history-panel,.settings-panel,.profile-panel,.result-panel,.setup-summary{border:2px solid #111513;border-radius:8px;background:#fffcf3f0;box-shadow:6px 6px #111513}.brand-panel{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:center;padding:18px}.admin-panel,.track-editor-panel{display:grid;gap:18px;padding:18px}.track-editor-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.track-editor-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.track-editor-file-input{display:none}.track-editor-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:12px;align-items:start}.track-editor-json-field,.track-editor-side{display:grid;min-width:0;gap:10px}.track-editor-json-field>span{color:#111513b3;font-size:.76rem;font-weight:900;text-transform:uppercase}.track-editor-json-field textarea{width:100%;min-height:520px;padding:12px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;font:.86rem/1.45 Cascadia Mono,Consolas,monospace;outline:none;resize:vertical}.track-editor-json-field textarea:focus{border-color:#148476;box-shadow:0 0 0 3px #1484762e}.track-editor-preview{min-height:220px;display:grid;place-items:center;overflow:hidden;padding:12px;background:#14847614;border:2px solid rgba(17,21,19,.2);border-radius:6px}.track-editor-preview>span{color:#111513a8;font-weight:900}.track-editor-preview svg{width:100%;min-height:196px;display:block}.track-editor-preview-line{fill:none;stroke:#148476;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.track-editor-marker circle{stroke:#111513;stroke-width:2}.track-editor-marker{cursor:pointer}.track-editor-marker.is-active circle{stroke-width:4;filter:drop-shadow(0 0 5px rgba(229,55,42,.72))}.track-editor-marker text{fill:#111513;font-size:14px;font-weight:900;paint-order:stroke;stroke:#fffaf0db;stroke-linejoin:round;stroke-width:4px}.track-editor-marker-start circle{fill:#f1cd4c}.track-editor-marker-spawn circle{fill:#41b9a6}.track-editor-marker-finish circle{fill:#e5372a}.track-editor-marker-checkpoint circle{fill:#fffaf0}.track-editor-marker-terrain circle{fill:#fffaf0}.track-editor-visual-panel,.track-editor-validation-panel,.track-editor-difficulty-panel{display:grid;gap:10px;padding:12px;background:#fffaf0b8;border:2px solid rgba(17,21,19,.2);border-radius:6px}.track-editor-difficulty-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.track-editor-difficulty-metric{display:grid;gap:4px;min-width:0;padding:10px;background:#fffaf0bd;border:2px solid rgba(17,21,19,.18);border-radius:6px}.track-editor-difficulty-metric>span{color:#111513b3;font-size:.72rem;font-weight:900;text-transform:uppercase}.track-editor-difficulty-metric>strong{font-size:1.15rem;line-height:1}.track-editor-difficulty-metric>em{color:#111513a8;font-size:.78rem;font-style:normal;font-weight:850;line-height:1.25}.track-editor-validation-list{display:grid;gap:8px}.track-editor-validation-item{display:grid;gap:4px;min-height:56px;padding:10px;border:2px solid rgba(17,21,19,.18);border-radius:6px;background:#fffaf0bd}.track-editor-validation-item>strong{font-size:.9rem}.track-editor-validation-item>span{color:#111513ad;font-size:.82rem;font-weight:850;line-height:1.35}.track-editor-validation-item-error{border-color:#e5372a80;background:#e5372a1a}.track-editor-validation-item-warning{border-color:#d9b84694;background:#d9b84624}.track-editor-point-actions,.track-editor-point-picker{display:flex;flex-wrap:wrap;gap:8px}.track-editor-point-chip{min-height:34px;padding:7px 10px;color:#111513;background:#fffaf0db;border:2px solid rgba(17,21,19,.32);border-radius:6px;font:inherit;font-size:.82rem;font-weight:900;cursor:pointer}.track-editor-point-chip.is-active{color:#fffaf0;background:#111513;border-color:#111513}.track-editor-point-chip-start,.track-editor-point-chip-spawn,.track-editor-point-chip-finish,.track-editor-point-chip-checkpoint{border-color:#111513}.track-editor-point-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:2px}.track-editor-point-form-heading{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.track-editor-point-form-heading>strong{font-size:1rem}.track-editor-point-form-heading>span{color:#111513a8;font-weight:900}.track-editor-number-field{display:grid;min-width:0;gap:6px}.track-editor-text-field{grid-column:1 / -1}.track-editor-number-field span{color:#111513b3;font-size:.74rem;font-weight:900;text-transform:uppercase}.track-editor-number-field input,.track-editor-number-field select,.track-editor-number-field textarea{width:100%;min-height:40px;color:#111513;background:#fffaf0e6;border:2px solid #111513;border-radius:6px;padding:8px 10px;font:inherit;font-weight:900;outline:none}.track-editor-number-field input:focus,.track-editor-number-field select:focus,.track-editor-number-field textarea:focus{border-color:#148476;box-shadow:0 0 0 3px #1484762e}.track-editor-anchor-table{display:grid;overflow:hidden;border:2px solid rgba(17,21,19,.2);border-radius:6px}.track-editor-anchor-row{display:grid;grid-template-columns:minmax(88px,1fr) repeat(2,minmax(0,.75fr));gap:8px;min-height:40px;align-items:center;padding:9px 10px;border-top:1px solid rgba(17,21,19,.14);font-weight:850}.track-editor-anchor-row:first-child{border-top:0}.admin-tabs{display:flex;flex-wrap:wrap;gap:8px}.admin-tab{min-height:38px;padding:8px 12px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;font:inherit;font-size:.86rem;font-weight:900;cursor:pointer}.admin-tab.is-active{color:#fffaf0;background:#148476}.admin-tab:hover,.admin-refresh-button:hover{transform:translate(-1px,-1px);box-shadow:4px 4px #111513}.admin-action-group,.admin-export-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.admin-export-button:hover{transform:translate(-1px,-1px);box-shadow:4px 4px #111513}.admin-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.admin-metric-card{display:grid;gap:8px;min-height:82px;padding:12px;color:#111513;background:#fffaf0d1;border:2px solid #111513;border-radius:6px}.admin-metric-card span{color:#111513ad;font-size:.76rem;font-weight:900;text-transform:uppercase}.admin-metric-card strong{font-size:1.55rem;line-height:1}.admin-metric-card-ok{border-color:#148476}.admin-metric-card-warning{border-color:#e5372a}.admin-filter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.admin-heatmap-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-heatmap-preview{position:relative;min-height:220px;overflow:hidden;display:grid;place-items:center;border:2px solid #111513;border-radius:6px;background:linear-gradient(90deg,rgba(17,21,19,.08) 1px,transparent 1px),linear-gradient(rgba(17,21,19,.08) 1px,transparent 1px),#fffaf0b8;background-size:32px 32px}.admin-heatmap-screen-surface{position:absolute;inset:14px;z-index:0;display:grid;grid-template-rows:22px 28px minmax(0,1fr) 24px;gap:10px;padding:12px;border:2px solid rgba(17,21,19,.24);border-radius:6px;background:#fffaf0a3;box-shadow:inset 0 0 0 1px #11151314}.admin-heatmap-screen-header,.admin-heatmap-screen-footer,.admin-heatmap-screen-hero,.admin-heatmap-screen-list span,.admin-heatmap-screen-nav span{border:1px solid rgba(17,21,19,.16);background:#11151317}.admin-heatmap-screen-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.admin-heatmap-screen-content{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:10px;min-height:0}.admin-heatmap-screen-list{display:grid;gap:8px;align-content:start}.admin-heatmap-screen-list span{min-height:24px}.admin-heatmap-point{position:absolute;left:var(--heatmap-x);top:var(--heatmap-y);z-index:2;display:grid;width:var(--heatmap-size);height:var(--heatmap-size);place-items:center;color:#111513;background:radial-gradient(circle,#fffaf0fa 0 21%,rgba(217,184,70,var(--heatmap-alpha)) 22% 46%,rgba(229,55,42,var(--heatmap-alpha-strong)) 47% 72%,#e5372a00 73%);border-radius:999px;transform:translate(-50%,-50%);filter:drop-shadow(0 8px 14px rgba(17,21,19,.22))}.admin-heatmap-point strong{display:grid;min-width:22px;min-height:22px;place-items:center;padding:1px 4px;color:#111513;background:#fffaf0eb;border:2px solid rgba(17,21,19,.8);border-radius:999px;font-size:.74rem;line-height:1}.admin-heatmap-empty{position:relative;z-index:1;display:grid;max-width:min(360px,calc(100% - 24px));gap:6px;padding:12px;color:#111513;background:#fffaf0eb;border:2px solid #111513;border-radius:6px;text-align:center}.admin-heatmap-empty strong{font-size:.96rem}.admin-heatmap-empty span{min-width:0;overflow-wrap:anywhere;color:#111513ad;font-weight:850}.admin-section-stack{display:grid;gap:8px}.admin-campaign-label-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end;min-width:0;padding:12px;border:2px solid rgba(17,21,19,.28);border-radius:6px;background:#fffaf0a3}.admin-campaign-label-note-field{grid-column:span 2}.admin-campaign-label-note{min-height:42px;resize:vertical}.admin-campaign-label-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-inline-status{min-width:0;overflow-wrap:anywhere;color:#111513ad;font-size:.82rem;font-weight:900}.admin-inline-status-error{color:#e5372a}.admin-inline-status-ok{color:#148476}.admin-room-monitor-warning-chips{display:flex;flex-wrap:wrap;gap:8px}.admin-room-monitor-warning-chips .status-pill{justify-self:start}.admin-replay-playback-proof,.admin-replay-timeline{display:grid;min-width:0;gap:8px}.admin-replay-timeline strong,.admin-replay-playback-proof strong{color:#111513b8;font-size:.76rem;font-weight:900;text-transform:uppercase}.admin-replay-timeline-canvas,.admin-replay-playback-canvas{display:block;width:100%;min-height:160px;aspect-ratio:32 / 9;background:#111513;border:2px solid #111513;border-radius:6px}.admin-action-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:end}.admin-search-field{display:grid;min-width:0;gap:6px}.admin-search-field span{color:#111513b3;font-size:.76rem;font-weight:900;text-transform:uppercase}.admin-search-field input,.admin-search-field select,.admin-search-field textarea{width:100%;min-height:42px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;padding:8px 10px;font:inherit;font-weight:900;outline:none}.admin-search-field input:focus,.admin-search-field select:focus,.admin-search-field textarea:focus{border-color:#148476;box-shadow:0 0 0 3px #1484762e}.admin-toggle-field .toggle-control{width:100%;min-height:42px}.admin-table{display:grid;overflow:hidden;border:2px solid #111513;border-radius:6px;background:#fffaf0b8}.admin-table-row{display:grid;grid-template-columns:repeat(var(--admin-table-columns, 2),minmax(0,1fr));min-height:40px;align-items:center;border-top:1px solid rgba(17,21,19,.14)}.admin-table-row:first-child{border-top:0}.admin-table-head{background:#f1cd4c4d}.admin-table-cell{min-width:0;overflow:hidden;padding:9px 10px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.admin-table-cell.is-right{text-align:right}.admin-empty-table{min-height:54px;display:grid;place-items:center;padding:12px;color:#111513b3;border:2px dashed rgba(17,21,19,.36);border-radius:6px;font-weight:900}.admin-legacy-status{display:grid}.brand-logo{width:100%;min-width:0;image-rendering:pixelated}.brand-copy{min-width:0}.brand-copy h1,.screen-intro h1,.online-panel h1,.track-editor-panel h1,.settings-panel h1,.profile-panel h1,.result-panel h1{margin:2px 0 0;font-size:clamp(2rem,5vw,4.4rem);line-height:.95;letter-spacing:0}.settings-panel h1,.profile-panel h1,.track-editor-panel h1,.online-panel h1,.result-panel h1{font-size:clamp(2rem,4vw,3.2rem)}.eyebrow,.mode-kicker{margin:0;color:#e5372a;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.stat-row,.status-row{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid rgba(17,21,19,.16)}.stat-row{width:min(280px,100%);margin-top:18px}.home-player-card{width:min(520px,100%);min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:18px;padding:10px;background:#fffaf0b8;border:2px solid rgba(17,21,19,.18);border-radius:8px}.home-player-avatar{width:42px;height:42px;display:grid;place-items:center;color:#fffaf0;background:#111513;border-radius:50%;font-weight:900}.home-player-copy,.home-progress-pill{display:grid;min-width:0;gap:2px}.home-player-copy span,.home-progress-pill span{color:#1115139e;font-size:.72rem;font-weight:900;line-height:1;text-transform:uppercase}.home-player-copy strong,.home-progress-pill strong{overflow-wrap:anywhere}.home-progress-pill{min-width:108px;padding:8px 10px;background:#1484761a;border:1px solid rgba(20,132,118,.28);border-radius:6px}.mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:stretch}.play-hub-screen{position:relative;isolation:isolate;align-content:start}.play-hub-intro{max-width:620px}.campaign-world-home,.campaign-world-entry,.campaign-world-route{position:relative;isolation:isolate}.campaign-world-home:before,.campaign-world-entry:before,.campaign-world-route:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(216,251,244,.5) 0 34%,transparent 34%),linear-gradient(166deg,transparent 0 54%,rgba(20,132,118,.12) 54% 60%,transparent 60%),linear-gradient(172deg,transparent 0 62%,rgba(241,205,76,.18) 62% 66%,transparent 66%),linear-gradient(180deg,transparent 0 72%,rgba(17,21,19,.06) 72% 73%,transparent 73%)}.campaign-world-home .brand-panel,.campaign-world-entry .play-hub-intro,.campaign-world-route .screen-intro{position:relative;overflow:hidden}.campaign-world-home .brand-panel:after,.campaign-world-entry .play-hub-intro:after,.campaign-world-route .screen-intro:after{content:"";display:block;width:min(280px,100%);height:8px;margin-top:12px;background:linear-gradient(90deg,#148476 0 68%,#f1cd4c 68% 82%,#e5372a 82% 100%);border:2px solid #111513;border-radius:999px}.play-hub-grid .mode-card{min-height:260px;grid-template-rows:auto auto auto 1fr auto}.home-primary-actions .mode-card{min-height:220px;grid-template-rows:auto auto 1fr auto}.mode-card{position:relative;overflow:hidden;min-height:280px;padding:22px;display:grid;grid-template-rows:auto auto 1fr auto auto;gap:12px;color:#111513;text-align:left;border:2px solid #111513;border-radius:8px;box-shadow:6px 6px #111513;cursor:pointer}.mode-card>*{position:relative;z-index:1}.campaign-entry:before,.campaign-world-entry .mode-card-campaign:before,.campaign-world-route .campaign-league-card:not(.campaign-league-card-locked):before{content:"";position:absolute;inset:0 auto 0 0;width:10px;background:#148476}.mode-card strong{font-size:clamp(2.1rem,5vw,4rem);line-height:.96;letter-spacing:0}.mode-body{max-width:320px;color:#111513bd;font-weight:700}.mode-highlights{display:flex;flex-wrap:wrap;gap:8px}.mode-highlights span{padding:6px 8px;color:#111513;background:#fffaf0d1;border:1px solid rgba(17,21,19,.28);border-radius:6px;font-size:.78rem;font-weight:900;line-height:1}.play-hub-metrics{display:grid;gap:10px;align-content:start}.play-hub-signal{justify-self:start;max-width:100%;padding:6px 8px;color:#111513;background:#fffaf0d1;border:1px solid rgba(17,21,19,.28);border-radius:6px;font-size:.78rem;font-weight:900;line-height:1.1}.play-hub-signal-live{color:#071313;background:#7ee6d6;border-color:#148476}.play-hub-signal-offline{color:#fffaf0;background:#b72f28;border-color:#111513}.play-hub-metric{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;max-width:320px;padding-top:8px;border-top:1px solid rgba(17,21,19,.18)}.play-hub-metric span{color:#111513a8;font-size:.75rem;font-weight:900;letter-spacing:0;line-height:1;text-transform:uppercase}.play-hub-metric strong{font-size:1rem;line-height:1;text-align:right}.mode-action{justify-self:start;min-width:112px;padding:10px 14px;color:#fffaf0;background:#111513;border-radius:6px;font-weight:800;text-align:center}.campaign-entry .mode-action,.campaign-world-entry .mode-card-campaign .mode-action,.campaign-world-route .campaign-league-card:not(.campaign-league-card-locked) .mode-action{width:min(100%,280px);color:#fffaf0;background:linear-gradient(90deg,#0f5f55 0 12px,#148476 12px 100%);border:2px solid #111513;box-shadow:3px 3px #111513}.mode-card-campaign,.mode-card-play{background:linear-gradient(0deg,#fffcf3e0,#fffcf3e0),repeating-linear-gradient(135deg,#f1cd4c 0 12px,#fff4be 12px 24px)}.mode-card-motorcycle{background:linear-gradient(0deg,#fffcf3e6,#fffcf3e6),repeating-linear-gradient(135deg,#e5372a 0 12px,#ffe0dc 12px 24px)}.mode-card-online{background:linear-gradient(0deg,#fffcf3e6,#fffcf3e6),repeating-linear-gradient(135deg,#41b9a6 0 12px,#d8fbf4 12px 24px)}.mode-card:hover,.campaign-league-card:hover,.track-button:hover,.bike-button:hover,.primary-button:hover,.quiet-button:hover,.danger-button:hover,.hud-button:hover,.preset-button:hover,.settings-scale-button:hover,.toggle-control:hover{transform:translate(-2px,-2px);box-shadow:8px 8px #111513}.utility-strip,.result-actions{display:flex;flex-wrap:wrap;gap:10px}.home-utility-strip{align-items:center;justify-content:center}.result-debug-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#111513b8;font-size:.78rem;font-weight:900;text-transform:uppercase}.app-screen{display:grid;gap:18px;align-content:start}.garage-screen{--garage-accent-border: rgba(20, 132, 118, .28);--garage-accent-color: #148476;--garage-accent-shadow: rgba(20, 132, 118, .32);--garage-accent-surface: rgba(20, 132, 118, .12)}.garage-lead{max-width:56ch;margin:0;color:#111513c2;font-weight:700}.app-screen-compact,.result-screen{display:grid;place-items:center;align-content:center}.online-screen{align-content:start}.topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.topbar>strong{min-width:0;font-size:1.2rem;text-align:center}.screen-intro h1{font-size:clamp(2.1rem,6vw,4.8rem)}.chapter-section{display:grid;gap:10px}.campaign-league-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.campaign-league-card{position:relative;overflow:hidden;min-height:238px;padding:18px;display:grid;grid-template-rows:auto auto auto 1fr auto auto;gap:10px;color:#111513;text-align:left;background:linear-gradient(0deg,#fffcf3e6,#fffcf3e6),repeating-linear-gradient(135deg,#f1cd4c 0 12px,#fff4be 12px 24px);border:2px solid #111513;border-radius:8px;box-shadow:5px 5px #111513;cursor:pointer}.campaign-league-card>*{position:relative;z-index:1}.campaign-league-card-locked{background:linear-gradient(0deg,#fffaf0f0,#fffaf0f0),repeating-linear-gradient(135deg,#d9d4c4 0 10px,#f5efe0 10px 20px);border-style:dashed}.campaign-league-card>strong{font-size:1.8rem;line-height:1}.campaign-league-progress{color:#111513b8;font-weight:900}.campaign-league-meta{display:flex;align-content:start;flex-wrap:wrap;gap:8px}.campaign-league-meta span,.campaign-league-lock{padding:6px 8px;color:#111513;background:#fffaf0d1;border:1px solid rgba(17,21,19,.28);border-radius:6px;font-size:.78rem;font-weight:900;line-height:1.1}.campaign-league-meta .campaign-league-live{color:#071313;background:#7ee6d6;border-color:#148476}.campaign-league-lock{align-self:start;color:#111513c2}.garage-showcase-grid,.garage-cosmetic-grid,.garage-appearance-grid,.garage-loadout-strip{display:grid;gap:12px}.garage-appearance-grid,.garage-cosmetic-grid,.garage-loadout-strip{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.garage-appearance-preview,.garage-bike-card,.garage-loadout-option{border-color:var(--garage-accent-border)}.garage-loadout-stack{display:grid;gap:18px}.garage-loadout-row{display:grid;gap:10px}.garage-loadout-option{width:100%;min-width:0;min-height:148px;text-align:left;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.garage-loadout-option.is-selected{border-color:var(--garage-accent-color);box-shadow:6px 6px 0 var(--garage-accent-shadow)}.garage-engine-option.is-selected{box-shadow:6px 6px 0 var(--garage-accent-shadow)}.garage-outfit-option{display:grid;gap:10px}.garage-loadout-option:hover{transform:translate(-2px,-2px)}.garage-bike-card{cursor:default}.garage-bike-card:hover{transform:none;box-shadow:4px 4px #111513}.garage-bike-copy{gap:4px}.garage-bike-hint,.garage-cosmetic-card>span,.garage-appearance-copy,.garage-appearance-option>span,.garage-outfit-option>span{color:#111513b8}.garage-bike-meta{gap:4px}.garage-bike-league{font-size:.78rem}.garage-bike-status{color:var(--garage-accent-color)}.garage-cosmetic-card,.garage-appearance-preview,.garage-appearance-option{display:grid;gap:10px}.garage-appearance-option{text-align:left;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.garage-appearance-option:hover{transform:translate(-2px,-2px)}.garage-appearance-option.is-selected{border-color:var(--garage-accent-color);box-shadow:6px 6px 0 var(--garage-accent-shadow)}.garage-appearance-header{display:flex;align-items:center;gap:10px}.garage-appearance-swatch{width:16px;height:16px;border:1px solid rgba(17,21,19,.28);border-radius:999px}.garage-cosmetic-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.garage-cosmetic-tag{flex:0 0 auto;padding:4px 8px;color:var(--garage-accent-color);background:var(--garage-accent-surface);border:1px solid var(--garage-accent-border);border-radius:999px;font-size:.72rem;font-weight:900;line-height:1;text-transform:uppercase}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px}.section-heading h2{margin:0;font-size:1.2rem}.section-heading span{color:#111513ad;font-weight:700}.track-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.campaign-live-strip{position:relative;overflow:hidden;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#111513;background:#fffaf0b8;border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513}.campaign-world-route .campaign-live-strip{background:linear-gradient(90deg,rgba(20,132,118,.16) 0 8px,transparent 8px),linear-gradient(176deg,transparent 0 58%,rgba(241,205,76,.22) 58% 62%,transparent 62%),#fffaf0d1}.campaign-unlock-strip{padding:12px;color:#111513;background:linear-gradient(0deg,#fffaf0e6,#fffaf0e6),repeating-linear-gradient(135deg,#f1cd4c 0 12px,#fff4be 12px 24px);border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513}.campaign-live-copy{display:grid;min-width:0;gap:4px}.campaign-live-copy>strong{font-size:.86rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.campaign-live-button{flex:0 0 auto;min-height:42px;padding:10px 14px;color:#fffaf0;background:#148476;border:2px solid #111513;border-radius:6px;font-weight:900;cursor:pointer;box-shadow:3px 3px #111513}.campaign-world-route .campaign-live-button{color:#fffaf0;background:linear-gradient(90deg,#0f5f55 0 12px,#148476 12px 100%)}.campaign-live-button:disabled{color:#111513a8;background:#1115131a;cursor:not-allowed;box-shadow:none}.campaign-live-hint{min-width:0;color:#111513b8;font-weight:800}.online-track-select{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.online-track-filter{justify-content:start}.online-track-tools{display:grid;gap:10px}.online-track-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.online-track-search-input{width:100%;min-height:42px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;padding:8px 10px;font:inherit;font-weight:900;outline:none}.online-track-search-input:focus{border-color:#148476;box-shadow:0 0 0 3px #1484762e}.online-track-search-clear{min-height:42px}.tournament-window-card{display:grid;gap:12px;padding:14px;color:#111513;background:#fffaf0c2;border:2px solid #111513;border-radius:8px}.tournament-window-track{display:grid;gap:4px;min-width:0}.tournament-window-track>span,.tournament-window-metrics span{color:#111513a8;font-size:.72rem;font-weight:900;text-transform:uppercase}.tournament-window-track strong{min-width:0;overflow-wrap:anywhere;color:#111513;font-size:1.12rem;font-weight:950}.tournament-window-track small{color:#111513b8;font-weight:850}.tournament-window-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tournament-window-metrics>div{display:grid;gap:4px;min-width:0;padding:10px;background:#1484761a;border:1px solid rgba(17,21,19,.16);border-radius:6px}.tournament-window-metrics strong{min-width:0;overflow-wrap:anywhere;color:#111513;font-weight:950}.track-button,.bike-button{min-height:82px;padding:12px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;color:#111513;text-align:left;background:#fffaf0;border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513;cursor:pointer}.track-button{grid-template-columns:42px minmax(0,1fr) minmax(170px,auto)}.campaign-world-route .track-button:not(.track-button-locked){background:linear-gradient(90deg,rgba(20,132,118,.12) 0 8px,transparent 8px),linear-gradient(176deg,transparent 0 68%,rgba(241,205,76,.18) 68% 72%,transparent 72%),#fffaf0}.online-track-option.is-active,.track-button-recommended{border-color:#148476;box-shadow:4px 4px #148476}.campaign-world-route .track-button-recommended{background:linear-gradient(90deg,#148476 0 8px,transparent 8px),linear-gradient(176deg,transparent 0 68%,rgba(241,205,76,.2) 68% 72%,transparent 72%),#d8fbf4db}.track-button-locked,.bike-button-locked{background:linear-gradient(0deg,#fffaf0f0,#fffaf0f0),repeating-linear-gradient(135deg,#d9d4c4 0 10px,#f5efe0 10px 20px);border-style:dashed}.track-button:disabled,.bike-button:disabled{opacity:.58;cursor:not-allowed;transform:none}.track-index,.bike-badge{display:grid;width:42px;height:42px;place-items:center;color:#fffaf0;background:#e5372a;border-radius:6px;font-weight:900}.bike-badge{background:#148476}.track-copy,.bike-copy{display:grid;min-width:0;gap:2px}.track-name,.track-copy>span,.bike-copy strong,.bike-copy span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-copy strong{display:flex;align-items:center;min-width:0;gap:8px}.track-onboarding-badges{display:inline-flex;flex:0 1 auto;align-items:center;min-width:0;gap:6px}.track-recommendation-badge{flex:0 0 auto;padding:4px 7px;color:#fffaf0;background:#148476;border-radius:6px;font-size:.68rem;font-weight:900;line-height:1;text-transform:uppercase}.track-lock-badge,.bike-lock-badge{flex:0 0 auto;padding:4px 7px;color:#fffaf0;background:#e5372a;border-radius:6px;font-size:.68rem;font-weight:900;line-height:1;text-transform:uppercase}.track-live-signal{flex:0 1 auto;min-width:0;padding:4px 7px;overflow:hidden;color:#0f5f55;text-overflow:ellipsis;white-space:nowrap;background:#1484761f;border:1px solid rgba(20,132,118,.28);border-radius:999px;font-size:.68rem;font-weight:900;line-height:1}.track-live-signal-live{color:#fffaf0;background:#148476;border-color:#148476}.track-copy>span,.track-stat>span,.track-time,.bike-copy span,.bike-meta span{color:#111513ad;font-weight:700}.track-loadout{color:#111513c7}.track-lock-hint{color:#8b251e}.track-time,.track-stat strong,.bike-meta{white-space:nowrap}.track-stats{display:grid;justify-items:end;gap:4px;white-space:nowrap}.track-stat{display:grid;min-width:0;justify-items:end;gap:2px}.track-stat>span{font-size:.67rem;line-height:1.1;text-transform:uppercase}.track-stat strong{min-width:0;overflow:hidden;max-width:170px;color:#111513;font-size:.84rem;font-weight:900;text-overflow:ellipsis}.track-preview{grid-column:1 / -1;min-height:50px;padding:4px 6px 2px;overflow:hidden;background:#14847614;border:1px solid rgba(17,21,19,.14);border-radius:6px}.campaign-world-route .track-preview{background:linear-gradient(180deg,#d8fbf4a3 0 54%,#11151314 54% 58%,#f1cd4c33 58% 100%)}.track-preview>span{display:grid;min-height:42px;place-items:center;color:#1115139e;font-size:.78rem;font-weight:900}.track-preview-svg{display:block;width:100%;height:46px}.track-preview-line{fill:none;stroke:#148476;stroke-linecap:round;stroke-linejoin:round;stroke-width:4;vector-effect:non-scaling-stroke}.track-presence{width:fit-content;padding:3px 7px;color:#111513b3;background:#11151314;border:1px solid rgba(17,21,19,.14);border-radius:999px;font-size:.72rem;font-weight:900}.track-presence-live{color:#0f5f55;background:#14847624;border-color:#14847657}.setup-summary{padding:14px}.campaign-invite-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid rgba(17,21,19,.14)}.campaign-invite-hint{min-width:0;color:#111513ad;font-weight:800}.bike-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.bike-button{min-height:112px;background:linear-gradient(0deg,#fffaf0eb,#fffaf0eb),repeating-linear-gradient(135deg,#41b9a6 0 10px,#fff4be 10px 20px)}.bike-button-rally{background:linear-gradient(0deg,#fffaf0e6,#fffaf0e6),repeating-linear-gradient(135deg,#e5372a 0 10px,#f1cd4c 10px 20px)}.bike-button-factory{background:linear-gradient(0deg,#fffaf0e0,#fffaf0e0),repeating-linear-gradient(135deg,#111513 0 10px,#e5372a 10px 20px)}.bike-copy strong{display:flex;align-items:center;gap:8px;font-size:1.18rem}.bike-meta{display:grid;gap:4px;justify-items:end}.bike-meta strong{color:#111513}.online-panel,.online-history-panel,.settings-panel,.profile-panel,.result-panel{width:min(560px,100%);padding:22px;display:grid;gap:18px}.online-result-panel{width:min(760px,100%)}.online-result-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(17,21,19,.16);border-bottom:1px solid rgba(17,21,19,.16)}.online-result-metric{display:grid;min-width:0;gap:4px;padding:10px 12px}.online-result-metric+.online-result-metric{border-left:1px solid rgba(17,21,19,.16)}.online-result-metric span{color:#1115139e;font-size:.78rem;font-weight:900;text-transform:uppercase}.online-result-metric strong{min-width:0;overflow:hidden;color:#111513;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.online-result-metric.is-primary strong{color:#148476}.online-result-notice{display:grid;gap:4px;margin:0;padding:10px 12px;border:2px solid rgba(17,21,19,.18);border-radius:6px;color:#111513;font-size:.92rem;font-weight:800;line-height:1.35}.online-result-notice-pending{background:#f1cd4c47}.online-result-notice-disconnected{border-color:#e5372a6b;background:#e5372a1f}.online-result-notice strong{color:#111513}.online-result-notice span{color:#111513b8}.online-history-panel{width:min(760px,100%);padding:18px}.support-debug-panel,.privacy-retention-panel{width:min(760px,100%);padding:18px;display:grid;gap:14px}.support-debug-note{margin:0;color:#111513b8;font-weight:800;line-height:1.4}.privacy-retention-note,.privacy-retention-section li{color:#111513b8;font-weight:800;line-height:1.4}.privacy-retention-section{display:grid;gap:10px}.privacy-retention-section h2{margin:0;color:#111513;font-size:1.02rem}.privacy-retention-section ul{display:grid;gap:8px;margin:0;padding-left:20px}.support-debug-actions{justify-content:flex-start}.support-debug-value{max-width:min(420px,60vw);text-align:right;overflow-wrap:anywhere;font:.84rem/1.35 Cascadia Mono,Consolas,monospace}.support-debug-report-preview{display:grid;gap:10px;padding:12px;background:#fffaf0b8;border:1px solid rgba(17,21,19,.18);border-radius:6px}.support-debug-report-preview strong{font-size:.9rem}.support-debug-report-preview pre{margin:0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:.76rem/1.45 Cascadia Mono,Consolas,monospace}.support-debug-copy-buffer{position:fixed;top:0;left:-9999px;opacity:0;pointer-events:none}.status-board{display:grid;border-bottom:1px solid rgba(17,21,19,.16)}.status-row strong{text-align:right}.status-pill{justify-self:end;min-width:88px;padding:4px 8px;border:2px solid #111513;border-radius:6px;font-size:.78rem;font-weight:900;text-align:center;text-transform:uppercase}.status-pill-muted{color:#111513b8;background:#fffaf0}.status-pill-ok{color:#fffaf0;background:#148476}.status-pill-pending{color:#111513;background:#f1cd4c}.status-pill-warning{color:#111513;background:#fff4be}.status-pill-error{color:#fffaf0;background:#e5372a}.online-status-hint{margin:-8px 0 0;color:#111513ad;font-size:.92rem;font-weight:800;line-height:1.35}.online-player-list-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 -2px}.online-player-list-heading strong{color:#111513;font-size:.94rem;font-weight:950}.online-player-list-heading span{padding:4px 8px;color:#111513;background:#f7d66bb8;border:1px solid rgba(17,21,19,.22);border-radius:999px;font-size:.72rem;font-weight:900;text-transform:uppercase}.online-player-list{display:grid;gap:8px}.online-player-list>span{color:#111513a8;font-weight:800}.online-player-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;min-height:38px;align-items:center;gap:10px;border:1px solid rgba(17,21,19,.16);border-radius:6px;padding:6px 10px;background:#fffaf0b8}.online-player-row-queued{border-color:#e5372a4d;background:linear-gradient(90deg,#e5372a1a,#fffaf0c7)}.online-player-row-hidden{opacity:.76}.online-player-row span{color:#e5372a;font-weight:900}.online-player-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.online-player-actions{display:grid;justify-items:end;gap:4px}.online-player-visibility{color:#1115139e;font-size:.78rem;font-weight:800;text-align:right}.online-player-action{padding:4px 10px;font-size:.78rem}.online-player-list-reset{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:1px dashed rgba(17,21,19,.18);background:#fffaf0b3}.online-player-list-reset span{color:#111513ad;font-size:.82rem;line-height:1.4}.online-history-list{display:grid;gap:8px}.online-history-list>span,.online-leaderboard-list>span{color:#111513a8;font-weight:800}.online-history-row,.online-leaderboard-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(82px,auto);min-height:48px;align-items:center;gap:8px 12px;border:1px solid rgba(17,21,19,.16);border-radius:6px;padding:8px 10px;background:#fffaf0b8}.online-history-row.has-race-actions{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(82px,auto) auto auto}.online-leaderboard-list{display:grid;gap:8px}.online-leaderboard-read-label{display:flex;align-items:center;gap:8px;min-width:0;padding:2px 0}.online-leaderboard-read-label>span{min-width:0;color:#111513a8;font-size:.84rem;font-weight:800;line-height:1.35}.online-leaderboard-row{grid-template-columns:38px minmax(0,1fr) minmax(82px,auto)}.online-history-row>span,.online-history-row>strong,.online-leaderboard-row>span,.online-leaderboard-row>strong,.online-audit-player-row>span,.online-audit-player-row>strong,.online-audit-event-row>span,.online-audit-event-row>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.online-history-track{color:#148476;font-weight:900}.online-history-time,.online-leaderboard-time{text-align:right;font-weight:900}.online-leaderboard-place{color:#e5372a;font-weight:900}.online-history-meta,.online-leaderboard-meta{grid-column:1 / -1;color:#1115139e;font-size:.86rem;font-weight:800}.online-profile-section-title{font-weight:900}.audit-chip{min-height:32px;padding:5px 9px;color:#111513;background:#fffaf0;border:2px solid #111513;border-radius:6px;cursor:pointer;font-size:.82rem;font-weight:900}.audit-chip:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #111513}.audit-race-id-input{font-family:Consolas,Courier New,monospace;font-size:.92rem}.online-audit-output,.online-profile-output,.online-race-detail-output,.online-race-detail-report,.online-profile-stats,.online-audit-report,.online-audit-reasons,.online-audit-player-list,.online-audit-event-list{display:grid;gap:8px}.online-audit-output>span,.online-profile-output>span,.online-race-detail-output>span,.online-audit-reasons>span,.online-audit-player-list>span,.online-audit-event-list>span{color:#111513a8;font-weight:800}.online-panel-message{display:grid;gap:7px;padding:10px;border:1px solid rgba(17,21,19,.16);border-radius:6px;background:#fffaf0b8}.online-panel-message-error{border-color:#e5372a6b;background:#fff4be7a}.online-panel-message-ok{border-color:#14847657;background:#7ee6d629}.online-panel-message-warning{border-color:#f1cd4c8c;background:#fff4be85}.online-panel-message>strong{color:#111513}.online-panel-message>span{color:#111513ad;font-weight:800;line-height:1.35}.online-panel-message>button{justify-self:start}.online-audit-report.is-suspected .status-board{border-bottom-color:#e5372a57}.online-audit-reason-row,.online-audit-player-row,.online-audit-event-row{display:grid;min-height:38px;align-items:center;gap:8px;border:1px solid rgba(17,21,19,.16);border-radius:6px;padding:7px 9px;background:#fffaf0b8}.online-audit-reason-row{grid-template-columns:minmax(0,1fr) auto}.online-audit-player-row{grid-template-columns:34px minmax(0,1fr) minmax(74px,auto) minmax(54px,auto)}.online-audit-event-row{grid-template-columns:minmax(0,1fr) minmax(96px,auto)}.online-audit-reason-row strong,.online-audit-player-row>span:first-child,.online-audit-player-row>span:nth-child(3),.online-audit-player-row>span:nth-child(4),.online-audit-event-row span{text-align:right;font-weight:900}.online-audit-player-row>span:first-child,.online-audit-reason-row strong{color:#e5372a}.online-audit-event-row strong{color:#148476}.online-results-table{display:grid;gap:6px}.online-results-row{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(80px,auto) minmax(96px,auto);min-height:42px;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(17,21,19,.16);border-radius:6px;background:#fffaf0b8}.online-results-head{min-height:32px;color:#111513a3;background:transparent;border-color:transparent;font-size:.75rem;font-weight:900;text-transform:uppercase}.online-results-row.is-local-player{border-color:#148476;background:#d8fbf4e0}.online-results-row.is-race-winner{border-color:#f1cd4cdb;background:linear-gradient(90deg,#f1cd4c52,#fffaf0c7)}.online-results-row.is-local-player.is-race-winner{border-color:#148476;background:linear-gradient(90deg,#14847633,#f1cd4c52)}.online-results-row-disconnected,.online-results-row-dnf,.online-results-row-pending{background:#fff4be6b}.online-results-row>span,.online-results-row>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.online-results-row>span:first-child{color:#e5372a;font-weight:900}.online-results-row>span:nth-child(3),.online-results-row>span:nth-child(4){text-align:right;font-weight:850}.result-status{justify-self:end;min-width:92px;padding:3px 7px;border:2px solid #111513;border-radius:6px;font-size:.72rem;font-weight:900;text-align:center;text-transform:uppercase}.result-status-finished{color:#fffaf0;background:#148476}.result-status-racing,.result-status-pending{color:#111513;background:#f1cd4c}.result-status-dnf{color:#111513;background:#fff4be}.result-status-disconnected{color:#fffaf0;background:#e5372a}.settings-list{display:grid;border-bottom:1px solid rgba(17,21,19,.16)}.profile-name-field{display:grid;gap:8px;font-weight:900}.profile-name-field span{color:#111513ad;font-size:.82rem;text-transform:uppercase}.profile-name-input{width:100%;min-height:44px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;padding:8px 10px;font:inherit;font-weight:900;outline:none}.profile-name-input:focus{border-color:#148476;box-shadow:0 0 0 3px #1484762e}.settings-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,auto);min-height:48px;align-items:center;gap:12px;border-top:1px solid rgba(17,21,19,.16)}.settings-row>span{min-width:0;font-weight:800}.preset-group{display:flex;flex-wrap:wrap;justify-content:end;gap:8px}.preset-button,.settings-scale-button,.toggle-control{min-height:36px;padding:7px 11px;color:#111513;background:#fffaf0;border:2px solid #111513;border-radius:6px;cursor:pointer;font-weight:850}.settings-scale-control{display:grid;grid-template-columns:36px minmax(58px,auto) 36px;align-items:center;justify-content:end;gap:8px}.settings-scale-button{width:36px;padding:0;font-size:1.08rem;line-height:1}.settings-scale-button:disabled{cursor:not-allowed;opacity:.45}.settings-scale-button:disabled:hover{transform:none;box-shadow:none}.settings-scale-value{display:grid;min-width:58px;min-height:36px;place-items:center;padding:7px 10px;color:#111513;background:#fffaf0db;border:2px solid #111513;border-radius:6px;font-weight:900}.settings-camera-preview{margin-top:12px;padding-bottom:12px;border-bottom:1px solid rgba(17,21,19,.16)}.settings-camera-preview-viewport{position:relative;min-height:116px;overflow:hidden;background:linear-gradient(180deg,#d8fbf4bd,#fffaf0f5);border:2px solid #111513;border-radius:6px}.settings-camera-preview-world{position:absolute;inset:0;transform:scale(var(--settings-map-camera-scale, 1));transform-origin:50% 58%;transition:transform .16s ease}.settings-camera-preview-track{position:absolute;top:50%;left:50%;width:min(88%,460px);height:76px;transform:translate(-50%,-38%)}.settings-camera-preview-ground,.settings-camera-preview-horizon{fill:none;stroke-linecap:round}.settings-camera-preview-ground{stroke:#148476;stroke-width:5}.settings-camera-preview-horizon{stroke:#1115133d;stroke-dasharray:7 8;stroke-width:2}.settings-camera-preview-bike{position:absolute;top:58%;left:50%;width:54px;height:34px;transform:translate(-50%,-50%)}.settings-camera-preview-wheel,.settings-camera-preview-bike-frame,.settings-camera-preview-rider{position:absolute;display:block}.settings-camera-preview-wheel{bottom:2px;width:15px;height:15px;background:#fffaf0;border:3px solid #111513;border-radius:50%}.settings-camera-preview-wheel-back{left:5px}.settings-camera-preview-wheel-front{right:4px}.settings-camera-preview-bike-frame{right:13px;bottom:15px;width:28px;height:10px;background:#e5372a;border:2px solid #111513;border-radius:4px;transform:rotate(-10deg)}.settings-camera-preview-rider{right:19px;bottom:25px;width:16px;height:13px;background:#f1cd4c;border:2px solid #111513;border-radius:50% 50% 4px 4px;transform:rotate(12deg)}.preset-button.is-active,.toggle-control.is-active{color:#fffaf0;background:#148476}.primary-button,.quiet-button,.danger-button,.hud-button{min-height:42px;padding:9px 14px;border:2px solid #111513;border-radius:6px;box-shadow:4px 4px #111513;cursor:pointer;font-weight:850}.primary-button{color:#fffaf0;background:#148476}.quiet-button{color:#111513;background:#fffaf0}.danger-button{color:#fffaf0;background:#e5372a}.primary-button:disabled,.quiet-button:disabled,.danger-button:disabled,.hud-button:disabled{opacity:.58;cursor:not-allowed;transform:none;box-shadow:4px 4px #111513}.result-action-with-shortcut{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0}.result-action-with-shortcut>span{min-width:0;overflow-wrap:anywhere}.result-action-shortcut{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:1px 6px;color:#111513;background:#fffaf0e6;border:2px solid currentColor;border-radius:4px;box-shadow:2px 2px #111513e6;font:inherit;font-size:.78rem;line-height:1}.quiet-button .result-action-shortcut{background:#1484761f}.race-root,.race-shell,.race-shell>.app-root{width:100%;height:var(--app-viewport-height)}.race-shell{position:relative;--race-touch-scene-offset-y: 0px;--race-touch-top-offset: 0px;overflow:hidden;background:#fff}.race-shell-touch>.app-root{transform:translateY(calc(-1 * var(--race-touch-scene-offset-y)))}.race-shell-touch>.app-root .game-canvas{height:calc(100% + var(--race-touch-scene-offset-y))}.race-topbar{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + var(--race-touch-top-offset));left:max(10px,var(--app-safe-area-left));right:max(10px,var(--app-safe-area-right));z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;pointer-events:none}.race-topbar>*{pointer-events:auto}.race-action-group{display:flex;justify-content:end;gap:8px;min-width:0}.race-action-group .hud-button{white-space:nowrap}.race-title{min-width:0;padding:8px 12px;color:#111513;background:#fffaf0eb;border:2px solid #111513;border-radius:6px;box-shadow:4px 4px #111513;text-align:center}.race-title span,.race-title strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.race-title span{color:#e5372a;font-size:.7rem;font-weight:900;text-transform:uppercase}.race-first-run-checklist{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + 68px);right:max(12px,var(--app-safe-area-right));z-index:2;display:flex;flex-direction:column;flex-wrap:wrap;align-items:flex-end;max-width:min(240px,calc(100% - 24px));gap:6px;pointer-events:none;transform:none}.race-first-run-checklist span{display:inline-flex;align-items:center;max-width:180px;min-height:24px;padding:5px 8px;overflow:hidden;color:#111513;background:#fffaf0eb;border:2px solid rgba(17,21,19,.82);border-radius:999px;box-shadow:3px 3px #11151394;font-size:.7rem;font-weight:950;line-height:1;text-overflow:ellipsis;white-space:nowrap}.race-first-run-checklist span:before{display:grid;width:13px;height:13px;margin-right:5px;place-items:center;color:transparent;border:2px solid rgba(17,21,19,.55);border-radius:999px;content:"";font-size:.58rem;line-height:1}.race-first-run-checklist span.is-complete{color:#fffaf0;background:#148476f5;border-color:#111513}.race-first-run-checklist span.is-complete:before{color:#111513;background:#fffaf0;border-color:#fffaf0;content:"✓"}.race-status{position:absolute;right:max(10px,var(--app-safe-area-right));bottom:max(10px,var(--app-safe-area-bottom));z-index:2;padding:8px 12px;display:grid;min-width:112px;gap:2px;color:#111513;background:#fffaf0eb;border:2px solid #111513;border-radius:6px;box-shadow:4px 4px #111513;text-align:right}.race-status-label{color:#e5372a;font-size:.7rem;font-weight:900;text-transform:uppercase}.race-clock{color:#111513;font-size:1.05rem;font-variant-numeric:tabular-nums;letter-spacing:0}.race-progress{position:absolute;left:max(10px,var(--app-safe-area-left));right:calc(max(10px,var(--app-safe-area-right)) + 136px);bottom:max(14px,var(--app-safe-area-bottom));z-index:2;height:8px;overflow:hidden;background:#fffaf0eb;border:2px solid #111513;border-radius:4px;box-shadow:4px 4px #111513;pointer-events:none}.race-progress-fill{display:block;width:100%;height:100%;background:#e5372a;transform:scaleX(0);transform-origin:left center;transition:transform 80ms linear}.race-message{position:absolute;top:24%;left:50%;z-index:3;max-width:min(420px,calc(100% - 32px));padding:12px 18px;color:#111513;background:#fffaf0f0;border:2px solid #111513;border-radius:6px;box-shadow:5px 5px #111513;font-size:clamp(1.2rem,5vw,2.2rem);font-weight:900;letter-spacing:0;line-height:1.05;opacity:0;pointer-events:none;text-align:center;transform:translate(-50%,-8px);transition:opacity .12s ease,transform .12s ease}.race-message.is-visible{opacity:1;transform:translate(-50%)}.race-message-crash{color:#fffaf0;background:#e5372af2}.race-message-finish,.race-message-wheelie{color:#fffaf0;background:#148476f2}.race-ghost-target{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + 112px);right:max(10px,var(--app-safe-area-right));z-index:2;min-width:132px;max-width:min(220px,calc(100% - 28px));padding:8px 10px;display:grid;gap:2px;color:#111513;background:#fffaf0eb;border:2px solid #111513;border-radius:6px;box-shadow:4px 4px #111513;pointer-events:none}.race-ghost-target strong{font-size:.72rem;line-height:1;text-transform:uppercase}.race-ghost-target span{color:#148476;font-size:1rem;font-weight:900;line-height:1}.race-nearby-players{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + 78px);left:max(10px,var(--app-safe-area-left));z-index:2;display:grid;width:min(220px,calc(100% - 28px));gap:6px;padding:8px 10px;color:#111513;background:#fffaf0eb;border:2px solid #111513;border-radius:6px;box-shadow:4px 4px #111513;pointer-events:none}.race-nearby-players strong{color:#e5372a;font-size:.7rem;font-weight:950;line-height:1;text-transform:uppercase}.race-nearby-players ul{display:grid;gap:4px;padding:0;margin:0;list-style:none}.race-nearby-players li{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.race-nearby-players span,.race-nearby-players em{min-width:0;overflow:hidden;font-size:.72rem;font-style:normal;font-weight:850;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.race-nearby-players em{color:#148476;font-size:.64rem;text-transform:uppercase}.race-connection-notice{position:absolute;top:50%;left:50%;z-index:5;width:min(460px,calc(100% - 28px));padding:14px;display:grid;gap:10px;color:#111513;background:#fffaf0f5;border:2px solid #111513;border-radius:8px;box-shadow:6px 6px #111513;pointer-events:auto;transform:translate(-50%,-50%)}.race-connection-notice>strong{color:#e5372a;font-size:1rem;text-transform:uppercase}.race-connection-notice>span{color:#111513bd;font-weight:800;line-height:1.35}.race-connection-actions{display:flex;flex-wrap:wrap;gap:10px}.perf-overlay{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + 112px);left:max(10px,var(--app-safe-area-left));z-index:2;min-width:138px;padding:8px 10px;color:#d8fbf4;background:#111513d6;border:2px solid rgba(216,251,244,.74);border-radius:6px;font-family:Consolas,Courier New,monospace;font-size:.72rem;font-weight:800;line-height:1.35;pointer-events:none;white-space:pre}.race-dev-indicator{position:absolute;top:calc(max(10px,var(--app-safe-area-top)) + 76px);left:max(10px,var(--app-safe-area-left));z-index:2;max-width:min(360px,calc(100% - max(20px,var(--app-safe-area-left)) - max(20px,var(--app-safe-area-right))));padding:6px 8px;overflow:hidden;color:#d8fbf4;background:#111513c7;border:1px solid rgba(216,251,244,.54);border-radius:5px;font-family:Consolas,Courier New,monospace;font-size:.68rem;font-weight:800;line-height:1.25;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.touch-controls{position:absolute;inset:0;z-index:4;pointer-events:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.race-keyboard-hints{position:absolute;right:max(12px,var(--app-safe-area-right));bottom:calc(max(18px,var(--app-safe-area-bottom)) + 72px);left:max(12px,var(--app-safe-area-left));z-index:4;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;pointer-events:none}.race-keyboard-hint{display:inline-flex;align-items:center;min-height:36px;padding:6px 8px;color:#111513;background:#fffaf0e6;border:2px solid #111513;border-radius:8px;box-shadow:3px 3px #1115139e;font-size:.72rem;font-weight:950;gap:6px;line-height:1;white-space:nowrap}.race-keyboard-hint-keys{display:inline-flex;gap:3px}.race-keyboard-hint kbd{min-width:22px;padding:4px 5px;color:#111513;background:#f7d66bf5;border:2px solid #111513;border-radius:5px;box-shadow:inset 0 -2px #11151338;font:inherit;line-height:1;text-align:center}.touch-cluster{position:absolute;top:46%;bottom:0;display:grid;gap:0;padding-bottom:max(16px,var(--app-safe-area-bottom));pointer-events:auto}.touch-cluster-lean{left:0;right:50%;grid-template-columns:repeat(2,minmax(0,1fr));padding-left:max(8px,var(--app-safe-area-left));padding-right:4px}.touch-cluster-drive{right:0;left:50%;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));padding-right:max(8px,var(--app-safe-area-right));padding-left:4px}.touch-control-button{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:100%;padding:10px;color:#111513;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:pointer;font:inherit;font-size:1rem;font-weight:900;line-height:1.05;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.touch-control-label{display:inline-flex;align-items:center;justify-content:center;width:min(100%,148px);min-height:86px;padding:12px 14px;color:#111513;background:#fffaf0e6;border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513b8;text-align:center;overflow-wrap:anywhere}.touch-cluster-drive .touch-control-label{min-height:66px;padding-block:9px}.touch-cluster-drive>.touch-control-button:first-child,.touch-cluster-drive>.touch-control-wrap:first-child .touch-control-button{align-items:flex-end;padding-bottom:5px}.touch-cluster-drive>.touch-control-button:last-child,.touch-cluster-drive>.touch-control-wrap:last-child .touch-control-button{align-items:flex-start;padding-top:5px}.touch-control-wrap{position:relative;display:grid;width:100%;height:100%;min-width:0}.touch-control-hint{position:absolute;left:50%;bottom:calc(100% + 7px);z-index:1;padding:4px 7px;color:#111513;background:#f7d66bf5;border:2px solid #111513;border-radius:999px;box-shadow:3px 3px #111513b8;font-size:.68rem;font-weight:950;line-height:1;pointer-events:none;text-align:center;transform:translate(-50%);white-space:nowrap}.touch-control-hint:after{position:absolute;left:50%;bottom:-8px;width:0;height:0;border-top:8px solid #111513;border-right:6px solid transparent;border-left:6px solid transparent;content:"";transform:translate(-50%)}.touch-control-button.is-active .touch-control-label,.touch-control-button:active .touch-control-label{color:#fffaf0;background:#148476;box-shadow:2px 2px #111513d1;transform:translate(2px,2px)}.touch-control-reset{position:absolute;left:50%;bottom:calc(54% + 10px);width:auto;min-width:82px;min-height:46px;padding:8px 12px;color:#fffaf0;background:#e5372aeb;border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513b8;font-size:.82rem;transform:translate(-50%)}.touch-control-reset:active{transform:translate(calc(-50% + 2px),2px)}.hud-button{color:#111513;background:#fffaf0eb}.result-time{padding:14px;color:#fffaf0;background:#111513;border-radius:8px;font-size:clamp(2.4rem,10vw,5rem);font-weight:900;text-align:center;letter-spacing:0}.result-guidance{margin:0;color:#111513bd;font-weight:780;line-height:1.42}.result-unlock-feedback{padding:12px;display:grid;gap:10px;color:#111513;background:linear-gradient(0deg,#fffaf0eb,#fffaf0eb),repeating-linear-gradient(135deg,#f1cd4c 0 12px,#fff4be 12px 24px);border:2px solid #111513;border-radius:8px;box-shadow:4px 4px #111513}.result-unlock-feedback>strong{color:#e5372a;font-size:.78rem;font-weight:950;text-transform:uppercase}.result-unlock-feedback ul{padding:0;margin:0;display:grid;gap:8px;list-style:none}.result-unlock-feedback li{display:grid;grid-template-columns:minmax(58px,auto) minmax(0,1fr);gap:2px 8px;align-items:baseline}.result-unlock-feedback span{color:#111513b3;font-size:.68rem;font-weight:950;text-transform:uppercase}.result-unlock-feedback b{min-width:0;overflow-wrap:anywhere;font-size:.95rem}.result-unlock-feedback small{grid-column:2;color:#111513bd;font-size:.76rem;font-weight:780;line-height:1.35}.track-medal-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.track-medal-card{display:grid;gap:4px;padding:12px 14px;border:2px solid rgba(17,21,19,.14);border-radius:8px;background:#1115130a}.track-medal-card strong{font-size:.92rem}.track-medal-card span,.campaign-progress-note{color:#111513bd;font-weight:700;line-height:1.4}.track-medal-card.is-earned{border-color:#14847670;background:#14847624}.result-next-steps{display:grid;grid-template-columns:1fr}.result-next-steps .primary-button,.result-next-steps .quiet-button{width:100%}.online-result-time.is-status{font-size:clamp(1.9rem,8vw,3.8rem)}.error-view{width:min(100%,760px);padding:20px 24px;white-space:pre-wrap;color:#fff6dc;background:#1f1007e0;border:2px solid rgba(255,235,183,.65);box-shadow:0 18px 48px #00000047}.theme-dark{--focus-ring-color: #7ee6d6;color:#f4efe2;background:linear-gradient(135deg,rgba(229,55,42,.14) 0 25%,transparent 25% 50%,rgba(20,132,118,.12) 50% 75%,transparent 75%),repeating-linear-gradient(90deg,rgba(244,239,226,.05) 0 1px,transparent 1px 26px),#090d0e;background-size:28px 28px,26px 26px,auto}.theme-dark .brand-panel,.theme-dark .admin-panel,.theme-dark .track-editor-panel,.theme-dark .online-panel,.theme-dark .online-history-panel,.theme-dark .settings-panel,.theme-dark .profile-panel,.theme-dark .result-panel,.theme-dark .setup-summary,.theme-dark .campaign-live-strip,.theme-dark .campaign-unlock-strip,.theme-dark .result-unlock-feedback,.theme-dark .campaign-league-card,.theme-dark .track-button,.theme-dark .bike-button,.theme-dark .race-title,.theme-dark .race-status,.theme-dark .race-message,.theme-dark .race-connection-notice{color:#f4efe2;background:#0d1213f0;border-color:#e8d7a2;box-shadow:5px 5px #000000ad}.theme-dark .brand-panel,.theme-dark .admin-panel,.theme-dark .online-panel,.theme-dark .online-history-panel,.theme-dark .settings-panel,.theme-dark .profile-panel,.theme-dark .result-panel,.theme-dark .setup-summary{background:#0d1213eb}.theme-dark .mode-card{color:#f4efe2;border-color:#e8d7a2;box-shadow:5px 5px #000000ad}.theme-dark .mode-highlights span,.theme-dark .campaign-league-meta span,.theme-dark .campaign-league-lock{color:#f4efe2;background:#f4efe21f;border-color:#e8d7a26b}.theme-dark .campaign-league-meta .campaign-league-live{color:#071313;background:#7ee6d6;border-color:#7ee6d6}.theme-dark .campaign-league-progress,.theme-dark .campaign-league-lock{color:#f4efe2bd}.theme-dark .play-hub-signal{color:#f4efe2;background:#f4efe21f;border-color:#e8d7a26b}.theme-dark .play-hub-signal-live{color:#071313;background:#7ee6d6;border-color:#7ee6d6}.theme-dark .play-hub-signal-offline{color:#fffaf0;background:#b72f28;border-color:#e8d7a2}.theme-dark .play-hub-metric{border-color:#e8d7a238}.theme-dark .play-hub-metric span{color:#f4efe29e}.theme-dark .home-player-card{background:#f4efe20f;border-color:#e8d7a238}.theme-dark .home-player-avatar{color:#071313;background:#7ee6d6}.theme-dark .home-player-copy span,.theme-dark .home-progress-pill span{color:#f4efe29e}.theme-dark .home-progress-pill{background:#7ee6d61f;border-color:#7ee6d657}.theme-dark .garage-lead,.theme-dark .garage-bike-hint,.theme-dark .garage-cosmetic-card>span,.theme-dark .garage-appearance-copy,.theme-dark .garage-appearance-option>span,.theme-dark .garage-outfit-option>span{color:#f4efe2bd}.theme-dark .mode-card-campaign,.theme-dark .campaign-league-card{background:linear-gradient(0deg,#0d1213e0,#0d1213e0),repeating-linear-gradient(135deg,#9f8028 0 12px,#221a0b 12px 24px)}.theme-dark .campaign-league-card-locked{background:linear-gradient(0deg,#0d1213eb,#0d1213eb),repeating-linear-gradient(135deg,#5c5a52 0 10px,#181a17 10px 20px)}.theme-dark .mode-card-play{background:linear-gradient(0deg,#0d1213e0,#0d1213e0),repeating-linear-gradient(135deg,#9f8028 0 12px,#221a0b 12px 24px)}.theme-dark .mode-card-motorcycle{background:linear-gradient(0deg,#0d1213e6,#0d1213e6),repeating-linear-gradient(135deg,#8f241f 0 12px,#2a100e 12px 24px)}.theme-dark .mode-card-online{background:linear-gradient(0deg,#0d1213e6,#0d1213e6),repeating-linear-gradient(135deg,#176f65 0 12px,#0b2725 12px 24px)}.theme-dark .campaign-world-home:before,.theme-dark .campaign-world-entry:before,.theme-dark .campaign-world-route:before{background:linear-gradient(180deg,rgba(23,111,101,.18) 0 34%,transparent 34%),linear-gradient(166deg,transparent 0 54%,rgba(126,230,214,.11) 54% 60%,transparent 60%),linear-gradient(172deg,transparent 0 62%,rgba(241,205,76,.14) 62% 66%,transparent 66%),linear-gradient(180deg,transparent 0 72%,rgba(244,239,226,.08) 72% 73%,transparent 73%)}.theme-dark .campaign-world-home .brand-panel:after,.theme-dark .campaign-world-entry .play-hub-intro:after,.theme-dark .campaign-world-route .screen-intro:after{border-color:#e8d7a2}.theme-dark .campaign-entry .mode-action,.theme-dark .campaign-world-entry .mode-card-campaign .mode-action,.theme-dark .campaign-world-route .campaign-league-card:not(.campaign-league-card-locked) .mode-action,.theme-dark .campaign-world-route .campaign-live-button{color:#071313;background:linear-gradient(90deg,#5fdeb0 0 12px,#7ee6d6 12px 100%);border-color:#071313;box-shadow:3px 3px #000000ad}.theme-dark .bike-button{background:linear-gradient(0deg,#0d1213e6,#0d1213e6),repeating-linear-gradient(135deg,#176f65 0 10px,#2c250f 10px 20px)}.theme-dark .bike-button-rally{background:linear-gradient(0deg,#0d1213e6,#0d1213e6),repeating-linear-gradient(135deg,#8b251e 0 10px,#9f8028 10px 20px)}.theme-dark .bike-button-factory{background:linear-gradient(0deg,#0d1213db,#0d1213db),repeating-linear-gradient(135deg,#020404 0 10px,#8b251e 10px 20px)}.theme-dark .track-button-locked,.theme-dark .bike-button-locked{background:linear-gradient(0deg,#0d1213eb,#0d1213eb),repeating-linear-gradient(135deg,#5c5a52 0 10px,#181a17 10px 20px)}.theme-dark .track-button-recommended{border-color:#7ee6d6;box-shadow:5px 5px #7ee6d652}.theme-dark .campaign-world-route .campaign-live-strip,.theme-dark .campaign-world-route .track-button:not(.track-button-locked){background:linear-gradient(90deg,rgba(126,230,214,.16) 0 8px,transparent 8px),linear-gradient(176deg,transparent 0 58%,rgba(241,205,76,.12) 58% 62%,transparent 62%),#0d1213f0}.theme-dark .campaign-world-route .track-button-recommended{background:linear-gradient(90deg,#7ee6d6 0 8px,transparent 8px),linear-gradient(176deg,transparent 0 68%,rgba(241,205,76,.14) 68% 72%,transparent 72%),#0d1213f0}.theme-dark .campaign-world-route .track-preview{background:linear-gradient(180deg,#7ee6d61f 0 54%,#f4efe214 54% 58%,#f1cd4c1f 58% 100%)}.theme-dark .track-recommendation-badge{color:#071313;background:#7ee6d6}.theme-dark .track-lock-badge,.theme-dark .bike-lock-badge{color:#071313;background:#f1cd4c}.theme-dark .garage-bike-card:hover{box-shadow:5px 5px #000000ad}.theme-dark .garage-bike-status{color:var(--garage-accent-color)}.theme-dark .garage-cosmetic-tag{color:var(--garage-accent-color);background:var(--garage-accent-surface);border-color:var(--garage-accent-border)}.theme-dark .garage-appearance-option.is-selected,.theme-dark .garage-loadout-option.is-selected{box-shadow:6px 6px 0 var(--garage-accent-shadow)}.theme-dark .garage-appearance-swatch{border-color:#f4efe23d}.theme-dark .track-live-signal{color:#7ee6d6;background:#7ee6d61f;border-color:#7ee6d657}.theme-dark .track-live-signal-live{color:#071313;background:#7ee6d6;border-color:#7ee6d6}.theme-dark .mode-body,.theme-dark .admin-metric-card span,.theme-dark .admin-search-field span,.theme-dark .track-editor-json-field>span,.theme-dark .track-editor-difficulty-metric>em,.theme-dark .track-editor-difficulty-metric>span,.theme-dark .track-editor-number-field span,.theme-dark .track-editor-point-form-heading>span,.theme-dark .track-editor-validation-item>span,.theme-dark .section-heading span,.theme-dark .track-copy>span,.theme-dark .track-stat>span,.theme-dark .track-time,.theme-dark .bike-copy span,.theme-dark .bike-meta span,.theme-dark .campaign-live-hint,.theme-dark .campaign-invite-hint,.theme-dark .online-status-hint,.theme-dark .online-history-meta,.theme-dark .online-leaderboard-meta,.theme-dark .online-leaderboard-read-label>span,.theme-dark .online-panel-message>span,.theme-dark .online-result-notice span,.theme-dark .race-connection-notice>span,.theme-dark .profile-name-field span,.theme-dark .online-history-list>span,.theme-dark .online-leaderboard-list>span,.theme-dark .online-audit-output>span,.theme-dark .online-race-detail-output>span,.theme-dark .online-audit-reasons>span,.theme-dark .online-audit-player-list>span,.theme-dark .online-audit-event-list>span,.theme-dark .online-player-list>span,.theme-dark .support-debug-note,.theme-dark .privacy-retention-note,.theme-dark .privacy-retention-section li{color:#f4efe2b8}.theme-dark .screen-intro,.theme-dark .section-heading,.theme-dark .topbar,.theme-dark .status-row,.theme-dark .stat-row,.theme-dark .track-editor-anchor-row,.theme-dark .track-editor-point-form-heading,.theme-dark .settings-row,.theme-dark .online-results-row,.theme-dark .online-result-metric strong,.theme-dark .online-result-notice strong,.theme-dark .online-player-list-heading strong,.theme-dark .track-stat strong,.theme-dark .bike-meta strong,.theme-dark .privacy-retention-section h2,.theme-dark .admin-replay-timeline strong,.theme-dark .admin-replay-playback-proof strong,.theme-dark .race-clock{color:#f4efe2}.theme-dark .stat-row,.theme-dark .status-row,.theme-dark .settings-row,.theme-dark .admin-table-row,.theme-dark .track-editor-anchor-row,.theme-dark .track-editor-anchor-table,.theme-dark .track-editor-difficulty-panel,.theme-dark .track-editor-difficulty-metric,.theme-dark .track-editor-visual-panel,.theme-dark .track-editor-validation-panel,.theme-dark .settings-list,.theme-dark .settings-camera-preview,.theme-dark .status-board,.theme-dark .admin-replay-timeline-canvas,.theme-dark .admin-replay-playback-canvas,.theme-dark .online-result-summary,.theme-dark .online-result-metric+.online-result-metric,.theme-dark .support-debug-report-preview{border-color:#f4efe22e}.theme-dark .support-debug-report-preview{background:#f4efe20f}.theme-dark .track-presence{color:#f4efe2b8;background:#f4efe214;border-color:#f4efe229}.theme-dark .track-preview{background:#7ee6d614;border-color:#f4efe229}.theme-dark .tournament-window-card{color:#f4efe2;background:#f4efe212;border-color:#f4efe229}.theme-dark .tournament-window-track>span,.theme-dark .tournament-window-metrics span,.theme-dark .tournament-window-track small{color:#f4efe2ad}.theme-dark .tournament-window-track strong,.theme-dark .tournament-window-metrics strong{color:#f4efe2}.theme-dark .tournament-window-metrics>div{background:#7ee6d614;border-color:#f4efe229}.theme-dark .track-preview>span{color:#f4efe29e}.theme-dark .track-preview-line{stroke:#7ee6d6}.theme-dark .settings-camera-preview-viewport{background:linear-gradient(180deg,#14847633,#0d1213f5);border-color:#e8d7a2}.theme-dark .settings-camera-preview-ground{stroke:#7ee6d6}.theme-dark .settings-camera-preview-horizon{stroke:#f4efe23d}.theme-dark .settings-camera-preview-wheel{background:#101819;border-color:#e8d7a2}.theme-dark .settings-camera-preview-bike-frame{background:#ff7a70;border-color:#e8d7a2}.theme-dark .settings-camera-preview-rider{background:#f1cd4c;border-color:#e8d7a2}.theme-dark .track-presence-live{color:#7ee6d6;background:#1484763d;border-color:#7ee6d657}.theme-dark .track-lock-hint{color:#f1cd4c}.theme-dark .online-player-visibility,.theme-dark .online-player-list-reset span{color:#f4efe2ad}.theme-dark .online-player-row,.theme-dark .online-player-list-reset,.theme-dark .admin-metric-card,.theme-dark .admin-table,.theme-dark .admin-empty-table,.theme-dark .track-editor-preview,.theme-dark .track-editor-difficulty-panel,.theme-dark .track-editor-difficulty-metric,.theme-dark .track-editor-visual-panel,.theme-dark .track-editor-validation-panel,.theme-dark .track-editor-validation-item,.theme-dark .track-editor-point-chip,.theme-dark .admin-tab,.theme-dark .online-history-row,.theme-dark .online-leaderboard-row,.theme-dark .online-panel-message,.theme-dark .online-audit-reason-row,.theme-dark .online-audit-player-row,.theme-dark .online-audit-event-row,.theme-dark .online-results-row{color:#f4efe2;background:#f4efe212;border-color:#f4efe229}.theme-dark .online-player-row-queued,.theme-dark .online-result-notice-disconnected{background:linear-gradient(90deg,#e5372a33,#f4efe20f)}.theme-dark .admin-table-head{background:#d9b84629}.theme-dark .admin-heatmap-preview{border-color:#f4efe229;background:linear-gradient(90deg,rgba(244,239,226,.08) 1px,transparent 1px),linear-gradient(rgba(244,239,226,.08) 1px,transparent 1px),#f4efe20f;background-size:32px 32px}.theme-dark .admin-heatmap-screen-surface{border-color:#f4efe22e;background:#10181994;box-shadow:inset 0 0 0 1px #f4efe20f}.theme-dark .admin-heatmap-screen-header,.theme-dark .admin-heatmap-screen-footer,.theme-dark .admin-heatmap-screen-hero,.theme-dark .admin-heatmap-screen-list span,.theme-dark .admin-heatmap-screen-nav span{border-color:#f4efe21f;background:#f4efe214}.theme-dark .admin-heatmap-point{color:#111513;filter:drop-shadow(0 10px 16px rgba(0,0,0,.38))}.theme-dark .admin-heatmap-empty{color:#f4efe2;background:#101819f0;border-color:#f4efe22e}.theme-dark .admin-heatmap-empty span{color:#f4efe2b3}.theme-dark .online-panel-message-ok{background:#1484762e;border-color:#7ee6d657}.theme-dark .online-panel-message-warning{background:#d9b84629;border-color:#d9b8466b}.theme-dark .track-editor-validation-item-error{background:#e5372a2e;border-color:#e5372a85}.theme-dark .track-editor-validation-item-warning{background:#d9b84629;border-color:#d9b8466b}.theme-dark .online-results-row.is-local-player{border-color:#7ee6d6;background:#14847638}.theme-dark .online-results-row.is-race-winner{border-color:#e8d7a2b3;background:linear-gradient(90deg,#d9b84642,#f4efe20f)}.theme-dark .online-results-row.is-local-player.is-race-winner{border-color:#7ee6d6;background:linear-gradient(90deg,#14847642,#d9b84638)}.theme-dark .online-results-head{color:#f4efe29e;background:transparent;border-color:transparent}.theme-dark .profile-name-input,.theme-dark .admin-search-field input,.theme-dark .admin-search-field select,.theme-dark .admin-search-field textarea,.theme-dark .track-editor-json-field textarea,.theme-dark .track-editor-number-field input,.theme-dark .track-editor-number-field select,.theme-dark .track-editor-number-field textarea,.theme-dark .online-track-search-input,.theme-dark .preset-button,.theme-dark .settings-scale-button,.theme-dark .settings-scale-value,.theme-dark .toggle-control,.theme-dark .quiet-button,.theme-dark .hud-button,.theme-dark .audit-chip,.theme-dark .touch-control-label{color:#f4efe2;background:#101819;border-color:#e8d7a2}.theme-dark .track-editor-preview-line{stroke:#7ee6d6}.theme-dark .track-editor-preview>span{color:#f4efe29e}.theme-dark .track-editor-marker circle{stroke:#e8d7a2}.theme-dark .track-editor-marker text{fill:#f4efe2;stroke:#0d1213e6}.theme-dark .track-editor-point-chip.is-active,.theme-dark .primary-button,.theme-dark .admin-tab.is-active,.theme-dark .campaign-live-button,.theme-dark .preset-button.is-active,.theme-dark .toggle-control.is-active,.theme-dark .touch-control-button.is-active .touch-control-label,.theme-dark .touch-control-button:active .touch-control-label{color:#04100f;background:#7ee6d6;border-color:#e8d7a2}.theme-dark .admin-campaign-label-form{background:#0d12139e;border-color:#e8d7a26b}.theme-dark .admin-inline-status{color:#f4efe2ad}.theme-dark .admin-inline-status-error{color:#ff938b}.theme-dark .admin-inline-status-ok{color:#7ee6d6}.theme-dark .race-first-run-checklist span{color:#f4efe2;background:#0d1213db;border-color:#f4efe2c7;box-shadow:3px 3px #f4efe22e}.theme-dark .race-first-run-checklist span:before{border-color:#f4efe28f}.theme-dark .race-first-run-checklist span.is-complete{color:#071313;background:#7ee6d6;border-color:#e8d7a2}.theme-dark .race-first-run-checklist span.is-complete:before{color:#071313;background:#f4efe2;border-color:#f4efe2}.theme-dark .race-keyboard-hint{color:#f4efe2;background:#0d1213db;border-color:#e8d7a2;box-shadow:3px 3px #f4efe22e}.theme-dark .race-keyboard-hint kbd{color:#071313;background:#7ee6d6;border-color:#071313}.theme-dark .touch-control-hint{color:#071313;background:#7ee6d6;border-color:#071313;box-shadow:3px 3px #7ee6d647}.theme-dark .touch-control-hint:after{border-top-color:#071313}.theme-dark .danger-button,.theme-dark .touch-control-reset,.theme-dark .race-message-crash,.theme-dark .status-pill-error,.theme-dark .result-status-disconnected{color:#fffaf0;background:#b72f28}.theme-dark .campaign-live-button:disabled,.theme-dark .primary-button:disabled,.theme-dark .quiet-button:disabled,.theme-dark .danger-button:disabled,.theme-dark .hud-button:disabled{color:#f4efe28a;background:#f4efe214}.theme-dark .status-pill{border-color:#e8d7a2}.theme-dark .status-pill-muted{color:#f4efe2b8;background:#101819}.theme-dark .online-result-metric.is-primary strong{color:#7ee6d6}.theme-dark .status-pill-ok,.theme-dark .result-status-finished{color:#04100f;background:#7ee6d6}.theme-dark .status-pill-pending,.theme-dark .status-pill-warning,.theme-dark .result-status-racing,.theme-dark .result-status-pending,.theme-dark .result-status-dnf,.theme-dark .online-result-notice-pending,.theme-dark .online-panel-message-error{color:#120e04;background:#d9b846}.theme-dark .result-time,.theme-dark .mode-action{color:#04100f;background:#e8d7a2}.theme-dark.race-root,.theme-dark .race-shell,.theme-dark .race-shell>.app-root{background:#000}.theme-dark .game-canvas{background:#000;filter:none}.theme-dark .race-title,.theme-dark .race-status,.theme-dark .race-progress,.theme-dark .race-message,.theme-dark .race-ghost-target,.theme-dark .race-nearby-players,.theme-dark .race-connection-notice{background:#0d1213e6}.theme-dark .race-progress{border-color:#e8d7a2;box-shadow:4px 4px #000000ad}.theme-dark .race-progress-fill,.theme-dark .race-status-label,.theme-dark .race-title span,.theme-dark .eyebrow,.theme-dark .mode-kicker,.theme-dark .online-player-row span,.theme-dark .online-leaderboard-place,.theme-dark .online-results-row>span:first-child,.theme-dark .online-audit-player-row>span:first-child,.theme-dark .online-audit-reason-row strong{color:#ff7568}.theme-dark .race-progress-fill{background:#ff7568}.theme-dark .race-message-finish,.theme-dark .race-message-wheelie{color:#04100f;background:#7ee6d6f0}.theme-dark .track-index,.theme-dark .bike-badge{color:#fffaf0;background:#b72f28}.theme-dark .online-history-track,.theme-dark .online-audit-event-row strong{color:#7ee6d6}.theme-dark .result-guidance{color:#f4efe2bd}.theme-dark .track-medal-card{border-color:#e8d7a22e;background:#f4efe20a}.theme-dark .track-medal-card.is-earned{border-color:#5fdeae6b;background:#14847638}.theme-dark .track-medal-card span,.theme-dark .campaign-progress-note,.theme-dark .result-unlock-feedback span,.theme-dark .result-unlock-feedback small{color:#f4efe2bd}@media(max-width:720px){.home-screen,.app-screen,.result-screen,.shell-loading{padding:max(12px,var(--app-safe-area-top)) max(10px,var(--app-safe-area-right)) max(12px,var(--app-safe-area-bottom)) max(10px,var(--app-safe-area-left))}.home-screen{gap:12px}.brand-panel,.mode-grid{grid-template-columns:1fr}.brand-panel{gap:12px;padding:12px}.brand-logo{width:min(128px,48%);justify-self:center}.home-player-card{grid-template-columns:auto minmax(0,1fr);gap:8px;min-height:52px;margin-top:12px;padding:8px}.home-player-avatar{width:36px;height:36px}.home-progress-pill{grid-column:1 / -1}.campaign-live-strip,.campaign-unlock-strip,.result-unlock-feedback,.campaign-invite-strip{align-items:stretch;flex-direction:column}.result-unlock-feedback li{grid-template-columns:1fr}.result-unlock-feedback small{grid-column:1}.campaign-live-hint,.campaign-invite-hint{text-align:left}.mode-card{min-height:210px}.play-hub-grid .mode-card:hover,.play-hub-grid .mode-card:focus-visible{transform:none;box-shadow:6px 6px #111513}.theme-dark .play-hub-grid .mode-card:hover,.theme-dark .play-hub-grid .mode-card:focus-visible{box-shadow:5px 5px #000000ad}.home-primary-actions .mode-card{min-height:168px;padding:16px;gap:8px}.campaign-entry .mode-action,.campaign-world-entry .mode-card-campaign .mode-action,.campaign-world-route .campaign-league-card:not(.campaign-league-card-locked) .mode-action,.campaign-world-route .campaign-live-button{width:100%}.track-button,.bike-button{grid-template-columns:38px minmax(0,1fr)}.track-stats,.track-time,.bike-meta{grid-column:2}.track-copy strong,.track-onboarding-badges{align-items:flex-start;flex-direction:column;gap:5px}.track-stats,.bike-meta{justify-items:start}.track-stats{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));white-space:normal}.track-stat{justify-items:start}.track-stat strong{max-width:100%;white-space:normal}.online-track-search,.tournament-window-metrics,.admin-campaign-label-form,.admin-filter-row,.admin-heatmap-controls{grid-template-columns:1fr}.admin-campaign-label-note-field{grid-column:auto}.track-editor-toolbar,.track-editor-grid{grid-template-columns:1fr}.track-editor-actions{justify-content:start}.track-editor-json-field textarea{min-height:360px}.track-editor-point-form,.track-editor-difficulty-grid{grid-template-columns:1fr}.admin-action-group,.admin-export-actions{justify-content:start}.admin-heatmap-preview{min-height:260px}.admin-heatmap-screen-content{grid-template-columns:1fr}.settings-row{grid-template-columns:1fr;padding:8px 0}.preset-group,.settings-scale-control{justify-content:start}.race-topbar{grid-template-columns:auto 1fr auto;gap:6px}.race-action-group{gap:5px}.race-title{padding:7px 8px}.hud-button{min-width:0;padding-inline:10px}.race-progress{right:auto;width:min(42vw,180px)}.race-first-run-checklist{top:calc(max(10px,var(--app-safe-area-top)) + 62px);max-width:min(168px,calc(100% - 24px));gap:5px}.race-first-run-checklist span{max-width:132px;padding:4px 6px;font-size:.62rem}.race-dev-indicator{top:calc(max(10px,var(--app-safe-area-top)) + 92px);max-width:min(190px,54vw);padding:5px 6px;font-size:.6rem}.race-nearby-players{top:calc(max(10px,var(--app-safe-area-top)) + 62px);width:min(174px,50vw);gap:4px;padding:6px 7px}.race-nearby-players li{gap:5px}.race-nearby-players span,.race-nearby-players em{font-size:.62rem}.race-keyboard-hints{bottom:calc(max(16px,var(--app-safe-area-bottom)) + 58px);gap:6px}.race-keyboard-hint{min-height:32px;padding:5px 6px;font-size:.62rem}.race-keyboard-hint kbd{min-width:19px;padding:3px 4px}.touch-cluster{top:44%}.race-shell-touch{--race-touch-scene-offset-y: 24px;--race-touch-top-offset: 26px}.touch-cluster-drive{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr))}.touch-control-button{padding:8px;font-size:.88rem}.touch-control-label{width:min(100%,126px);min-height:76px;padding:10px 12px}.touch-cluster-drive .touch-control-label{min-height:58px;padding-block:8px}.touch-control-hint{max-width:96px;padding:4px 6px;overflow:hidden;font-size:.62rem;text-overflow:ellipsis}.touch-control-reset{top:calc(max(10px,var(--app-safe-area-top)) + var(--race-touch-top-offset) + 58px);right:max(10px,var(--app-safe-area-right));bottom:auto;left:auto;min-width:74px;min-height:40px;transform:none}.touch-control-reset:active{transform:translate(2px,2px)}.online-results-row{grid-template-columns:32px minmax(0,1fr)}.online-result-summary{grid-template-columns:1fr}.online-result-metric+.online-result-metric{border-top:1px solid rgba(17,21,19,.16);border-left:0}.online-history-row{grid-template-columns:minmax(0,1fr) minmax(82px,auto)}.online-history-row.has-race-actions{grid-template-columns:minmax(0,1fr) auto auto}.online-leaderboard-row{grid-template-columns:32px minmax(0,1fr)}.online-leaderboard-read-label{align-items:flex-start;flex-direction:column;gap:6px}.online-history-row>strong,.online-history-meta,.online-leaderboard-time,.online-leaderboard-meta{grid-column:1 / -1}.online-leaderboard-time{text-align:left}.online-history-row.has-race-actions>.online-history-track{grid-column:1 / -1}.online-history-row.has-race-actions>.online-history-time,.online-history-row.has-race-actions>.audit-chip{grid-column:auto}.online-audit-player-row,.online-audit-event-row{grid-template-columns:32px minmax(0,1fr)}.online-audit-player-row>span:nth-child(3),.online-audit-player-row>span:nth-child(4),.online-audit-event-row>span{grid-column:2;text-align:left}.online-results-row>span:nth-child(3),.online-results-row>span:nth-child(4){grid-column:2;text-align:left}.result-status{justify-self:start}}
