:root{color-scheme:dark;font-family:Inter,system-ui,sans-serif;background:#090b10;color:#eef2ff}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%}@supports (height: 100dvh){html,body,#root{height:100dvh}}body{overflow:hidden}.app-shell{display:grid;grid-template-columns:340px 1fr;width:100%;height:100%;background:#090b10}.hud{display:flex;flex-direction:column;gap:14px;padding:18px;background:#0d1016f7;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto}.hud h1{margin:0 0 6px;font-size:1.1rem}.hud p{margin:0;color:#b7bfd8;line-height:1.4}.hud-section{display:flex;flex-direction:column;gap:10px;padding:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px}.controls-grid{display:grid;grid-template-columns:1fr}.controls-row{display:grid;grid-template-columns:1fr auto;gap:6px}.rec-btn{min-width:90px;color:#f44336!important;border-color:#f443364d!important;font-weight:600}.rec-btn-active{background:#f4433626!important;border-color:#f4433699!important;animation:recPulse 1s ease-in-out infinite}@keyframes recPulse{0%,to{box-shadow:0 0 #f443364d}50%{box-shadow:0 0 12px 2px #f4433666}}.hud label{display:flex;flex-direction:column;gap:6px;font-size:.9rem}.hud button,.hud select,.hud input[type=range]{width:100%}.hud button,.hud select{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 12px;background:#181d27;color:inherit}.lap-list{gap:4px}.session-group{display:flex;flex-direction:column;gap:4px;margin-bottom:6px}.session-header{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#8892ab;padding:4px 2px 2px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:2px}.lap-entry{display:flex;flex-direction:column;gap:2px}.lap-row{display:grid!important;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;flex-direction:row!important}.lap-info{display:flex;flex-direction:column;gap:3px;min-width:0}.lap-name{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lap-tags{display:flex;gap:5px;align-items:center}.device-badge{font-size:.65rem;font-weight:600;letter-spacing:.03em;padding:1px 5px;border:1px solid;border-radius:4px;color:#ccd3e8;background:#ffffff0a}.mode-badge{font-size:.65rem;color:#7b8399;font-style:italic}.lap-swatch{width:14px;height:14px;border-radius:999px;display:inline-block}.sync-controls{padding-left:38px}.sync-toggle{font-size:.72rem;color:#8892ab;background:none!important;border:none!important;padding:2px 4px!important;cursor:pointer;text-align:left;width:auto!important}.sync-toggle:hover{color:#b7bfd8}.sync-sliders{display:flex;flex-direction:column;gap:4px;padding:4px 0}.sync-slider{display:flex!important;flex-direction:column!important;gap:2px!important;font-size:.75rem!important}.sync-slider-label{display:flex;justify-content:space-between;color:#8892ab}.sync-slider-value{font-family:monospace;color:#b7bfd8}.sync-slider input[type=range]{height:4px;accent-color:#4dd0e1}.sync-reset{font-size:.72rem!important;padding:4px 8px!important;border-radius:6px!important;margin-top:2px;background:#ff6b6b1f!important;border-color:#ff6b6b40!important;color:#ff9b9b!important}.sync-reset:hover{background:#ff6b6b33!important}.warnings{background:#ffb74d14!important;border-color:#ffb74d40!important}.warning-row{font-size:.78rem;color:#ffb74d;line-height:1.3}.viewer-shell{position:relative;width:100%;height:100%;min-height:0;min-width:0;overflow:hidden}.loading{display:grid;place-items:center;width:100%;height:100%}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#090b10eb;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease-out}.loading-content{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 32px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#ffffff08;min-width:360px}.loading-title{font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#b7bfd8}.loading-bar{width:100%;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.loading-bar-fill{height:100%;background:linear-gradient(90deg,#4dd0e1,#4caf50);border-radius:3px;transition:width .2s ease-out;box-shadow:0 0 12px #4dd0e166}.loading-progress{font-family:monospace;font-size:20px;font-weight:800;color:#eef2ff;letter-spacing:1px}.loading-detail{font-size:11px;font-family:monospace;color:#fff6;max-width:320px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.car-dot{width:10px;height:10px;border-radius:999px;border:1.5px solid rgba(255,255,255,.9)}.car-dot-ghost{opacity:.7}.telemetry-panel{position:absolute;bottom:12px;right:12px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #00000080}.telemetry-panel{position:absolute}.telemetry-canvas{display:block;width:400px;height:200px}.telemetry-playhead{position:absolute;top:0;left:0;width:400px;height:200px;pointer-events:none}.delta-panel{position:absolute;bottom:168px;right:12px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #00000080}.delta-panel{position:absolute;bottom:218px;right:12px;border-radius:10px;overflow:hidden}.delta-canvas{display:block;width:400px;height:80px}.delta-playhead{position:absolute;top:0;left:0;width:400px;height:80px;pointer-events:none}.track-map-panel{position:absolute;bottom:12px;left:12px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #00000080}.track-map-canvas{display:block;width:280px;height:280px}.track-map-dot{position:absolute;top:0;left:0;width:280px;height:280px}.track-marker{display:flex;align-items:center;gap:3px;text-shadow:0 0 8px currentColor;filter:drop-shadow(0 0 4px currentColor)}.marker-icon{font-size:18px}.marker-counter{font-size:10px;font-weight:800;background:#090b10cc;padding:1px 4px;border-radius:4px;border:1px solid currentColor;font-family:monospace}.track-marker-brake{color:#f44336}.track-marker-throttle{color:#4caf50}.marker-diff{font-size:9px;font-weight:600;color:#ffb74d;background:#090b10cc;padding:1px 3px;border-radius:3px;font-family:monospace}.brake-pair-marker{display:flex;align-items:center;gap:3px;border:1.5px solid;border-radius:6px;padding:1px 5px;background:#090b10bf}.brake-pair-icon{font-size:14px;color:#f44336;text-shadow:0 0 6px #f44336}.brake-pair-num{font-size:9px;font-weight:800;color:#fff;font-family:monospace}.brake-diff-badge{font-size:20px;font-weight:900;color:#ffb74d;background:#090b10e6;padding:6px 12px;border-radius:8px;border:2px solid rgba(255,183,77,.5);font-family:monospace;text-shadow:0 0 10px rgba(255,183,77,.6);letter-spacing:1px}.hud-delta,.car-delta-badge{text-align:center;font-size:24px;font-weight:900;font-family:monospace;margin-top:4px;padding:4px 10px;border-radius:6px;letter-spacing:1px;text-shadow:0 0 8px currentColor;white-space:nowrap}.car-delta-badge{border:1.5px solid currentColor;background:#090b10d9}.car-distance-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600;color:#ffd166;background:#090b10c7;border:1px solid rgba(255,209,102,.55);border-radius:4px;padding:2px 6px;white-space:nowrap;text-shadow:0 0 3px rgba(0,0,0,.85);-webkit-user-select:none;user-select:none;pointer-events:none;transform:translateY(-50%)}.hud-delta-behind{color:#f44336;background:#f4433626}.hud-delta-ahead{color:#4caf50;background:#4caf5026}.phase-label{display:flex;align-items:center;gap:4px;padding:2px 6px;border-radius:6px;font-size:9px;font-weight:700;letter-spacing:.04em;white-space:nowrap;background:#090b10bf;border:1px solid rgba(255,255,255,.1)}.phase-label-name{opacity:.8}.phase-label-dist{font-family:monospace;font-weight:400}.phase-label-braking,.phase-label-trail_braking{color:#f44336;border-color:#f443364d}.phase-label-full_throttle{color:#4caf50;border-color:#4caf504d}.phase-label-trail_braking{color:#ff9800;border-color:#ff98004d}.phase-label-coasting{color:#90a4ae;border-color:#90a4ae33}.car-telemetry-hud{padding:8px 14px;border-radius:10px;background:#090b10d9;border:1.5px solid rgba(255,255,255,.12);min-width:140px;transition:border-color .2s}.hud-braking{border-color:#f4433699;box-shadow:0 0 12px #f443364d}.hud-throttle{border-color:#4caf5099;box-shadow:0 0 12px #4caf504d}.hud-coast{border-color:#ffffff1a}.hud-bar-row{display:flex;align-items:center;gap:6px;margin:3px 0}.hud-bar-label{font-size:10px;font-weight:700;color:#ffffff80;width:28px;text-align:right}.hud-bar{flex:1;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.hud-bar-fill{height:100%;border-radius:4px;transition:width .05s}.hud-bar-tps{background:#4caf50}.hud-bar-brake{background:#f44336}.hud-rpm{font-size:11px;color:#fff9;text-align:center;margin-top:3px;font-family:monospace}.mobile-toolbar,.mobile-scrubber,.mobile-drawer-backdrop{display:none}.map-panels,.data-panels{display:contents}@media (max-width: 768px){.app-shell{grid-template-columns:1fr!important;grid-template-rows:1fr!important}.mobile-toolbar{display:flex;flex-direction:column;gap:8px;position:absolute;top:12px;left:12px;z-index:50}.mtb-btn{width:44px;height:44px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#0d1016d9;color:#eef2ff;font-size:20px;line-height:1;display:grid;place-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;padding:0}.mtb-btn:active{transform:scale(.95)}.mtb-btn-active{background:#4dd0e12e;border-color:#4dd0e199;color:#4dd0e1}.mtb-btn-text{font-size:12px;font-weight:700;letter-spacing:.04em;font-family:monospace}.mobile-scrubber{display:flex;flex-direction:column;gap:4px;position:absolute;bottom:0;left:0;right:0;padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px));background:#0d1016e6;border-top:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:40}.mobile-scrubber-time{font-size:11px;font-family:monospace;color:#b7bfd8;text-align:center}.mobile-scrubber input[type=range]{width:100%;accent-color:#4dd0e1}.mobile-drawer-backdrop{display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:55;animation:fadeIn .18s ease-out}.hud{position:absolute;top:0;left:0;bottom:0;width:min(88vw,360px);max-height:100%;border-right:1px solid rgba(255,255,255,.08);border-bottom:none;transform:translate(-105%);transition:transform .25s ease-out;z-index:60;overflow-y:auto}.hud-open{transform:translate(0);box-shadow:6px 0 24px #0009}.map-panels,.data-panels{display:none}.map-panels-open,.data-panels-open{display:block;position:absolute;left:0;right:0;bottom:0;max-height:80vh;padding:16px 12px 80px;background:#0d1016f7;border-top:1px solid rgba(255,255,255,.08);border-top-left-radius:16px;border-top-right-radius:16px;overflow-y:auto;z-index:60;animation:slideUp .25s ease-out;box-shadow:0 -6px 24px #0009}.map-panels-open .track-map-panel,.data-panels-open .delta-panel,.data-panels-open .telemetry-panel{position:static;margin-bottom:12px;width:100%}.map-panels-open .track-map-canvas,.map-panels-open .track-map-dot{width:100%;height:auto;aspect-ratio:1}.data-panels-open .telemetry-canvas,.data-panels-open .telemetry-playhead,.data-panels-open .delta-canvas,.data-panels-open .delta-playhead{width:100%;height:auto}.car-telemetry-hud-wrap{display:none!important}.car-delta-badge{font-size:16px;padding:3px 7px}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.corner-dot{width:10px;height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.7);box-shadow:0 0 4px #0009}.corner-apex-marker{display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none}.corner-apex-ring{width:18px;height:18px;border-radius:999px;border:3px solid currentColor;background:#090b1059;box-shadow:0 0 6px #0000008c}.corner-apex-label{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;font-weight:800;letter-spacing:1px;text-shadow:0 0 4px rgba(0,0,0,.9);background:#090b10b3;padding:1px 4px;border-radius:4px}.corner-delta-badge{display:inline-flex;gap:4px;align-items:center;padding:2px 6px;border-radius:6px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px;font-weight:700;background:#090b10e0;border:1px solid rgba(255,255,255,.2);white-space:nowrap;color:#eef2ff}.corner-delta-brake{color:#ff8a80;border-color:#f4433699}.corner-delta-throttle{color:#ffe082;border-color:#ffeb3b99}.corner-delta-label{font-size:9px;opacity:.7;letter-spacing:1px}.corner-delta-value{font-size:11px}.corner-analysis-panel{position:absolute;top:12px;right:12px;width:320px;max-height:70vh;overflow-y:auto;padding:10px 12px;background:#090b10ed;border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 4px 24px #0000008c;z-index:8}.corner-analysis-header{font-size:11px;font-weight:800;letter-spacing:.08em;color:#4dd0e1;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid rgba(77,208,225,.25)}.corner-analysis-subhead{font-size:10px;font-weight:700;letter-spacing:.06em;color:#8892ab;margin:8px 0 4px;text-transform:uppercase}.corner-analysis-sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.corner-analysis-sector{display:flex;flex-direction:column;align-items:center;padding:4px 2px;background:#ffffff0a;border-radius:6px;font-family:ui-monospace,monospace;font-size:11px}.corner-analysis-sector-num{color:#8892ab;font-size:9px}.corner-analysis-sector-arc{color:#e6edf7;font-weight:700}.corner-analysis-rows{display:flex;flex-direction:column;gap:6px}.corner-analysis-empty{font-size:11px;color:#8892ab;font-style:italic;padding:8px 0}.corner-analysis-row{padding:6px 8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px}.corner-analysis-row-header{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:4px}.corner-analysis-row-num{font-weight:800;font-size:13px;color:#e6edf7}.corner-analysis-row-delta{display:flex;gap:6px;font-family:ui-monospace,monospace;font-size:10px}.ca-brk-delta{color:#ff8a80}.ca-ft-delta{color:#ffe082}.ca-ga-delta{color:#ffb74d}.ca-sa-delta{color:#ce93d8}.corner-analysis-legend{padding:6px 8px;background:#ffffff08;border-radius:8px;margin-bottom:6px}.corner-analysis-legend-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px}.corner-analysis-legend-item{display:flex;align-items:center;gap:6px;font-size:10px;color:#b7bfd8;line-height:1.4}.corner-analysis-legend-dot{width:9px;height:9px;border-radius:999px;border:1px solid rgba(255,255,255,.5);flex-shrink:0}.corner-analysis-row-body{display:flex;flex-direction:column;gap:2px;font-size:11px;color:#b7bfd8}.corner-analysis-lap{display:flex;gap:10px;align-items:center;font-family:ui-monospace,monospace}.corner-analysis-lap-swatch{width:10px;height:10px;border-radius:999px;flex-shrink:0}.corner-analysis-totals{display:flex;flex-direction:column;gap:3px;padding:6px 8px;background:#ffffff08;border-radius:8px;margin-bottom:4px}.corner-analysis-totals-row{display:flex;align-items:center;gap:8px;font-family:ui-monospace,monospace;font-size:12px}.corner-analysis-totals-value{color:#e6edf7;font-weight:700}.corner-analysis-totals-delta{font-size:11px;color:#ffb74d;font-family:ui-monospace,monospace;font-weight:700;margin-top:2px}.corner-analysis-row-arc{font-family:ui-monospace,monospace;font-size:10px;color:#ffb74d;margin:2px 0}.active-toggle{background:#4dd0e12e!important;border-color:#4dd0e18c!important;color:#4dd0e1!important}@media (max-width: 900px){.corner-analysis-panel{display:none}}@media (min-width: 769px) and (max-width: 1100px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.hud{max-height:42vh;border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}}.video-overlay{position:fixed;right:16px;bottom:16px;z-index:200;background:#000;border:1px solid rgba(255,255,255,.18);border-radius:8px;overflow:hidden;box-shadow:0 8px 24px #0000008c;display:flex;flex-direction:column;pointer-events:none}.video-overlay-hidden{display:none}.video-overlay-normal{width:320px;height:180px}.video-overlay-large{width:640px;height:360px}.video-overlay-element{width:100%;height:100%;object-fit:contain;display:block;background:#000;pointer-events:none;transform:translateZ(0);will-change:transform;backface-visibility:hidden}.video-overlay-controls{position:absolute;top:6px;right:6px;left:auto;bottom:auto;display:flex;gap:4px;opacity:.95;transition:opacity .15s ease;z-index:2;pointer-events:auto}.video-overlay:hover .video-overlay-controls{opacity:1}.video-overlay-controls button{background:#000000c7;color:#fff;border:1px solid rgba(255,255,255,.32);border-radius:4px;width:30px;height:30px;font-size:15px;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;box-shadow:0 1px 3px #0009}.video-overlay-controls button:hover{background:#000000d9;border-color:#fff6}.video-overlay-label{position:absolute;bottom:6px;left:8px;background:#0000008c;color:#e0e0e0;font-size:10px;font-family:ui-monospace,monospace;padding:2px 6px;border-radius:3px;pointer-events:none}.video-overlay-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;pointer-events:none}.video-overlay-spinner-dot{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#4dd0e1;animation:video-overlay-spin .9s linear infinite}@keyframes video-overlay-spin{to{transform:rotate(360deg)}}.video-overlay-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#000000d9;color:#ff8a8a;font-size:12px;font-family:ui-monospace,monospace;text-align:center;padding:12px}@media (max-width: 768px){.video-overlay{right:8px;bottom:64px}.video-overlay-normal{width:180px;height:102px}.video-overlay-large{width:min(92vw,480px);height:min(52vw,270px)}.video-overlay-controls button{width:32px;height:32px;font-size:16px}}.layout-grid{position:relative;width:100%;height:100%;background:#06080d}.layout-group{width:100%;height:100%}.panel-cell,.panel-cell-split{display:flex;min-width:0;min-height:0}.panel-handle-h,.panel-handle-v{position:relative;flex-shrink:0}body.panel-resizing .echarts-for-react,:root:has([role=separator]:active) .echarts-for-react,:root:has([data-separator=active]) .echarts-for-react{pointer-events:none}.panel-handle-h{width:16px;cursor:col-resize}.panel-handle-v{height:16px;cursor:row-resize}.grid-splitter-v{cursor:col-resize}.grid-splitter-h{cursor:row-resize}.panel-frame{display:flex;flex-direction:column;width:100%;height:100%;background:#0b0e14;border:1px solid rgba(255,255,255,.04);overflow:hidden}.panel-frame-header{display:flex;align-items:center;justify-content:space-between;height:22px;padding:0 8px;flex-shrink:0;background:#ffffff06;border-bottom:1px solid rgba(255,255,255,.05);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7b8399}.panel-frame-title{line-height:22px}.panel-frame-actions{display:flex;gap:4px}.panel-frame-body{flex:1;min-height:0;position:relative;overflow:hidden}.panel-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:12px;color:#5a6378}.panel-trackmap{width:100%;height:100%;background:#090b10eb}.panel-trackmap .track-map-panel{position:relative;width:100%;height:100%;border-radius:0;border:0;box-shadow:none;bottom:auto;left:auto}.panel-trackmap .track-map-canvas,.panel-trackmap .track-map-dot{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.layout-preset-bar{display:flex;gap:4px;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.05)}.layout-preset-btn{flex:1;padding:4px 6px;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:#ffffff08;color:#8892ab;border:1px solid rgba(255,255,255,.06);border-radius:4px;cursor:pointer}.layout-preset-btn:hover{background:#ffffff0f;color:#cfd6e8}.layout-preset-btn.is-active{background:#4cafc82e;border-color:#4cafc88c;color:#cfe7ee}.viewer3d-minimap-overlay{position:absolute;top:8px;left:8px;width:240px;height:240px;z-index:2;pointer-events:none;background:transparent;border:none;box-shadow:none}.viewer3d-minimap-overlay>*{width:100%;height:100%;pointer-events:auto}.viewer3d-minimap-overlay .panel-frame,.viewer3d-minimap-overlay .panel-frame-body,.viewer3d-minimap-overlay .panel-trackmap,.viewer3d-minimap-overlay .track-map-panel{background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0}.viewer3d-minimap-overlay .panel-frame-header{display:none}.viewer3d-minimap-overlay .track-map-legend,.viewer3d-minimap-overlay .track-map-hint{display:none!important}.mobile-shell{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#090b10;color:#cfd6e8;overflow:hidden}.mobile-header{flex:0 0 auto}.mobile-body{flex:1 1 auto}.mobile-tabbar{flex:0 0 auto}.mobile-header{display:flex;align-items:baseline;gap:12px;padding:10px 14px 6px;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,#141820f2,#0c0e14d9);z-index:2}.mobile-header-title{font-family:monospace;font-size:14px;font-weight:700;letter-spacing:.5px;color:#fff}.mobile-header-sub{font-family:monospace;font-size:11px;color:#cfd6e899;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-body{position:relative;min-height:0;min-width:0;overflow:hidden;background:#090b10}.mobile-body>*{position:absolute;top:0;right:0;bottom:0;left:0}.mobile-playback-bar{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:8px 12px;background:#0e1016f5;border-top:1px solid rgba(255,255,255,.05);z-index:2}.mobile-pb-btn{min-width:44px;height:36px;padding:0 10px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#e9edf5;font-size:15px;font-family:monospace;cursor:pointer;touch-action:manipulation}.mobile-pb-btn:active{background:#4cafc82e}.mobile-pb-speed{min-width:52px;font-weight:700}.mobile-pb-scrubber{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:#ffffff1f;outline:none}.mobile-pb-scrubber::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#4cafc8;border:2px solid #0a0c12;box-shadow:0 1px 3px #00000080}.mobile-pb-scrubber::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#4cafc8;border:2px solid #0a0c12}.mobile-pb-time{font-family:monospace;font-size:11px;color:#cfd6e8b3;min-width:90px;text-align:right;white-space:nowrap}.mobile-tabbar{display:flex;background:#080a0ffa;border-top:1px solid rgba(255,255,255,.06);padding-bottom:env(safe-area-inset-bottom,0);z-index:2}.mobile-tab{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:56px;background:transparent;border:none;color:#cfd6e88c;font-family:inherit;cursor:pointer;padding:6px 0 8px;touch-action:manipulation}.mobile-tab.is-active{color:#fff;box-shadow:inset 0 2px #4cafc8}.mobile-tab-icon{font-size:18px;line-height:1}.mobile-tab-label{font-size:10px;letter-spacing:.4px;text-transform:uppercase;font-weight:600}.mobile-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:50}.mobile-sheet{position:fixed;left:0;right:0;bottom:0;max-height:85vh;background:#11141b;border-top-left-radius:16px;border-top-right-radius:16px;border-top:1px solid rgba(255,255,255,.06);transform:translateY(100%);transition:transform .22s cubic-bezier(.32,.72,0,1);z-index:60;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0)}.mobile-sheet.is-open{transform:translateY(0)}.mobile-sheet-handle{width:44px;height:4px;border-radius:2px;background:#ffffff2e;margin:8px auto 4px;flex-shrink:0}.mobile-sheet-body{overflow-y:auto;padding:8px 16px 16px}.mobile-sheet-section{margin:14px 0}.mobile-sheet-section h3{font-family:monospace;font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#cfd6e880;margin:0 0 8px;font-weight:700}.mobile-segctl{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:#ffffff0a;padding:4px;border-radius:10px}.mobile-segctl-btn{height:36px;background:transparent;border:none;border-radius:7px;color:#cfd6e8b3;font-family:monospace;font-size:12px;font-weight:600;cursor:pointer;touch-action:manipulation}.mobile-segctl-btn.is-active{background:#4cafc838;color:#fff}.mobile-select{width:100%;height:40px;padding:0 10px;background:#ffffff0a;color:#e9edf5;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-family:inherit;font-size:13px}.mobile-laplist{display:flex;flex-direction:column;gap:6px}.mobile-lap-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#ffffff08;border-radius:8px;font-size:12px}.mobile-lap-row input[type=checkbox]{accent-color:#4cafc8;width:18px;height:18px}.mobile-lap-label{font-family:monospace;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-toggle-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;margin-bottom:6px;background:#ffffff0a;border:none;border-radius:8px;color:#e9edf5;font-family:inherit;font-size:13px;cursor:pointer;touch-action:manipulation}.mobile-toggle-row.is-active{background:#4cafc838}.mobile-toggle-pill{font-family:monospace;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;border-radius:999px;background:#ffffff14}.mobile-toggle-row.is-active .mobile-toggle-pill{background:#4cafc8;color:#0a0c12}.mobile-sheet-close{width:100%;height:44px;margin-top:8px;background:#ffffff0f;border:none;border-radius:10px;color:#cfd6e8;font-family:inherit;font-size:14px;cursor:pointer}.m-hud-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}.m-hud-overlay>*{pointer-events:auto}.m-hud-map,.m-hud-gforce{width:160px;height:160px;box-sizing:border-box}.m-hud-map{position:absolute;top:10px;left:10px;padding:0;background:#090b109e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden;pointer-events:auto}.m-hud-map>*{width:100%;height:100%;background:transparent}.m-hud-map .panel-frame,.m-hud-map .panel-frame-body,.m-hud-map .panel-trackmap,.m-hud-map .track-map-panel{background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0;padding:0}.m-hud-map .panel-frame-header,.m-hud-map .track-map-legend,.m-hud-map .track-map-hint{display:none}@media (max-width: 768px){.viewer3d-minimap-overlay{display:none}}.m-hud-toolbar{position:absolute;left:0;right:0;bottom:138px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;pointer-events:none}.m-hud-toolbar-center{display:flex;align-items:center;gap:0;pointer-events:auto;background:#090b10c7;border:1px solid rgba(76,175,200,.45);border-radius:16px;overflow:hidden}.m-hud-toolbar-center .m-hud-shortcut{border:none;border-radius:0;background:transparent}.m-hud-toolbar-center .m-hud-shortcut+.m-hud-shortcut{border-left:1px solid rgba(76,175,200,.35)}.m-hud-shortcut{pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#090b10c7;border:1px solid rgba(76,175,200,.45);color:#4cafc8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;letter-spacing:.04em;padding:5px 12px;min-height:28px;border-radius:14px;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-hud-shortcut:active{background:#4cafc833}.m-hud-lap-time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:700;background:#090b109e;border:1px solid currentColor;padding:2px 8px;border-radius:6px;font-variant-numeric:tabular-nums;text-shadow:0 0 6px currentColor;pointer-events:none}@media (max-width: 380px){.m-hud-shortcut{padding:4px 10px;font-size:10px;min-height:24px}.m-hud-lap-time{font-size:12px;padding:1px 6px}.m-hud-toolbar{bottom:120px}}.m-hud-gforce{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;align-items:stretch;gap:2px;background:#090b109e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.m-hud-gforce-circle{flex:1 1 auto;min-height:0}.m-hud-gforce-readouts{flex:0 0 auto;display:flex;justify-content:space-around;gap:4px;font-size:10px;padding-top:2px}.m-hud-g-row{display:flex;align-items:baseline;gap:3px}.m-hud-g-key{color:#8a93a3;font-size:9px}.m-hud-g-val{color:#fff;font-variant-numeric:tabular-nums;font-size:11px}@media (max-width: 380px){.m-hud-map,.m-hud-gforce{width:130px;height:130px}}.m-lower-chart{position:absolute;top:auto;left:0;right:0;bottom:0;height:130px;z-index:5;background:#090b108c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-top:1px solid rgba(255,255,255,.08);pointer-events:auto;touch-action:none}.m-lower-chart-canvas{display:block;width:100%;height:100%}.m-lower-chart-mode{position:absolute;right:8px;top:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#090b10c7;border:1px solid rgba(76,175,200,.45);color:#4cafc8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.04em;padding:4px 10px;min-height:24px;border-radius:12px;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-lower-chart-mode:active{background:#4cafc833}@media (max-width: 380px){.m-lower-chart{height:112px}}.m-tel-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#5a6378;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.m-tel-panel{display:flex;flex-direction:column;gap:10px;padding:12px;width:100%;height:100%;overflow-y:auto;box-sizing:border-box;background:#090b10;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.m-tel-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.m-tel-card-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.m-tel-card-title{font-size:10px;letter-spacing:.12em;color:#5a6378;font-weight:600}.m-tel-card-stat{font-size:11px;color:#8a93a3}.m-tel-unit-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#4cafc81a;border:1px solid rgba(76,175,200,.3);color:#4cafc8;font:inherit;font-size:11px;font-weight:600;letter-spacing:.04em;padding:6px 12px;min-height:32px;border-radius:16px;cursor:pointer;-webkit-tap-highlight-color:transparent}.m-tel-unit-btn:active{background:#4cafc840}.m-tel-hero{font-size:72px;font-weight:700;line-height:1;color:#fff;text-align:center;margin:8px 0 12px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.m-tel-gauge{margin:4px 0 10px}.m-tel-gauge-track{position:relative;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.m-tel-gauge-fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#4cafc8,#66e1ff);border-radius:4px;width:0%;transition:width 80ms linear}.m-tel-gauge-scale{display:flex;justify-content:space-between;font-size:10px;color:#5a6378;margin-top:4px}.m-tel-chips{display:flex;flex-wrap:wrap;gap:8px}.m-tel-chip{display:inline-flex;align-items:center;gap:6px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:4px 10px;font-size:12px}.m-tel-chip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.m-tel-chip-label{color:#8a93a3;font-size:11px}.m-tel-chip-val{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}.m-tel-gforce-row{display:flex;gap:12px;align-items:stretch}.m-tel-friction{flex:0 0 auto;width:160px;aspect-ratio:1 / 1}@media (max-width: 380px){.m-tel-friction{width:130px}}.m-tel-g-readouts{flex:1 1 auto;display:flex;flex-direction:column;gap:10px;min-width:0}.m-tel-g-block{display:flex;flex-direction:column;gap:1px}.m-tel-g-lap{font-size:11px;font-weight:600;margin-bottom:2px}.m-tel-g-row{display:grid;grid-template-columns:30px 1fr 14px;align-items:baseline;gap:6px;font-size:13px;line-height:1.3}.m-tel-g-key{color:#5a6378;font-size:10px;letter-spacing:.05em}.m-tel-g-val{color:#fff;text-align:right;font-variant-numeric:tabular-nums}.m-tel-g-unit{color:#5a6378;font-size:10px}.viewer3d-fallback{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;background:#090b10eb;color:#cfd6e8;z-index:1;pointer-events:auto}.viewer3d-fallback-title{font-family:monospace;font-size:13px;font-weight:700;letter-spacing:.5px;color:#ffb74d}.viewer3d-fallback-body{font-family:monospace;font-size:11px;color:#cfd6e8a6;max-width:480px;text-align:center;line-height:1.4}.viewer3d-fallback-retry{margin-top:8px;padding:8px 14px;background:#4cafc82e;border:1px solid rgba(76,175,200,.55);border-radius:6px;color:#cfe7ee;font-family:inherit;font-size:12px;cursor:pointer}.viewer3d-fallback-retry:hover{background:#4cafc847}.video-compare-panel{position:relative;width:100%;height:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#0a0c12;min-height:0;min-width:0}.video-compare-tile{position:relative;min-width:0;min-height:0;overflow:hidden;border-top:2px solid rgba(255,255,255,.2)}.single-lap-video{position:relative;width:100%;height:100%;background:#000;display:flex;align-items:center;justify-content:center}.single-lap-video-empty{background:#0e1016b3}.single-lap-video-element{width:100%;height:100%;object-fit:contain;background:#000}.single-lap-video-label{position:absolute;top:6px;left:8px;padding:2px 8px;background:#090b10b3;color:#cfd6e8;font-family:monospace;font-size:11px;font-weight:600;border-radius:4px;pointer-events:none;max-width:calc(100% - 64px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.single-lap-video-mute{position:absolute;top:6px;right:8px;width:28px;height:28px;background:#090b10b3;color:#cfd6e8;border:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;padding:0}.single-lap-video-mute:hover{background:#090b10f2}.single-lap-video-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.single-lap-video-spinner-dot{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#4cafc8;animation:video-overlay-spin .9s linear infinite}.single-lap-video-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:8px 12px;background:#f443362e;color:#ffb4ab;border:1px solid rgba(244,67,54,.4);border-radius:6px;font-family:monospace;font-size:11px}.vr-shell{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0e14;overflow:hidden;pointer-events:none}.vr-shell>*{pointer-events:auto}.vr-viewer-slot{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}body:has(.vr-shell) .viewer3d-minimap-overlay{display:none}.vr-map-overlay{position:absolute;top:16px;left:16px;width:320px;height:320px;z-index:10;background:transparent;border:none;box-shadow:none;overflow:visible}.vr-map-overlay .vr-trackmap{width:100%;height:100%;cursor:grab}.vr-map-overlay .vr-trackmap:active{cursor:grabbing}.vr-map-overlay .panel-frame,.vr-map-overlay .panel-frame-body,.vr-map-overlay .panel-trackmap,.vr-map-overlay .track-map-panel{background:transparent!important;border:none!important;box-shadow:none!important;border-radius:0;padding:0}.vr-map-overlay .panel-frame-header{display:none}.vr-map-overlay .track-map-legend,.vr-map-overlay .track-map-hint{display:none!important}.vr-friction-overlay{position:absolute;top:352px;left:16px;width:320px;height:320px;max-height:calc(100vh - 476px);z-index:10;pointer-events:none}.vr-friction-circle{width:100%;height:100%;display:block}.vr-friction-circle canvas{width:100%;height:100%;display:block}.vr-charts-overlay{position:absolute;top:16px;right:16px;bottom:124px;z-index:10;display:flex;flex-direction:column;pointer-events:none}.vr-charts-overlay>*{pointer-events:auto}.chart-value-box{position:absolute;display:none;flex-direction:column;gap:0;padding:2px 5px;background:#090b10c7;border:1px solid rgba(255,255,255,.22);border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.2;white-space:nowrap;pointer-events:none;z-index:3;text-shadow:0 1px 1px rgba(0,0,0,.6)}.chart-value-row{display:flex;align-items:center;gap:5px}.chart-value-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 2px #0009}.chart-value-num{color:#fff;font-weight:700;min-width:30px;text-align:right;margin-left:auto}.chart-value-unit{color:#5a6378;font-size:10px;min-width:14px;text-align:left}.chart-value-hover-row{display:flex;align-items:baseline;gap:6px;padding-left:13px;font-size:10px;line-height:1.1;margin-bottom:1px}.chart-value-cursor-num{color:#b8e8f3c7;font-weight:600;min-width:30px;text-align:right;margin-left:auto}.chart-value-delta{color:#b8e8f3;font-weight:700;min-width:36px;text-align:right;letter-spacing:.2px}.chart-header-bar{flex:0 0 22px;display:flex;align-items:center;gap:8px;padding:0 4px 2px 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;-webkit-user-select:none;user-select:none;color:#cfd6e8}.chart-header-delta-btn{height:18px;width:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.22);border-radius:3px;color:#cfd6e8;font-size:13px;font-weight:700;line-height:1;padding:0;margin:0 2px;cursor:pointer;font-family:inherit}.chart-header-delta-btn:hover{background:#ffffff14;border-color:#ffffff59}.chart-header-delta-btn.is-active{background:#4cafc84d;border-color:#4cafc8b3;color:#b8e8f3}.chart-header-readout{display:inline-flex;align-items:baseline;gap:4px}.chart-header-key{color:#5a6378;font-size:10px;font-weight:500;letter-spacing:.3px}.chart-header-val{color:#fff;font-weight:700;min-width:40px;text-align:right}.chart-header-unit{color:#5a6378;font-size:10px}.chart-header-readout.chart-header-delta .chart-header-val{color:#b8e8f3}.chart-header-readout.chart-header-delta .chart-header-key{color:#7fa8b8}.chart-header-sep{width:1px;height:14px;background:#ffffff1f;margin:0 4px}.chart-shell{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.chart-shell-body{position:relative;flex:1 1 auto;min-height:0}.chart-delta-window-overlay{background:#4cafc80f;border-top:1px dashed rgba(255,167,38,.25);border-bottom:1px dashed rgba(255,167,38,.25)}.telemetry-with-channels{display:flex;flex-direction:row;width:100%;height:100%;min-height:0;min-width:0}.telemetry-chart-wrap{flex:1 1 auto;min-width:0;min-height:0;position:relative}.channel-list-column{flex:0 0 auto;width:132px;height:100%;display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.06);background:#ffffff04;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;min-height:0}.channel-list-header{flex:0 0 auto;padding:4px 8px;font-size:9px;letter-spacing:.08em;color:#5a6378;border-bottom:1px solid rgba(255,255,255,.06);text-transform:uppercase}.channel-list-body{flex:1 1 auto;overflow-y:auto;padding:2px 0}.channel-list-row{display:grid;grid-template-columns:10px 1fr auto auto auto;align-items:center;gap:4px;padding:3px 6px 3px 4px;border-left:3px solid transparent;border-bottom:1px solid rgba(255,255,255,.05);font-size:10px;line-height:14px;color:#6c7585;cursor:grab;-webkit-user-select:none;user-select:none}.channel-list-row:last-child{border-bottom:none}.channel-list-row:active{cursor:grabbing}.channel-list-row:hover{background:#ffffff0a}.channel-list-row.is-plotted{border-left-color:#4cafc8;color:#cfd6e8}.channel-list-grip{color:#3e4757;font-size:9px;letter-spacing:-2px;text-align:center;line-height:8px;pointer-events:none}.channel-list-row:hover .channel-list-grip{color:#6c7585}.channel-list-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-list-value{font-variant-numeric:tabular-nums;color:#fff;text-align:right;min-width:38px}.channel-list-row:not(.is-plotted) .channel-list-value{color:#8a93a3}.channel-list-unit{color:#5a6378;font-size:9px;min-width:22px;text-align:left}.channel-list-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:#6c7585;font-size:12px;line-height:1;padding:0 2px;cursor:pointer;border-radius:2px}.channel-list-remove:hover{background:#f4433640;color:#fff}.chart-drop-zone{border:1.5px dashed rgba(76,175,200,.55);background:#4cafc80a;border-radius:3px;box-sizing:border-box;display:flex;align-items:flex-start;justify-content:flex-end;padding:2px 6px;transition:background-color 80ms linear,border-color 80ms linear}.chart-drop-zone.is-hover{border-style:solid;border-color:#4cafc8f2;background:#4cafc82e}.chart-drop-zone-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;color:#4cafc8;background:#0d1118d9;border:1px solid rgba(76,175,200,.55);border-radius:2px;padding:1px 6px;pointer-events:none;white-space:nowrap}.chart-drop-zone.is-hover .chart-drop-zone-label{color:#fff;background:#4cafc8f2;border-color:#4cafc8}.chart-drop-zone-new{border-style:dotted;border-color:#96b4c873;background:#96b4c80a}.chart-drop-zone-new .chart-drop-zone-label{color:#b0bccc;border-color:#96b4c88c}.chart-drop-zone-new.is-hover{border-color:#4cafc8f2;background:#4cafc82e}.chart-drop-zone-new.is-hover .chart-drop-zone-label{color:#fff;background:#4cafc8f2}.chart-sector-bar{flex:0 0 20px;padding:2px 0 0}.chart-sector-bar-inner{position:relative;height:100%;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:3px;cursor:grab;-webkit-user-select:none;user-select:none;overflow:hidden}.chart-sector-bar-inner:active{cursor:grabbing}.chart-sector-bar-cell{position:absolute;top:0;bottom:0;background:#ffffff0a;border-right:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;color:#cfd6e8b3;cursor:pointer;transition:background .12s ease}.chart-sector-bar-cell:last-child{border-right:none}.chart-sector-bar-cell:hover{background:#ffffff1a;color:#e6ecf3}.chart-sector-bar-cell.is-current{background:#ffd1662e;color:#ffd166}.chart-sector-bar-cell.is-current:hover{background:#ffd16647}.chart-sector-bar-cell.is-zoomed{background:#4cafc852;color:#b8e8f3;outline:1px solid rgba(76,175,200,.6);outline-offset:-1px}.chart-sector-bar-cell.is-zoomed.is-current{background:#4cafc86b;color:#ffe9a8}.chart-sector-bar-num{pointer-events:none}.vr-charts-resize-w{position:absolute;left:-8px;top:0;bottom:0;width:16px;cursor:col-resize;z-index:5}.vr-charts-resize-h{flex:0 0 12px;cursor:row-resize}.vr-chart-tile{background:#090b108c;border:1px solid rgba(255,255,255,.08);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;min-height:0}.vr-chart-tile-telemetry{flex:3 1 0}.vr-chart-tile-delta{flex:1 1 0}.vr-chart-tile .panel-frame{background:transparent;border:none}.vr-chart-tile .panel-frame-body{background:transparent}.vr-playback-bar{position:absolute;left:16px;right:16px;bottom:16px;height:92px;z-index:20;display:flex;align-items:stretch;gap:14px;padding:12px 16px;background:#090b10a6;border:1px solid rgba(255,255,255,.08);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.vr-pb-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}.vr-pb-btn{height:36px;padding:0 14px;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#e6ecf3;font-size:13px;cursor:pointer}.vr-pb-btn:hover{background:#ffffff1a}.vr-pb-btn.is-rec{background:#f4433633;border-color:#f4433680;color:#ffb4ab}.vr-pb-speed{display:flex;align-items:center;gap:6px;color:#9aa6b3;font-size:12px}.vr-pb-speed select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:4px;color:#e6ecf3;padding:4px 6px}.vr-timeline-shell{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;justify-content:center}.vr-timeline-meta{display:flex;align-items:baseline;gap:6px;font-size:11px;color:#9aa6b3;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;-webkit-user-select:none;user-select:none;white-space:nowrap}.vr-tl-meta-label{color:#5a6378}.vr-tl-meta-val{color:#e6ecf3}.vr-tl-meta-sep{color:#2a3140;padding:0 4px}.vr-tl-meta-fill{flex:1}.vr-timeline-track{position:relative;height:30px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:4px;cursor:text;overflow:hidden;-webkit-user-select:none;user-select:none}.vr-timeline-track:hover{background:#ffffff0f}.vr-timeline-window{position:absolute;top:0;bottom:0;background:#4cafc82e;border-left:1px solid rgba(76,175,200,.7);border-right:1px solid rgba(76,175,200,.7);cursor:grab}.vr-timeline-window:active{cursor:grabbing}.vr-timeline-window:before,.vr-timeline-window:after{content:"";position:absolute;left:0;right:0;height:1px;background:#4cafc859;pointer-events:none}.vr-timeline-window:before{top:0}.vr-timeline-window:after{bottom:0}.vr-timeline-handle{position:absolute;top:0;bottom:0;width:12px;cursor:col-resize}.vr-timeline-handle:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background:#4cafc8d9;border-radius:2px}.vr-timeline-handle-l{left:0;transform:translate(-50%)}.vr-timeline-handle-r{right:0;transform:translate(50%)}.vr-timeline-playhead{position:absolute;top:-3px;bottom:-3px;width:12px;margin-left:-6px;cursor:ew-resize;z-index:2}.vr-timeline-playhead:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:#f57;box-shadow:0 0 4px #ff557780}.vr-timeline-playhead:after{content:"";position:absolute;top:-4px;left:50%;width:10px;height:6px;margin-left:-5px;background:#f57;clip-path:polygon(0 0,100% 0,50% 100%)}.app-shell.desktop-app-shell{display:flex;flex-direction:column;grid-template-columns:none}.desktop-topbar{display:flex;align-items:center;gap:12px;height:38px;padding:0 12px;background:#0d1016eb;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0;z-index:10}.desktop-topbar-spacer{flex:1;display:flex;justify-content:center}.desktop-topbar-btn{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#cfd6e8;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;cursor:pointer}.desktop-topbar-btn:hover{background:#ffffff14;border-color:#fff3}.desktop-topbar-btn.is-active{background:#4cafc840;border-color:#4cafc899;color:#b8e8f3}.desktop-topbar-btn-label{display:inline-block}.desktop-topbar-btn-hint{margin-left:6px;padding:0 4px;font-size:9px;font-weight:700;letter-spacing:.4px;color:#5a6378;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:2px;line-height:13px}.desktop-topbar-btn.is-active .desktop-topbar-btn-hint{color:#b8e8f3;background:#4cafc82e;border-color:#4cafc866}.desktop-toolbar{display:inline-flex;align-items:center;gap:4px;padding:0 2px}.desktop-toolbar-btn{display:inline-flex;align-items:center;gap:0;height:26px;padding:0 6px 0 8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#cfd6e8;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;cursor:pointer;white-space:nowrap}.desktop-toolbar-btn:hover{background:#ffffff17;border-color:#ffffff38}.desktop-toolbar-btn.is-active{background:#4cafc838;border-color:#4cafc88c;color:#b8e8f3}.desktop-toolbar-btn-label{display:inline-block;font-weight:600}.desktop-toolbar-btn-hint{margin-left:8px;padding:0 4px;font-size:9px;font-weight:700;letter-spacing:.4px;color:#5a6378;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:2px;line-height:14px;min-width:14px;text-align:center}.desktop-toolbar-btn.is-active .desktop-toolbar-btn-hint{color:#b8e8f3;background:#4cafc82e;border-color:#4cafc866}.desktop-app-shell .viewer-shell{flex:1 1 auto;min-height:0;position:relative}.session-drawer-backdrop{position:fixed;top:38px;right:0;bottom:0;left:0;background:#00000059;z-index:40}.session-drawer{position:fixed;top:38px;bottom:0;left:0;width:360px;z-index:41;display:flex;flex-direction:column;background:#0d1016fa;border-right:1px solid rgba(255,255,255,.1);box-shadow:4px 0 16px #00000073;color:#cfd6e8}.session-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.session-drawer-title{font-size:13px;font-weight:700;letter-spacing:.5px;color:#e6ecf3}.session-drawer-close{background:transparent;border:none;color:#9aa6b3;font-size:18px;cursor:pointer;padding:0 4px}.session-drawer-close:hover{color:#fff}.session-drawer-body{flex:1;overflow-y:auto;padding:8px 0}.session-drawer-session+.session-drawer-session{border-top:1px solid rgba(255,255,255,.04)}.session-drawer-session-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 14px;background:transparent;border:none;color:#e6ecf3;text-align:left;cursor:pointer;font-family:inherit;font-size:12px}.session-drawer-session-header:hover{background:#ffffff08}.session-drawer-chevron{width:12px;color:#5a6378;font-size:11px;flex-shrink:0}.session-drawer-session-name{flex:1;font-weight:600}.session-drawer-session-meta{font-size:10px;color:#5a6378;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.session-drawer-session-loaded{font-size:9px;font-weight:700;letter-spacing:.4px;color:#4cafc8;background:#4cafc81f;border:1px solid rgba(76,175,200,.35);border-radius:2px;padding:1px 5px}.session-drawer-laps{padding:2px 0 8px}.session-drawer-lap{display:flex;align-items:center;gap:8px;padding:4px 14px 4px 32px;font-size:11px;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.session-drawer-lap:hover{background:#ffffff08}.session-drawer-lap.is-disabled{cursor:default;opacity:.55}.session-drawer-lap.is-disabled:hover{background:transparent}.session-drawer-lap input[type=checkbox]{margin:0;flex-shrink:0;accent-color:#4cafc8}.session-drawer-lap-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0;box-shadow:0 0 2px #0009}.session-drawer-lap-num{min-width:54px;color:#cfd6e8}.session-drawer-lap-time{flex:1;color:#e6ecf3}.session-drawer-lap-flag{font-size:9px;letter-spacing:.5px;font-weight:700;padding:1px 4px;border-radius:2px}.session-drawer-lap-flag.flag-best{color:#ffd166;background:#ffd1661f;border:1px solid rgba(255,209,102,.4)}.session-drawer-lap-flag.flag-red{color:#ff8a80;background:#ff8a801f;border:1px solid rgba(255,138,128,.4)}.session-drawer-footer{padding:6px 14px;border-top:1px solid rgba(255,255,255,.06)}.session-drawer-hint{font-size:10px;color:#5a6378;font-style:italic}.shortcuts-help-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:60}.shortcuts-help{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:420px;max-width:90vw;max-height:80vh;z-index:61;display:flex;flex-direction:column;background:#0d1016fa;border:1px solid rgba(255,255,255,.12);border-radius:6px;box-shadow:0 10px 40px #000000a6;color:#cfd6e8}.shortcuts-help-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px;font-weight:700;letter-spacing:.5px}.shortcuts-help-close{background:transparent;border:none;color:#9aa6b3;font-size:18px;cursor:pointer;padding:0 4px}.shortcuts-help-close:hover{color:#fff}.shortcuts-help-body{padding:10px 14px;overflow-y:auto}.shortcuts-help-row{display:flex;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04)}.shortcuts-help-row:last-child{border-bottom:none}.shortcuts-help-keys{display:inline-flex;gap:4px;flex-shrink:0;min-width:100px}.shortcuts-help-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#ffffff12;border:1px solid rgba(255,255,255,.18);border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;color:#e6ecf3}.shortcuts-help-label{flex:1;font-size:12px;color:#cfd6e8}
