/* .FitFix ToolBox (c) 2026 Václav Koucký (Ve-Ka-AI). All rights reserved. */
@import url('../../shared/design-tokens.css');:root{--bg-dark: #090d16;--bg-surface: rgba(15,23,42,0.75);--card-bg: rgba(21,32,54,0.75);--card-bg-hover: rgba(30,45,74,0.85);--card-border: rgba(255,255,255,0.08);--card-border-hover: rgba(56,189,248,0.45);--card-border-glow: rgba(56,189,248,0.3);--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--primary: #38bdf8;--primary-hover: #0284c7;--primary-glow: rgba(56,189,248,0.35);--accent-green: #34d399;--accent-purple: #c084fc;--accent-amber: #fbbf24;--accent-rose: #f43f5e;--accent-indigo: #818cf8;--radius: 16px;--radius-sm: 10px;--radius-xs: 6px;--shadow-glass: 0 12px 40px 0 rgba(0,0,0,0.5);--shadow-glow: 0 0 25px rgba(56,189,248,0.2);--transition-fast: 0.18s cubic-bezier(0.4,0,0.2,1)}*{box-sizing: border-box;margin: 0;padding: 0}html,body{min-height: 100vh;margin: 0;padding: 0}body{font-family: 'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background-color: var(--bg-dark);background-image: radial-gradient(at 0% 0%,rgba(56,189,248,0.14) 0px,transparent 45%),radial-gradient(at 100% 0%,rgba(192,132,252,0.12) 0px,transparent 45%),radial-gradient(at 50% 100%,rgba(52,211,153,0.08) 0px,transparent 50%);background-attachment: fixed;color: var(--text-main);display: flex;flex-direction: column;overflow-x: hidden;-webkit-font-smoothing: antialiased}h1,h2,h3,h4,.font-heading{font-family: 'Outfit',sans-serif}.container{width: 100%;max-width: 100vw;min-height: 100vh;padding: 0.75rem 1.25rem 2rem;display: flex;flex-direction: column;gap: 1rem}header{display: grid;grid-template-columns: auto 1fr auto;align-items: center;gap: 1rem;padding: 0.85rem 1.5rem;background: var(--card-bg);backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border: 1px solid var(--card-border);border-radius: var(--radius);box-shadow: var(--shadow-glass)}.hub-link{text-decoration: none;display: inline-flex;align-items: center;gap: 0.6rem;color: var(--text-muted);font-size: 0.88rem;font-weight: 600;padding: 8px 16px;background: rgba(255,255,255,0.04);border: 1px solid var(--card-border);border-radius: var(--radius-sm);transition: var(--transition-fast)}.hub-link:hover{color: var(--text-main);background: rgba(56,189,248,0.12);border-color: var(--primary);transform: translateX(-2px)}.header-center{display: flex;flex-direction: column;align-items: center;text-align: center}.app-title-row{display: flex;align-items: center;gap: 0.75rem}.app-icon-badge{width: 36px;height: 36px;background: linear-gradient(135deg,var(--primary),var(--accent-purple));border-radius: 10px;display: flex;align-items: center;justify-content: center;font-size: 1.25rem;box-shadow: 0 4px 14px rgba(56,189,248,0.35)}.app-title{font-size: 1.35rem;font-weight: 800;letter-spacing: -0.02em;background: linear-gradient(135deg,#ffffff 40%,var(--primary) 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent}.app-subtitle{font-size: 0.82rem;color: var(--text-muted)}.header-right{display: flex;align-items: center;gap: 0.75rem}.header-stat-chip{padding: 6px 14px;background: rgba(15,23,42,0.65);border: 1px solid var(--card-border);border-radius: 999px;font-size: 0.8rem;font-weight: 600;color: var(--text-muted);display: flex;align-items: center;gap: 6px}.header-stat-chip strong{color: var(--primary)}.studio-main-grid{display: grid;grid-template-columns: 460px 1fr;gap: 1.25rem;align-items: start;width: 100%}@media (max-width: 1100px){.studio-main-grid{grid-template-columns: 1fr}}.studio-left-column{display: flex;flex-direction: column;gap: 1rem;width: 100%}.glass-panel{background: var(--card-bg);backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border: 1px solid var(--card-border);border-radius: var(--radius);padding: 1.25rem;box-shadow: var(--shadow-glass)}.panel-header{display: flex;justify-content: space-between;align-items: center;margin-bottom: 1rem;padding-bottom: 0.5rem;border-bottom: 1px solid rgba(255,255,255,0.06)}.panel-header h2,.panel-header h3{font-size: 1.05rem;font-weight: 700;display: flex;align-items: center;gap: 0.5rem}.dropzone{border: 2px dashed rgba(56,189,248,0.35);background: rgba(15,23,42,0.45);border-radius: var(--radius-sm);padding: 1.75rem 1rem;text-align: center;cursor: pointer;transition: var(--transition-fast);display: flex;flex-direction: column;align-items: center;gap: 0.65rem}.dropzone:hover,.dropzone.dragover{border-color: var(--primary);background: rgba(56,189,248,0.1);box-shadow: var(--shadow-glow)}.dropzone-icon{font-size: 2.2rem;color: var(--primary);margin-bottom: 0.25rem}.dropzone h4{font-size: 1rem;font-weight: 700}.dropzone p{font-size: 0.82rem;color: var(--text-muted)}.dropzone-buttons{display: flex;gap: 0.5rem;margin-top: 0.5rem}.btn-primary{background: linear-gradient(135deg,var(--primary),var(--primary-hover));color: #ffffff;border: none;padding: 8px 16px;border-radius: var(--radius-sm);font-weight: 700;font-size: 0.85rem;cursor: pointer;display: inline-flex;align-items: center;gap: 6px;box-shadow: 0 4px 14px rgba(56,189,248,0.35);transition: var(--transition-fast)}.btn-primary:hover{filter: brightness(1.1);transform: translateY(-1px)}.btn-secondary{background: rgba(255,255,255,0.07);color: var(--text-main);border: 1px solid var(--card-border);padding: 8px 14px;border-radius: var(--radius-sm);font-weight: 600;font-size: 0.85rem;cursor: pointer;display: inline-flex;align-items: center;gap: 6px;transition: var(--transition-fast)}.btn-secondary:hover{background: rgba(255,255,255,0.12);border-color: rgba(255,255,255,0.2)}.search-input-box{position: relative;width: 100%;margin-bottom: 0.85rem}.search-input-box i{position: absolute;left: 12px;top: 50%;transform: translateY(-50%);color: var(--text-muted);font-size: 0.85rem}.search-input{width: 100%;padding: 9px 12px 9px 36px;background: rgba(15,23,42,0.7);border: 1px solid var(--card-border);border-radius: var(--radius-sm);color: var(--text-main);font-size: 0.85rem;outline: none;transition: var(--transition-fast)}.search-input:focus{border-color: var(--primary);box-shadow: 0 0 10px rgba(56,189,248,0.25)}.filter-group{margin-bottom: 0.85rem}.filter-group-title{font-size: 0.75rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.05em;color: var(--text-dim);margin-bottom: 0.4rem;display: flex;justify-content: space-between}.filter-chips{display: flex;flex-wrap: wrap;gap: 0.4rem}.chip{font-size: 0.76rem;font-weight: 600;padding: 4px 10px;border-radius: 999px;background: rgba(255,255,255,0.05);border: 1px solid rgba(255,255,255,0.08);color: var(--text-muted);cursor: pointer;transition: var(--transition-fast);display: inline-flex;align-items: center;gap: 5px}.chip:hover{background: rgba(56,189,248,0.12);border-color: var(--primary);color: var(--text-main)}.chip.active{background: linear-gradient(135deg,var(--primary),var(--primary-hover));border-color: transparent;color: #ffffff;box-shadow: 0 2px 8px rgba(56,189,248,0.35)}.chip .badge-count{font-size: 0.68rem;background: rgba(0,0,0,0.25);padding: 1px 6px;border-radius: 999px}.chip-warning-yellow{background: rgba(251,191,36,0.12);border-color: rgba(251,191,36,0.3);color: var(--accent-amber)}.chip-warning-yellow.active{background: var(--accent-amber);color: #000000}.chip-warning-red{background: rgba(244,63,94,0.12);border-color: rgba(244,63,94,0.3);color: var(--accent-rose)}.chip-warning-red.active{background: var(--accent-rose);color: #ffffff}.chip-fav{background: rgba(251,191,36,0.1);border-color: rgba(251,191,36,0.25);color: var(--accent-amber)}.chip-fav.active{background: var(--accent-amber);color: #000}.studio-right-column{display: flex;flex-direction: column;gap: 1.25rem;min-width: 0;width: 100%}.table-container{overflow-x: auto;max-height: 480px;border-radius: var(--radius-sm);border: 1px solid var(--card-border);background: rgba(15,23,42,0.5)}.activities-table{width: 100%;border-collapse: collapse;font-size: 0.82rem;text-align: left}.activities-table th{background: #0d1527;padding: 10px 12px;font-weight: 700;color: var(--text-muted);border-bottom: 2px solid var(--card-border);position: sticky;top: 0;z-index: 10;white-space: nowrap;user-select: none}.activities-table th.sortable{cursor: pointer}.activities-table th.sortable:hover{color: var(--primary)}.activities-table td{padding: 9px 12px;border-bottom: 1px solid rgba(255,255,255,0.04);vertical-align: middle}.activities-table tr{transition: background 0.12s ease;cursor: pointer}.activities-table tr:hover{background: rgba(56,189,248,0.08)}.activities-table tr.selected{background: rgba(56,189,248,0.16) !important;border-left: 3px solid var(--primary)}.status-indicator{display: inline-flex;align-items: center;justify-content: center;width: 24px;height: 24px;border-radius: 6px;font-size: 0.85rem}.status-clean{background: rgba(52,211,153,0.15);color: var(--accent-green)}.status-warn-start{background: rgba(251,191,36,0.18);color: var(--accent-amber)}.status-warn-end{background: rgba(244,63,94,0.18);color: var(--accent-rose);animation: pulse-border 2s infinite}.profile-name-tag{font-weight: 700;color: var(--text-main);display: inline-flex;align-items: center;gap: 6px}.profile-name-tag .sport-icon{font-size: 1.1rem}.unit-id-pill{font-size: 0.72rem;font-family: monospace;background: rgba(255,255,255,0.06);border: 1px solid rgba(255,255,255,0.1);padding: 2px 7px;border-radius: 5px;color: var(--text-muted);cursor: pointer;transition: var(--transition-fast)}.unit-id-pill:hover{border-color: var(--primary);color: var(--primary);background: rgba(56,189,248,0.1)}.sensor-badge{font-size: 0.7rem;font-weight: 600;padding: 2px 7px;border-radius: 4px;background: rgba(56,189,248,0.1);color: var(--primary);border: 1px solid rgba(56,189,248,0.25);display: inline-flex;align-items: center;gap: 4px;margin-right: 3px}.sensor-badge.tempe{background: rgba(251,191,36,0.1);color: var(--accent-amber);border-color: rgba(251,191,36,0.25)}.sensor-badge.hrm{background: rgba(244,63,94,0.1);color: var(--accent-rose);border-color: rgba(244,63,94,0.25)}.ciq-link-pill{font-size: 0.7rem;font-weight: 700;padding: 2px 7px;border-radius: 4px;background: rgba(192,132,252,0.12);color: var(--accent-purple);border: 1px solid rgba(192,132,252,0.3);text-decoration: none;display: inline-flex;align-items: center;gap: 4px}.ciq-link-pill:hover{background: rgba(192,132,252,0.25)}.preview-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 1.25rem}@media (max-width: 900px){.preview-grid{grid-template-columns: 1fr}}.map-container{height: 280px;width: 100%;border-radius: var(--radius-sm);overflow: hidden;border: 1px solid var(--card-border)}.trim-workspace{background: linear-gradient(180deg,rgba(21,32,54,0.85),rgba(15,23,42,0.95));border: 1px solid rgba(56,189,248,0.3);border-radius: var(--radius);padding: 1.25rem;display: flex;flex-direction: column;gap: 0.85rem;box-shadow: 0 8px 30px rgba(0,0,0,0.5);animation: fadeIn 0.25s ease-out}.trim-header-row{display: flex;justify-content: space-between;align-items: center;flex-wrap: wrap;gap: 0.75rem}.trim-suggestion-banner{background: rgba(251,191,36,0.12);border: 1px solid rgba(251,191,36,0.35);border-radius: var(--radius-sm);padding: 0.75rem 1rem;display: flex;justify-content: space-between;align-items: center;flex-wrap: wrap;gap: 0.75rem}.trim-suggestion-info{display: flex;align-items: center;gap: 0.75rem}.trim-suggestion-info i{font-size: 1.4rem;color: var(--accent-amber)}.speed-chart-canvas-box{width: 100%;height: 180px;position: relative;background: rgba(7,10,20,0.6);border: 1px solid var(--card-border);border-radius: var(--radius-sm);overflow: hidden}.speed-chart-canvas-box canvas{width: 100%;height: 100%}.trim-controls-row{display: flex;justify-content: space-between;align-items: center;flex-wrap: wrap;gap: 0.75rem;padding-top: 0.5rem}.trim-time-inputs{display: flex;align-items: center;gap: 0.75rem;font-size: 0.85rem}.trim-time-badge{background: rgba(15,23,42,0.8);padding: 4px 10px;border-radius: 6px;border: 1px solid var(--card-border);font-family: monospace;font-weight: 700;color: var(--primary)}.modal-backdrop{position: fixed;inset: 0;background: rgba(0,0,0,0.75);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);z-index: 1000;display: flex;align-items: center;justify-content: center;padding: 1rem;animation: fadeIn 0.15s ease-out}.modal-card{background: #0f172a;border: 1px solid rgba(56,189,248,0.3);border-radius: var(--radius);width: 100%;max-width: 520px;box-shadow: 0 20px 50px rgba(0,0,0,0.7);overflow: hidden}.modal-header{padding: 1.25rem 1.5rem;border-bottom: 1px solid rgba(255,255,255,0.08);display: flex;justify-content: space-between;align-items: center}.modal-header h3{font-size: 1.15rem;font-weight: 700}.modal-close-btn{background: transparent;border: none;color: var(--text-muted);font-size: 1.25rem;cursor: pointer}.modal-close-btn:hover{color: var(--text-main)}.modal-body{padding: 1.5rem;display: flex;flex-direction: column;gap: 1rem}.modal-field{display: flex;flex-direction: column;gap: 0.35rem}.modal-field label{font-size: 0.8rem;font-weight: 600;color: var(--text-muted)}.modal-field input,.modal-field select{padding: 9px 12px;background: rgba(15,23,42,0.8);border: 1px solid var(--card-border);border-radius: var(--radius-sm);color: var(--text-main);font-size: 0.88rem;outline: none}.modal-field input:focus,.modal-field select:focus{border-color: var(--primary)}.modal-footer{padding: 1rem 1.5rem;border-top: 1px solid rgba(255,255,255,0.08);display: flex;justify-content: flex-end;gap: 0.75rem;background: rgba(0,0,0,0.2)}@keyframes fadeIn{from{opacity: 0;transform: translateY(4px)}to{opacity: 1;transform: translateY(0)}}@keyframes pulse-border{0%{box-shadow: 0 0 0 0 rgba(244,63,94,0.4)}70%{box-shadow: 0 0 0 6px rgba(244,63,94,0)}100%{box-shadow: 0 0 0 0 rgba(244,63,94,0)}}.progress-container{background: rgba(15,23,42,0.85);border: 1px solid rgba(56,189,248,0.3);border-radius: 12px;padding: 1rem 1.25rem;display: flex;flex-direction: column;gap: 0.65rem;box-shadow: 0 8px 24px rgba(0,0,0,0.4)}.progress-header{display: flex;justify-content: space-between;align-items: center;font-size: 0.88rem;font-weight: 600}.progress-bar-bg{width: 100%;height: 10px;background: rgba(255,255,255,0.06);border-radius: 999px;overflow: hidden}.progress-bar-fill{height: 100%;width: 0%;background: linear-gradient(90deg,#38bdf8,#818cf8);border-radius: 999px;transition: width 0.1s ease-out}.progress-telemetry{display: flex;gap: 1rem;flex-wrap: wrap;font-size: 0.8rem;background: rgba(15,23,42,0.55);padding: 0.45rem 0.75rem;border-radius: 8px;border: 1px solid rgba(255,255,255,0.06);color: var(--text-muted);align-items: center;justify-content: space-between}.telemetry-group{display: flex;gap: 1rem;flex-wrap: wrap;width: 100%;justify-content: space-between}.telemetry-item{display: inline-flex;align-items: center;gap: 0.35rem}.telemetry-item strong{font-family: 'Outfit',monospace,sans-serif;font-size: 0.85rem}.progress-counters{display: flex;justify-content: space-between;font-size: 0.8rem;color: var(--text-muted);padding-top: 2px;flex-wrap: wrap;gap: 0.5rem}.spinner{width: 16px;height: 16px;border: 2px solid rgba(255,255,255,0.3);border-top-color: var(--primary);border-radius: 50%;animation: spin 0.8s linear infinite;display: inline-block}@keyframes spin{to{transform: rotate(360deg)}}.overview-map-section{position: relative;border-radius: var(--radius-sm);overflow: hidden;margin-bottom: 1rem;border: 1px solid var(--card-border);background: rgba(15,23,42,0.4)}.overview-map-header{display: flex;justify-content: space-between;align-items: center;padding: 0.5rem 0.85rem;background: rgba(15,23,42,0.7);border-bottom: 1px solid rgba(255,255,255,0.05);font-size: 0.8rem;font-weight: 600}#overviewMap{height: 220px;width: 100%;border-radius: 0 0 var(--radius-sm) var(--radius-sm)}.visual-workspace-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 12px;margin-bottom: 12px}@media (max-width: 1100px){.visual-workspace-grid{grid-template-columns: 1fr}}.visual-box{position: relative;background: rgba(15,23,42,0.55);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 10px;display: flex;flex-direction: column;gap: 8px;min-height: 280px}.visual-box-header{display: flex;justify-content: space-between;align-items: center;font-size: 0.82rem;font-weight: 700;color: var(--text-main);padding-bottom: 4px;border-bottom: 1px solid rgba(255,255,255,0.05)}.btn-fullscreen-toggle{background: rgba(255,255,255,0.06);border: 1px solid var(--card-border);color: var(--text-muted);border-radius: 6px;padding: 3px 7px;font-size: 0.75rem;cursor: pointer;transition: var(--transition-fast)}.btn-fullscreen-toggle:hover{background: var(--primary);color: #000}.visual-box.is-fullscreen{position: fixed !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;width: 100vw !important;height: 100vh !important;z-index: 999999 !important;background: #090e1a !important;padding: 1.5rem !important;margin: 0 !important;border-radius: 0 !important;border: none !important;box-shadow: none !important;display: flex !important;flex-direction: column !important;gap: 12px !important}.visual-box.is-fullscreen .visual-box-header{font-size: 1.1rem !important;padding-bottom: 8px !important}.visual-box.is-fullscreen #activityMap,#boxActivityMap:fullscreen #activityMap{height: calc(100vh - 85px) !important;width: 100% !important;border-radius: 8px !important}#boxSpeedChart.is-fullscreen canvas,#boxHrChart.is-fullscreen canvas,#boxCadChart.is-fullscreen canvas,#boxSpeedChart:fullscreen canvas,#boxHrChart:fullscreen canvas,#boxCadChart:fullscreen canvas{height: calc(100vh - 90px) !important;max-height: calc(100vh - 90px) !important;width: 100% !important}#overviewMap{height: 360px;width: 100%;border-radius: 0 0 var(--radius-sm) var(--radius-sm)}.filter-chips-grid{display: flex;flex-direction: column;gap: 6px}.chip-row-top{display: flex;width: 100%}.chip-row-top .chip{width: 100%;justify-content: center;font-weight: 700}.chip-row-sub{display: flex;flex-wrap: wrap;gap: 6px}.interactive-meta-bar{display: flex !important;flex-direction: row !important;flex-wrap: wrap !important;gap: 8px !important;background: rgba(15,23,42,0.75) !important;border: 1px solid var(--card-border) !important;border-radius: var(--radius-sm) !important;padding: 8px 12px !important;margin-top: 10px !important;align-items: center !important}.interactive-chip{display: inline-flex;align-items: center !important;gap: 6px !important;background: rgba(255,255,255,0.05) !important;border: 1px solid var(--card-border) !important;border-radius: 8px !important;padding: 5px 11px !important;font-size: 0.8rem !important;color: var(--text-main) !important;cursor: pointer !important;transition: var(--transition-fast) !important;white-space: nowrap !important}.interactive-chip:hover{background: rgba(56,189,248,0.15) !important;border-color: var(--primary) !important;color: #ffffff !important;transform: translateY(-1px) !important}.interactive-chip i.fa-pen{font-size: 0.68rem !important;color: var(--primary) !important;opacity: 0.7 !important}.interactive-chip:hover i.fa-pen{opacity: 1 !important}.visual-box:fullscreen,.visual-box:-webkit-full-screen{width: 100vw !important;height: 100vh !important;max-height: 100vh !important;background: #090e1a !important;padding: 1.5rem !important;margin: 0 !important;border-radius: 0 !important;border: none !important;box-shadow: none !important;display: flex !important;flex-direction: column !important;gap: 12px !important;box-sizing: border-box !important;overflow: hidden !important;z-index: 9999999 !important}.visual-box:fullscreen .visual-box-header,.visual-box:-webkit-full-screen .visual-box-header{font-size: 1.15rem !important;padding-bottom: 10px !important;border-bottom: 1px solid rgba(255,255,255,0.1) !important}.visual-box:fullscreen #activityMap,.visual-box:-webkit-full-screen #activityMap{height: calc(100vh - 100px) !important;max-height: none !important;width: 100% !important;border-radius: 8px !important}.visual-box:fullscreen canvas,.visual-box:-webkit-full-screen canvas{height: calc(100vh - 100px) !important;max-height: none !important;width: 100% !important}.interactive-chip{display: inline-flex;align-items: center;gap: 6px;background: rgba(255,255,255,0.05);border: 1px solid var(--card-border);border-radius: 8px;padding: 5px 11px;font-size: 0.8rem;color: var(--text-main);cursor: pointer;transition: var(--transition-fast);white-space: nowrap}.interactive-chip.hidden-chip{display: none !important}.overview-regions-bar{display: flex;align-items: center;gap: 6px;flex-wrap: wrap}.region-btn{background: rgba(255,255,255,0.08);border: 1px solid var(--card-border);color: var(--text-main);border-radius: 6px;padding: 3px 8px;font-size: 0.72rem;cursor: pointer;transition: var(--transition-fast);display: inline-flex;align-items: center;gap: 4px}.region-btn:hover,.region-btn.active{background: var(--primary);color: #000;border-color: var(--primary);font-weight: 700}.chip-warning-orange{border-color: rgba(251,146,60,0.45) !important;color: #fb923c !important}.chip-warning-orange:hover,.chip-warning-orange.active{background: rgba(251,146,60,0.18) !important;border-color: #fb923c !important}canvas.is-trim-dragging{cursor: grabbing !important}#overviewMapContainer:fullscreen,#overviewMapContainer:-webkit-full-screen{width: 100vw !important;height: 100vh !important;background: #090e1a !important;padding: 1rem !important;margin: 0 !important;border-radius: 0 !important;border: none !important;box-sizing: border-box !important;display: flex !important;flex-direction: column !important;z-index: 9999999 !important}#overviewMapContainer:fullscreen #overviewMap,#overviewMapContainer:-webkit-full-screen #overviewMap{height: calc(100vh - 70px) !important;width: 100% !important;border-radius: 8px !important}:fullscreen .btn-fs-action,:-webkit-full-screen .btn-fs-action{display: inline-flex !important}50%{transform: scale(1.6);opacity: 0.7}100%{transform: scale(1);opacity: 1}}.table-container{overflow-y: auto !important;max-height: calc(100vh - 220px) !important;min-height: 540px !important;border-radius: var(--radius-sm);background: rgba(15,23,42,0.4);border: 1px solid var(--card-border)}#sportsChipsContainer button.chip.active,#devicesChipsContainer button.chip.active{background: rgba(56,189,248,0.22) !important;border-color: var(--primary) !important;color: var(--primary) !important;font-weight: 700 !important;box-shadow: 0 0 10px rgba(56,189,248,0.3) !important}#sportsChipsContainer button.chip.active span.badge-count,#devicesChipsContainer button.chip.active span.badge-count{background: var(--primary) !important;color: #000 !important;font-weight: 800 !important}#ingestionProgressSection{contain: layout;font-variant-numeric: tabular-nums}#ingestionStatusText{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-variant-numeric: tabular-nums}.map-fs-scrubber-panel{display: none !important}#boxActivityMap:fullscreen .map-fs-scrubber-panel,#boxActivityMap.is-fullscreen .map-fs-scrubber-panel{display: flex !important;position: absolute !important;bottom: 20px !important;left: 24px !important;right: 24px !important;height: 140px !important;max-height: 140px !important;z-index: 10000 !important;background: rgba(10,15,29,0.88) !important;backdrop-filter: blur(14px) !important;border: 1px solid rgba(56,189,248,0.35) !important;border-radius: var(--radius-sm) !important;padding: 8px 16px !important;box-shadow: 0 10px 36px rgba(0,0,0,0.85) !important;flex-direction: column !important;justify-content: space-between !important;pointer-events: auto !important}#boxActivityMap:fullscreen .map-fs-scrubber-panel .scrubber-header,#boxActivityMap.is-fullscreen .map-fs-scrubber-panel .scrubber-header{display: flex;justify-content: space-between;align-items: center;font-size: 0.78rem}#mapFsSpeedCanvas{height: 95px !important;max-height: 95px !important;width: 100% !important;cursor: crosshair}.trim-summary-pill{background: rgba(244,63,94,0.18);border: 1px solid rgba(244,63,94,0.45);color: #fb7185;font-weight: 800;font-size: 0.82rem;padding: 4px 10px;border-radius: 6px;display: inline-flex;align-items: center;gap: 6px;margin-left: 10px;box-shadow: 0 0 10px rgba(244,63,94,0.2)}.progress-header{display: flex !important;justify-content: space-between !important;align-items: center !important;gap: 8px !important;margin-bottom: 6px !important}#ingestionProgressPercent{font-size: 0.85rem !important;font-weight: 800 !important;color: var(--primary) !important;white-space: nowrap !important;flex-shrink: 0 !important}.detail-main-header{display: flex !important;align-items: center !important;justify-content: space-between !important;flex-wrap: wrap !important;gap: 12px !important;padding-bottom: 0.75rem !important;border-bottom: 1px solid var(--card-border) !important;margin-bottom: 0.85rem !important}.detail-title-group{display: flex !important;align-items: center !important;gap: 10px !important;min-width: 0 !important;flex: 0 1 auto !important}.detail-title-meta{min-width: 0 !important}.detail-title-meta h3{margin: 0 !important;font-size: 1.05rem !important;white-space: nowrap !important;overflow: hidden !important;text-overflow: ellipsis !important}.trimmer-header-bar{display: flex !important;align-items: center !important;gap: 8px !important;flex-wrap: wrap !important;background: rgba(15,23,42,0.82) !important;border: 1px solid rgba(56,189,248,0.28) !important;border-radius: var(--radius-sm) !important;padding: 4px 10px !important;box-shadow: 0 4px 20px rgba(0,0,0,0.45) !important;backdrop-filter: blur(12px) !important;-webkit-backdrop-filter: blur(12px) !important}.trimmer-brand-badge{display: inline-flex !important;align-items: center !important;gap: 6px !important;font-size: 0.72rem !important;font-weight: 800 !important;letter-spacing: 0.05em !important;color: var(--primary) !important;background: rgba(56,189,248,0.12) !important;border: 1px solid rgba(56,189,248,0.3) !important;border-radius: 4px !important;padding: 3px 7px !important;user-select: none !important;white-space: nowrap !important}.trimmer-brand-badge i{color: var(--primary) !important}.anomaly-header-badge{display: inline-flex !important;align-items: center !important;gap: 6px !important;background: rgba(244,63,94,0.15) !important;border: 1px solid rgba(244,63,94,0.4) !important;border-radius: 6px !important;padding: 2px 8px !important;font-size: 0.74rem !important;color: #fecdd3 !important;max-width: 340px !important}.anomaly-text{white-space: nowrap !important;overflow: hidden !important;text-overflow: ellipsis !important;font-weight: 600 !important}.btn-suggest-accept{background: var(--gradient-amber) !important;color: #0f172a !important;border: none !important;border-radius: 4px !important;padding: 2px 8px !important;font-size: 0.7rem !important;font-weight: 800 !important;cursor: pointer !important;display: inline-flex !important;align-items: center !important;gap: 4px !important;transition: all 0.15s ease !important;white-space: nowrap !important;box-shadow: 0 0 8px rgba(245,158,11,0.4) !important}.btn-suggest-accept:hover{filter: brightness(1.15) !important;transform: translateY(-1px) !important}.trim-stats-strip{display: inline-flex !important;align-items: center !important;gap: 6px !important;flex-wrap: nowrap !important}.trim-pill-stat{font-size: 0.74rem !important;padding: 3px 8px !important;border-radius: 4px !important;display: inline-flex !important;align-items: center !important;gap: 5px !important;white-space: nowrap !important;background: rgba(30,41,59,0.75) !important;border: 1px solid rgba(255,255,255,0.08) !important}.trim-pill-stat .pill-label{color: var(--text-dim) !important;font-size: 0.67rem !important;font-weight: 600 !important;text-transform: uppercase !important;letter-spacing: 0.03em !important}.trim-pill-stat .pill-val{font-family: 'Outfit',monospace !important;font-weight: 700 !important;color: var(--text-main) !important}.trim-pill-stat.highlight{background: rgba(52,211,153,0.12) !important;border-color: rgba(52,211,153,0.3) !important}.trim-pill-stat.cut{background: rgba(245,158,11,0.08) !important;border-color: rgba(245,158,11,0.22) !important}.trim-pill-stat.cut.has-cut{background: rgba(244,63,94,0.14) !important;border-color: rgba(244,63,94,0.38) !important}.trim-flow-arrow{color: var(--text-dim) !important;font-size: 0.7rem !important}.trim-action-group{display: inline-flex !important;align-items: center !important;gap: 5px !important;margin-left: 2px !important}.btn-trim-action{padding: 3px 9px !important;font-size: 0.73rem !important;display: inline-flex !important;align-items: center !important;gap: 4px !important}.btn-trim-save-action{padding: 3px 12px !important;font-size: 0.75rem !important;font-weight: 800 !important;display: inline-flex !important;align-items: center !important;gap: 5px !important;box-shadow: 0 0 12px rgba(56,189,248,0.4) !important}.detail-actions-group{display: flex !important;gap: 6px !important;align-items: center !important;flex-shrink: 0 !important}.progress-header{display: flex !important;justify-content: space-between !important;align-items: center !important;width: 100% !important;min-width: 0 !important;margin-bottom: 6px !important}#ingestionStatusMessage{display: flex !important;align-items: center !important;gap: 6px !important;flex: 1 1 auto !important;min-width: 0 !important;overflow: hidden !important}#ingestionStatusText{display: inline-block !important;overflow: hidden !important;text-overflow: ellipsis !important;white-space: nowrap !important;min-width: 0 !important;font-variant-numeric: tabular-nums !important}#ingestionProgressPercent{font-size: 0.85rem !important;font-weight: 800 !important;color: var(--primary) !important;white-space: nowrap !important;flex-shrink: 0 !important;margin-left: 8px !important;font-family: 'Outfit',monospace !important}#sensorsChipsContainer button.chip.active{background: rgba(192,132,252,0.25) !important;border-color: var(--accent-purple) !important;color: var(--accent-purple) !important;font-weight: 700 !important;box-shadow: 0 0 10px rgba(192,132,252,0.35) !important}#sensorsChipsContainer button.chip.active span.badge-count{background: var(--accent-purple) !important;color: #000 !important;font-weight: 800 !important}.sensor-proto-tag{font-size: 0.62rem !important;font-weight: 800 !important;padding: 1px 4px !important;border-radius: 3px !important;text-transform: uppercase !important;letter-spacing: 0.03em !important;margin-left: 2px !important;vertical-align: middle !important}.sensor-proto-tag.proto-ant{background: rgba(56,189,248,0.18) !important;color: #38bdf8 !important;border: 1px solid rgba(56,189,248,0.35) !important}.sensor-proto-tag.proto-ble{background: rgba(99,102,241,0.2) !important;color: #a5b4fc !important;border: 1px solid rgba(99,102,241,0.35) !important}#btnTabAdoptHr,#btnTabAdoptCad{transition: all 0.2s cubic-bezier(0.4,0,0.2,1);border: 1px solid var(--card-border);background: rgba(15,23,42,0.7);color: var(--text-muted)}#btnTabAdoptHr:hover{background: rgba(244,63,94,0.15);border-color: rgba(244,63,94,0.4);color: #fff}#btnTabAdoptCad:hover{background: rgba(251,191,36,0.15);border-color: rgba(251,191,36,0.4);color: #fff}#btnTabAdoptHr.active{background: linear-gradient(135deg,rgba(244,63,94,0.35),rgba(225,29,72,0.5)) !important;border-color: var(--accent-rose) !important;color: #ffffff !important;font-weight: 700 !important;box-shadow: 0 0 14px rgba(244,63,94,0.4) !important}#btnTabAdoptCad.active{background: linear-gradient(135deg,rgba(251,191,36,0.35),rgba(217,119,6,0.5)) !important;border-color: var(--accent-amber) !important;color: #ffffff !important;font-weight: 700 !important;box-shadow: 0 0 14px rgba(251,191,36,0.4) !important}.detail-map-card{background: rgba(15,23,42,0.6);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 0.85rem}.detail-section-header{color: var(--text-main);font-family: 'Outfit',sans-serif}.map-start-pin,.map-finish-pin{display: flex;align-items: center;justify-content: center;width: 30px;height: 30px;border-radius: 50%;color: #ffffff;font-weight: 800;font-size: 14px;box-shadow: 0 4px 12px rgba(0,0,0,0.5)}.map-start-pin{background: linear-gradient(135deg,#10b981,#059669);border: 2px solid #ffffff}.map-finish-pin{background: linear-gradient(135deg,#ef4444,#b91c1c);border: 2px solid #ffffff}.map-direction-arrow{display: flex;align-items: center;justify-content: center}.leaflet-popup-content-wrapper{background: rgba(15,23,42,0.94) !important;backdrop-filter: blur(12px) !important;border: 1px solid var(--card-border) !important;color: var(--text-main) !important;border-radius: 10px !important;box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important}.leaflet-popup-tip{background: rgba(15,23,42,0.94) !important}.pill-switch-group{display: inline-flex;align-items: center;background: rgba(0,0,0,0.25);border: 1px solid rgba(255,255,255,0.08);border-radius: 9999px;padding: 2px;gap: 2px}.btn-overlay-pill{background: transparent;border: none;border-radius: 9999px;color: var(--text-muted);font-size: 0.72rem;font-weight: 600;padding: 0.22rem 0.65rem;cursor: pointer;transition: all 0.15s ease;white-space: nowrap;display: inline-flex;align-items: center;gap: 4px}.btn-overlay-pill:hover{color: var(--text-main);background: rgba(255,255,255,0.06)}.btn-overlay-pill.active{background: rgba(56,189,248,0.22);border: 1px solid #38bdf8;color: #38bdf8;box-shadow: 0 0 10px rgba(56,189,248,0.3)}.charts-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 0.85rem;min-width: 0}@media (max-width: 1400px){.charts-grid{grid-template-columns: repeat(2,1fr)}}@media (max-width: 900px){.charts-grid{grid-template-columns: 1fr}}.chart-card{background: rgba(15,23,42,0.75);backdrop-filter: blur(14px);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 0.85rem;box-shadow: 0 4px 20px rgba(0,0,0,0.3);display: flex;flex-direction: column;gap: 0.5rem;transition: all 0.25s ease;min-width: 0;overflow: hidden}.chart-card.is-hidden{display: none !important}.chart-header-row{display: flex;justify-content: space-between;align-items: center;gap: 0.5rem}.chart-title{font-size: 0.84rem;font-weight: 700;display: flex;align-items: center;gap: 0.45rem;color: var(--text-main)}.btn-icon-subtle{background: transparent;border: none;color: var(--text-dim);cursor: pointer;padding: 3px 6px;font-size: 0.75rem;border-radius: 4px;transition: all 0.15s ease}.btn-icon-subtle:hover{color: var(--text-main);background: rgba(255,255,255,0.08)}.chart-wrapper{position: relative;height: 185px;width: 100%;min-width: 0;overflow: hidden}.chart-wrapper canvas{max-width: 100% !important}.hidden-charts-bar{background: rgba(15,23,42,0.4);border: 1px dashed rgba(255,255,255,0.12);border-radius: var(--radius-sm);padding: 0.5rem 0.85rem;display: flex;align-items: center;gap: 0.6rem;flex-wrap: wrap}.hidden-chart-pill{background: rgba(56,189,248,0.1);border: 1px solid rgba(56,189,248,0.25);color: var(--primary);border-radius: 9999px;padding: 2px 10px;font-size: 0.72rem;font-weight: 600;cursor: pointer;display: inline-flex;align-items: center;gap: 4px;transition: all 0.15s ease}.hidden-chart-pill:hover{background: rgba(56,189,248,0.25);border-color: var(--primary);transform: translateY(-1px)}.detail-metrics-card{background: rgba(15,23,42,0.65);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 0.85rem}.overview-metrics-table{width: 100%;border-collapse: collapse;font-size: 0.84rem}.overview-metrics-table tr{border-bottom: 1px solid rgba(255,255,255,0.05);transition: background 0.12s ease}.overview-metrics-table tr:last-child{border-bottom: none}.overview-metrics-table tr:hover{background: rgba(255,255,255,0.03)}.overview-metrics-table td{padding: 8px 12px;vertical-align: middle}.overview-metrics-table td:first-child{color: var(--text-muted);font-weight: 600;width: 240px}.overview-metrics-table td:last-child{color: var(--text-main)}.overview-blocks-container{display: flex;flex-direction: column;gap: 10px;width: 100%}.overview-thematic-block{background: rgba(15,23,42,0.65);border: 1px solid var(--card-border);border-radius: var(--radius-sm);overflow: hidden;transition: border-color 0.2s ease,box-shadow 0.2s ease}.overview-thematic-block:hover{border-color: rgba(56,189,248,0.3)}.overview-block-header{display: flex;justify-content: space-between;align-items: center;padding: 10px 14px;background: rgba(255,255,255,0.02);cursor: pointer;user-select: none;transition: background 0.15s ease}.overview-block-header:hover{background: rgba(255,255,255,0.05)}.overview-block-header.is-open{border-bottom: 1px solid rgba(255,255,255,0.06)}.overview-block-title{display: flex;align-items: center;gap: 8px;font-size: 0.88rem;font-weight: 700;color: var(--text-main)}.overview-block-badge{font-size: 0.72rem;font-weight: 600;padding: 2px 7px;border-radius: 4px;background: rgba(255,255,255,0.06);color: var(--text-muted)}.overview-block-actions{display: flex;align-items: center;gap: 8px}.overview-block-toggle-btn{background: none;border: none;color: var(--text-dim);font-size: 0.8rem;cursor: pointer;display: flex;align-items: center;gap: 4px;padding: 2px 6px;border-radius: 4px;transition: color 0.15s ease,background 0.15s ease}.overview-block-toggle-btn:hover{color: var(--primary);background: rgba(56,189,248,0.1)}.overview-block-body{padding: 12px 14px}.overview-block-body.is-hidden-block{display: none}.overview-grid-4col{display: grid;grid-template-columns: repeat(auto-fit,minmax(290px,1fr));gap: 6px 18px;align-items: center}.overview-metric-cell{display: flex;justify-content: space-between;align-items: baseline;padding: 6px 4px;border-bottom: 1px solid rgba(255,255,255,0.04);font-size: 0.82rem}.overview-metric-cell:hover{background: rgba(255,255,255,0.02)}.overview-metric-label{color: var(--text-muted);font-weight: 500;white-space: nowrap;margin-right: 12px}.overview-metric-value{color: var(--text-main);font-weight: 600;text-align: right;white-space: nowrap}.overview-subval{white-space: nowrap}.hr-zones-wrapper{margin-top: 10px;padding-top: 10px;border-top: 1px solid rgba(255,255,255,0.05)}.hr-zones-bar{display: flex;height: 20px;border-radius: 5px;overflow: hidden;background: rgba(255,255,255,0.04);border: 1px solid rgba(255,255,255,0.08)}.hr-zone-segment{display: flex;align-items: center;justify-content: center;font-size: 0.68rem;font-weight: 700;color: #fff;transition: opacity 0.15s ease;min-width: 2px}.hr-zone-segment:hover{opacity: 0.85}.hr-zone-z1{background: #64748b}.hr-zone-z2{background: #38bdf8}.hr-zone-z3{background: #34d399}.hr-zone-z4{background: #fb923c}.hr-zone-z5{background: #f43f5e}.hr-zones-legend{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 6px;font-size: 0.72rem;color: var(--text-muted)}.hr-zone-legend-item{display: flex;align-items: center;gap: 5px}.hr-zone-legend-dot{width: 8px;height: 8px;border-radius: 2px}.laps-table-wrapper{overflow-x: auto;max-height: 380px;border-radius: var(--radius-sm);border: 1px solid var(--card-border)}.overview-laps-table{width: 100%;border-collapse: collapse;font-size: 0.78rem;white-space: nowrap}.overview-laps-table th{position: sticky;top: 0;background: rgba(15,23,42,0.95);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);padding: 8px 10px;text-align: right;color: var(--text-muted);font-weight: 600;border-bottom: 1px solid var(--card-border);z-index: 2}.overview-laps-table th:first-child,.overview-laps-table td:first-child{text-align: left;padding-left: 12px}.overview-laps-table td{padding: 7px 10px;text-align: right;border-bottom: 1px solid rgba(255,255,255,0.04)}.overview-laps-table tr:hover td{background: rgba(255,255,255,0.04)}.lap-best-highlight{color: var(--accent-green,#34d399);font-weight: 700}.lap-max-highlight{color: var(--accent-rose,#f43f5e);font-weight: 700}.btn-app-handoff{display: inline-flex;align-items: center;gap: 6px;padding: 4px 10px;border-radius: 6px;font-size: 0.76rem;font-weight: 700;background: rgba(56,189,248,0.15);border: 1px solid rgba(56,189,248,0.4);color: #38bdf8;cursor: pointer;transition: all 0.15s ease;text-decoration: none}.btn-app-handoff:hover{background: rgba(56,189,248,0.28);border-color: #38bdf8;transform: translateY(-1px)}.metric-highlight-val{color: var(--primary);font-weight: 700}.overview-hw-layout{display: grid;grid-template-columns: 1.2fr 1fr;gap: 16px 24px;align-items: start}@media (max-width: 960px){.overview-hw-layout{grid-template-columns: 1fr;gap: 14px}}.overview-hw-info{display: flex;flex-direction: column;gap: 2px}.overview-device-title{display: inline-flex;align-items: center;gap: 6px;white-space: nowrap}.btn-device-edit{background: none;border: none;cursor: pointer;padding: 0 4px;font-size: 0.84rem;opacity: 0.85;transition: opacity 0.15s ease,transform 0.15s ease;line-height: 1}.btn-device-edit:hover{opacity: 1;transform: scale(1.2)}.overview-hw-right-panels{display: flex;flex-direction: column;gap: 12px}.overview-hw-sensors-panel{background: rgba(255,255,255,0.02);border: 1px solid rgba(255,255,255,0.06);border-radius: var(--radius-sm,8px);padding: 10px 14px;display: flex;flex-direction: column;gap: 8px}.overview-hw-sensors-header{display: flex;justify-content: space-between;align-items: center;flex-wrap: wrap;gap: 8px;padding-bottom: 5px;border-bottom: 1px solid rgba(255,255,255,0.04)}.sensor-badges-legend{display: flex;align-items: center;gap: 12px;font-size: 0.72rem;color: var(--text-dim,#94a3b8)}.legend-item.legend-internal{color: var(--accent-cyan,#38bdf8)}.legend-item.legend-external{color: #fbbf24}.sensor-badges-container{display: flex;flex-wrap: wrap;gap: 8px;align-items: center}.sensor-badge{display: inline-flex;align-items: center;gap: 6px;padding: 5px 10px;border-radius: 6px;font-size: 0.78rem;font-weight: 600;line-height: 1.2;transition: all 0.15s ease}.sensor-badge-internal{border: 1px solid rgba(56,189,248,0.45);background: rgba(56,189,248,0.08);color: #38bdf8}.sensor-badge-external{border: 1.5px dashed rgba(251,191,36,0.55);background: rgba(251,191,36,0.07);color: #fbbf24}.ciq-app-badge{border: 1px solid rgba(192,132,252,0.45);background: rgba(192,132,252,0.08);color: #c084fc;text-decoration: none;cursor: pointer}.ciq-app-badge:hover{background: rgba(192,132,252,0.22);border-color: #c084fc;color: #e9d5ff;transform: translateY(-1px);box-shadow: 0 4px 12px rgba(192,132,252,0.2)}.ciq-type-pill{display: inline-flex;align-items: center;background: rgba(0,0,0,0.35);border: 1px solid rgba(255,255,255,0.15);padding: 1px 6px;border-radius: 4px;font-size: 0.7rem;font-family: var(--font-mono,monospace);color: #f8fafc;margin-left: 2px}.ciq-link-icon{font-size: 0.68rem;opacity: 0.75;margin-left: 2px}.sensor-battery-pill{display: inline-flex;align-items: center;gap: 3px;background: rgba(0,0,0,0.35);border: 1px solid rgba(255,255,255,0.15);padding: 1px 6px;border-radius: 4px;font-size: 0.72rem;font-family: var(--font-mono,monospace);color: #f8fafc;margin-left: 2px}.detail-map-card.is-fullscreen,.detail-map-card:fullscreen{position: fixed !important;top: 0 !important;left: 0 !important;width: 100vw !important;height: 100vh !important;z-index: 99999 !important;border-radius: 0 !important;padding: 1rem !important;background: var(--bg-dark,#0b0f19) !important;display: flex !important;flex-direction: column !important;box-sizing: border-box !important}.detail-map-card.is-fullscreen #activityMap,.detail-map-card:fullscreen #activityMap{flex: 1 1 auto !important;height: calc(100vh - 80px) !important;min-height: 400px !important}.chart-card.is-fullscreen,.chart-card:fullscreen{position: fixed !important;top: 0 !important;left: 0 !important;width: 100vw !important;height: 100vh !important;z-index: 99999 !important;border-radius: 0 !important;padding: 1.25rem !important;background: var(--bg-dark,#0b0f19) !important;display: flex !important;flex-direction: column !important;box-sizing: border-box !important}.chart-card.is-fullscreen .chart-wrapper,.chart-card:fullscreen .chart-wrapper{flex: 1 1 auto !important;height: calc(100vh - 90px) !important;min-height: 400px !important}#deviceIdentitySpoofingPanel{background: var(--card-bg,rgba(21,32,54,0.75));backdrop-filter: blur(16px);-webkit-backdrop-filter: blur(16px);border: 1px solid var(--card-border);transition: box-shadow 0.3s ease,border-color 0.3s ease}#deviceIdentitySpoofingPanel:hover{border-color: rgba(56,189,248,0.3)}#spoofPhysioDiffPanel{animation: fitfixFadeIn 0.3s cubic-bezier(0.16,1,0.3,1)}@keyframes fitfixFadeIn{from{opacity: 0;transform: translateY(-4px)}to{opacity: 1;transform: translateY(0)}}#diffOrigTotalCal,#diffRecalcTotalCal,#diffOrigRestCal,#diffRecalcRestCal,#diffOrigActiveCal,#diffRecalcActiveCal,#diffOrigLapsCal,#diffRecalcLapsCal{font-family: var(--font-mono,monospace);font-variant-numeric: tabular-nums}