/* .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)}.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%)}