.segmentLab{--lab-climb:#e11d48;--lab-descent:#2563eb;--lab-flat:#d97706;--lab-fast:#0d9488;--lab-header:3.5rem;--lab-topbar:3.75rem;--lab-tabs:calc(3.75rem + env(safe-area-inset-bottom));--lab-dock:4.5rem;border-bottom:1px solid var(--border);background:var(--bg);color:var(--text);position:relative}.segmentLab *{box-sizing:border-box}.labTopbar{top:var(--lab-header);z-index:900;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex;position:sticky}.labBrand{flex:1;align-items:center;gap:.6rem;min-width:0;display:flex}.labBrandMark{background:var(--accent);width:2.25rem;height:2.25rem;color:var(--text-inverse);border-radius:4px;flex:none;place-items:center;display:grid}.labBrandText{min-width:0}.labBrandText strong{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.7rem;font-weight:800;display:block}.labBrandText span{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:1rem;line-height:1.25;display:block;overflow:hidden}.labActions{flex:none;gap:.5rem;display:flex}.labButton{border:1px solid var(--border);background:var(--bg-card);min-height:2.75rem;color:var(--text);cursor:pointer;font:inherit;letter-spacing:.08em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;padding:0 .85rem;font-size:.78rem;font-weight:700;transition:border-color .14s,background .14s;display:inline-flex}.labButton:hover{border-color:var(--accent)}.labButton.primary{background:var(--accent);color:var(--text-inverse);border-color:#0000}.labButton.primary:hover{background:var(--accent-hover)}.labButton input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.labShell{max-width:1800px;margin:0 auto;display:grid}.labMapStage{background:var(--bg-surface);min-width:0;position:relative;overflow:hidden}.labMapFrame{height:calc(100dvh - var(--lab-header) - var(--lab-topbar) - var(--lab-tabs));min-height:320px}.labMapFrame .leaflet-container{background:var(--bg-surface);width:100%;height:100%;font:inherit}.labPanel{min-width:0;padding:.75rem .75rem calc(1rem + var(--lab-dock) + var(--lab-tabs))}.labScreen{display:block}.labMetrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.labMetric{border:1px solid var(--border);background:var(--bg-card);border-radius:4px;grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.25rem .6rem;padding:.6rem .7rem;display:grid}.labMetricIcon{background:var(--accent-muted);width:2rem;height:2rem;color:var(--accent);border-radius:4px;grid-row:1/span 2;place-items:center;display:grid}.labMetric span{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);grid-column:2;font-size:.68rem;font-weight:700}.labMetric strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text);grid-column:2;font-size:1rem;overflow:hidden}.labSection{border:1px solid var(--border);background:var(--bg-card);border-radius:4px;margin-top:.75rem;padding:.85rem}.labSectionTitle{color:var(--accent);align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.labSectionTitle h2,.labSectionTitle h3{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.78rem;font-weight:800}.labSlider{margin-top:.9rem;display:block}.labSlider:first-of-type{margin-top:0}.labSliderHead{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.labSliderHead span{color:var(--text);font-size:.9rem;font-weight:700}.labSliderHead strong{color:var(--accent);font-size:.95rem}.labSlider input[type=range]{cursor:pointer;appearance:none;touch-action:pan-y;background:0 0;width:100%;height:2.75rem;margin:0}.labSlider input[type=range]::-webkit-slider-runnable-track{background:var(--bg-elevated);border-radius:999px;height:6px}.labSlider input[type=range]::-moz-range-track{background:var(--bg-elevated);border-radius:999px;height:6px}.labSlider input[type=range]::-webkit-slider-thumb{border:2px solid var(--bg-card);background:var(--accent);appearance:none;border-radius:50%;width:28px;height:28px;margin-top:-11px;box-shadow:0 1px 4px #0000004d}.labSlider input[type=range]::-moz-range-thumb{border:2px solid var(--bg-card);background:var(--accent);border-radius:50%;width:24px;height:24px;box-shadow:0 1px 4px #0000004d}.labSlider input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.labToggleGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:1rem;display:grid}.labToggle{border:1px solid var(--border);background:var(--bg);min-height:2.75rem;color:var(--text-secondary);cursor:pointer;font:inherit;border-radius:4px;justify-content:center;align-items:center;gap:.4rem;padding:0 .5rem;font-size:.8rem;font-weight:700;display:inline-flex}.labToggle.selected{border-color:var(--accent);background:var(--accent-muted);color:var(--text)}.labProfile{border-bottom:1px solid var(--border);background:var(--bg);width:100%;height:4.5rem;margin:0 0 .5rem;display:block}.labSummary{border:1px solid var(--border);background:var(--bg-card);border-radius:4px;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;margin:0 0 .75rem;padding:.5rem .6rem;display:grid}.labSummary div{min-width:0}.labSummary dt{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.6rem;font-weight:700}.labSummary dd{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;color:var(--text);margin:.1rem 0 0;font-size:.92rem;font-weight:700;overflow:hidden}.labListHead{top:calc(var(--lab-header) + var(--lab-topbar));z-index:700;border-bottom:1px solid var(--border);background:var(--bg);margin:0 -.75rem;padding:.6rem .75rem .5rem;position:sticky}.labListHeadRow{color:var(--accent);align-items:center;gap:.5rem;display:flex}.labListHeadRow h2{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.78rem;font-weight:800}.labCount{background:var(--accent-muted);font-variant-numeric:tabular-nums;color:var(--accent);border-radius:999px;margin-left:auto;padding:.1rem .45rem;font-size:.78rem;font-weight:800}.labSortRow{scrollbar-width:none;color:var(--text-muted);align-items:center;gap:.35rem;margin-top:.5rem;display:flex;overflow-x:auto}.labSortRow::-webkit-scrollbar{display:none}.labChip{border:1px solid var(--border);background:var(--bg-card);min-height:2.25rem;color:var(--text-secondary);cursor:pointer;font:inherit;border-radius:999px;flex:none;padding:0 .7rem;font-size:.8rem;font-weight:700}.labChip.active{border-color:var(--accent);background:var(--accent);color:var(--text-inverse)}.labList{gap:.375rem;margin:0;padding:0;list-style:none;display:grid}.labStack{gap:.5rem;display:grid}.labRow{border:1px solid var(--border);background:var(--bg-card);width:100%;min-height:3.5rem;color:var(--text);cursor:pointer;font:inherit;text-align:left;border-radius:4px;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.5rem .6rem;display:grid}.labRow.active{border-color:var(--accent);background:var(--accent-muted)}.labRowRank{background:var(--bg-elevated);font-variant-numeric:tabular-nums;width:2.25rem;height:2.25rem;color:var(--text-secondary);border-radius:4px;place-items:center;font-size:.85rem;font-weight:800;display:grid}.labRow.active .labRowRank{background:var(--accent);color:var(--text-inverse)}.labRowBody{gap:.35rem;min-width:0;display:grid}.labRowLine{flex-wrap:wrap;align-items:baseline;gap:.5rem;min-width:0;display:flex}.labRowLine strong{font-variant-numeric:tabular-nums;font-size:1.05rem}.labRowMeta{font-variant-numeric:tabular-nums;color:var(--text-secondary);font-size:.82rem}.labRowTrack{background:var(--bg-elevated);border-radius:999px;height:4px;display:block;position:relative}.labRowTrackFill{border-radius:999px;position:absolute;top:0;bottom:0}.labRowCheck{background:var(--accent);width:1.5rem;height:1.5rem;color:var(--text-inverse);border-radius:50%;place-items:center;display:grid}.labDock{z-index:1000;right:0;bottom:var(--lab-tabs);border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg-card) 97%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex;position:fixed;left:0}.labDockInfo{min-width:0;color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:.5rem;padding:0;display:flex}.labDockRank{background:var(--accent);width:2rem;height:2rem;color:var(--text-inverse);border-radius:4px;flex:none;place-items:center;font-size:.8rem;font-weight:800;display:grid}.labDockText{min-width:0;display:grid}.labDockText strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.95rem}.labDockText span{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.78rem;overflow:hidden}.labDockJump{color:var(--accent);flex:none}.labDockActions{flex:none;gap:.4rem;display:flex}.labDockActions .labButton{padding:0 .7rem}@media (max-width:480px){.labDockInfo{flex:0 auto}.labDockActions .labButton:not(.primary) .labDockLabel{display:none}}.labTerrainCard,.labBurstItem{border:1px solid var(--border);background:var(--bg);border-radius:4px;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.25rem .6rem;padding:.6rem;display:grid}.labTerrainIcon{color:#fff;border-radius:4px;place-items:center;width:2rem;height:2rem;display:grid}.labTerrainCard.climb .labTerrainIcon{background:var(--lab-climb)}.labTerrainCard.descent .labTerrainIcon{background:var(--lab-descent)}.labTerrainMain{min-width:0}.labTerrainMain strong{font-size:.9rem;display:block}.labTerrainMain span{color:var(--text-secondary);font-size:.82rem}.labTerrainGrade{white-space:nowrap;font-weight:800}.labBurstDot{background:var(--accent);width:1.75rem;height:1.75rem;color:var(--text-inverse);border-radius:50%;place-items:center;font-size:.78rem;font-weight:800;display:grid}.labBurstItem strong{font-size:.95rem}.labBurstItem span{color:var(--text-secondary);white-space:nowrap;font-size:.82rem}.labBurstItem small{color:var(--text-muted);overflow-wrap:anywhere;grid-column:2/-1;font-size:.75rem}.labEmpty{color:var(--text-muted);margin:0}.labLegend{z-index:500;border:1px solid var(--border);background:color-mix(in srgb, var(--bg-card) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:4px;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;padding:.5rem .65rem;font-size:.75rem;display:flex;position:absolute;bottom:.5rem;left:.5rem;right:.5rem}.labLegend strong{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.7rem;font-weight:800}.labLegend span{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.35rem;display:inline-flex}.labLegend i{border-radius:50%;width:.75rem;height:.75rem;display:inline-block}.labLegend small{color:var(--text-muted);margin-left:auto}.labError{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--lab-climb) 12%, var(--bg));color:var(--text);padding:.75rem;font-size:.9rem;font-weight:700}.labTabs{z-index:1000;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg-card) 96%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.labTab{min-height:3.75rem;color:var(--text-muted);cursor:pointer;font:inherit;letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;border-top:2px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;font-size:.68rem;font-weight:700;display:flex}.labTab.active{border-top-color:var(--accent);color:var(--accent)}.labHiddenOnMobile{display:none}@media (max-width:1099px){.labMobileHidden{display:none!important}}@media (min-width:1100px){.segmentLab{--lab-tabs:0px}.labShell{grid-template-columns:minmax(0,1fr) 27rem}.labMapStage{top:calc(var(--lab-header) + var(--lab-topbar));height:calc(100dvh - var(--lab-header) - var(--lab-topbar));position:sticky}.labMapFrame{height:100%}.labPanel{max-height:calc(100dvh - var(--lab-header) - var(--lab-topbar));padding:1rem 1rem calc(1rem + var(--lab-dock));border-left:1px solid var(--border);position:relative;overflow-y:auto}.labListHead{margin:0 -1rem;padding-inline:1rem;top:0}.labMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.labDock{border-left:1px solid var(--border);width:27rem;max-width:100%;left:auto;right:max(0px,50vw - 900px)}.labTabs{display:none}.labHiddenOnMobile{display:block}.labLegend{max-width:34rem;right:auto}}@media (prefers-reduced-motion:reduce){.segmentLab *{transition:none!important}}
