.track-svg{touch-action:none;width:100%;height:100%;overflow:hidden}.track-svg[data-map-interactive]{cursor:crosshair;user-select:none}.track-svg.map-grabbing{cursor:grabbing}.track-road,.track-line,.track-highlight,.track-edge,.ms-overlay,.sector-overlay,.map-point path,.map-point circle,.corner-hit circle,.car-dot{vector-effect:non-scaling-stroke}.track-road{fill:none;stroke:var(--graphite);stroke-width:8px;stroke-linejoin:round;stroke-linecap:round}.track-line{fill:none;stroke:var(--zinc);stroke-width:1px;stroke-linejoin:round}.track-overlay{fill:none;stroke:var(--fg);stroke-width:1.2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.track-highlight{fill:none;stroke:var(--fg);stroke-width:3px;stroke-linecap:round}.track-edge{fill:none;stroke:var(--steel);stroke-width:1px;opacity:.55}.ms-overlay{fill:none;stroke-width:1.8px}.sector-overlay{fill:none;stroke:var(--steel);stroke-width:7px;stroke-dasharray:7 4;opacity:.3}.sector-overlay.selected{opacity:.7}.detection-range{fill:none;stroke:var(--fg);stroke-width:5px;vector-effect:non-scaling-stroke;stroke-dasharray:6 3}.corner-hit{cursor:pointer}.corner-hit circle{fill:var(--deep);stroke:var(--zinc);stroke-width:1px}.corner-hit text{fill:var(--zinc);font-family:var(--mono);pointer-events:none;font-size:10px}.corner-hit:hover circle,.corner-hit.selected circle{stroke:var(--fg);fill:var(--cobalt)}.corner-hit.selected text{fill:var(--fg)}.corner-hit:focus-visible{outline:none}.corner-hit:focus-visible circle{stroke:var(--focus);stroke-width:2px}.car-dot{fill:var(--bone);stroke:var(--deep);stroke-width:1.4px}.map-point{stroke:var(--point-color);fill:var(--deep);cursor:crosshair}.map-point .map-point-hit{fill:#0000;stroke:none;pointer-events:all}.map-point .map-point-halo{fill:var(--deep);stroke:var(--deep);stroke-width:4px;pointer-events:none}.map-point .map-glyph{fill:var(--deep);stroke:var(--point-color);stroke-width:2.4px}.map-point.is-inspected .map-glyph{stroke-width:3.5px}.map-point .marker-label{fill:var(--bone);stroke:var(--deep);stroke-width:4px;font:600 12px var(--mono);paint-order:stroke;stroke-linejoin:round;cursor:crosshair}.map-point:focus-visible{outline:none}.map-point:focus-visible .map-point-halo{stroke:var(--focus);stroke-width:2px}.reference-point .map-glyph{fill:var(--reference);stroke:var(--bone);stroke-width:2px;stroke-dasharray:2 2}.reference-point .marker-label{fill:var(--reference)}.has-learned-track .track-road{display:none}.track-band{fill:var(--road);stroke:none}.track-edge.learned{stroke:var(--fg-3);stroke-width:1.4px;vector-effect:non-scaling-stroke}.track-edge.learned.estimated{stroke-dasharray:5 4}:root{--ph-bar:56px}.ph-panel{padding:12px}.ph-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.ph-head h3{margin:0;font-size:18px}.ph-head .app-muted{font-size:12px}.ph-note{margin:8px 0 0;font-size:12px}.ph-num{font:500 13px var(--mono);font-variant-numeric:tabular-nums;text-align:right}.ph-left{color:var(--wk-left)}.ph-legend{color:var(--fg-2,var(--fg));flex-wrap:wrap;gap:4px 12px;margin-bottom:8px;font-size:11.5px;display:flex}.ph-legend span{align-items:center;gap:5px;display:inline-flex}.ph-sw{width:12px;height:10px;display:inline-block}button.ph-row,button.ph-lap,button.ph-sesshead{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.ph-bar{z-index:25;background:var(--canvas);border-bottom:1px solid var(--hairline);position:sticky;top:0}.ph-barrow{grid-template-columns:30px minmax(0,1.4fr) minmax(0,1fr) minmax(0,.8fr) 44px;align-items:center;gap:6px;padding:6px 0;display:grid}.ph-barrow .lp-select{width:100%;min-width:0;min-height:44px;font-size:14px}.ph-mark{height:44px;color:var(--fg);justify-content:center;align-items:center;display:flex}.ph-mark svg{width:26px;height:auto;display:block}button.ph-tocbtn{text-align:center;width:44px;height:44px;color:var(--fg);background:var(--slate);border:1px solid var(--hairline);cursor:pointer;padding:0;font-size:20px}.ph-toc{background:var(--canvas);border-bottom:1px solid var(--hairline);box-shadow:0 12px 16px var(--canvas);flex-direction:column;padding:4px 0 8px;display:flex;position:absolute;top:100%;left:0;right:0}.ph-toc button{font:inherit;color:inherit;border:0;border-top:1px solid var(--hairline);text-align:left;cursor:pointer;background:0 0;min-height:44px;padding:0 8px;font-size:15px}.ph-toc button.here{box-shadow:inset 2px 0 0 var(--fg);font-weight:600}body:has(.ph-bar) [data-toc]{scroll-margin-top:calc(var(--ph-bar) + 8px)}.ph-band{background:linear-gradient(var(--hairline), var(--hairline)) 0 50% / 100% 1px no-repeat;height:16px;margin-top:6px;display:block;position:relative}.ph-band i{position:absolute;top:50%;transform:translateY(-50%)}.ph-b2{background:color-mix(in srgb, var(--viola) 18%, transparent);border-radius:7px;height:14px}.ph-b1{background:color-mix(in srgb, var(--viola) 45%, transparent);border-radius:4px;height:8px}.ph-dot{border:2px solid var(--panel);width:12px;height:12px;box-shadow:0 0 0 1px var(--fg-3);border-radius:50%;margin-left:-6px}.ph-btick{border-left:2px dashed #c79bff;width:0;height:16px}.ph-sw.ph-b2,.ph-sw.ph-b1{border-radius:2px;height:10px}.ph-sw.ph-dotsw{background:var(--wk-v1);border-radius:50%;width:10px;height:10px}.ph-sw.ph-btick-sw{border-left:2px dashed #c79bff;width:0;height:12px}.ph-axis{font:11px var(--mono);color:var(--fg-3);border-bottom:1px solid var(--hairline);justify-content:space-between;padding-bottom:4px;display:flex}.ph-colhead{font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);padding:0 4px 6px}.ph-colhead span{text-align:right}.ph-colhead span:nth-child(2){text-align:left}.ph-rows{margin:0;padding:0;list-style:none}.ph-rows li{border-bottom:1px solid var(--hairline)}.ph-rows li.open{background:var(--slate)}button.ph-row{width:100%;min-height:44px;padding:10px 4px;display:block}.ph-rowtop{grid-template-columns:10px 1fr 64px 64px 64px;align-items:center;gap:6px;display:grid}.ph-rowtop b{font-size:14px}.ph-swatch{border-radius:2px;width:10px;height:10px}.ph-foot{padding:10px 4px 0}.ph-detail{padding:4px 4px 12px}.ph-minimap .wk-map{min-height:0}.ph-minimap .wk-maphead{display:none}.ph-minimap .wk-maptrack{height:150px;min-height:0;max-height:150px;overflow:hidden}.ph-minimap .track-svg{width:100%;height:138px;display:block}.ph-figs{grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0;display:grid}.ph-figs div{min-width:0}.ph-figs dt{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3)}.ph-figs dd{font:500 13px var(--mono);margin:2px 0 0}.ph-strip{justify-content:space-between;align-items:center;font-size:12px;display:flex}.ph-sess{border-top:1px solid var(--hairline)}button.ph-sesshead{background:var(--slate);width:100%;min-height:44px;padding:10px 4px;font-size:13px;display:block}.ph-chev{width:16px;color:var(--fg-3);display:inline-block}button.ph-lap{border-bottom:1px solid var(--hairline);grid-template-columns:24px 1fr 72px 44px;align-items:center;gap:8px;width:100%;min-height:36px;padding:0 4px;display:grid}button.ph-lap.open{background:var(--slate)}.ph-lapn{font:12px var(--mono);color:var(--fg-3);text-align:right}.ph-cells{gap:2px;height:16px;display:flex}.ph-cells i{border-radius:1px;flex:1}.ph-gap{font-size:11.5px}.ph-m-none{background:color-mix(in srgb, var(--fg) 10%, transparent)}.ph-m-best{background:var(--race-purple)}.ph-m-faster{background:var(--race-green)}.ph-m-slower{background:var(--race-yellow)}.ph-m-det{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--fg-3) 55%, transparent) 0 2px, transparent 2px 5px)}.ph-t-best{color:#c79bff;font-weight:600}.ph-t-faster{color:var(--race-green)}.ph-t-slower{color:var(--race-yellow)}.ph-t-det{color:var(--fg-3)}.ph-lapdetail{background:var(--slate);border-bottom:1px solid var(--hairline);grid-template-columns:repeat(3,1fr);gap:3px;padding:6px 4px 10px;display:grid}.ph-lapdetail span{font:12px var(--mono);color:#fff;padding:4px 6px}.ph-lapdetail span.ph-m-faster,.ph-lapdetail span.ph-m-slower{color:#111}.ph-lapdetail span.ph-m-none,.ph-lapdetail span.ph-m-det{color:var(--fg)}.ph-lapdetail b{margin-right:4px;font-weight:600}@media (width<=699px){.wk-scroll,.wk-trendchart{max-width:100%;overflow-x:auto}}
