/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-25{top:calc(var(--spacing) * 25)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#07181e;--navy:#0d2940;--cream:#f4ecd9;--gold:#f7c948;--red:#f04e48;--green:#55c680;--muted:#78909a}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--cream);background:#06151b;margin:0;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}button,kbd{font:inherit}button{color:inherit}.game-shell{background:radial-gradient(circle at 50% -20%,#3486ad3d,#0000 44%),#06151b;min-height:100vh}.topbar{z-index:10;background:#05141bf5;border-bottom:1px solid #f4ecd929;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;height:84px;padding:0 clamp(18px,3vw,52px);display:grid;position:relative}.brand-lockup{align-items:center;gap:10px;width:max-content;display:flex;transform:skew(-7deg)}.brand-kicker{color:var(--gold);letter-spacing:.16em;font-size:15px;font-weight:900}.brand-distance{color:var(--cream);letter-spacing:-.08em;font-size:42px;font-weight:950;line-height:.8}.race-chip{text-align:center;flex-direction:column;align-items:center;gap:3px;display:flex}.race-chip span{color:#86a5b2;letter-spacing:.22em;font-size:9px;font-weight:800}.race-chip strong{letter-spacing:.08em;font-size:13px}.restart-button{color:#b8c7ca;cursor:pointer;letter-spacing:.12em;background:0 0;border:1px solid #f4ecd947;border-radius:2px;justify-self:end;padding:10px 15px;font-size:10px;font-weight:900;transition:all .16s}.restart-button:hover{border-color:var(--gold);color:var(--gold)}.arena{border-bottom:1px solid #f4ecd91f;height:min(66vh,710px);min-height:520px;position:relative;overflow:hidden}.race-active .topbar{pointer-events:none;background:0 0;border:0;height:58px;padding:0 18px;position:absolute;inset:0 0 auto}.race-active .brand-lockup,.race-active .race-chip{visibility:hidden}.race-active .restart-button{pointer-events:auto;background:#051017ad;border-color:#efe8d361}.race-active .telemetry-left{display:none}.race-active .arena{height:100vh;min-height:600px}.race-active .control-deck{display:none}.arena:after{content:"";pointer-events:none;background:linear-gradient(90deg,#020c1185,#0000 22% 78%,#020c1185),linear-gradient(#0000 72%,#020c1173),repeating-linear-gradient(0deg,#0000 0 3px,#ffffff05 3px 4px);position:absolute;inset:0}.track-canvas{filter:saturate(1.04)contrast(1.01);width:100%;height:100%;display:block}.race-active .arena:after{background:linear-gradient(90deg,#020a0e42,#0000 20% 80%,#020a0e42),linear-gradient(#0000 75%,#020a0e2e)}.minimap-canvas{z-index:4;pointer-events:none;width:min(172px,24vw);height:54px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.track-energy-hud,.track-command,.effort-hud{z-index:4;position:absolute}.track-energy-hud{color:#12243a;background:linear-gradient(#f4e8aa,#d9bd53);border:2px solid #14375cf0;border-radius:3px;grid-template-columns:34px 1fr auto;align-items:center;gap:1px 6px;min-width:214px;padding:5px 7px;display:grid;top:14px;left:18px;box-shadow:3px 3px #05111f9e}.track-energy-hud .hud-country{color:#f8f4df;letter-spacing:.06em;text-align:center;background:#173d6b;padding:5px 3px;font-size:10px;font-weight:950}.track-energy-hud>strong{letter-spacing:-.05em;grid-column:3;font-size:16px;font-weight:950}.track-energy-hud .hud-energy-rate{letter-spacing:.04em;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;background:#ffffff6b;border-radius:2px;grid-column:1/-1;margin-top:3px;padding:2px 5px;font-size:9px;font-weight:950}.track-energy-hud .hud-energy-rate.gaining{color:#0d5a2a;background:#a0f0beb8}.track-energy-hud .hud-energy-rate.holding{color:#23384f}.track-energy-hud .hud-energy-rate.draining{color:#7a3f06}.track-energy-hud .hud-energy-rate.draining-fast{color:#7d150c;background:#ffbeb4a8}.track-energy-hud .hud-hearts{gap:1px;display:flex}.track-energy-hud i{color:#27384759;-webkit-text-stroke:1px #142b44d9;font-size:11px;font-style:normal;line-height:1}.track-energy-hud i.active{color:#e4493f}.effort-hud{pointer-events:none;background:linear-gradient(#07192238,#071922b8);border:1px solid #efe8d33d;border-radius:8px;width:12px;height:118px;top:70px;right:20px;overflow:hidden;box-shadow:0 5px 16px #020a0f61,inset 0 0 8px #020a0f8c}.effort-hud i{filter:drop-shadow(0 0 6px #78becd7a);background:linear-gradient(#f4ecd900 0,#b3d3d6b8 12px,#6ca7b8 30%,#347c99 100%);border-radius:7px;min-height:2px;transition:height 80ms linear;position:absolute;inset:auto 1px 1px}.effort-hud i:after{content:"";filter:blur(7px);background:#bcdddc7a;border-radius:50%;width:16px;height:18px;position:absolute;top:0;left:50%;transform:translate(-50%,-45%)}.track-command{color:var(--gold);letter-spacing:.13em;background:#05121bd1;border:1px solid #efe7d25c;padding:7px 10px 6px;font-size:7px;font-weight:950;bottom:16px;left:18px;box-shadow:5px 5px #030c116b}.track-elbow-button{z-index:6;color:#607981;cursor:not-allowed;text-align:left;background:#05121bb8;border:1px solid #efe7d233;flex-direction:column;align-items:flex-start;min-width:128px;padding:8px 10px 7px;display:flex;position:absolute;bottom:52px;left:18px}.track-elbow-button span,.track-elbow-button small{letter-spacing:.12em;font-size:6px;font-weight:900}.track-elbow-button strong{color:#7f969c;letter-spacing:.08em;margin:2px 0;font-size:10px;font-weight:950}.track-elbow-button.ready{color:#99dce5;cursor:pointer;background:#0f343fe6;border-color:#6cc2d3b8}.track-elbow-button.ready strong{color:var(--cream)}.track-elbow-button.warned{color:#ef8b91;background:#3a191feb;border-color:#e14952e6}.track-lean-button{z-index:6;color:#607981;cursor:not-allowed;text-align:right;background:#05121bb8;border:1px solid #efe7d233;flex-direction:column;align-items:flex-end;min-width:128px;padding:8px 10px 7px;display:flex;position:absolute;bottom:52px;right:18px}.track-lean-button span,.track-lean-button small{letter-spacing:.12em;font-size:6px;font-weight:900}.track-lean-button strong{color:#7f969c;letter-spacing:.08em;margin:2px 0;font-size:10px;font-weight:950}.track-lean-button.ready{color:var(--gold);cursor:pointer;background:#372f17e6;border-color:#f7c948d1;animation:.62s ease-in-out infinite alternate lean-ready-pulse}.track-lean-button.ready strong,.track-lean-button.perfect strong{color:var(--cream)}.track-lean-button.perfect{color:#77e0a5;background:#12412beb;border-color:#5fd38eeb}.track-lean-button.early,.track-lean-button.late{color:#ef8b91;background:#3a191feb;border-color:#e14952e0}.track-move-button{z-index:6;color:#607981;cursor:not-allowed;text-align:right;background:#05121bb8;border:1px solid #efe7d233;flex-direction:column;align-items:flex-end;min-width:128px;padding:8px 10px 7px;transition:bottom .18s,border-color .15s,background .15s;display:flex;position:absolute;bottom:52px;right:18px}.track-move-button.finish-stack{bottom:120px}.track-move-button span,.track-move-button small{letter-spacing:.12em;font-size:6px;font-weight:900}.track-move-button strong{color:#7f969c;letter-spacing:.08em;margin:2px 0;font-size:10px;font-weight:950}.track-move-button.ready{color:var(--gold);cursor:pointer;background:#312b18e6;border-color:#f7c948c7}.track-move-button.ready strong,.track-move-button.active strong{color:var(--cream)}.track-move-button.active{color:#ef8b91;background:#3a191feb;border-color:#e14952e0;animation:.62s ease-in-out infinite kick-pulse}@keyframes lean-ready-pulse{to{box-shadow:0 0 18px #f7c9483d}}.telemetry{z-index:3;color:var(--cream);text-shadow:0 2px 12px #000000b8;flex-direction:column;display:flex;position:absolute;top:22px}.telemetry strong{letter-spacing:-.06em;font-size:clamp(28px,3.5vw,52px);font-weight:950;line-height:.96}.telemetry span:last-child{color:#f4ecd9b8;letter-spacing:.12em;margin-top:4px;font-size:10px;font-weight:800}.telemetry-label{color:var(--gold);letter-spacing:.18em;margin-bottom:6px;font-size:9px;font-weight:900}.telemetry-left{align-items:flex-end;left:auto;right:18px}.telemetry-left strong{font-size:30px}.telemetry-left .telemetry-label,.telemetry-left span:last-child{font-size:7px}.telemetry-center{color:#12243a;min-width:118px;text-shadow:none;background:linear-gradient(#f8f2daf5,#d9cba4f5);border:2px solid #133150e6;border-radius:2px;align-items:flex-end;padding:4px 8px;top:auto;bottom:16px;right:18px;box-shadow:3px 3px #05101d8c}.race-active .telemetry-center{border-width:1px;min-width:88px;padding:2px 6px 3px}.race-active .telemetry-center .telemetry-label,.race-active .telemetry-center span:last-child{display:none}.race-active .telemetry-center strong{font-size:27px}.telemetry-center strong{font-variant-numeric:tabular-nums;font-size:clamp(27px,3vw,38px)}.telemetry-center .telemetry-label,.telemetry-center span:last-child{color:#294157;font-size:6px}.telemetry-right{display:none}.race-banner{z-index:5;background:var(--gold);color:var(--ink);letter-spacing:.12em;padding:7px 15px 6px;font-size:clamp(13px,1.7vw,20px);font-weight:950;animation:.24s ease-out banner-in;position:absolute;top:20%;left:50%;transform:translate(-50%,-50%)skew(-8deg);box-shadow:7px 7px #081e24bf}.replay-badge{z-index:7;border-top:3px solid var(--gold);min-width:148px;color:var(--cream);letter-spacing:.14em;background:#06141de6;justify-content:center;align-items:center;gap:12px;padding:7px 14px 6px;font-size:7px;font-weight:900;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)skew(-7deg);box-shadow:5px 5px #030c117a}.replay-badge strong{color:var(--gold);font-size:11px}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-70%)skew(-8deg)scale(.9)}to{opacity:1;transform:translate(-50%,-50%)skew(-8deg)scale(1)}}.countdown{z-index:8;color:var(--gold);letter-spacing:-.08em;text-shadow:10px 12px #05141b99;background:#03111670;place-items:center;font-size:clamp(100px,19vw,250px);font-weight:950;display:grid;position:absolute;inset:0}.countdown.start-command{letter-spacing:.06em;text-shadow:5px 6px #05141b8c;text-align:center;padding:0 6vw;font-size:clamp(28px,6.5vw,74px);line-height:1.05}.start-card,.results-card{z-index:7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05161df0;border:1px solid #f7c9485c;width:min(560px,100% - 36px);padding:clamp(24px,4vw,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-46%);box-shadow:16px 18px #040e137a}.start-card:before,.results-card:before{content:"";background:var(--gold);width:108px;height:5px;position:absolute;top:0;left:0}.eyebrow{color:var(--gold);letter-spacing:.2em;font-size:10px;font-weight:900}.start-card h1,.results-card h2{letter-spacing:-.07em;text-transform:uppercase;margin:10px 0 13px;font-size:clamp(42px,6vw,72px);font-weight:950;line-height:.88}.start-card p{color:#b5c6c8;max-width:460px;margin:0 0 24px;font-size:14px;line-height:1.55}.racer-select-card{width:min(940px,100% - 36px);max-height:calc(100% - 28px);padding:25px 30px 27px;overflow:auto;transform:translate(-50%,-50%)}.racer-select-card h1{margin:8px 0;font-size:clamp(34px,4.2vw,52px);line-height:.96}.racer-select-card>p{max-width:760px;margin-bottom:15px;font-size:12px}.mode-select{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:9px;display:grid}.mode-select button{color:#789198;cursor:pointer;text-align:left;background:#081b24eb;border:1px solid #f4ecd929;flex-direction:column;justify-content:center;gap:3px;min-height:47px;padding:8px 11px;display:flex}.mode-select button:hover,.mode-select button.selected{border-color:var(--gold);background:#22363bf5}.mode-select strong{color:var(--cream);letter-spacing:.13em;font-size:9px}.mode-select small{letter-spacing:.06em;text-transform:uppercase;font-size:7px;font-weight:750}.challenge-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:268px;margin-bottom:9px;padding-right:3px;display:grid;overflow-y:auto}.challenge-card{cursor:pointer;text-align:left;background:#081b24eb;border:1px solid #f4ecd929;flex-direction:column;gap:4px;padding:9px 11px;display:flex}.challenge-card:hover,.challenge-card.selected{border-color:var(--gold);background:#22363bf5}.challenge-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.challenge-head strong{color:var(--cream);letter-spacing:.13em;font-size:10px}.challenge-head em{color:var(--gold);letter-spacing:.1em;font-size:9px;font-style:normal}.challenge-athlete{color:#7f9aa2;letter-spacing:.08em;font-size:7px;font-weight:750}.challenge-brief{color:#e9dfc6;font-size:9px;line-height:1.45}.challenge-basis{color:#6f868d;font-size:7.5px;line-height:1.5}.challenge-verdict{border-left:3px solid var(--gold);background:#081b24f0;flex-direction:column;gap:3px;margin:0 0 10px;padding:9px 13px;display:flex}.challenge-verdict.passed{border-left-color:#4bbd7a}.challenge-verdict.failed{border-left-color:#b8535c}.challenge-verdict strong{color:var(--cream);letter-spacing:.14em;font-size:10px}.challenge-verdict span{color:#8fa6ad;letter-spacing:.04em;font-size:8px}.touch-pad{z-index:8;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;gap:6px;display:flex;position:absolute}.touch-pad button{min-width:56px;min-height:56px;color:var(--cream);cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;background:#05121b9e;border:1px solid #f4ecd942;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0 12px;transition:background 90ms,border-color 90ms,transform 90ms;display:flex}.touch-pad button span{font-size:15px;line-height:1}.touch-pad button small{letter-spacing:.11em;color:#8fa6ad;font-size:6px;font-weight:900}.touch-pad button.held{border-color:var(--gold);background:#345258e6;transform:scale(.96)}.touch-pad button.held small{color:var(--cream)}.touch-pad-steer{left:max(14px, env(safe-area-inset-left));bottom:max(14px, env(safe-area-inset-bottom));align-items:center}.touch-pad-steer small{letter-spacing:.12em;color:#6f868d;align-self:center;font-size:6px;font-weight:900}.touch-pad-effort{right:max(14px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));flex-direction:column}.rotate-prompt{z-index:60;text-align:center;background:#040e14f7;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:24px;display:flex;position:fixed;inset:0}.rotate-prompt strong{color:var(--cream);letter-spacing:.16em;font-size:15px}.rotate-prompt span{color:#8fa6ad;max-width:260px;font-size:10px;line-height:1.6}.rotate-prompt small{color:#6d848b;max-width:260px;margin-top:2px;font-size:9px;line-height:1.6}.rotate-prompt button{min-height:44px;font:inherit;letter-spacing:.16em;color:var(--cream);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#347c993d;border:1px solid #efe8d35c;border-radius:9px;margin-top:14px;padding:13px 26px;font-size:11px;font-weight:700}.rotate-prompt button:active{background:#347c996b}@media (height<=560px),(width<=900px) and (orientation:portrait){.touch-input{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.touch-input .arena{flex:auto;height:auto;min-height:0}.touch-input .topbar{height:46px;padding:0 12px}.touch-input .race-chip{display:none}.touch-input .brand-distance{font-size:24px}.touch-input .brand-kicker{font-size:8px}.touch-input .restart-button{min-height:32px;padding:0 12px;font-size:8px}.touch-input .control-deck{display:none}.touch-input .track-canvas{touch-action:none}.touch-input .track-energy-hud{top:max(8px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));transform-origin:0 0;min-width:176px;transform:scale(.92)}.touch-input .telemetry-center{top:max(8px, env(safe-area-inset-top));min-width:96px;bottom:auto;left:50%;right:auto;transform:translate(-50%)}.touch-input .conditions-chip{left:auto;right:max(10px, env(safe-area-inset-right));top:max(8px, env(safe-area-inset-top));transform:none}.touch-input .telemetry-left{top:max(52px, calc(env(safe-area-inset-top) + 44px));right:max(10px, env(safe-area-inset-right))}.touch-input .telemetry-left strong{font-size:20px}.touch-input .track-command{bottom:auto;left:50%;top:max(58px, calc(env(safe-area-inset-top) + 50px));white-space:nowrap;transform:translate(-50%)}.touch-input .minimap-canvas{bottom:max(6px, env(safe-area-inset-bottom));width:min(132px,20vw);height:42px}.touch-input .track-elbow-button{left:max(158px, calc(env(safe-area-inset-left) + 148px));bottom:max(14px, env(safe-area-inset-bottom));min-width:84px;padding:6px 8px 5px}.touch-input .track-move-button,.touch-input .track-lean-button{right:max(82px, calc(env(safe-area-inset-right) + 74px));bottom:max(14px, env(safe-area-inset-bottom));min-width:84px;padding:6px 8px 5px}.touch-input .track-move-button.finish-stack{bottom:max(74px, calc(env(safe-area-inset-bottom) + 60px))}.touch-input .start-card,.touch-input .results-card{overscroll-behavior:contain;width:min(560px,100% - 24px);max-height:calc(100dvh - 76px);padding:16px 18px 18px;top:50%;overflow-y:auto;transform:translate(-50%,-50%)}.touch-input .start-card h1,.touch-input .results-card h2{margin:4px 0 7px;font-size:26px}.touch-input .start-card p{margin:0 0 12px;font-size:11px;line-height:1.5}.touch-input .challenge-list{max-height:168px}.touch-input .briefing-backdrop{padding:8px}.touch-input .briefing-card{padding:14px 16px 16px}.touch-input .briefing-card h2{font-size:20px}.touch-input .briefing-lede{margin-bottom:10px;font-size:10px}.touch-input .briefing-grid{gap:7px;margin-bottom:9px}.touch-input .briefing-item{padding:7px 9px}.touch-input .briefing-item span{font-size:9px;line-height:1.45}.touch-input .briefing-controls{padding:8px 10px}.touch-input .briefing-controls li,.touch-input .briefing-tip{font-size:9px}.touch-input .briefing-suppress{margin-bottom:8px;font-size:9px}.touch-input .briefing-back{margin-top:5px;padding:5px;font-size:9px}.touch-input .mode-select button,.touch-input .difficulty-select button,.touch-input .racer-card{min-height:44px}.touch-input .primary-button{min-height:46px}}.briefing-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#030c12db;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.briefing-card{background:#05161dfa;border:1px solid #f7c9486b;outline:none;flex-direction:column;width:min(620px,100%);min-height:0;max-height:min(100%,92dvh);padding:18px 24px 20px;display:flex;box-shadow:16px 18px #040e1380}.briefing-card h2{letter-spacing:-.05em;text-transform:uppercase;color:var(--cream);margin:6px 0 10px;font-size:clamp(24px,3.4vw,34px);font-weight:950;line-height:.94}.briefing-lede{color:#b5c6c8;margin:0 0 11px;font-size:12px;line-height:1.6}.briefing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:11px;display:grid}.briefing-item{background:#081b24b3;border-left:2px solid #f7c94880;flex-direction:column;gap:5px;padding:10px 12px;display:flex}.briefing-item strong{color:var(--gold);letter-spacing:.14em;font-size:8px;font-weight:900}.briefing-item span{color:#a8bcc0;font-size:10px;line-height:1.55}.briefing-controls{background:#081b24b3;border:1px solid #f4ecd924;padding:11px 13px}.briefing-controls-label{color:var(--gold);letter-spacing:.16em;margin-bottom:8px;font-size:8px;font-weight:900;display:block}.briefing-controls ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.briefing-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.briefing-actions{flex:none;padding-top:10px}.briefing-controls li{color:#a8bcc0;grid-template-columns:92px 1fr;align-items:baseline;gap:10px;font-size:10px;display:grid}.briefing-controls em{color:var(--cream);letter-spacing:.1em;text-align:center;background:#05121bcc;border:1px solid #f4ecd947;padding:3px 6px;font-size:8px;font-style:normal;font-weight:900;display:inline-block}.briefing-tip{color:var(--gold);letter-spacing:.03em;border-top:1px solid #f4ecd91f;margin:10px 0 0;padding-top:9px;font-size:10px}.briefing-suppress{color:#8fa6ad;cursor:pointer;align-items:center;gap:8px;margin-bottom:12px;font-size:10px;display:flex}.briefing-suppress input{width:15px;height:15px;accent-color:var(--gold);cursor:pointer}.briefing-back{color:#7f9aa2;letter-spacing:.05em;cursor:pointer;background:0 0;border:0;width:100%;margin-top:9px;padding:7px;font-size:10px;text-decoration:underline;display:block}.briefing-open{color:#a8bcc0;letter-spacing:.14em;cursor:pointer;background:#081b24cc;border:1px solid #f4ecd938;width:100%;min-height:34px;margin-bottom:8px;font-size:9px;font-weight:900}.briefing-open:hover{border-color:var(--gold);color:var(--cream)}@media (width>=560px){.briefing-controls ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.briefing-controls li:last-child{grid-column:1/-1}}@media (width<=620px){.briefing-grid{grid-template-columns:1fr}}.weather-select{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:9px;display:flex}.weather-select button{color:#789198;letter-spacing:.1em;cursor:pointer;background:#081b24eb;border:1px solid #f4ecd929;min-height:26px;padding:0 9px;font-size:8px;font-weight:900}.weather-select button:hover,.weather-select button.selected{border-color:var(--gold);color:var(--cream);background:#22363bf5}.weather-select small{color:#6f868d;flex:1 0 100%;font-size:8px;line-height:1.5}.conditions-chip{z-index:4;text-align:center;pointer-events:none;background:#05121bb8;border:1px solid #efe7d22e;flex-direction:column;align-items:center;gap:2px;padding:5px 10px 4px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.conditions-chip strong{color:#9fb5bb;letter-spacing:.16em;font-size:7px;font-weight:900}.conditions-chip span{color:#6f868d;letter-spacing:.1em;font-size:7px;font-weight:900}.conditions-chip span.into{color:#e0a0a4}.conditions-chip span.behind{color:#8fd0a8}@media (width<=1100px){.conditions-chip{top:82px}}.record-flash{border:1px solid var(--gold);background:linear-gradient(135deg,#f7c94833,#081b24f0 62%);flex-direction:column;gap:4px;margin:0 0 11px;padding:11px 14px;display:flex;box-shadow:inset 0 0 22px #f7c94824}.record-flash strong{color:var(--gold);letter-spacing:.2em;font-size:13px;font-weight:950}.record-flash span{color:#e9dfc6;font-size:9px;line-height:1.5}.career-save{background:#081b24d1;border:1px solid #f4ecd933;flex-direction:column;gap:7px;margin:0 0 11px;padding:11px 13px;display:flex}.career-save.saved{border-color:#4bbd7a80}.career-save strong{color:var(--gold);letter-spacing:.16em;font-size:9px;font-weight:900}.career-save>span{color:#a8bcc0;font-size:10px;line-height:1.5}.career-save-row{gap:7px;display:flex}.career-save-row input{min-width:0;min-height:34px;color:var(--cream);background:#05121be6;border:1px solid #f4ecd938;flex:auto;padding:0 9px;font-size:11px}.career-save-row .primary-button{flex:none;min-height:34px;padding:0 16px;font-size:9px}.career-consent{color:#8fa6ad;cursor:pointer;align-items:flex-start;gap:7px;font-size:9px;line-height:1.45;display:flex}.career-consent input{width:14px;height:14px;accent-color:var(--gold);cursor:pointer;flex:none;margin-top:1px}.career-failed{color:#e0a0a4;font-size:9px}.transfer-code{color:var(--gold);letter-spacing:.18em;-webkit-user-select:all;user-select:all;background:#05121be6;border:1px dashed #f7c94899;align-self:flex-start;padding:5px 10px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:15px}.transfer-redeem{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.transfer-redeem input{min-width:0;min-height:30px;color:var(--cream);letter-spacing:.12em;text-transform:uppercase;background:#05121be6;border:1px solid #f4ecd929;flex:auto;padding:0 9px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px}.transfer-redeem button{color:#a8bcc0;letter-spacing:.14em;cursor:pointer;background:#081b24cc;border:1px solid #f4ecd938;flex:none;min-height:30px;padding:0 12px;font-size:8px;font-weight:900}.transfer-redeem button:hover:not(:disabled){border-color:var(--gold);color:var(--cream)}.transfer-redeem small{color:#8fa6ad;flex:1 0 100%;font-size:8px}.championship-brief{border-left:3px solid var(--gold);color:#8fa5aa;letter-spacing:.055em;text-transform:uppercase;background:#f7c94814;grid-template-columns:auto 1fr 1.25fr;align-items:center;gap:12px;margin-bottom:9px;padding:8px 11px;font-size:7px;font-weight:750;display:grid}.championship-brief strong{color:var(--gold);letter-spacing:.11em;font-size:8px}.pacemaker-select{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 4px;display:flex}.pacemaker-select .pacemaker-label{letter-spacing:.12em;color:#efe8d38c;margin-right:2px;font-size:10px;font-weight:900}.pacemaker-select button{color:#efe8d3c7;letter-spacing:.05em;cursor:pointer;background:#091a248c;border:1px solid #efe8d32e;border-radius:3px;padding:5px 11px;font-size:11px;font-weight:800}.pacemaker-select button:hover{border-color:#efe8d366}.pacemaker-select button.selected{border-color:var(--gold);color:var(--gold);background:#d6b24a1f}.pacemaker-select small{color:#efe8d380;flex-basis:100%;font-size:10px}.difficulty-select{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.difficulty-select button{color:#799198;cursor:pointer;text-align:left;background:#0a1f28e6;border:1px solid #f4ecd929;justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:7px 10px;display:flex}.difficulty-select button:hover,.difficulty-select button.selected{border-color:var(--gold);background:#22363bf5}.difficulty-select strong{color:var(--cream);letter-spacing:.12em;font-size:9px}.racer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.racer-card{color:#9eb3b8;cursor:pointer;text-align:left;background:#0c252fe6;border:1px solid #f4ecd929;grid-template-columns:28px 1fr;gap:8px 9px;min-width:0;padding:12px;transition:all .15s;display:grid}.racer-card:hover{border-color:#f7c9489e;transform:translateY(-2px)}.racer-card.selected{border-color:var(--gold);background:#1f373dfa;box-shadow:inset 0 0 0 1px #f7c94840,4px 4px #030d127a}.racer-swatch{border:5px solid;border-radius:50%;width:28px;height:28px;box-shadow:0 2px #00000059}.racer-identity{flex-direction:column;justify-content:center;min-width:0;display:flex}.racer-identity strong{color:var(--cream);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.racer-identity small{color:#789199;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;margin-top:2px;font-size:7px;overflow:hidden}.racer-basis,.racer-tradeoff{text-overflow:ellipsis;white-space:nowrap;grid-column:1/3;overflow:hidden}.racer-basis{color:#d1c59e;letter-spacing:.045em;font-size:7px;font-weight:800}.racer-tradeoff{color:#789199;letter-spacing:.045em;text-transform:uppercase;border-top:1px solid #f4ecd91a;padding-top:5px;font-size:6.5px;font-weight:750}.racer-stat{grid-column:1/3;grid-template-columns:29px 1fr;align-items:center;gap:6px;display:grid}.racer-stat em{color:#80989e;letter-spacing:.08em;font-size:7px;font-style:normal;font-weight:900}.racer-stat i{background:#1d3942;height:5px;overflow:hidden}.racer-stat b{background:linear-gradient(90deg,#55c680,#f7c948);height:100%;display:block}.career-strip{border:1px solid #f4ecd91f;border-left:3px solid var(--gold);background:#04131a85;grid-template-columns:minmax(150px,1.8fr) repeat(4,minmax(62px,.55fr));gap:8px;margin-top:12px;padding:9px 11px;display:grid}.career-strip>span,.records-strip>span{flex-direction:column;justify-content:center;gap:3px;min-width:0;display:flex}.career-strip small,.records-strip small{color:#718991;letter-spacing:.12em;font-size:6px;font-weight:900}.career-strip strong,.records-strip strong{color:var(--cream);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.career-strip .career-label strong{color:var(--gold);letter-spacing:.07em;font-size:8px}.racer-select-card .control-grid{margin:16px 0 17px;padding-top:13px}.control-grid{border-top:1px solid #f4ecd924;gap:18px;margin-bottom:26px;padding-top:18px;display:flex}.control-grid div{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.control-grid span{color:#79929a;letter-spacing:.08em;text-transform:uppercase;width:100%;margin-top:3px;font-size:9px;font-weight:800}.control-grid .pace-key-guide{grid-template-columns:auto auto;gap:4px 7px;display:grid}.control-grid .pace-key-guide span{align-self:center;width:auto;margin-top:0}kbd{min-width:29px;color:var(--cream);text-align:center;border:1px solid #f4ecd95c;border-bottom-width:3px;border-radius:3px;padding:7px 8px;font-size:10px;font-weight:900}.primary-button{background:var(--gold);color:var(--ink);cursor:pointer;letter-spacing:.12em;border:0;padding:14px 22px 13px;font-size:12px;font-weight:950;transition:all .14s;box-shadow:6px 6px #183545}.primary-button:hover{transform:translate(2px,2px);box-shadow:4px 4px #183545}.results-card{width:min(920px,100% - 36px);max-height:calc(100% - 28px);padding:25px 31px 29px;top:50%;overflow:auto;transform:translate(-50%,-50%)}.results-card h2{margin:7px 0 15px;font-size:clamp(36px,4.5vw,54px)}.championship-result{border-left:3px solid var(--red);color:#c7d3d5;letter-spacing:.1em;background:#d6333f1a;margin:-8px 0 13px;padding:7px 10px;font-size:8px;font-weight:900}.championship-result.advanced{border-color:var(--gold);color:var(--gold);background:#f7c94817}.coaching-card{background:linear-gradient(105deg,#f7c94817,#071c24c7 45%);border:1px solid #f4ecd924;grid-template-columns:58px 1fr;align-items:center;gap:13px;margin-bottom:10px;padding:11px 13px;display:grid}.coach-grade{width:54px;height:54px;color:var(--gold);border:2px solid;place-items:center;font-size:34px;font-weight:950;line-height:1;display:grid}.coach-grade.grade-b{color:#79cf9d}.coach-grade.grade-c{color:#7cb9c9}.coach-grade.grade-d,.coach-grade.grade-f{color:var(--red)}.coaching-card>div>span{color:var(--gold);letter-spacing:.16em;font-size:7px;font-weight:950}.coaching-card h3{color:var(--cream);letter-spacing:.02em;text-transform:uppercase;margin:3px 0 4px;font-size:13px}.coaching-card p{color:#9db1b6;margin:2px 0 0;font-size:9px;line-height:1.35}.split-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:12px;display:grid}.split-summary span{background:#f4ecd90e;justify-content:space-between;align-items:baseline;gap:7px;padding:6px 9px;display:flex}.split-summary small{color:#718991;letter-spacing:.08em;font-size:6px;font-weight:900}.split-summary strong{color:#c6d3d5;font-variant-numeric:tabular-nums;font-size:9px}.advanced-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:0 0 12px;display:grid}.advanced-stats span{background:#092029b8;border-top:2px solid #f7c94852;flex-direction:column;gap:3px;padding:7px 8px;display:flex}.advanced-stats small{color:#718991;letter-spacing:.08em;font-size:5px;font-weight:900}.advanced-stats strong{color:var(--cream);font-variant-numeric:tabular-nums;font-size:9px}.result-energy-key{color:#718991;letter-spacing:.12em;grid-template-columns:24px 10px minmax(160px,1.1fr) 70px minmax(210px,1.45fr) 42px;align-items:center;gap:9px;width:100%;margin:0 0 5px;font-size:7px;font-weight:900;display:grid}.result-energy-key span{color:#a9bcc0;grid-column:3}.result-energy-axis{grid-column:5;height:9px;position:relative}.result-energy-axis em,.result-energy-axis i,.result-energy-axis strong{font-style:normal;position:absolute;top:0}.result-energy-axis em{left:0}.result-energy-axis i{left:50%;transform:translate(-50%)}.result-energy-axis strong{right:0}.result-list{border-top:1px solid #f4ecd92e;margin-bottom:18px}.result-row{color:#a9bcc0;border-bottom:1px solid #f4ecd91c;grid-template-columns:24px 10px minmax(160px,1.1fr) 70px minmax(210px,1.45fr) 42px;align-items:center;gap:9px;min-height:48px;font-size:10px;display:grid}.result-place{align-items:center;gap:3px;display:flex}.result-place small{color:var(--gold);font-size:6px;font-weight:950}.result-dot{border-radius:50%;width:8px;height:8px}.result-athlete{flex-direction:column;gap:3px;min-width:0;display:flex}.result-athlete strong{color:var(--cream);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.result-athlete small{color:#75909a;letter-spacing:.09em;white-space:nowrap;font-size:7px;font-weight:850}.result-row time{font-variant-numeric:tabular-nums;text-align:right}.energy-trace{background:linear-gradient(#f4ecd906,#020d1233);border-left:1px solid #f4ecd914;border-right:1px solid #f4ecd914;width:100%;height:32px;overflow:hidden}.energy-trace svg{width:100%;height:100%;display:block;overflow:visible}.energy-trace polyline{fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.energy-grid-line{stroke:#f4ecd91f;stroke-width:.75px;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.energy-grid-line.horizontal{stroke:#f4ecd90f}.result-energy-value{color:#91a9af;font-variant-numeric:tabular-nums;text-align:right;font-size:9px}.player-result{color:var(--gold);background:#f7c94817}.player-result .result-energy-value,.player-result .result-athlete small{color:var(--gold)}.disqualified-result{opacity:.62;background:#d6333f1f}.disqualified-result time{color:var(--red);letter-spacing:.12em;font-weight:950}.championship-bracket{background:#031218b8;border:1px solid #f4ecd926;margin:0 0 18px;padding:13px}.bracket-title,.championship-bracket h3{color:var(--gold);letter-spacing:.13em;font-size:8px;font-weight:950}.championship-bracket h3{color:var(--cream);margin:12px 0 7px}.bracket-races{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;display:grid}.bracket-race{background:#0a242d99;border:1px solid #f4ecd917;padding:7px 8px}.bracket-race header,.bracket-result{align-items:center;display:grid}.bracket-race header{color:#90a7ac;letter-spacing:.08em;grid-template-columns:1fr auto;margin-bottom:5px;font-size:7px}.bracket-result{color:#91a7ad;border-top:1px solid #f4ecd90d;grid-template-columns:13px 6px minmax(0,1fr) 13px 47px;gap:5px;min-height:20px;font-size:7px}.bracket-result i{border-radius:50%;width:5px;height:5px}.bracket-result span{color:var(--cream);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.bracket-result em{color:var(--gold);font-style:normal;font-weight:950}.bracket-result time{font-variant-numeric:tabular-nums;text-align:right}.records-strip{background:#f7c9480f;border:1px solid #f7c9482e;grid-template-columns:minmax(140px,1.5fr) repeat(5,minmax(72px,.8fr));gap:9px;margin:-5px 0 17px;padding:10px 12px;display:grid}.records-strip .records-heading strong{color:var(--gold);letter-spacing:.08em;font-size:8px}.leaderboard-card{border:1px solid #f4ecd926;border-top:3px solid var(--gold);background:linear-gradient(145deg,#071c24f5,#0e2c36db);margin:0 0 18px;padding:13px;box-shadow:inset 0 0 24px #020c114d}.leaderboard-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:10px;display:flex}.leaderboard-heading small,.leaderboard-submit span{color:#789198;letter-spacing:.15em;font-size:6px;font-weight:950}.leaderboard-heading h3{color:var(--cream);letter-spacing:.055em;margin:2px 0 0;font-size:16px}.leaderboard-heading>strong{color:var(--gold);letter-spacing:.1em;font-size:8px}.leaderboard-submit{grid-template-columns:minmax(190px,1fr) minmax(150px,.52fr);gap:7px;margin-bottom:11px;display:grid}.leaderboard-submit label{background:#020f159e;border:1px solid #f4ecd929;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:0 10px;display:grid}.leaderboard-submit input{min-width:0;height:35px;color:var(--cream);font:inherit;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;outline:0;font-size:10px;font-weight:900}.leaderboard-submit input::placeholder{color:#4f6e76}.leaderboard-submit label:focus-within{border-color:#f7c948b8;box-shadow:0 0 0 2px #f7c9481a}.leaderboard-submit button{background:var(--gold);color:#0c222b;cursor:pointer;letter-spacing:.1em;border:1px solid #f7c94880;min-height:37px;font-size:8px;font-weight:950}.leaderboard-submit button:disabled{color:#789097;cursor:not-allowed;background:#29454e;border-color:#f4ecd91c}.leaderboard-notice{color:#7e979e;letter-spacing:.045em;grid-column:1/3;margin:0;font-size:7px;font-weight:850}.leaderboard-notice.ranked{color:var(--gold)}.leaderboard-table{background:#020f1580;border:1px solid #f4ecd91a;max-height:370px;overflow:auto}.leaderboard-row{color:#8da4aa;border-top:1px solid #f4ecd90e;grid-template-columns:42px minmax(110px,1fr) minmax(150px,1.15fr) 72px 68px;align-items:center;gap:9px;min-height:29px;padding:0 10px;font-size:8px;display:grid}.leaderboard-columns{z-index:1;color:#667f87;letter-spacing:.09em;background:#0c2832;border-top:0;min-height:25px;font-size:6px;font-weight:950;position:sticky;top:0}.leaderboard-row b{color:var(--gold);font-variant-numeric:tabular-nums;font-size:10px}.leaderboard-row strong{color:var(--cream);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.leaderboard-row em{color:#78959c;letter-spacing:.08em;font-size:7px;font-style:normal;font-weight:950}.leaderboard-row time{color:var(--cream);font-variant-numeric:tabular-nums;text-align:right;font-size:10px;font-weight:950}.leaderboard-row.current-player{box-shadow:inset 3px 0 0 var(--gold);background:#f7c9481a}.leaderboard-empty{color:#718991;letter-spacing:.07em;text-align:center;padding:20px 12px;font-size:8px;font-weight:850}.result-actions{gap:12px;display:flex}.result-actions button{flex:1}.secondary-button{color:var(--cream);cursor:pointer;letter-spacing:.12em;background:#102731eb;border:1px solid #f7c94885;padding:14px 22px 13px;font-size:12px;font-weight:950;transition:all .14s;box-shadow:6px 6px #0b1b22}.secondary-button:hover{transform:translate(2px,2px);box-shadow:4px 4px #0b1b22}.control-deck{grid-template-columns:minmax(0,1.25fr) minmax(180px,.46fr) minmax(220px,.65fr);align-items:stretch;gap:clamp(22px,4vw,64px);width:min(1420px,100%);min-height:176px;margin:0 auto;padding:24px clamp(18px,3vw,52px) 28px;display:grid}.control-deck-reference{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;min-height:0}.reference-title{letter-spacing:.2em;color:#efe8d380;margin-bottom:12px;font-size:10px;font-weight:700;display:block}.control-deck-reference dl{gap:7px;margin:0;display:grid}.control-deck-reference dl>div{grid-template-columns:minmax(76px,max-content) 1fr;align-items:baseline;gap:12px;display:grid}.control-deck-reference dt{letter-spacing:.09em;color:#efe8d3f0;text-align:center;background:#07192280;border:1px solid #efe8d333;border-radius:5px;padding:3px 7px;font-size:10.5px;font-weight:700}.control-deck-reference dd{color:#efe8d3b8;margin:0;font-size:12.5px;line-height:1.45}.control-deck-reference p{color:#efe8d3b8;margin:0;font-size:12.5px;line-height:1.6}@media (width<=720px){.control-deck-reference{grid-template-columns:minmax(0,1fr);gap:22px}}.energy-panel{flex-direction:column;justify-content:center;display:flex}.panel-heading{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.panel-heading span{color:#78919a;letter-spacing:.18em;font-size:9px;font-weight:900}.panel-heading strong{letter-spacing:.08em;font-size:11px}.hearts{align-items:center;gap:clamp(5px,.8vw,11px);min-height:39px;display:flex}.heart{color:#28414a;filter:drop-shadow(0 3px #00000047);font-size:clamp(28px,3vw,40px);line-height:1;transition:color .22s,transform .22s}.heart.active{color:var(--red);transform:scale(1.04)}.energy-panel p{color:#6f878f;margin:8px 0 0;font-size:10px;line-height:1.35}.elbow-button{color:#66808a;cursor:not-allowed;text-align:left;background:#102731;border:1px solid #f4ecd924;flex-direction:column;justify-content:center;align-items:flex-start;min-height:108px;padding:18px;display:flex}.elbow-button span{letter-spacing:.16em;font-size:8px;font-weight:900}.elbow-button strong{color:#8da1a6;margin-top:3px;font-size:28px;font-weight:950;line-height:1}.elbow-button small{color:#647d85;letter-spacing:.09em;margin-top:9px;font-size:7px;font-weight:850}.elbow-button.ready{color:#8ed3df;cursor:pointer;background:#173541;border-color:#5bb0c6bf}.elbow-button.ready strong{color:var(--cream)}.elbow-button.warned{color:#ef7c82;background:#3a2025;border-color:#d6333fd1}.elbow-button.warned small{color:#ef9b9f}.kick-button{color:#66808a;cursor:not-allowed;text-align:left;background:#102731;border:1px solid #f4ecd929;flex-direction:column;justify-content:center;align-items:flex-start;min-height:108px;padding:20px;display:flex;position:relative;overflow:hidden}.kick-button span,.kick-button strong{z-index:2;position:relative}.kick-button span{letter-spacing:.18em;margin-bottom:5px;font-size:9px;font-weight:900}.kick-button strong{color:#8da1a6;letter-spacing:-.04em;font-size:29px;font-weight:950}.kick-button i{transform-origin:0;background:#536a72;width:100%;height:5px;transition:transform .1s linear;position:absolute;bottom:0;left:0}.kick-button.ready{color:var(--gold);cursor:pointer;background:#322e1e;border-color:#f7c948cc;animation:1.4s ease-in-out infinite kick-pulse}.kick-button.ready strong,.kick-button.active strong{color:var(--cream)}.kick-button.ready i,.kick-button.active i{background:var(--gold)}.kick-button.active{border-color:var(--red);color:var(--red);background:#3a2020}@keyframes kick-pulse{50%{box-shadow:0 0 24px #f7c9482b}}@media (width<=780px){.topbar{grid-template-columns:1fr auto;height:68px}.race-chip{display:none}.brand-distance{font-size:34px}.arena{height:61vh;min-height:450px}.telemetry{top:14px}.telemetry strong{font-size:26px}.telemetry-center{top:auto;bottom:14px}.start-card{padding:25px;top:54%}.start-card h1{font-size:45px}.racer-select-card{padding:20px}.racer-select-card h1{font-size:34px}.racer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.championship-brief{grid-template-columns:auto 1fr}.championship-brief span:last-child{grid-column:1/3}.career-strip{grid-template-columns:minmax(130px,1.5fr) repeat(4,minmax(52px,.55fr))}.results-card{width:calc(100% - 24px);padding:21px 20px 24px}.result-energy-key,.result-row{grid-template-columns:20px 8px minmax(125px,1fr) 62px minmax(150px,1.15fr) 36px;gap:7px}.records-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.records-strip .records-heading{grid-column:1/4}.leaderboard-row{grid-template-columns:36px minmax(95px,.9fr) minmax(120px,1fr) 58px 62px;gap:7px}.control-grid{gap:11px}.control-deck{grid-template-columns:1fr;gap:24px}.elbow-button,.kick-button{min-height:90px}}@media (width<=460px){.brand-kicker{font-size:11px}.restart-button{padding:9px 10px;font-size:8px}.telemetry-right{display:none}.telemetry-center{top:auto;bottom:14px;right:18px}.control-grid div:nth-child(2){display:none}.racer-grid{grid-template-columns:1fr}.mode-select{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-select small{font-size:6px}.challenge-list{grid-template-columns:1fr;max-height:232px}.championship-brief{grid-template-columns:1fr;gap:5px}.championship-brief span:last-child{grid-column:auto}.career-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.career-strip .career-label{grid-column:1/5}.results-card{padding:18px 14px 21px}.results-card h2{margin-bottom:11px}.coaching-card{grid-template-columns:44px 1fr;gap:10px;padding:9px 10px}.coach-grade{width:42px;height:42px;font-size:27px}.coaching-card h3{font-size:10px}.coaching-card p{font-size:8px}.split-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.advanced-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.result-energy-key{display:none}.result-row{grid-template-columns:16px 7px minmax(92px,1fr) 55px minmax(78px,.9fr) 32px;gap:5px;min-height:43px;font-size:8px}.result-athlete small{letter-spacing:.04em;font-size:6px}.energy-trace{height:27px}.result-actions{gap:8px}.records-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.records-strip .records-heading{grid-column:1/3}.leaderboard-heading{align-items:flex-start}.leaderboard-heading h3{font-size:13px}.leaderboard-submit{grid-template-columns:1fr}.leaderboard-submit label,.leaderboard-submit button,.leaderboard-notice{grid-column:1}.leaderboard-row{grid-template-columns:30px minmax(82px,1fr) minmax(100px,1fr) 58px;gap:5px;padding:0 7px}.leaderboard-row>:nth-child(4){display:none}.leaderboard-table{max-height:330px}.result-actions button{padding:12px 8px 11px;font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.renderer-failed{z-index:12;text-align:center;color:var(--parchment,#efe8d3);background:#061219f0;align-content:center;justify-items:center;gap:10px;padding:0 12vw;display:grid;position:absolute;inset:0}.renderer-failed strong{letter-spacing:-.02em;color:var(--gold);font-size:clamp(20px,3.4vw,34px);font-weight:950}.renderer-failed span{color:#efe8d3ad;max-width:46ch;font-size:13px;line-height:1.6}@media (width<=900px) and (orientation:portrait){.touch-input .track-elbow-button{left:max(14px, env(safe-area-inset-left));bottom:max(140px, calc(env(safe-area-inset-bottom) + 126px));min-width:96px}.touch-input .track-move-button,.touch-input .track-lean-button{right:max(14px, env(safe-area-inset-right));bottom:max(140px, calc(env(safe-area-inset-bottom) + 126px));min-width:96px}.touch-input .track-move-button.finish-stack{bottom:max(200px, calc(env(safe-area-inset-bottom) + 186px))}.touch-input .track-command{bottom:max(206px, calc(env(safe-area-inset-bottom) + 192px));text-align:center;width:min(340px,100% - 28px);left:50%;transform:translate(-50%)}}.diagnostics-panel{z-index:40;color:#cfe0e4;background:#030b10f0;border:1px solid #efe8d34d;border-radius:8px;max-height:30px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5;position:absolute;top:8px;left:8px;right:8px;overflow:hidden}.diagnostics-panel.open{max-height:70%;overflow-y:auto}.diagnostics-panel strong:first-child{cursor:pointer;-webkit-tap-highlight-color:transparent;padding:2px 0}.diagnostics-panel strong em{float:right;color:#8fa6ad;font-style:normal;font-weight:400}.diagnostics-panel strong{letter-spacing:.14em;color:var(--gold);margin:8px 0 4px;font-size:10px;display:block}.diagnostics-panel strong:first-child{margin-top:0}.diagnostics-panel dl{margin:0}.diagnostics-panel dl>div{grid-template-columns:96px 1fr;gap:8px;display:grid}.diagnostics-panel dt{color:#7f959b}.diagnostics-panel dd{word-break:break-word;margin:0}.diagnostics-panel dl>div.bad dd{color:#ff8b7a;font-weight:700}.diagnostics-panel p{color:#e7b9b0;word-break:break-word;border-left:2px solid #ff8b7a80;margin:0 0 6px;padding-left:8px}.start-list-card{z-index:30;background:#06141bf5;border:1px solid #efe8d338;border-radius:12px;width:min(440px,100% - 24px);max-height:calc(100% - 32px);padding:20px 22px 22px;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 60px #020a0f99}.start-list-card h2{letter-spacing:-.01em;margin:6px 0 14px;font-size:clamp(19px,4vw,26px)}.start-list-card table{border-collapse:collapse;width:100%;margin-bottom:16px}.start-list-card th{letter-spacing:.16em;color:#efe8d373;text-align:left;border-bottom:1px solid #efe8d324;padding:0 0 6px;font-size:9px}.start-list-card th:last-child,.start-list-card td:last-child{text-align:right}.start-list-card td{color:#efe8d3d1;vertical-align:baseline;border-bottom:1px solid #efe8d312;padding:7px 0;font-size:13px}.start-list-card td:first-child{font-variant-numeric:tabular-nums;width:44px;color:var(--cream);font-weight:700}.start-list-card td strong{color:var(--cream);font-size:13px;font-weight:700;display:block}.start-list-card td small{letter-spacing:.1em;color:#7f959b;font-size:9px}.start-list-card td:last-child{font-variant-numeric:tabular-nums}.start-list-card tr.you td{background:#347c9929}.start-list-card tr.you td strong{color:var(--gold)}.start-list-card .primary-button{width:100%;margin-bottom:16px}.medal-tally strong{align-items:baseline;gap:7px;display:flex}.medal-tally strong b{font-size:15px;font-weight:800}.medal-tally strong b:before{content:"";vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:3px;display:inline-block}.medal-tally .gold{color:#e8c65a}.medal-tally .gold:before{background:#e8c65a}.medal-tally .silver{color:#c3cdd4}.medal-tally .silver:before{background:#c3cdd4}.medal-tally .bronze{color:#c98a5c}.medal-tally .bronze:before{background:#c98a5c}.challenge-card.done{border-color:#6ab28480}.challenge-card.done .challenge-head em{color:#6ab284;font-style:normal;font-weight:700}.share-button{min-height:46px;font:inherit;letter-spacing:.16em;color:#071922;background:var(--gold);border:1px solid var(--gold);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:9px;padding:13px 22px;font-size:11px;font-weight:800}.share-button:disabled{opacity:.6;cursor:default}.share-button:active:not(:disabled){transform:scale(.98)}.challenge-code{background:#e8c65a1a;border:1px solid #e8c65a80;border-radius:9px;flex-direction:column;gap:2px;padding:8px 18px;display:inline-flex}.challenge-code small{letter-spacing:.16em;color:#8fa6ad;font-size:8px}.challenge-code strong{letter-spacing:.12em;color:var(--gold);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px}.ghost-banner{z-index:12;letter-spacing:.14em;color:#9fd4e8;white-space:nowrap;background:#06141bd1;border:1px solid #9fd4e866;border-radius:8px;padding:6px 14px;font-size:9px;font-weight:700;position:absolute;top:8px;left:50%;transform:translate(-50%)}.ghost-locked{background:#9fd4e814;border:1px solid #9fd4e866;border-radius:9px;margin:0 0 14px;padding:10px 14px}.ghost-locked strong{letter-spacing:.12em;color:#9fd4e8;font-size:11px;display:block}.ghost-locked span{color:#efe8d3ad;margin-top:3px;font-size:11px;line-height:1.5;display:block}.challenge-entry{margin:6px 0 16px}.challenge-entry label{letter-spacing:.16em;color:#e8c65ac7;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.challenge-entry-row{gap:8px;display:flex}.challenge-entry-row input{letter-spacing:.1em;text-transform:uppercase;min-width:0;min-height:38px;color:var(--cream);background:#040e1480;border:1px solid #e8c65a47;border-radius:8px;flex:auto;padding:0 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.challenge-entry-row input::placeholder{text-transform:none;letter-spacing:.02em;color:#6d848b}.challenge-entry-row button{min-height:38px;font:inherit;letter-spacing:.13em;color:var(--gold);cursor:pointer;background:#e8c65a24;border:1px solid #e8c65a73;border-radius:8px;flex:none;padding:0 16px;font-size:10px;font-weight:800}.challenge-entry-row button:disabled{color:#efe8d36b;cursor:default;background:0 0;border-color:#efe8d329}.challenge-code button{font:inherit;letter-spacing:.13em;color:var(--gold);cursor:pointer;background:0 0;border:1px solid #e8c65a80;border-radius:6px;margin-top:6px;padding:5px 10px;font-size:9px;font-weight:800}.challenge-code button:active{background:#e8c65a29}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
