@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{font-family:IBM Plex Mono,monospace;color:#e1e9e8;background:#29363e;font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}#app{position:fixed;inset:0}html,body,#app,#app *,.touch-controls,.touch-controls *{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}canvas{display:block;width:100%;height:100%}button{font:inherit}.hud{position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#0d161b55 0%,transparent 24%,transparent 70%,#0d161b80 100%)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;padding:30px 38px}.brand{font:800 32px/.87 Barlow Condensed,sans-serif;letter-spacing:.035em}.brand em{font-style:normal;color:#92b5ba}.eyebrow{margin-top:10px;font-size:9px;letter-spacing:.25em;color:#a5b7ba}.route{text-align:right;font-size:10px;color:#b0bfc1;letter-spacing:.13em}.route strong{display:block;font:600 18px Barlow Condensed,sans-serif;margin-bottom:5px;letter-spacing:.1em;color:#e2e9e8}.route-line{width:172px;height:2px;margin-top:12px;background:#8b9fa044}.route-line span{display:block;height:100%;width:0%;background:#a4c3c6}.telemetry{position:absolute;bottom:32px;left:38px;display:flex;align-items:flex-end;gap:30px}.speed{display:flex;align-items:baseline;gap:9px}.speed strong{display:inline-block;flex:0 0 4ch;width:4ch;font:600 78px/.8 Barlow Condensed,sans-serif;font-variant-numeric:tabular-nums;text-align:right}.speed span{color:#9bafb2;font-size:10px}.controls{position:absolute;right:38px;bottom:33px;text-align:right;font-size:9px;color:#a9b9bb;line-height:2;letter-spacing:.04em}.controls b{font-weight:500;color:#e0e9e8}.status{position:absolute;bottom:116px;left:38px;color:#a5c4c5;font-size:10px;letter-spacing:.2em;height:14px}.performance{position:absolute;right:38px;top:111px;font-size:9px;color:#91a8ab}.overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0d171b5e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overlay[hidden]{display:none}.panel{width:min(460px,100%);padding:36px 38px;border:1px solid #a6bfc23b;background:linear-gradient(135deg,#18282eed,#142027ed);box-shadow:0 20px 90px #06101466}.kicker{font-size:9px;color:#a1bec2;letter-spacing:.24em}h1{margin:15px 0 12px;font:700 58px/.9 Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.025em}.panel p{font-size:11px;line-height:1.8;color:#b2c2c4}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin:28px 0;padding-top:23px;border-top:1px solid #9bb3b32d;font-size:10px;color:#b8c8ca}.input-grid b{display:block;color:#e0e9e8;margin-bottom:6px;font-weight:500}.primary{width:100%;padding:14px 18px;border:1px solid #acc8c9;background:#abc5c8;color:#14262d;cursor:pointer;text-transform:uppercase;font-size:11px;font-weight:500;letter-spacing:.16em}.primary:hover{background:#c4d7d8}.panel-foot{margin-top:14px;text-align:center;font-size:9px;color:#7e9b9f}@media(max-width:600px){.topbar{padding:22px}.brand{font-size:27px}.route strong{font-size:15px}.route{font-size:8px}.route-line{width:120px}.telemetry{left:22px;bottom:24px;gap:18px}.speed strong{font-size:61px}.controls{right:22px;bottom:22px;font-size:8px}.status{left:22px;bottom:97px}.performance{right:22px;top:96px}}.race-position{position:absolute;top:27px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px}.race-position strong{font:600 48px/.9 Barlow Condensed,sans-serif}.race-position span{font-size:8px;color:#9bafb2;line-height:1.8;letter-spacing:.12em}.impact-flash{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse at center,transparent 35%,#b5785f)}@media(max-width:600px){.race-position{top:87px;left:22px;transform:none}.race-position strong{font-size:34px}}.race-position{left:calc(50% - 100px)}.race-clock{position:absolute;top:23px;left:calc(50% + 32px);display:flex;align-items:baseline;gap:7px}.race-clock>span{position:absolute;top:0;left:1px;white-space:nowrap;color:#a5b7ba;font-size:8px;letter-spacing:.15em}.race-clock strong{margin-top:13px;font:600 50px/.9 Barlow Condensed,sans-serif;font-variant-numeric:tabular-nums}.race-clock small{color:#9bafb2;font-size:8px}.low-time strong{color:#e4a69b}.route-meta{margin-top:8px;font-size:8px;color:#91a8ab}.performance{top:124px}.countdown{position:absolute;top:38%;width:100%;text-align:center;font:700 130px/1 Barlow Condensed,sans-serif;text-shadow:0 5px 40px #101e24}.checkpoint-notice{position:absolute;top:133px;width:100%;text-align:center;color:#bddbdb;font:600 25px Barlow Condensed,sans-serif;letter-spacing:.09em}.results{display:flex;gap:36px;margin:26px 0;padding-top:22px;border-top:1px solid #9bb3b32d}.results[hidden],.input-grid[hidden]{display:none}.results>div{color:#92aeb2;font-size:9px;letter-spacing:.12em}.results strong{display:block;margin-top:8px;color:#e1e9e8;font:600 30px Barlow Condensed,sans-serif;letter-spacing:.02em}@media(max-width:800px){.race-position{top:103px;left:38px;transform:none}.race-clock{top:91px;left:122px}.race-position strong,.race-clock strong{font-size:38px}.checkpoint-notice{top:163px}}@media(max-width:600px){.race-position{left:22px}.race-clock{left:106px}.countdown{font-size:100px}}:root{color:#e5f5f5;background:#08101b}.hud{background:linear-gradient(180deg,#040d1b85 0%,transparent 25%,transparent 72%,#040a1580 100%)}.brand em,.status,.route-line span{color:#65e6e8}.brand em{text-shadow:0 0 19px #39cfd74d}.route-line span{background:#65e6e8;box-shadow:0 0 8px #65e6e86e}.eyebrow,.route-meta,.performance{color:#86afb9}.race-clock strong{color:#f6cb83;text-shadow:0 0 20px #db9a3530}.low-time strong{color:#fa8fae}.checkpoint-notice,.countdown{color:#91f6ef;text-shadow:0 0 25px #36cad76b,0 5px 30px #071019}.panel{border-color:#66d9e34d;background:linear-gradient(135deg,#0b1c2cf5,#0a1223f2);box-shadow:0 20px 90px #02050ccc,inset 0 1px #a2edfa18}.kicker{color:#78d8df}.primary{background:#8fe8e3;border-color:#b8fff7;color:#0a2330}.primary:hover{background:#b4fff3;box-shadow:0 0 20px #6fe6df30}.impact-flash{background:radial-gradient(ellipse at center,transparent 35%,#d75c82)}.audio-controls{position:fixed;right:38px;bottom:104px;z-index:10;display:flex;align-items:flex-start;gap:13px;font-size:8px;letter-spacing:.08em;pointer-events:auto}.audio-stack{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.mute-button{padding:9px 11px;border:1px solid #78c9d24d;color:#b9ebec;background:#071321cc;cursor:pointer;font-size:9px;letter-spacing:.08em}.mute-button:hover,.mute-button:focus-visible{border-color:#83f1e7;color:#e9fffc;outline:none}.mute-button[aria-pressed=true]{color:#e8bd9d;border-color:#b58c6b73}.audio-controls a{color:#8db4c0;text-decoration:none;white-space:nowrap;line-height:1.5}.audio-controls a:hover{color:#b9f9f2;text-decoration:underline}.fullscreen-controls{position:fixed;top:91px;left:38px;z-index:10;display:flex;flex-direction:column;align-items:flex-start;gap:5px;pointer-events:auto}.fullscreen-controls[hidden]{display:none}.display-controls-row{display:flex;gap:6px}.fullscreen-controls .mute-button{min-height:32px;width:120px;flex:0 0 120px;white-space:nowrap}.fullscreen-controls .mute-button[hidden]{display:none}.fullscreen-controls .mute-button:disabled{opacity:.65;cursor:wait}#fullscreen-status{position:fixed;left:50%;bottom:18px;transform:translate(-50%);width:max-content;max-width:min(360px,calc(100vw - 32px));padding:12px 15px;border:1px solid #78c9d24d;background:#071321f5;color:#efbd9d;font-size:10px;line-height:1.6;box-shadow:0 4px 24px #02050c99}#gyro{flex:none;padding:3px 11px}#gyro:not([hidden]){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}#gyro-status{max-width:110px;color:#efbd9d;font-size:7px;line-height:1.1}.touch-controls[data-gyro=true] .touch-zone:after{content:""}@media(max-width:600px){.fullscreen-controls{top:76px;left:22px}}@media(max-height:520px){.fullscreen-controls{top:62px;left:22px}}@media(max-width:600px){.audio-controls{right:22px;bottom:99px;gap:8px}}.finish-banner{position:absolute;top:30%;left:0;width:100%;text-align:center;color:#a9ffff;font-size:clamp(28px,5vw,72px);font-weight:900;letter-spacing:.12em;text-shadow:0 0 24px #12aabf}.finish-banner span{display:block;color:#ffc16e;font-size:.45em;margin-top:14px;letter-spacing:.2em}.overlay:has(.results:not([hidden])){background:linear-gradient(90deg,rgba(3,8,18,.85),rgba(3,8,18,.3) 55%,transparent);-webkit-backdrop-filter:none;backdrop-filter:none}.touch-controls{position:fixed;inset:0;z-index:4;pointer-events:none;user-select:none;-webkit-user-select:none}.touch-controls[hidden]{display:none}.touch-zone{position:absolute;bottom:0;width:50%;height:42%;pointer-events:auto;touch-action:none;border-top:1px solid #65e6e815;background:linear-gradient(0deg,#13a1bd0a,transparent 70%)}.touch-left{left:0;border-right:1px solid #65e6e818}.touch-right{right:0}.touch-zone:after{position:absolute;bottom:32%;color:#8cffff45;font:600 32px Barlow Condensed,sans-serif}.touch-left:after{content:"‹";left:16%}.touch-right:after{content:"›";right:16%}.touch-hint{position:absolute;bottom:16px;width:100%;text-align:center;color:#98e4e8;font-size:9px;letter-spacing:.08em;text-shadow:0 2px 6px #000}.touch-mode .controls{display:none}.touch-mode .telemetry{bottom:38px}.touch-mode .audio-controls{bottom:auto;top:150px;right:20px}@media(max-height:520px){.topbar{padding:16px 22px}.brand{font-size:25px}.route{font-size:8px}.eyebrow{margin-top:6px;font-size:7px}.panel{padding:20px 28px;max-width:460px}h1{font-size:40px;margin:10px 0}.input-grid{margin:14px 0;gap:10px;padding-top:12px}.panel p{font-size:10px}.panel-foot{margin-top:8px}.touch-mode .audio-controls{top:92px}.performance{top:73px}.touch-mode .telemetry{left:22px}.speed strong{font-size:55px}.race-position{top:18px;left:calc(50% - 80px)}.race-clock{top:8px;left:calc(50% + 15px)}.checkpoint-notice{top:95px}.results{margin:16px 0;padding-top:12px}}.overlay:has(.results:not([hidden])){justify-content:flex-start;padding:32px}.overlay:has(.results:not([hidden])) .panel{width:min(390px,100%);background:linear-gradient(135deg,#0b1c2ce6,#0a1223ca)}.finish-grade{margin-top:24px;color:#ffc876;font:700 31px Barlow Condensed,sans-serif;letter-spacing:.07em;text-shadow:0 0 20px #e49e4155}.finish-grade[hidden]{display:none}.touch-zone.pressed{background:linear-gradient(0deg,#23d3e51b,transparent 80%)}.touch-controls[data-drifting=true] .touch-zone{border-top-color:#ef5aba55}@media(max-width:600px){.overlay:has(.results:not([hidden])){padding:18px;align-items:center}.overlay:has(.results:not([hidden])) .panel{max-width:340px}}.touch-zone{height:100%;border-top:0}.touch-left{border-right:0}.touch-zone:after{bottom:70px}.touch-zone>span{display:none}@media(max-width:900px){.overlay:has(.results:not([hidden])){justify-content:center;align-items:center;padding:18px}.overlay:has(.results:not([hidden])) .panel{width:min(390px,100%);max-width:390px;padding:24px;max-height:100%;max-height:calc(100dvh - 36px);overflow-y:auto;overscroll-behavior:contain}.overlay:has(.results:not([hidden])) h1{font-size:48px}.overlay:has(.results:not([hidden])) .finish-grade{margin-top:18px;font-size:26px}.overlay:has(.results:not([hidden])) .results{gap:24px;margin:20px 0;padding-top:16px}}@media(max-width:900px)and (max-height:520px){.overlay:has(.results:not([hidden])) .panel{padding:16px 24px}.overlay:has(.results:not([hidden])) h1{margin:8px 0;font-size:36px}.overlay:has(.results:not([hidden])) .panel p{margin:8px 0;line-height:1.4}.overlay:has(.results:not([hidden])) .finish-grade{margin-top:12px;font-size:24px}.overlay:has(.results:not([hidden])) .results{margin:12px 0;padding-top:10px}}@media(max-width:900px)and (max-height:360px){.overlay:has(.results:not([hidden])) .panel p{display:none}}@media(max-width:800px)and (min-height:521px){.race-position{top:145px}.race-clock{top:133px}.checkpoint-notice{top:192px}}@media(max-width:600px)and (min-height:521px){.race-position{top:130px}.race-clock{top:118px}.route-meta{margin-top:58px}.overlay:not(:has(.results:not([hidden]))){padding:118px 16px 16px}.overlay:not(:has(.results:not([hidden]))) .panel{padding:20px}.overlay:not(:has(.results:not([hidden]))) h1{margin:12px 0;font-size:42px}.overlay:not(:has(.results:not([hidden]))) .input-grid{font-size:9px;gap:10px;margin:14px 0;padding-top:14px}.overlay:not(:has(.results:not([hidden]))) .panel-foot{font-size:8px;margin-top:10px}}@media(max-width:600px)and (min-height:521px)and (max-height:640px){.overlay:not(:has(.results:not([hidden]))) .panel p{display:none}.overlay:not(:has(.results:not([hidden]))) h1{font-size:36px}body:has(.overlay:not([hidden]) .results:not([hidden])) .fullscreen-controls{display:none}}@media(max-height:520px){.overlay:not(:has(.results:not([hidden]))){padding:106px 16px 10px}.overlay:not(:has(.results:not([hidden]))) .panel{padding:7px 20px}.overlay:not(:has(.results:not([hidden]))) h1{font-size:24px;margin:6px 0}.overlay:not(:has(.results:not([hidden]))) .kicker{font-size:8px}.overlay:not(:has(.results:not([hidden]))) .input-grid{font-size:8px;gap:6px;margin:6px 0;padding-top:6px}.overlay:not(:has(.results:not([hidden]))) .input-grid b{margin-bottom:3px}.overlay:not(:has(.results:not([hidden]))) .panel p{display:none}.overlay:not(:has(.results:not([hidden]))) .panel-foot{font-size:8px;margin-top:4px}body:has(.overlay:not([hidden]) .results:not([hidden])) .fullscreen-controls{display:none}}@media(max-width:800px)and (min-height:521px){.gyro-available .race-position{top:182px}.gyro-available .race-clock{top:170px}.gyro-available .checkpoint-notice{top:229px}}@media(max-width:600px)and (min-height:521px){.gyro-available .race-position{top:167px}.gyro-available .race-clock{top:155px}.gyro-available .overlay:not(:has(.results:not([hidden]))){padding-top:155px}}@media(max-height:520px){.gyro-available .overlay:not(:has(.results:not([hidden]))){padding-top:143px}}@media(max-height:360px){.gyro-available .overlay:not(:has(.results:not([hidden]))) .panel{padding:5px 20px}.gyro-available .overlay:not(:has(.results:not([hidden]))) .kicker{display:none}.gyro-available .overlay:not(:has(.results:not([hidden]))) h1{margin:4px 0}.gyro-available .overlay:not(:has(.results:not([hidden]))) .input-grid{font-size:7px;gap:4px;margin:4px 0;padding-top:4px}.gyro-available .overlay:not(:has(.results:not([hidden]))) .primary{padding-top:10px;padding-bottom:10px}.gyro-available .overlay:not(:has(.results:not([hidden]))) .panel-foot{margin-top:2px}}html.ios-standalone-viewport{overscroll-behavior:none}.ios-standalone-viewport body{position:absolute;left:var(--game-viewport-left, 0px);top:var(--game-viewport-top, 0px);width:var(--game-viewport-width, 100%);height:var(--game-viewport-height, 100%);overscroll-behavior:none}.ios-standalone-viewport #app{position:relative;inset:auto}.ios-standalone-viewport :is(.hud,.overlay,.fullscreen-controls,.audio-controls,.touch-controls,.race-records-dialog){position:absolute}.hud,.overlay,body .race-records-dialog{inset:0}.hud-safe,.overlay-safe{position:absolute;inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.hud-safe{pointer-events:none}.overlay-safe{display:flex;align-items:inherit;justify-content:inherit;padding:inherit}body .race-records-dialog{padding:calc(16px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px))}.fullscreen-controls{margin-top:env(safe-area-inset-top,0px);margin-left:env(safe-area-inset-left,0px)}.audio-controls{margin-top:env(safe-area-inset-top,0px);margin-right:env(safe-area-inset-right,0px);margin-bottom:env(safe-area-inset-bottom,0px)}html body .touch-controls .touch-hint{bottom:calc(8px + env(safe-area-inset-bottom,0px))}.ios-standalone-viewport .race-records-card{max-height:calc(var(--game-viewport-height) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 32px)}.ios-standalone-viewport .overlay:has(.results:not([hidden])) .panel{max-height:calc(var(--game-viewport-height) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 36px);overflow-y:auto}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))){padding:120px 16px 8px}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .panel{padding:5px 20px}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .kicker,.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .panel p,.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .panel-foot{display:none}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) h1{margin:4px 0;font-size:24px}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .input-grid{grid-template-columns:repeat(4,minmax(0,1fr));font-size:7px;gap:4px;margin:4px 0;padding-top:4px}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .input-grid b{margin-bottom:3px}.ios-standalone-short .overlay:not(:has(.results:not([hidden]))) .primary{padding-top:10px;padding-bottom:10px}.ios-standalone-short .overlay:has(.results:not([hidden])) .panel{padding:10px 16px}.ios-standalone-short .overlay:has(.results:not([hidden])) .kicker,.ios-standalone-short .overlay:has(.results:not([hidden])) .panel p,.ios-standalone-short .overlay:has(.results:not([hidden])) .panel-foot{display:none}.ios-standalone-short .overlay:has(.results:not([hidden])) h1{font-size:28px;margin:4px 0}.ios-standalone-short .overlay:has(.results:not([hidden])) .finish-grade{font-size:22px;margin:6px 0}.ios-standalone-short .overlay:has(.results:not([hidden])) .results{margin:8px 0;padding-top:8px;gap:10px}.ios-standalone-short .overlay:has(.results:not([hidden])) .results strong{font-size:24px;margin-top:4px}.ios-standalone-short .overlay:has(.results:not([hidden])) .primary{padding:9px 18px}.hud:has(.thrust-meter){--thrust-width: 34.2px;--thrust-height: 168px;--thrust-column: 44px;--thrust-gap: 12px;--thrust-left: 38px;--thrust-drop: 24px}.telemetry:has(.thrust-meter){gap:var(--thrust-gap);padding-left:var(--thrust-column)}.thrust-meter{position:absolute;left:0;bottom:calc(-1 * var(--thrust-drop));width:var(--thrust-width);height:var(--thrust-height);pointer-events:none;filter:drop-shadow(0 0 3px #d09b3e30)}.thrust-meter svg{display:block;width:100%;height:100%;overflow:visible}.thrust-meter__electric{display:none}.thrust-meter[data-boosted=true] .thrust-meter__electric{display:inline;filter:drop-shadow(0 0 2px #ffe257);animation:thrust-electric-flicker .17s steps(2,end) infinite alternate}@keyframes thrust-electric-flicker{0%{opacity:.55}to{opacity:1}}.hud:has(.thrust-meter) .status{left:calc(var(--thrust-left) + var(--thrust-column))}.touch-mode .hud:has(.thrust-meter){--thrust-drop: 30px}body:has(.thrust-meter) .touch-hint{left:82px;width:calc(100% - 94px);bottom:8px;text-align:right;font-size:7px;line-height:1.3}@media(max-width:600px){.hud:has(.thrust-meter){--thrust-width: 30.6px;--thrust-height: 148px;--thrust-column: 36px;--thrust-gap: 10px;--thrust-left: 22px;--thrust-drop: 16px}.touch-mode .hud:has(.thrust-meter){--thrust-drop: 30px}body:has(.thrust-meter) .touch-hint{left:58px;width:calc(100% - 70px)}}@media(max-height:520px){.hud:has(.thrust-meter){--thrust-width: 30.6px;--thrust-height: 124px;--thrust-column: 36px;--thrust-gap: 10px}.touch-mode .hud:has(.thrust-meter){--thrust-left: 22px}body:has(.thrust-meter) .touch-hint{left:58px;width:calc(100% - 70px)}}@media(max-height:360px){.hud:has(.thrust-meter){--thrust-height: 118px}}.race-record-controls{display:flex;gap:8px;margin-top:10px}.race-record-controls[hidden],.race-records-dialog[hidden],.race-records-empty[hidden],.race-records-scroll table[hidden]{display:none}.race-record-button{padding:8px 10px;min-height:30px;border:1px solid #69ccd44d;background:#071623;color:#b8eeee;font:9px IBM Plex Mono,monospace;letter-spacing:.04em;cursor:pointer;white-space:nowrap}.race-record-controls .race-record-button{flex:1}.race-record-button:hover,.race-record-button:focus-visible{border-color:#8cefe6;outline:1px solid #8cefe6;outline-offset:2px}.race-record-button:disabled{color:#6b8f98;cursor:default;opacity:.65}.race-records-dialog{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:16px;background:#020815e8}.race-records-card{display:flex;flex-direction:column;gap:14px;width:min(480px,100%);max-height:calc(100dvh - 32px);padding:24px;border:1px solid #69ccd45c;background:#091b2b;box-shadow:0 20px 80px #0008}.race-records-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.race-records-card header span{color:#85aab4;font-size:8px;letter-spacing:.14em}.race-records-card h2{margin:4px 0 0;color:#b9f2ee;font:700 32px/.95 Barlow Condensed,sans-serif}.race-records-card [data-records-close]{min-height:40px}.race-records-summary{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#ffd18b;font-size:10px}.race-records-scroll{min-height:0;overflow-y:auto;max-height:420px;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.race-records-scroll *{touch-action:pan-y}.race-records-scroll table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}.race-records-scroll th{position:sticky;top:0;background:#102637;color:#91b4bc;font-size:8px;font-weight:500;letter-spacing:.08em}.race-records-scroll td,.race-records-scroll th{padding:11px 9px;border-bottom:1px solid #75a6b426;text-align:left;white-space:nowrap}.race-records-scroll td:nth-child(2){color:#e0ffff}.race-records-scroll td:nth-child(3){color:#ffd18b}.race-records-scroll .race-records-bumps{text-align:right;color:#87a6ad;font-size:9px}.race-records-current{background:#eac47512;outline:1px solid #eac47550;outline-offset:-1px}.race-records-note,.race-records-empty{margin:0;color:#8caeb7;font-size:10px;line-height:1.5}.race-records-empty{padding:24px 0}.overlay .panel:has(.race-record-controls) .results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.panel:has(.race-record-controls) .results[hidden]{display:none}@media(max-width:600px){.race-records-card{padding:16px;gap:12px}.race-records-scroll td,.race-records-scroll th{padding:10px 6px}.race-record-controls{gap:6px}.race-record-controls .race-record-button{font-size:8px;padding:7px 6px}.panel:has(.race-record-controls) .results>div{font-size:8px;letter-spacing:.04em}.panel:has(.race-record-controls) .results strong{font-size:25px}}@media(max-height:520px){.race-record-controls{margin-top:4px}.race-record-controls .race-record-button{min-height:24px;padding:5px 8px;font-size:8px}.panel:has(.race-record-controls) .panel-foot{display:none}.overlay:has(.results:not([hidden])) .panel:has(.race-record-controls){padding:10px 20px}.race-records-card{padding:12px 16px;gap:8px}.race-records-card h2{font-size:26px}.race-records-summary .race-record-button{min-height:26px;padding:5px 8px}}@media(max-height:360px)and (min-width:450px){.panel:has(.race-record-controls) .input-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.settings-panel{position:relative;width:120px;color:#b9ebec}.settings-panel>summary{display:flex;align-items:center;justify-content:center;gap:7px;box-sizing:border-box;width:120px;min-height:32px;padding:8px 9px;border:1px solid #78c9d24d;background:#071321ed;cursor:pointer;list-style:none;font-size:9px;letter-spacing:.08em}.settings-panel>summary::-webkit-details-marker{display:none}.settings-panel>summary:after{content:"+";color:#84c5cf}.settings-panel[open]>summary:after{content:"−"}.settings-panel>summary:hover,.settings-panel>summary:focus-visible{border-color:#83f1e7;outline:1px solid #83f1e7;outline-offset:2px}.settings-panel__body{display:flex;flex-direction:column;gap:5px;padding-top:6px}.settings-panel:not([open])>.settings-panel__body{display:none}.settings-panel .mute-button{box-sizing:border-box;width:120px;min-height:32px;padding:7px 8px;font-size:9px;white-space:nowrap}@media(max-height:520px)and (min-width:450px){.settings-panel[open]{padding-bottom:38px}.settings-panel__body{position:absolute;right:0;top:38px;flex-direction:row;padding-top:0;width:370px;gap:5px}.settings-panel .mute-button{flex:0 0 120px}}#fullscreen-status[data-fullscreen-notice]{position:absolute;z-index:40;right:auto;bottom:auto;transform:none;max-width:none;box-sizing:border-box;overflow-y:auto;margin:0;padding:14px 16px;border:1px solid #a8f5eb;background:#081b2b;color:azure;font:12px/1.65 IBM Plex Mono,monospace;letter-spacing:0;box-shadow:0 8px 30px #000b;pointer-events:auto}#fullscreen-status[data-fullscreen-notice][hidden],[data-fullscreen-row][hidden]{display:none}
