/* .FitFix ToolBox (c) 2026 Václav Koucký (Ve-Ka-AI). All rights reserved. */
:root{--app-accent: #06b6d4;--app-accent-glow: rgba(6,182,212,0.35)}.studio-main-grid{display: grid;grid-template-columns: 460px 1fr;gap: 1.25rem;align-items: start;width: 100%;min-height: calc(100vh - 100px)}@media (max-width: 1100px){.studio-main-grid{grid-template-columns: 1fr}}.brand-icon-ski{width: 38px;height: 38px;border-radius: var(--radius-sm);background: linear-gradient(135deg,rgba(6,182,212,0.25),rgba(56,189,248,0.25));border: 1px solid rgba(6,182,212,0.4);display: flex;align-items: center;justify-content: center;font-size: 1.35rem;box-shadow: 0 0 16px rgba(6,182,212,0.25)}.state-box.descent{border-left-color: #38bdf8}.track-pills-bar{display: flex;align-items: center;gap: 6px;padding: 6px 10px;background: rgba(15,23,42,0.7);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px);border-bottom: 1px solid var(--card-border);overflow-x: auto;white-space: nowrap;flex-shrink: 0}.track-pills-bar::-webkit-scrollbar{height: 3px}.track-pills-bar::-webkit-scrollbar-thumb{background: rgba(255,255,255,0.15);border-radius: 2px}.track-pill{display: inline-flex;align-items: center;gap: 4px;padding: 3px 10px;border-radius: 14px;font-size: 0.72rem;font-weight: 600;cursor: pointer;transition: all 0.2s ease;border: 1px solid var(--card-border);background: rgba(255,255,255,0.04);color: var(--text-muted);white-space: nowrap;flex-shrink: 0}.track-pill:hover{border-color: var(--primary);color: var(--primary);background: rgba(56,189,248,0.08)}.track-pill.active{background: rgba(56,189,248,0.18);border-color: var(--primary);color: var(--primary);box-shadow: 0 0 8px rgba(56,189,248,0.2)}.track-pill .pill-count{background: rgba(56,189,248,0.2);color: var(--primary);font-size: 0.62rem;font-weight: 700;padding: 1px 5px;border-radius: 8px}.track-pill.active .pill-count{background: var(--primary);color: #0f172a}.leaflet-crosshair{cursor: crosshair !important}.leaflet-crosshair .leaflet-interactive{cursor: crosshair !important}.sortable-th{cursor: pointer;user-select: none;transition: color 0.15s;white-space: nowrap}.sortable-th:hover{color: var(--primary,#38bdf8)}.sortable-th.sort-active{color: var(--primary,#38bdf8)}.sort-arrow{font-size: 0.65rem;margin-left: 2px}.btn-map-control{position: absolute;top: 8px;right: 8px;z-index: 1001;width: 32px;height: 32px;display: flex;align-items: center;justify-content: center;background: rgba(15,23,42,0.85);backdrop-filter: blur(6px);-webkit-backdrop-filter: blur(6px);border: 1px solid rgba(56,189,248,0.2);border-radius: 6px;color: var(--text-main,#f8fafc);font-size: 0.82rem;cursor: pointer;transition: all 0.2s;padding: 0}.btn-map-control:hover{background: rgba(56,189,248,0.2);border-color: var(--primary,#38bdf8);color: var(--primary,#38bdf8)}.waiting-toggle-bar{padding: 4px 10px !important;border-top: none !important}.waiting-checkbox-label{display: flex;align-items: center;gap: 6px;font-size: 0.72rem;font-weight: 500;color: var(--text-muted);cursor: pointer;user-select: none;white-space: nowrap}.waiting-checkbox-label input[type="checkbox"]{accent-color: var(--primary,#38bdf8);width: 14px;height: 14px;cursor: pointer}.waiting-checkbox-label:hover{color: var(--text-main)}.advanced-settings summary{list-style: none;display: flex;align-items: center;gap: 4px}.advanced-settings summary::-webkit-details-marker{display: none}.advanced-settings summary::after{content: '▸';font-size: 0.7rem;transition: transform 0.2s;margin-left: 4px}.advanced-settings[open] summary::after{transform: rotate(90deg)}.fullscreen-map{position: fixed !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;width: 100vw !important;height: 100vh !important;z-index: 9999 !important;padding: 0 !important;margin: 0 !important;border-radius: 0 !important;max-width: none !important;max-height: none !important;overflow: hidden !important}.fullscreen-map .ski-map-canvas,.fullscreen-map #gatesMapContainer{width: 100% !important;height: 100vh !important}.fullscreen-map .track-pills-bar,.fullscreen-map .waiting-toggle-bar{display: none !important}.fs-suppress-tooltips .leaflet-tooltip{display: none !important}.fullscreen-map .btn-map-control,.fullscreen-map #btnExitFullscreen{z-index: 10001 !important}.fullscreen-map .gates-timing-panel{display: flex;flex-direction: column;height: 100vh}.fullscreen-map .gates-timing-panel>div:last-child{flex: 1;display: grid;grid-template-columns: 1fr 1fr;gap: 0}.fullscreen-map .gates-timing-panel .gates-banner{display: none}.btn-drawing-active{background: rgba(56,189,248,0.25) !important;border-color: var(--primary,#38bdf8) !important;color: var(--primary,#38bdf8) !important;box-shadow: 0 0 12px rgba(56,189,248,0.3) !important;animation: pulse-gate-btn 1.5s infinite}@keyframes pulse-gate-btn{0%,100%{box-shadow: 0 0 6px rgba(56,189,248,0.2)}50%{box-shadow: 0 0 16px rgba(56,189,248,0.5)}}.gate-pole-marker{background: none !important;border: none !important}.gates-fullscreen-actions{position: fixed;bottom: 24px;left: 50%;transform: translateX(-50%);z-index: 10001;display: flex;gap: 8px;align-items: center;background: rgba(15,23,42,0.88);backdrop-filter: blur(12px);border: 1px solid rgba(56,189,248,0.2);border-radius: 12px;padding: 8px 16px;box-shadow: 0 4px 24px rgba(0,0,0,0.4)}#splitNamingModal select,#renameTrackModal select,#exportDialog select{background-color: #0f172a !important;color: #f8fafc !important;border: 1px solid rgba(56,189,248,0.25)}#splitNamingModal select option,#renameTrackModal select option,#exportDialog select option{background-color: #0f172a;color: #f8fafc;padding: 6px 10px}#splitNamingModal select option:checked,#renameTrackModal select option:checked,#exportDialog select option:checked{background-color: rgba(56,189,248,0.2);color: #38bdf8}#splitNamingModal select option:hover,#renameTrackModal select option:hover{background: rgba(56,189,248,0.15)}body.mode-summer{--primary: #10b981;--app-accent: #10b981;--app-accent-glow: rgba(16,185,129,0.35)}body.mode-summer .state-box.descent{border-left-color: #10b981}body.mode-summer .state-box.lift{border-left-color: #f59e0b}body.mode-summer .mode-btn.active{background: linear-gradient(135deg,rgba(16,185,129,0.25),rgba(245,158,11,0.25));border-color: rgba(16,185,129,0.5);color: #34d399;box-shadow: 0 0 12px rgba(16,185,129,0.25)}.piste-diff-badge{display: inline-flex;align-items: center;gap: 3px;padding: 1px 6px;border-radius: 4px;font-size: 0.65rem;font-weight: 700;white-space: nowrap;vertical-align: middle;line-height: 1.3}.flow-grit-badge{display: inline-flex;align-items: center;gap: 4px;font-size: 0.72rem;font-family: var(--font-mono)}.flow-grit-pill{display: inline-flex;align-items: center;gap: 3px;padding: 1px 5px;border-radius: 4px;background: rgba(255,255,255,0.05);border: 1px solid rgba(255,255,255,0.1);font-size: 0.68rem;font-weight: 600}.flow-grit-calc{font-size: 0.58rem;color: var(--text-muted);background: rgba(255,255,255,0.06);padding: 1px 3px;border-radius: 3px;border: 1px solid rgba(255,255,255,0.08)}.ghost-splits-table th{font-weight: 600;font-size: 0.70rem;text-transform: uppercase;letter-spacing: 0.03em}.ghost-splits-table td{padding: 6px 8px;border-bottom: 1px solid rgba(255,255,255,0.04)}.ghost-splits-table tr:hover td{background: rgba(255,255,255,0.03)}.ghost-ref-row td{background: rgba(251,191,36,0.08) !important;font-weight: 700}.badge-delta{display: inline-block;padding: 1px 6px;border-radius: 4px;font-size: 0.70rem;font-family: var(--font-mono);font-weight: 700}.badge-delta.ahead{background: rgba(34,197,94,0.2);color: #4ade80;border: 1px solid rgba(34,197,94,0.4)}.badge-delta.behind{background: rgba(244,63,94,0.2);color: #fb7185;border: 1px solid rgba(244,63,94,0.4)}.badge-delta.neutral{background: rgba(255,255,255,0.08);color: #cbd5e1}.braking-heatmap-legend{position: absolute;bottom: 24px;left: 12px;z-index: 1000;background: rgba(15,23,42,0.85);backdrop-filter: blur(8px);border: 1px solid var(--card-border);border-radius: 6px;padding: 6px 10px;font-size: 0.68rem;display: flex;flex-direction: column;gap: 4px;color: var(--text-main);box-shadow: 0 4px 16px rgba(0,0,0,0.4)}.braking-legend-scale{display: flex;height: 6px;width: 140px;border-radius: 3px;background: linear-gradient(90deg,#22c55e 0%,#38bdf8 40%,#fbbf24 70%,#f43f5e 100%)}#cockpitDualArea{display: flex;flex-direction: row;width: 100%;height: 500px;min-height: 240px;position: relative;background: var(--card-bg,rgba(21,32,54,0.75));border-radius: 8px;overflow: hidden;border: 1px solid rgba(255,255,255,0.08)}#cockpitMapPane{position: relative;height: 100%;flex: 0 0 60%;min-width: 250px;overflow: hidden}#mapHeaderBar{position: absolute;top: 10px;left: 10px;right: 10px;z-index: 1000;display: flex;align-items: center;justify-content: space-between;padding: 6px 10px;background: rgba(15,23,42,0.85);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);border: 1px solid rgba(255,255,255,0.12);border-radius: 6px;gap: 8px;flex-wrap: wrap}.map-view-switcher{display: flex;align-items: center;background: rgba(17,24,39,0.88);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border: 1px solid rgba(255,255,255,0.1);border-radius: 6px;padding: 2px;gap: 2px;position: relative}.view-btn{padding: 3px 8px;font-size: 0.74rem;font-weight: 600;font-family: 'Outfit',sans-serif;color: var(--text-muted,#94a3b8);border: none;background: transparent;border-radius: 4px;cursor: pointer;display: inline-flex;align-items: center;gap: 4px;transition: all 0.2s ease;white-space: nowrap}.view-btn:hover{color: #fff;background: rgba(255,255,255,0.06)}.view-btn.active{background: linear-gradient(135deg,var(--primary,#38bdf8),#0284c7);color: #070a12;font-weight: 700;box-shadow: 0 2px 8px rgba(56,189,248,0.35)}.mapy-cz-split-btn-group{position: relative;display: inline-flex;align-items: stretch;z-index: 1210}.mapy-cz-main-btn{border-top-right-radius: 0 !important;border-bottom-right-radius: 0 !important}.mapy-cz-arrow-btn{border-top-left-radius: 0 !important;border-bottom-left-radius: 0 !important;border-left: 1px solid rgba(255,255,255,0.15) !important;padding: 0 6px !important}.mapy-cz-sublayers-menu{position: absolute;top: calc(100% + 4px);right: 0;min-width: 220px;background: rgba(15,23,42,0.98);backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border: 1px solid rgba(255,255,255,0.18);border-radius: 8px;box-shadow: 0 12px 32px rgba(0,0,0,0.85);padding: 6px 0;display: none;flex-direction: column;z-index: 2500}.mapy-cz-sublayers-menu.open{display: flex}.mapy-cz-sublayer-item{display: flex;align-items: center;gap: 8px;padding: 7px 12px;font-size: 0.8rem;color: var(--text-color,#e2e8f0);background: transparent;border: none;text-align: left;cursor: pointer;width: 100%;transition: background 0.12s ease}.mapy-cz-sublayer-item:hover{background: rgba(56,189,248,0.15);color: #fff}.mapy-cz-sublayer-item.active{color: var(--primary,#38bdf8);font-weight: 600}.mapy-cz-menu-divider{height: 1px;background: rgba(255,255,255,0.08);margin: 4px 0}#cockpitSplitterX{width: 6px;cursor: col-resize;background: rgba(255,255,255,0.05);transition: background 0.15s ease;z-index: 10;flex-shrink: 0;display: flex;align-items: center;justify-content: center;user-select: none;touch-action: none}#cockpitSplitterX:hover,#cockpitSplitterX.active{background: var(--primary,#38bdf8)}.splitter-handle-col{width: 2px;height: 36px;border-radius: 1px;background: rgba(255,255,255,0.3)}#cockpitConsolePane{position: relative;height: 100%;flex: 1 1 40%;min-width: 280px;display: flex;flex-direction: column;background: rgba(10,15,28,0.95);overflow: hidden}.chart-console-header{height: 42px;min-height: 42px;padding: 0 10px;display: flex;align-items: center;justify-content: space-between;border-bottom: 1px solid rgba(255,255,255,0.08);background: rgba(0,0,0,0.25);gap: 6px;flex-wrap: nowrap}.chart-console-title-group{display: flex;align-items: center;gap: 6px;min-width: 0}.chart-console-title{font-size: 0.78rem;font-weight: 700;color: var(--text-muted,#94a3b8);text-transform: uppercase;letter-spacing: 0.05em;white-space: nowrap}.chart-cursor-badge{font-size: 0.70rem;font-variant-numeric: tabular-nums;background: rgba(56,189,248,0.12);color: var(--primary,#38bdf8);border: 1px solid rgba(56,189,248,0.3);padding: 2px 6px;border-radius: 4px;white-space: nowrap}.chart-tabs{display: flex;align-items: center;gap: 2px}.chart-tab-btn{background: transparent;border: 1px solid transparent;color: var(--text-muted,#94a3b8);font-size: 0.72rem;font-weight: 600;padding: 3px 6px;border-radius: 4px;cursor: pointer;transition: all 0.15s ease;white-space: nowrap}.chart-tab-btn:hover{background: rgba(255,255,255,0.06);color: #fff}.chart-tab-btn.active{background: rgba(56,189,248,0.2);border-color: rgba(56,189,248,0.4);color: var(--primary,#38bdf8)}.btn-chart-toggle{background: transparent;border: none;color: var(--text-muted,#94a3b8);font-size: 0.85rem;padding: 4px 6px;border-radius: 4px;cursor: pointer;transition: color 0.15s ease,background 0.15s ease}.btn-chart-toggle:hover{color: #fff;background: rgba(255,255,255,0.08)}.chart-console-body{flex: 1 1 auto;position: relative;padding: 8px 10px;overflow: hidden;width: 100%;height: calc(100% - 42px)}.chart-console-body canvas{width: 100% !important;height: 100% !important}#cockpitSplitterY{width: 100%;height: 6px;cursor: row-resize;background: rgba(255,255,255,0.05);transition: background 0.15s ease;display: flex;align-items: center;justify-content: center;margin-top: 4px;user-select: none;touch-action: none}#cockpitSplitterY:hover,#cockpitSplitterY.active{background: var(--primary,#38bdf8)}.splitter-handle-row{width: 36px;height: 2px;border-radius: 1px;background: rgba(255,255,255,0.3)}#chartCollapsedStrip{display: none;height: 32px;background: rgba(15,23,42,0.9);border: 1px solid rgba(255,255,255,0.08);border-radius: 6px;align-items: center;justify-content: space-between;padding: 0 12px;margin-top: 4px;font-size: 13px;color: var(--text-muted,#94a3b8);cursor: pointer;user-select: none;transition: background 0.15s ease}#chartCollapsedStrip:hover{background: rgba(30,41,59,0.95);color: var(--text-main,#f8fafc)}.fullscreen-map #cockpitDualArea{position: fixed !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;width: 100vw !important;height: 100vh !important;max-height: none !important;z-index: 9999 !important;border-radius: 0 !important;border: none !important}.fullscreen-map #cockpitMapPane{flex: 1 1 100% !important;width: 100% !important;height: 100% !important;min-width: 100% !important}.fullscreen-map #cockpitSplitterX,.fullscreen-map #cockpitConsolePane,.fullscreen-map #cockpitSplitterY,.fullscreen-map #chartCollapsedStrip{display: none !important}.modal-backdrop{position: fixed !important;top: 0 !important;left: 0 !important;width: 100vw !important;height: 100vh !important;background: rgba(0,0,0,0.75) !important;backdrop-filter: blur(10px) !important;-webkit-backdrop-filter: blur(10px) !important;z-index: 9999 !important;display: none;align-items: center !important;justify-content: center !important;padding: 1rem !important}.modal-backdrop.open{display: flex !important}.modal{width: 100%;max-width: 540px;background: rgba(17,24,39,0.95);border: 1px solid var(--card-border-glow,rgba(56,189,248,0.3));border-radius: 16px;box-shadow: 0 20px 50px rgba(0,0,0,0.7);display: flex;flex-direction: column;overflow: hidden}.modal-header{display: flex;justify-content: space-between;align-items: center;padding: 1rem 1.25rem;border-bottom: 1px solid rgba(255,255,255,0.08)}.modal-title{font-size: 1.05rem;font-weight: 700;display: flex;align-items: center;gap: 8px;color: #fff}.modal-close{background: none;border: none;color: #94a3b8;font-size: 1.3rem;cursor: pointer;padding: 2px 6px;line-height: 1}.modal-close:hover{color: #fff}#cockpitDualArea{display: flex;flex-direction: row;width: 100%;height: 500px;min-height: 240px;max-height: 850px;position: relative;background: var(--card-bg,rgba(21,32,54,0.75));border-radius: 8px;overflow: hidden;border: 1px solid rgba(255,255,255,0.08)}#cockpitMapPane{position: relative;height: 100%;flex: 0 0 60%;min-width: 280px}#slopeMap{width: 100%;height: 100%}#mapHeaderBar{position: absolute;top: 10px;left: 10px;right: 10px;z-index: 1000;display: flex;align-items: center;justify-content: space-between;padding: 6px 10px;background: rgba(15,23,42,0.88);backdrop-filter: blur(8px);border: 1px solid rgba(255,255,255,0.12);border-radius: 6px;gap: 8px}.map-layer-group{display: flex;align-items: center;gap: 4px}.map-btn{background: rgba(255,255,255,0.06);border: 1px solid rgba(255,255,255,0.1);color: #e2e8f0;padding: 4px 8px;font-size: 12px;border-radius: 4px;cursor: pointer;display: inline-flex;align-items: center;gap: 5px;transition: all 0.15s ease}.map-btn:hover{background: rgba(255,255,255,0.15);color: #fff}.map-btn.active{background: var(--primary,#38bdf8);color: #090d16;font-weight: 600;border-color: var(--primary,#38bdf8)}.mapy-cz-split-btn{position: relative;display: inline-flex;border-radius: 4px;overflow: visible}.mapy-cz-dropdown{position: absolute;top: calc(100% + 4px);left: 0;background: rgba(15,23,42,0.96);border: 1px solid rgba(255,255,255,0.15);border-radius: 6px;padding: 4px 0;min-width: 170px;box-shadow: 0 10px 25px rgba(0,0,0,0.5);z-index: 1100;display: none}.mapy-cz-dropdown.show{display: block}.mapy-cz-dropdown-item{display: flex;align-items: center;gap: 8px;padding: 6px 12px;font-size: 12px;color: #cbd5e1;cursor: pointer;transition: background 0.15s}.mapy-cz-dropdown-item:hover{background: rgba(255,255,255,0.08);color: #fff}.mapy-cz-dropdown-item.active{color: var(--primary,#38bdf8);font-weight: 600}#cockpitSplitterX{width: 6px;cursor: col-resize;background: rgba(255,255,255,0.05);transition: background 0.15s ease;z-index: 10;flex-shrink: 0}#cockpitSplitterX:hover,#cockpitSplitterX.active{background: var(--primary,#38bdf8)}#cockpitConsolePane{position: relative;height: 100%;flex: 1 1 40%;min-width: 280px;display: flex;flex-direction: column;background: rgba(10,15,28,0.95);overflow: hidden}.console-header-bar{display: flex;align-items: center;justify-content: space-between;padding: 6px 10px;background: rgba(255,255,255,0.03);border-bottom: 1px solid rgba(255,255,255,0.08)}.console-tabs{display: flex;gap: 4px}.console-tab-btn{background: transparent;border: none;color: #94a3b8;font-size: 11px;padding: 4px 8px;border-radius: 4px;cursor: pointer;transition: all 0.15s}.console-tab-btn:hover{color: #f1f5f9;background: rgba(255,255,255,0.05)}.console-tab-btn.active{color: #fff;background: rgba(56,189,248,0.2);border: 1px solid rgba(56,189,248,0.4);font-weight: 600}.chart-wrapper{position: relative;flex: 1 1 auto;width: 100%;height: 100%;min-height: 0;overflow: hidden;padding: 8px 10px 4px 6px;box-sizing: border-box}#telemetryChartCanvas{width: 100% !important;height: 100% !important;display: block}#cockpitSplitterY{width: 100%;height: 6px;cursor: row-resize;background: rgba(255,255,255,0.05);transition: background 0.15s ease;margin-top: 2px}#cockpitSplitterY:hover,#cockpitSplitterY.active{background: var(--primary,#38bdf8)}#chartCollapsedStrip{display: none;height: 32px;background: rgba(15,23,42,0.9);border: 1px solid rgba(255,255,255,0.08);border-radius: 6px;align-items: center;justify-content: space-between;padding: 0 12px;margin-top: 4px;font-size: 12px;color: #94a3b8;cursor: pointer}#chartCollapsedStrip:hover{background: rgba(30,41,59,0.95);color: #f8fafc}#skiRunsTableBody tr.focused-run-row{background: rgba(56,189,248,0.16) !important;box-shadow: inset 3px 0 0 var(--primary,#38bdf8)}#cockpitDualArea:fullscreen{width: 100vw !important;height: 100vh !important;max-height: 100vh !important;border-radius: 0 !important;border: none !important;margin: 0 !important;z-index: 2147483647 !important;background: var(--bg-dark,#090d16) !important}#cockpitDualArea:fullscreen #cockpitSplitterY,#cockpitDualArea:fullscreen #chartCollapsedStrip{display: none !important}body.cockpit-fullscreen{overflow: hidden !important}body.cockpit-fullscreen .app-header,body.cockpit-fullscreen .sidebar-panel,body.cockpit-fullscreen .left-config-panel,body.cockpit-fullscreen .module-subnav-bar,body.cockpit-fullscreen .slope-runs-container,body.cockpit-fullscreen #runsTableCard,body.cockpit-fullscreen #lowerWorkspaceArea,body.cockpit-fullscreen #cockpitSplitterY,body.cockpit-fullscreen #chartCollapsedStrip{display: none !important}body.cockpit-fullscreen .main-workspace,body.cockpit-fullscreen .right-content-pane,body.cockpit-fullscreen .app-container{position: static !important;transform: none !important;filter: none !important;backdrop-filter: none !important;padding: 0 !important;margin: 0 !important;width: 100vw !important;height: 100vh !important;max-width: 100vw !important;max-height: 100vh !important}body.cockpit-fullscreen #cockpitDualArea{position: fixed !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;width: 100vw !important;height: 100vh !important;max-height: 100vh !important;z-index: 999999 !important;border-radius: 0 !important;border: none !important;margin: 0 !important;background: var(--bg-dark,#090d16) !important}