:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--viz-accent:#69c6ff;--mclaren-orange:#ff8000;--social-bg:#2f303a80;--marker-border:#fff;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:19px/145% var(--sans);letter-spacing:.18px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}[data-theme=light]{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--viz-accent:#2f9fff;--mclaren-orange:#ff8000;--social-bg:#f4f3ec80;--marker-border:#fff;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:100%;max-width:none;min-height:100svh;margin:0;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:25px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:16px;line-height:135%}.app-shell{box-sizing:border-box;--resizer-orange:#8c8c8e;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100svh;padding:2rem 1.25rem;display:flex;position:relative}.theme-toggle{z-index:20;position:absolute;top:1rem;right:1rem}.app-shell.dashboard{justify-content:flex-start;align-items:stretch;max-width:none;height:100svh;min-height:100svh;margin:0;padding:.52rem 1rem .8rem}.muted{color:var(--text);margin:0 0 1.25rem;font-size:.95rem}.auth-card{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;max-width:400px;box-shadow:var(--shadow);border-radius:12px;padding:1.75rem}.auth-title{color:var(--text-h);margin:0 0 .5rem;font-size:1.5rem}.field{margin-bottom:1rem}.field label{color:var(--text-h);margin-bottom:.35rem;font-size:.85rem;display:block}.field input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;border-radius:8px;padding:.65rem .75rem}.field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn-row{margin-top:.25rem}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:.7rem 1rem;font-size:1rem;font-weight:600}.btn-primary:disabled{opacity:.65;cursor:not-allowed}.btn-primary:focus-visible{outline:2px solid var(--accent-border);outline-offset:2px}.btn-ghost{border:1px solid var(--border);color:var(--text-h);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:.45rem .85rem}.btn-ghost:hover{background:var(--accent-bg)}.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.icon-btn{justify-content:center;align-items:center;width:2.3rem;height:2.3rem;padding:0;display:inline-flex}.icon-btn svg{width:1.15rem;height:1.15rem}.err{color:#dc2626;margin:.75rem 0 0;font-size:.9rem}@media (prefers-color-scheme:dark){.err{color:#f87171}}.top-bar{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem;margin-bottom:.6rem;padding-bottom:.48rem;display:grid}.dash-title{color:var(--text-h);margin:0;font-size:1.35rem}.dash-title-btn{cursor:pointer;background:0 0;border:none;margin:0;padding:0}.top-left{justify-self:start}.top-right{justify-self:end;align-items:center;gap:.45rem;min-width:0;display:flex;overflow-x:auto}.top-sep{color:var(--text);opacity:.65}.user-email{color:var(--text);font-size:.95rem}.top-user-email{white-space:nowrap}.top-drive-time{text-align:center;font-size:1.36rem}.top-center-clock{flex-direction:column;align-items:center;gap:.12rem;display:flex}.top-stint-time{color:var(--text);white-space:nowrap;margin:0;font-size:.92rem}.dash-main{text-align:left;flex-direction:column;flex:1;min-height:0;display:flex}.dash-main code{font-family:var(--mono);background:var(--code-bg);border-radius:4px;padding:.1em .35em;font-size:.9em}.muted.small{margin-top:.5rem;font-size:.85rem}.telemetry-section{flex-direction:column;flex:1;min-height:0;margin-top:0;display:flex;position:relative}.telemetry-section>.mobile-page-content,.telemetry-section>.mobile-split-page{flex:1;min-height:0}.gate-event-toast{z-index:50;border:1px solid color-mix(in srgb, var(--accent), var(--border) 60%);background:color-mix(in srgb, var(--bg), transparent 20%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);min-width:480px;max-width:min(92vw,1120px);color:var(--text-h);text-align:center;white-space:pre-line;pointer-events:none;border-radius:12px;padding:1.5rem 2rem;font-size:2.16rem;font-weight:700;line-height:1.35;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 24px #00000038}.gate-event-toast>div+div{margin-top:.5rem}.gate-event-toast .delta-plus{color:#ff5b5b}.gate-event-toast .delta-minus{color:#3fd06f}.pit-in-modal-overlay{z-index:70;background:color-mix(in srgb, var(--bg), transparent 48%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pit-in-modal{border:1px solid color-mix(in srgb, var(--accent), var(--border) 60%);background:color-mix(in srgb, var(--surface), var(--bg) 10%);text-align:center;border-radius:24px;width:min(1120px,92vw);padding:2.2rem 2.4rem 2.4rem;box-shadow:0 18px 44px #00000057}.pit-in-modal__title{color:var(--text-h);margin:0;font-size:2.44rem;font-weight:800;line-height:1.25}.pit-in-modal__timer{font-family:var(--mono);color:var(--text-h);letter-spacing:.02em;margin:.9rem 0 1.8rem;font-size:clamp(4.4rem,16vw,8.8rem);font-weight:800;line-height:1.12}.pit-in-modal__close{min-width:216px;padding:.8rem 1.4rem;font-size:2rem}.drive-time{color:var(--text-h);font-family:var(--mono);white-space:nowrap;margin:0;font-size:1.96rem}.section-title{color:var(--text-h);margin:0;font-size:1.2rem}.table-wrap{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.telemetry-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.telemetry-table th,.telemetry-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:.55rem .65rem}.telemetry-table th{color:var(--text-h);background:var(--code-bg);white-space:nowrap;font-weight:600}.telemetry-table tr:last-child td{border-bottom:none}.telemetry-table .mono{font-family:var(--mono)}.telemetry-table .small-num{font-size:.82rem}.telemetry-table .sub{color:var(--text);margin-top:.15rem;font-size:.78rem;display:block}.nowrap{white-space:nowrap}.panel-error,.panel-empty{text-align:left}.panel-error .err{margin-top:0}.map-block{text-align:left;margin-top:2rem}.map-block-head{align-items:flex-end}.map-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.map-label{color:var(--text-h);font-size:.92rem}.map-select{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;min-width:10rem;padding:.45rem .65rem}.map-status{margin:0}.map-hint{margin:0 0 .75rem}.race-start-panel{box-sizing:border-box;border:1px solid var(--border);background:var(--code-bg);text-align:left;border-radius:10px;width:100%;margin:0;padding:.65rem .75rem}.race-start-panel--subtle{background:var(--bg);border-style:dashed;border-radius:8px;padding:.42rem .55rem}.race-start-panel--subtle .race-start-panel__title{opacity:.75;margin-bottom:.28rem;font-size:.7rem}.race-start-panel--subtle .race-start-panel__status{margin-bottom:.42rem;font-size:.78rem}.race-start-panel--subtle .race-start-panel__row{gap:.35rem}.race-start-panel--subtle .race-start-panel__datetime{padding:.38rem .45rem;font-size:.8rem}.race-start-panel--subtle .race-start-panel__hint{opacity:.8;margin-top:.38rem;font-size:.7rem}.race-start-panel__title{letter-spacing:.04em;text-transform:uppercase;color:var(--text);opacity:.9;margin:0 0 .4rem;font-size:.8rem;font-weight:600}.race-start-panel__status{color:var(--text-h);margin:0 0 .65rem;font-size:.88rem;line-height:1.45}.race-start-panel__status time{color:var(--viz-accent);font-variant-numeric:tabular-nums}.race-start-panel__row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.race-start-panel__datetime{min-width:0;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;flex:10.5rem;padding:.5rem .55rem;font-size:.88rem}.race-start-panel__datetime:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.race-start-panel__actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.race-start-panel__hint{color:var(--text);opacity:.88;margin:.55rem 0 0;font-size:.78rem;line-height:1.4}.race-start-panel__feedback{margin:.5rem 0 0}.btn-ghost--compact{padding:.38rem .65rem;font-size:.85rem}.btn-ghost--accent{border-color:var(--accent-border);background:var(--accent-bg)}.map-root{border:1px solid var(--border);border-radius:10px;width:100%;height:min(52vh,520px);min-height:320px;overflow:hidden}.telemetry-map{width:100%;height:100%}.monitor-layout{flex:1;grid-template-columns:288px 7px minmax(0,1fr) 7px 240px 7px 220px;align-items:stretch;gap:1rem;min-height:320px;display:grid}.panel-resizer{cursor:col-resize;touch-action:none;background:linear-gradient(to right, transparent 0, transparent 35%, var(--resizer-orange) 35%, var(--resizer-orange) 65%, transparent 65%, transparent 100%);border-radius:999px;width:7px}.monitor-layout.resizing .panel-resizer,.record-lap-split.resizing>.panel-resizer,.monitor-layout.resizing-right .panel-resizer-right,.monitor-layout.resizing-extra .panel-resizer-extra{background:linear-gradient(to right, transparent 0, transparent 30%, var(--resizer-orange) 30%, var(--resizer-orange) 70%, transparent 70%, transparent 100%)}.monitor-metrics{border:1px solid var(--border);background:var(--code-bg);text-align:left;border-radius:10px;flex-direction:column;height:100%;min-height:0;padding:.72rem .9rem;display:flex}.metric-time{margin-top:.48rem}.metric-stack{gap:.48rem;margin-top:.48rem;display:grid}.metric-card{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:.56rem .75rem}.monitor-metrics .metric-card{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.metric-label{color:var(--text);margin-bottom:.24rem;font-size:.9rem}.monitor-metrics .metric-label{white-space:nowrap;margin:0}.metric-label.metric-sub{opacity:.9;margin:.4rem 0 0;font-size:.82rem}.metric-value{color:var(--text-h);font-size:1.25rem;font-weight:600;line-height:1.2}.monitor-metrics .metric-value{text-align:right;font-size:1.05rem}.metric-value--warn{color:#f87171!important}.monitor-map{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex}.monitor-map-stack{grid-template-rows:7fr 7px 3fr;gap:.48rem;height:100%;min-height:0;display:grid}.monitor-map-stack>*{min-width:0}.monitor-map-stack.resizing{-webkit-user-select:none;user-select:none;cursor:row-resize}.monitor-canvas-wrap,.canvas-track-host{flex-direction:column;min-height:0;display:flex;position:relative}.canvas-track-host .layout-canvas-root{flex:1;min-height:0}.canvas-track-select{z-index:6;pointer-events:auto;flex-direction:column;gap:2px;max-width:min(240px,100% - 16px);display:flex;position:absolute;top:8px;left:8px}.canvas-track-select__label{color:var(--text);text-shadow:0 1px 2px color-mix(in srgb, var(--bg) 85%, black);font-size:.68rem;font-weight:600}.canvas-track-select .map-select{width:100%;min-width:0;padding:.28rem .4rem;font-size:.75rem}.monitor-canvas-wrap .layout-canvas-root,.monitor-canvas-wrap .map-root{height:100%;min-height:0}.monitor-canvas-empty{border:1px solid var(--border);background:var(--code-bg);border-radius:10px;justify-content:center;align-items:center;height:100%;display:flex}.monitor-graph-slot{border:1px solid var(--border);background:var(--code-bg);box-sizing:border-box;border-radius:10px;flex-direction:column;min-width:0;height:100%;min-height:0;padding:.56rem .8rem;display:flex;position:relative;overflow:hidden}.map-split-resizer{touch-action:none;background:linear-gradient(to bottom, transparent 0, transparent 35%, var(--resizer-orange) 35%, var(--resizer-orange) 65%, transparent 65%, transparent 100%);cursor:row-resize;border-radius:999px;height:7px}.map-split-resizer:hover{background:linear-gradient(to bottom, transparent 0, transparent 30%, var(--resizer-orange) 30%, var(--resizer-orange) 70%, transparent 70%, transparent 100%)}.monitor-graph-title{color:var(--text-h);margin:0;font-size:.95rem;font-weight:600}.monitor-graph-head{justify-content:flex-start;align-items:center;gap:.6rem;margin-bottom:.48rem;display:flex}.monitor-graph-controls{z-index:2;position:absolute;top:.76rem;left:.95rem}.monitor-graph-select{min-width:8rem;padding:.32rem .52rem;font-size:.86rem}.monitor-graph-chart-wrap{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), var(--text) 2%);box-sizing:border-box;border-radius:8px;flex-direction:column;flex:1 1 0;min-width:0;min-height:70px;padding:.32rem .4rem;display:flex;overflow:hidden}.monitor-graph-chart-scroll{overscroll-behavior-x:contain;flex:1 1 0;width:100%;min-width:0;min-height:0;overflow:auto hidden}.monitor-graph-chart-inner{vertical-align:top;box-sizing:border-box;min-width:100%;height:100%;display:inline-block}.monitor-graph-chart{max-width:none;height:100%;display:block}.monitor-graph-chart-note{margin:.35rem 0 0;padding:0 .15rem}.monitor-graph-hover{margin:.36rem 0 0}.monitor-laps{border:1px solid var(--border);background:var(--code-bg);text-align:left;border-radius:10px;flex-direction:column;height:100%;min-height:0;padding:.72rem .9rem;display:flex}.lap-time-card{flex-direction:column;min-height:0;padding:.2rem .25rem .1rem;display:flex}.lap-panel-title{color:var(--text-h);margin:0;font-size:1rem;font-weight:700}.lap-time-list{flex:1;grid-auto-rows:max-content;align-content:start;gap:.22rem;min-height:0;max-height:none;margin-top:.28rem;display:grid;overflow:auto}.lap-time-row{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), var(--text) 3%);border-radius:6px;justify-content:space-between;align-items:center;padding:.26rem .46rem;display:flex}.lap-time-lap{color:var(--text);font-size:.86rem}.lap-time-value{color:var(--text-h);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem;font-weight:600}.monitor-extra{gap:.5rem}.event-extra-split{flex-direction:column;flex:1;min-height:0;display:flex}.laps-stint-split{flex:1;grid-template-rows:58fr 7px 42fr;gap:.48rem;min-height:0;margin-top:.48rem;display:grid}.laps-stint-split>*{min-width:0;min-height:0}.laps-stint-split>.metric-card{flex-direction:column;display:flex;overflow:hidden}.laps-stint-split>.metric-card>.lap-time-card{flex:1;min-height:0}.laps-stint-split>.stint-section{place-self:stretch stretch;width:100%;max-width:100%}.laps-stint-split.resizing{-webkit-user-select:none;user-select:none;cursor:row-resize}.laps-split-resizer{touch-action:none;cursor:row-resize;background:linear-gradient(to bottom, transparent 0, transparent 35%, var(--resizer-orange) 35%, var(--resizer-orange) 65%, transparent 65%, transparent 100%);border-radius:999px;height:7px}.laps-split-resizer:hover{background:linear-gradient(to bottom, transparent 0, transparent 30%, var(--resizer-orange) 30%, var(--resizer-orange) 70%, transparent 70%, transparent 100%)}.event-main-pane{flex-direction:column;min-height:0;display:flex}.event-flag-list{flex-wrap:wrap;gap:.32rem;margin-top:.45rem;display:flex}.event-flag{border:1px solid var(--border);color:var(--text);background:color-mix(in srgb, var(--bg), var(--text) 2%);border-radius:999px;padding:.18rem .44rem;font-size:.76rem;line-height:1.2}.event-feed{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), var(--text) 2%);border-radius:8px;flex:1;align-content:start;gap:.24rem;min-height:0;margin-top:.35rem;padding:.3rem;display:grid;overflow:auto}.stint-section{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), var(--text) 2%);box-sizing:border-box;border-radius:8px;flex-direction:column;gap:.32rem;height:100%;min-height:0;padding:.4rem .5rem;display:flex}.stint-list{flex:1;gap:.26rem;min-height:0;display:grid;overflow:auto}.stint-row{border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:.32rem .42rem}.stint-row .muted.small{margin:.16rem 0 0}.event-row{border:1px solid var(--border);background:color-mix(in srgb, var(--bg), var(--text) 2%);border-radius:6px;grid-template-columns:auto minmax(0,1fr);gap:.32rem;padding:.26rem .38rem;display:grid}.event-time{color:var(--text);opacity:.9;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.74rem}.event-message{color:var(--text-h);font-size:.8rem;line-height:1.35}.level-info{border-color:color-mix(in srgb, var(--accent), var(--border) 55%)}.level-warn{background:color-mix(in srgb, #f59e0b, var(--bg) 88%);border-color:#f59e0b}.level-critical{background:color-mix(in srgb, #ef4444, var(--bg) 88%);border-color:#ef4444}.panel-resizer-right,.panel-resizer-extra{background:linear-gradient(to right, transparent 0, transparent 35%, var(--resizer-orange) 35%, var(--resizer-orange) 65%, transparent 65%, transparent 100%)}.settings-layout{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:1rem;min-height:calc(100svh - 160px);display:grid}.settings-menu{border:1px solid var(--border);background:var(--code-bg);border-radius:10px;flex-direction:column;gap:.55rem;min-width:300px;padding:.72rem .9rem;display:flex}.settings-menu-item{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;white-space:normal;word-break:keep-all;border-radius:8px;padding:.55rem .65rem}.settings-menu-item.active{border-color:var(--accent);background:var(--accent-bg)}.settings-content{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:.8rem 1rem}.settings-head{justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.72rem;display:flex}.settings-title{color:var(--text-h);margin:0;font-size:1.05rem}.settings-card{max-width:none}.settings-head-inline{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.48rem;display:flex}.settings-head-inline .muted{margin:0}.settings-inline-actions{gap:.4rem;display:inline-flex}.active-pill{border-color:var(--accent)!important;background:var(--accent-bg)!important}.settings-field{margin-bottom:.64rem}.settings-field label{color:var(--text);margin-bottom:.28rem;font-size:.86rem;display:block}.settings-field input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;border-radius:8px;padding:.55rem .65rem}.table-input{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;min-width:9rem;color:var(--text-h);font:inherit;border-radius:6px;padding:.35rem .45rem;font-size:.88rem}.table-save-btn{min-width:4.6rem;padding:.3rem .5rem}.add-car-row{grid-template-columns:190px minmax(0,1fr) auto;gap:.5rem;margin-bottom:.6rem;display:grid}.ok-msg{color:#059669;margin:.28rem 0 .6rem;font-size:.9rem}.track-manager-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:.8rem;display:grid}.track-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;display:grid}.track-map-area{min-width:0}.track-map-area .map-root{height:min(56vh,560px);min-height:320px}.layout-canvas-area{justify-content:flex-start;align-items:stretch;width:100%;min-width:0;display:flex}.layout-canvas-area.resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.layout-canvas-width-wrap{box-sizing:border-box;flex:none;min-width:0;max-width:100%;padding-right:14px;position:relative}.layout-canvas-width-wrap .track-map-area{width:100%}.layout-canvas-resizer{border:1px solid var(--resizer-orange);background:color-mix(in srgb, var(--resizer-orange), transparent 72%);z-index:3;cursor:col-resize;border-radius:6px;width:7px;position:absolute;top:0;bottom:0;right:0}.layout-canvas-resizer:hover{background:color-mix(in srgb, var(--resizer-orange), transparent 62%)}.layout-canvas-root{border:1px solid var(--border);border-radius:10px;height:min(56vh,560px);min-height:320px;overflow:hidden}.layout-canvas{width:100%;height:100%;display:block}.mobile-page-tabs{gap:.4rem;margin-bottom:.5rem;display:flex;overflow-x:auto}.mobile-tab-btn{white-space:nowrap}.mobile-tab-btn.active{border-color:var(--accent);background:var(--accent-bg)}.mobile-page-content,.mobile-split-page{min-height:0}.mobile-split-page{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.mobile-page-panel{border:1px solid var(--border);background:var(--code-bg);border-radius:10px;min-height:0;overflow:hidden}.mobile-page-panel .layout-canvas-root{height:100%;min-height:320px}.mobile-panel{height:100%}@media (width<=960px){.app-shell{font-size:70%}.top-bar{grid-template-columns:1fr;justify-items:start;gap:.4rem}.top-left,.top-right{justify-self:start}.top-drive-time{text-align:left}.top-center-clock{align-items:flex-start}.monitor-layout,.mobile-split-page{grid-template-columns:1fr}.panel-resizer{display:none}.record-lap-split{grid-template-columns:1fr!important}.settings-layout{grid-template-columns:1fr;min-height:auto}.add-car-row,.track-manager-layout,.track-list{grid-template-columns:1fr}}.latest-marker-wrap{background:0 0!important;border:none!important}.latest-marker-dot{background:var(--accent);border:3px solid var(--marker-border);box-sizing:border-box;border-radius:50%;width:18px;height:18px;box-shadow:0 1px 6px #00000059}.top-left-stack{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.main-view-tabs{flex-wrap:wrap;gap:.35rem;display:flex}.main-view-tab{padding:.28rem .62rem;font-size:.82rem}.record-analysis__subtabs{flex-wrap:wrap;gap:.35rem;margin-bottom:.35rem;display:flex}.record-analysis__subtab{padding:.28rem .62rem;font-size:.82rem}.record-analysis__toolbar{flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem;margin:.35rem 0 .65rem;display:flex}.record-analysis__field{flex-direction:column;flex:1 1 0;align-items:stretch;gap:.22rem;min-width:0;max-width:min(100%,22rem);display:flex}.record-analysis__field-label{color:var(--text-h);white-space:nowrap;font-size:.82rem}.record-analysis__field .map-select{width:100%;min-width:0}.record-lap-split{flex:1;grid-template-columns:minmax(280px,1fr) 7px minmax(200px,1fr);align-items:stretch;gap:1rem;min-height:0;margin-top:.35rem;display:grid}.record-lap-split.resizing{-webkit-user-select:none;user-select:none}.record-lap-map-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.record-lap-canvas-host{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.record-lap-canvas-host .layout-canvas-root{flex:1;height:auto;min-height:min(52vh,480px)}.record-lap-side-pane{min-width:0;min-height:0;overflow:auto}.record-lap-side-title{margin-bottom:.55rem!important}.record-lap-temp-chart-wrap{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:.35rem}.record-lap-temp-chart{width:100%;height:auto;display:block}.record-lap-temp-grid{stroke:color-mix(in srgb, var(--text) 18%, transparent);stroke-width:1px}.record-lap-temp-axis-label{fill:color-mix(in srgb, var(--text) 82%, transparent);font-size:10px}.record-lap-temp-axis-label.axis-end{text-anchor:end}.record-lap-temp-line{fill:none;stroke:#ef7d00;stroke-width:2px}.record-lap-fuel-line{fill:none;stroke:#06d6a0;stroke-width:2px}.incam-media-row.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.incam-media-row.resizing .panel-resizer{background:linear-gradient(to right, transparent 0, transparent 30%, var(--resizer-orange) 30%, var(--resizer-orange) 70%, transparent 70%, transparent 100%)}.record-analysis__table{min-width:320px}.rc-compare{padding-right:.15rem;overflow:auto}.rc-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.65rem;display:grid}.rc-upload-row{flex-wrap:wrap;gap:1rem;display:flex}.rc-meta-list{margin:.25rem 0 0;padding-left:1.1rem;line-height:1.45}@media (width<=720px){.rc-meta-grid{grid-template-columns:1fr}}.rc-sector-controls{flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:.65rem;display:flex}.rc-sector-field{flex:0 200px;margin-bottom:0}.rc-sector-row-worst{background:color-mix(in srgb, var(--accent), transparent 88%)}.rc-lap-pair-card{margin-top:.85rem}.rc-lap-pair-row{margin-bottom:0}.rc-lap-pick-line{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.rc-lap-pick-line select{flex:140px;min-width:120px}.rc-lap-time-badge{font-family:var(--mono);color:var(--text-h);white-space:nowrap;font-size:1.05rem;font-weight:600}.rc-lap-time-missing{min-width:2.5rem}.rc-delta-chart-figure{width:100%;max-width:920px;margin:.5rem 0 0}.rc-delta-chart-caption{margin-bottom:.4rem}.rc-delta-chart-title{color:var(--text-h)}.rc-delta-chart-sub{opacity:.88;font-weight:400}.rc-delta-chart-svg{border:1px solid var(--border);background:color-mix(in srgb, var(--code-bg), transparent 40%);border-radius:12px;width:100%;height:min(42vh,340px);display:block}.rc-delta-axis-tick,.rc-delta-axis-label{font-family:var(--mono), ui-monospace, monospace}.recording-playlist-shell{min-height:100vh;padding:1rem 1.25rem 2rem}.recording-playlist-page{max-width:960px;margin:0 auto}.recording-playlist-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.recording-playlist-header h1{margin:0 0 .25rem;font-size:1.25rem}.recording-playlist-actions{flex-shrink:0;gap:.5rem;display:flex}.recording-playlist-list{gap:.625rem;display:grid}.recording-playlist-row{border:1px solid var(--border);background:color-mix(in srgb, var(--surface), transparent 20%);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem 1rem;display:grid}.recording-playlist-key{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:700;overflow:hidden}.recording-playlist-sub{margin:.25rem 0 0;font-size:.75rem}.recording-play-cell{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.recording-playlist-row-actions{flex-shrink:0;gap:.35rem;display:flex}.recording-delete-btn{color:#f87171}.recording-play-error{color:#f87171;text-align:right;max-width:7rem;font-size:.7rem}.dtc-block{background:#1a0a0a;border:1px solid #7f1d1d;border-radius:8px;flex-direction:column;gap:.35rem;padding:.5rem .75rem;display:flex}.dtc-block__title{color:#f87171;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .2rem;font-size:.78rem}.dtc-item{border-radius:5px;justify-content:space-between;align-items:center;gap:.5rem;padding:.28rem .5rem;display:flex}.dtc-item--stored{background:#2d0a0a;border:1px solid #dc2626}.dtc-item--pending{background:#1f1700;border:1px solid #d97706}.dtc-item__code{color:#fca5a5;font-family:monospace;font-size:.92rem;font-weight:700}.dtc-item--pending .dtc-item__code{color:#fde68a}.dtc-item__badge{color:#9ca3af;white-space:nowrap;font-size:.68rem}.signal-panel{border-top:1px solid #ffffff14;margin-top:10px;padding-top:8px}.signal-panel-title{letter-spacing:.08em;color:#94a3b8;text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:600}.signal-buttons{grid-template-columns:1fr 1fr 1fr;gap:5px;display:grid}.signal-btn{letter-spacing:.04em;cursor:pointer;color:#fff;border:none;border-radius:5px;padding:7px 4px;font-size:.72rem;font-weight:700;transition:opacity .15s,transform .1s}.signal-btn:disabled{opacity:.35;cursor:not-allowed}.signal-btn:not(:disabled):active{transform:scale(.94)}.signal-push{color:#0b1420;background:#06d6a0}.signal-safe{color:#0b1420;background:#ffd166}.signal-box{background:#ef476f}.signal-inlap{background:#f77f00}.signal-ok{background:#4b5563}.signal-free{background:#3b82f6}.signal-custom{align-items:center;gap:4px;margin-top:6px;display:flex}.signal-input{color:#e2e8f0;background:#1e293b;border:1px solid #334155;border-radius:4px;flex:1;min-width:0;padding:5px 7px;font-size:.78rem}.signal-input:focus{border-color:#3b82f6;outline:1px solid #3b82f6}.signal-custom-send{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:4px;padding:5px 9px;font-size:.75rem;font-weight:600}.signal-custom-cancel{color:#9ca3af;cursor:pointer;background:#374151;border:none;border-radius:4px;padding:5px 7px;font-size:.75rem}.signal-sent{color:#06d6a0;margin-top:5px;font-size:.68rem}.pit-strategy{text-align:left;flex-direction:column;gap:.75rem;display:flex}.pit-strategy__summary{flex-direction:column;justify-content:flex-end;gap:.25rem;min-width:14rem;display:flex}.pit-strategy__badge{border:1px solid var(--border);border-radius:999px;align-self:flex-start;padding:.2rem .6rem;font-size:.8rem;font-weight:600}.pit-strategy__badge.ok{color:#06d6a0;background:#06d6a01f;border-color:#06d6a080}.pit-strategy__badge.bad{color:#ff8a80;background:#ff8a801f;border-color:#ff8a8080}.pit-strategy__live{grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.5rem;display:grid}.pit-strategy__live-empty{border:1px dashed var(--border);border-radius:8px;grid-column:1/-1;margin:0;padding:.6rem .8rem}.pit-strategy__tile{border:1px solid var(--border);background:var(--code-bg);border-radius:8px;flex-direction:column;gap:.15rem;min-width:0;padding:.6rem .8rem;display:flex}.pit-strategy__tile-k{letter-spacing:.04em;text-transform:uppercase;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.pit-strategy__tile-v{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text-h);font-size:1.55rem;font-weight:600;line-height:1.1}.pit-strategy__tile-s{color:var(--text);font-size:.76rem}.pit-strategy__tile.accent{border-color:var(--accent-border);background:var(--accent-bg)}.pit-strategy__tile.accent .pit-strategy__tile-v{color:var(--accent)}.pit-strategy__tile.window-open{border-color:#06d6a080}.pit-strategy__tile.window-open .pit-strategy__tile-v{color:#06d6a0}.pit-strategy__tile.window-closed,.pit-strategy__tile.hold{border-color:#ff8a808c}.pit-strategy__tile.window-closed .pit-strategy__tile-v,.pit-strategy__tile.hold .pit-strategy__tile-v{color:#ff8a80}.pit-strategy__tile.go{border-color:#06d6a080}.pit-strategy__tile.go .pit-strategy__tile-v{color:#06d6a0}.pit-strategy__tile.driver-A{border-left:3px solid var(--accent)}.pit-strategy__tile.driver-B{border-left:3px solid var(--viz-accent)}.pit-strategy__timeline{border:1px solid var(--border);background:var(--code-bg);border-radius:8px;padding:.5rem .8rem .6rem}.pit-strategy__tl-scale{height:1rem;font-family:var(--mono);color:var(--text);margin:0 0 .2rem;font-size:.7rem;position:relative}.pit-strategy__tl-scale span{position:absolute;transform:translate(-50%)}.pit-strategy__tl-track{flex-direction:column;gap:.3rem;padding:.35rem 0;display:flex;position:relative}.pit-strategy__tl-window{pointer-events:none;background:#06d6a017;border-left:1px dashed #06d6a099;border-right:1px dashed #06d6a099;position:absolute;top:0;bottom:0}.pit-strategy__tl-row{background:var(--bg);border-radius:4px;height:1.6rem;position:relative}.pit-strategy__tl-row.actual{height:1.2rem}.pit-strategy__tl-stint{color:#fff;white-space:nowrap;border-radius:4px;align-items:center;padding:0 .4rem;font-size:.72rem;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.pit-strategy__tl-stint span{text-overflow:ellipsis;overflow:hidden}.pit-strategy__tl-stint.driver-A{background:var(--accent)}.pit-strategy__tl-stint.driver-B{background:var(--viz-accent);color:#08060d}.pit-strategy__tl-stint.bad{outline-offset:-2px;outline:2px solid #ff8a80}.pit-strategy__tl-stint.running{opacity:.85;border-right:2px solid #fff}.pit-strategy__tl-pit{background:repeating-linear-gradient(45deg, var(--border) 0 3px, var(--code-bg) 3px 6px);position:absolute;top:0;bottom:0}.pit-strategy__tl-now{z-index:2;background:#ff8000;width:2px;position:absolute;top:-1.9rem;bottom:0;box-shadow:0 0 0 2px #ff800040}.pit-strategy__tl-actual-empty{color:var(--text);align-items:center;padding-left:.4rem;font-size:.72rem;display:flex;position:absolute;inset:0}.pit-strategy__tl-legend{color:var(--text);flex-wrap:wrap;gap:.9rem;margin-top:.45rem;font-size:.74rem;display:flex}.pit-strategy__tl-legend i{vertical-align:0;border-radius:2px;width:.8rem;height:.55rem;margin-right:.3rem;display:inline-block}.pit-strategy__tl-legend i.driver-A{background:var(--accent)}.pit-strategy__tl-legend i.driver-B{background:var(--viz-accent)}.pit-strategy__tl-legend i.pit{background:repeating-linear-gradient(45deg, var(--border) 0 3px, var(--code-bg) 3px 6px)}.pit-strategy__tl-legend i.window{background:#06d6a040;border:1px dashed #06d6a099}.pit-strategy__grid{grid-template-columns:minmax(0,3fr) minmax(16rem,1fr);align-items:start;gap:.75rem;display:grid}@media (width<=900px){.pit-strategy__grid{grid-template-columns:1fr}}.pit-strategy__card{border:1px solid var(--border);background:var(--code-bg);border-radius:8px;min-width:0;padding:.7rem .8rem .8rem}.pit-strategy__card-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.pit-strategy__card-head h3{margin:0;font-size:.95rem}.pit-strategy__actions{flex-wrap:wrap;gap:.35rem;display:flex}.pit-strategy__table-wrap{overflow-x:auto}.pit-strategy__table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.82rem}.pit-strategy__table th,.pit-strategy__table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;padding:.35rem .45rem}.pit-strategy__table th{color:var(--text);font-size:.72rem;font-weight:600}.pit-strategy__table td.num{text-align:right}.pit-strategy__table td.mono{font-family:var(--mono)}.pit-strategy__table td small{color:var(--text);font-size:.68rem;font-family:var(--mono);display:block}.pit-strategy__table tr.bad td{background:#ff8a8012}.pit-strategy__table tfoot td{color:var(--text-h);border-bottom:0;font-weight:600}.pit-strategy .err-text{color:#ff8a80}.pit-strategy .map-select.compact{min-width:0;padding:.25rem .45rem;font-size:.82rem}.pit-strategy .map-select.compact.num{text-align:right;width:5.2rem}.pit-strategy .map-select.compact.bad{border-color:#ff8a80}.pit-strategy__driver-totals{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.5rem;margin-top:.6rem;display:grid}.pit-strategy__driver-total{border:1px solid var(--border);border-left-width:3px;border-radius:8px;grid-template-columns:1fr auto;align-items:baseline;gap:.15rem .6rem;padding:.5rem .65rem;display:grid}.pit-strategy__driver-total.driver-A{border-left-color:var(--accent)}.pit-strategy__driver-total.driver-B{border-left-color:var(--viz-accent)}.pit-strategy__driver-total.bad{background:#ff8a8014}.pit-strategy__driver-total .num{font-family:var(--mono);color:var(--text-h);font-size:1.05rem}.pit-strategy__driver-name{font:inherit;color:var(--text-h);background:0 0;border:1px solid #0000;border-radius:4px;min-width:0;padding:.1rem .3rem;font-weight:600}.pit-strategy__driver-name:hover,.pit-strategy__driver-name:focus{border-color:var(--border);outline:none}.pit-strategy__bar{background:var(--bg);border-radius:3px;grid-column:1/-1;height:6px;position:relative;overflow:visible}.pit-strategy__bar i{background:var(--text);border-radius:3px;height:100%;display:block}.pit-strategy__driver-total.driver-A .pit-strategy__bar i{background:var(--accent)}.pit-strategy__driver-total.driver-B .pit-strategy__bar i{background:var(--viz-accent)}.pit-strategy__bar b{background:var(--text-h);opacity:.6;width:2px;height:12px;position:absolute;top:-3px}.pit-strategy__violations{margin:.6rem 0 0;padding-left:1.1rem;font-size:.82rem}.pit-strategy__violations li{margin-bottom:.2rem}.pit-strategy__violations li.error{color:#ff8a80}.pit-strategy__violations li.warn{color:#facc15}.pit-strategy__ok{color:#06d6a0;margin:.6rem 0 0;font-size:.82rem}.pit-strategy__actual{margin-top:.8rem}.pit-strategy__actual h4{margin:0 0 .4rem;font-size:.85rem}.pit-strategy__rules{flex-direction:column;gap:.4rem;display:flex}.pit-strategy__rule{justify-content:space-between;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.pit-strategy__rule-input{align-items:center;gap:.3rem;display:inline-flex}.pit-strategy__rule-input em{color:var(--text);font-size:.75rem;font-style:normal}.pit-strategy__rule-notes{margin:.4rem 0 0;padding-left:1rem}.pit-strategy__rule-notes li{margin-bottom:.25rem}.pit-strategy__auto{font-family:var(--mono);color:var(--text-h);flex-direction:column;align-items:flex-end;display:inline-flex}.pit-strategy__auto small{font-family:var(--sans);color:var(--text);font-size:.66rem}
