:root{--lg-text:#6b6375;--lg-text-h:#08060d;--lg-bg:#fff;--lg-border:#e5e4e7;--lg-code-bg:#f4f3ec;--lg-accent:#aa3bff;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--lg-text);background:var(--lg-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--lg-text:#9ca3af;--lg-text-h:#f3f4f6;--lg-bg:#16171d;--lg-border:#2e303a;--lg-code-bg:#1f2028;--lg-accent:#c084fc}}#root{box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--lg-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:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code{font-family:var(--mono);background:var(--lg-code-bg);color:var(--lg-text-h);border-radius:4px;padding:4px 8px;font-size:15px;line-height:135%;display:inline-flex}:root{--bg:oklch(17% .006 256);--panel:oklch(23.2% .008 256);--panel-2:oklch(26.2% .009 256);--panel-3:oklch(30% .01 256);--border:oklch(34% .01 256);--hair:oklch(28% .009 256);--text:oklch(96.5% .003 256);--text-2:oklch(72% .008 256);--text-3:oklch(53.5% .009 256);--accent:oklch(78% .14 68);--accent-fg:oklch(20% .04 60);--accent-soft:color-mix(in oklch, var(--accent) 12%, transparent);--faster:oklch(72% .14 152);--danger:oklch(66% .17 25);--pink:oklch(74% .17 350);--shadow-sm:0 1px 3px #00000080;--shadow-md:0 1px 2px #0000004d, 0 6px 20px #00000047;--font-sans:"Geist", ui-sans-serif, system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SFMono-Regular", Consolas, monospace}:root[data-theme=light]{--bg:oklch(95.3% .003 256);--panel:oklch(100% 0 0);--panel-2:oklch(97.2% .003 256);--panel-3:oklch(94.2% .004 256);--border:oklch(86.2% .007 256);--hair:oklch(90.6% .005 256);--text:oklch(23% .008 256);--text-2:oklch(45% .009 256);--text-3:oklch(60% .009 256);--accent:oklch(62% .15 55);--accent-fg:oklch(99% .02 60);--faster:oklch(52% .14 150);--danger:oklch(53% .19 27);--pink:oklch(55% .19 350);--shadow-sm:0 1px 3px #1018281c;--shadow-md:0 1px 3px #10182814, 0 8px 24px #10182812}.t-h1{font:600 22px/1.2 var(--font-sans);letter-spacing:-.01em;color:var(--text)}.t-title{font:600 13px/1.3 var(--font-sans);color:var(--text)}.t-body{font:400 13px/1.5 var(--font-sans);color:var(--text-2)}.t-label{font:500 10.5px var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.t-stat{font:600 21px var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text)}.t-num{font:500 12.5px var(--font-mono);font-variant-numeric:tabular-nums}.btn{font:500 13px var(--font-sans);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:8px 14px}.btn-primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);box-shadow:var(--shadow-sm)}.btn-primary:hover{filter:brightness(1.08)}.btn-secondary{color:var(--accent);border-color:color-mix(in oklch, var(--accent) 42%, var(--border));background:0 0}.btn-secondary:hover{background:var(--accent-soft)}.btn-neutral{background:var(--panel-2);color:var(--text-2);border-color:var(--border)}.btn-neutral:hover{background:var(--panel-3);color:var(--text)}.btn-destructive{color:var(--danger);border-color:color-mix(in oklch, var(--danger) 42%, var(--border));background:0 0}.btn-destructive:hover{background:color-mix(in oklch, var(--danger) 12%, transparent)}.btn:disabled{background:var(--panel-2);color:var(--text-3);border-color:var(--border);opacity:.6;cursor:not-allowed;filter:none}.input,.select{background:var(--bg);color:var(--text);border:1px solid var(--border);font:400 13px var(--font-sans);box-sizing:border-box;border-radius:6px;max-width:100%;padding:8px 11px}.input::placeholder{color:var(--text-3)}.input:focus,.select:focus{border-color:var(--accent);outline:none}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cpath d='M1 2.5 4 5.5 7 2.5' fill='none' stroke='%23888' stroke-width='1.2'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:30px}.badge{font:500 10.5px var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border:1px solid;border-radius:5px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:5px;height:5px}.badge--active,.badge--mapped{color:var(--faster);border-color:color-mix(in oklch, var(--faster) 34%, var(--border))}.badge--expired{color:var(--danger);border-color:color-mix(in oklch, var(--danger) 34%, var(--border))}.badge--pending{color:var(--text-3);border-color:var(--border)}.badge--selected{color:var(--accent);border-color:color-mix(in oklch, var(--accent) 42%, var(--border))}.card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:8px}.card__head{background:var(--panel-2);border-bottom:1px solid var(--border);font:600 13px var(--font-sans);color:var(--text);padding:11px 16px}.card__body{padding:16px}table.data{border-collapse:collapse;width:100%}table.data th{background:var(--panel-2);text-align:left;font:500 10.5px var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);padding:9px 12px}table.data td{border-bottom:1px solid var(--hair);color:var(--text-2);padding:8px 12px;font-size:12.5px}table.data a{color:var(--accent);white-space:nowrap;text-decoration:none}table.data a:hover{text-decoration:underline}table.data td.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}table.data td.num--left{text-align:left}:root{--theo-bg:oklch(94% .06 92);--theo-fg:oklch(42% .07 70)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--theo-bg:oklch(32% .05 92);--theo-fg:oklch(86% .09 92)}}:root[data-theme=dark]{--theo-bg:oklch(32% .05 92);--theo-fg:oklch(86% .09 92)}table.data tr.lap-theo td{background:var(--theo-bg);color:var(--theo-fg)}table.data tr.lap-theo:hover td{filter:brightness(1.04)}table.data tr.lap-theo td:first-child{box-shadow:inset 2px 0 0 var(--theo-fg)}table.data tr:hover{background:var(--panel-3)}table.data tr.selected{background:color-mix(in oklch, var(--accent) 12%, transparent)}table.data tr.selected td:first-child{box-shadow:inset 2px 0 0 var(--accent)}table.data td.lap-fastest,.lap-fastest{color:var(--pink);font-weight:700}table.data tr.lap-gps-dim td{opacity:.5}table.data tr.lap-gps-dim:hover td,table.data tr.lap-gps-dim.selected td{opacity:1}.linkbtn{cursor:pointer;font:inherit;color:var(--text-3);background:0 0;border:0;padding:0}.linkbtn:hover{color:var(--accent)}td .gps-note{font:500 10.5px var(--font-mono);color:var(--text-3);white-space:nowrap;letter-spacing:.02em}table.data td.sector-best,.sector-best{color:var(--pink);font-weight:600}table.data td.delta-loss,.delta-loss{color:var(--danger)}table.data td.delta-gain,.delta-gain{color:var(--faster)}table.data td.delta-ok,.delta-ok{color:var(--text-2)}.muted{color:var(--text-3)}.theme-toggle{padding:6px 10px;line-height:1}.appbar{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;position:sticky;top:0}.appbar__inner{justify-content:space-between;align-items:center;gap:16px;padding:9px clamp(24px,2.5vw,40px);display:flex}.appbar__left{align-items:center;gap:10px;min-width:0;display:flex}.appbar__nav{align-items:center;gap:2px;display:flex}.appbar__right{align-items:center;gap:12px;display:flex}.applogo{color:var(--accent);align-items:center;display:inline-flex}.tab{font:500 13px var(--font-sans);color:var(--text-3);white-space:nowrap;border-radius:6px;padding:6px 12px;text-decoration:none}.tab:hover{color:var(--text-2);text-decoration:none}.tab--active{background:var(--panel-2);color:var(--text)}.content{padding:28px clamp(24px,2.5vw,40px)}.leaflet-tooltip.gate-label{box-shadow:none;color:#fff;font:500 10.5px var(--font-mono);white-space:nowrap;background:#0000009e;border:none;padding:1px 5px}.leaflet-tooltip.gate-label:before{display:none}
