/* .FitFix ToolBox (c) 2026 Václav Koucký (Ve-Ka-AI). All rights reserved. */
:root{--app-accent: #38bdf8;--app-accent-glow: rgba(56,189,248,0.35);--app-accent-secondary: #06b6d4}.brand-icon-swim{width: 44px;height: 44px;border-radius: 12px;background: linear-gradient(135deg,rgba(56,189,248,0.25),rgba(6,182,212,0.25));border: 1px solid rgba(56,189,248,0.4);display: flex;align-items: center;justify-content: center;font-size: 1.45rem;box-shadow: 0 0 16px rgba(56,189,248,0.25)}.ingestion-summary-card{background: rgba(15,23,42,0.65);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 0.75rem 0.95rem;display: flex;flex-direction: column;gap: 0.65rem;animation: fadeIn 0.2s ease-out}.summary-card-header{display: flex;justify-content: space-between;align-items: center;font-size: 0.76rem;font-weight: 700}.summary-badge{color: var(--accent-green);display: inline-flex;align-items: center;gap: 5px}.btn-change-folder{background: rgba(255,255,255,0.05);border: 1px solid var(--card-border);color: var(--text-muted);border-radius: 6px;padding: 3px 8px;font-size: 0.70rem;font-weight: 600;cursor: pointer;transition: all 0.15s ease}.btn-change-folder:hover{background: rgba(56,189,248,0.12);border-color: var(--primary);color: var(--primary)}.summary-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 0.45rem 0.75rem;font-size: 0.74rem;color: var(--text-muted)}.summary-grid strong{color: var(--text-main);font-family: 'Outfit',sans-serif;font-size: 0.85rem}.swim-candidate-card{background: rgba(15,23,42,0.65);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 0.75rem 0.95rem;cursor: pointer;display: flex;flex-direction: column;gap: 0.35rem;transition: all 0.2s ease;position: relative}.swim-candidate-card:hover{background: rgba(30,45,74,0.75);border-color: var(--card-border-hover);transform: translateY(-1px)}.swim-candidate-card.active{background: rgba(56,189,248,0.14);border-color: var(--app-accent);box-shadow: 0 0 16px rgba(56,189,248,0.25)}.swim-candidate-card.active::before{content: '';position: absolute;left: 0;top: 0;bottom: 0;width: 4px;background: var(--app-accent);border-radius: var(--radius-sm) 0 0 var(--radius-sm)}.cand-card-header{display: flex;justify-content: space-between;align-items: center}.cand-card-title{display: flex;align-items: center;gap: 6px;font-weight: 700;font-size: 0.84rem;color: var(--text-main)}.cand-card-metrics{display: flex;flex-wrap: wrap;gap: 0.65rem;font-size: 0.72rem;color: var(--text-muted);margin-top: 2px}.cand-card-metrics strong{color: var(--text-main);font-weight: 700}.cand-reasons-badge{display: inline-flex;align-items: center;gap: 4px;background: rgba(245,158,11,0.12);color: #fde047;border: 1px solid rgba(245,158,11,0.3);font-size: 0.68rem;font-weight: 700;padding: 2px 7px;border-radius: 6px;align-self: flex-start;margin-top: 2px}.other-activity-item{background: rgba(15,23,42,0.45);border: 1px solid rgba(255,255,255,0.05);border-radius: 6px;padding: 0.5rem 0.75rem;display: flex;justify-content: space-between;align-items: center;font-size: 0.75rem;cursor: pointer;transition: all 0.15s ease}.other-activity-item:hover{background: rgba(255,255,255,0.06);border-color: rgba(255,255,255,0.15)}.other-activity-item.active{background: rgba(56,189,248,0.12);border-color: var(--app-accent)}.filter-pills-bar{display: flex;align-items: center;gap: 5px;padding: 0.6rem 0.85rem;background: rgba(15,23,42,0.5);border-bottom: 1px solid var(--card-border);overflow-x: auto;white-space: nowrap}.filter-pill{display: inline-flex;align-items: center;gap: 5px;padding: 4px 10px;border-radius: 14px;font-size: 0.72rem;font-weight: 700;cursor: pointer;transition: all 0.2s ease;border: 1px solid var(--card-border);background: rgba(255,255,255,0.04);color: var(--text-muted)}.filter-pill:hover{border-color: var(--app-accent);color: var(--text-main);background: rgba(56,189,248,0.08)}.filter-pill.active{background: rgba(56,189,248,0.18);border-color: var(--app-accent);color: var(--app-accent);box-shadow: 0 0 8px rgba(56,189,248,0.2)}.filter-pill .pill-count{background: rgba(56,189,248,0.2);color: var(--app-accent);font-size: 0.64rem;font-weight: 800;padding: 1px 5px;border-radius: 8px}.filter-pill.active .pill-count{background: var(--app-accent);color: #0f172a}.activity-summary-badge{display: flex;align-items: center;gap: 0.75rem;flex-wrap: wrap;font-size: 0.82rem;background: rgba(15,23,42,0.6);padding: 0.45rem 0.85rem;border-radius: 8px;border: 1px solid var(--card-border)}.activity-summary-badge strong{color: var(--text-main)}.activity-summary-badge .sep{color: var(--text-muted);opacity: 0.5}.btn-chart-fullscreen{background: rgba(15,23,42,0.8);border: 1px solid var(--card-border);border-radius: 6px;color: var(--text-muted);width: 28px;height: 28px;display: inline-flex;align-items: center;justify-content: center;font-size: 0.75rem;cursor: pointer;transition: all 0.15s ease}.btn-chart-fullscreen:hover{background: rgba(56,189,248,0.15);border-color: var(--app-accent);color: var(--app-accent)}.fullscreen-card{position: fixed !important;top: 0 !important;left: 0 !important;right: 0 !important;bottom: 0 !important;width: 100vw !important;height: 100vh !important;z-index: 99999 !important;background: #090e1a !important;padding: 1.5rem !important;border-radius: 0 !important;margin: 0 !important;overflow-y: auto !important}#laneEditorCard.fullscreen-card{display: flex !important;flex-direction: column !important;overflow: hidden !important;gap: 0.75rem !important}#laneEditorCard.fullscreen-card .lane-chart-scroll{flex: 1 !important;min-height: 0 !important;display: flex !important;flex-direction: column !important;overflow-x: auto !important;overflow-y: hidden !important}#laneEditorCard.fullscreen-card .lane-chart-canvas-wrap{flex: 1 !important;min-height: 0 !important;display: flex !important;align-items: stretch !important}.btn-selected-badge{display: inline-flex;align-items: center;gap: 6px;background: rgba(56,189,248,0.12);color: var(--primary);border: 1px solid rgba(56,189,248,0.4);font-size: 0.76rem;font-weight: 700;padding: 4px 10px;border-radius: 6px;line-height: 1.2}.sensor-badge{display: inline-flex;align-items: center;gap: 6px;padding: 4px 10px;border-radius: 6px;font-size: 0.76rem;font-weight: 700;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.65);background: rgba(251,191,36,0.09);color: #fbbf24}.lane-editor-container{background: rgba(15,23,42,0.75);border: 1px solid var(--card-border);border-radius: var(--radius-sm);padding: 1.25rem;display: flex;flex-direction: column;gap: 1rem;width: 100%}.lane-toolbar{display: flex;align-items: center;gap: 0.5rem;flex-wrap: wrap;background: rgba(30,41,59,0.6);padding: 0.6rem 0.85rem;border-radius: 8px;border: 1px solid rgba(255,255,255,0.08)}.lane-toolbar-group{display: flex;align-items: center;gap: 0.35rem}.lane-toolbar-sep{width: 1px;height: 24px;background: var(--card-border);margin: 0 0.35rem}.lane-chart-scroll{width: 100%;overflow-x: auto;overflow-y: hidden;padding-bottom: 0.75rem;scrollbar-width: thin;scrollbar-color: rgba(56,189,248,0.3) rgba(15,23,42,0.5)}.lane-chart-scroll::-webkit-scrollbar{height: 6px}.lane-chart-scroll::-webkit-scrollbar-thumb{background: rgba(56,189,248,0.35);border-radius: 3px}.lane-chart-canvas-wrap{min-width: 100%;height: 220px;position: relative}.state-dot{width: 8px;height: 8px;border-radius: 50%;display: inline-block;flex-shrink: 0}.anomaly-banner{background: linear-gradient(135deg,rgba(239,68,68,0.15),rgba(245,158,11,0.12));border: 1px solid rgba(239,68,68,0.35);border-radius: var(--radius-sm);padding: 0.85rem 1.15rem;display: flex;align-items: center;justify-content: space-between;gap: 1rem;width: 100%}.anomaly-banner-text{display: flex;flex-direction: column;gap: 0.2rem}.anomaly-banner-title{font-size: 0.88rem;font-weight: 700;color: #fca5a5;display: flex;align-items: center;gap: 6px}.anomaly-banner-desc{font-size: 0.78rem;color: var(--text-muted)}.swim-table{width: 100%;border-collapse: separate;border-spacing: 0;font-size: 0.82rem}.swim-table th{background: rgba(15,23,42,0.8);color: var(--text-muted);font-weight: 700;text-transform: uppercase;font-size: 0.70rem;letter-spacing: 0.04em;padding: 0.65rem 0.85rem;border-bottom: 1px solid var(--card-border);text-align: left;white-space: nowrap}.swim-table td{padding: 0.6rem 0.85rem;border-bottom: 1px solid rgba(255,255,255,0.04);color: var(--text-main);white-space: nowrap}.swim-table tr:hover td{background: rgba(255,255,255,0.03)}.length-detail-row{cursor: pointer;transition: background 0.15s ease}.length-detail-row.row-selected td{background: rgba(56,189,248,0.14) !important;color: #ffffff}.length-detail-row.row-selected td:first-child{border-left: 3px solid var(--app-accent)}.length-detail-row.row-anomaly td{background: rgba(239,68,68,0.06)}.length-detail-row.row-rest td{opacity: 0.6}.stroke-badge{display: inline-flex;align-items: center;gap: 5px;font-weight: 700;font-size: 0.74rem;padding: 2px 7px;border-radius: 6px;border: 1px solid}.swim-tabs{display: flex;align-items: center;gap: 0.5rem;border-bottom: 1px solid var(--card-border);padding-bottom: 0.75rem;margin-bottom: 1rem;flex-wrap: wrap}.swim-tab-btn{background: transparent;border: 1px solid transparent;color: var(--text-muted);font-size: 0.82rem;font-weight: 700;padding: 0.45rem 0.9rem;border-radius: 8px;cursor: pointer;display: inline-flex;align-items: center;gap: 6px;transition: all 0.2s ease}.swim-tab-btn:hover{background: rgba(255,255,255,0.05);color: var(--text-main)}.swim-tab-btn.active{background: rgba(56,189,248,0.12);border-color: rgba(56,189,248,0.35);color: var(--app-accent)}.swim-modal-backdrop{position: fixed;inset: 0;background: rgba(0,0,0,0.75);backdrop-filter: blur(8px);display: none;align-items: center;justify-content: center;z-index: 9999;padding: 1rem}.swim-modal{background: #0d1527;border: 1px solid var(--card-border-hover);border-radius: var(--radius);box-shadow: 0 25px 60px rgba(0,0,0,0.8);width: 100%;max-width: 520px;display: flex;flex-direction: column;gap: 1.25rem;padding: 1.5rem;animation: modalPop 0.2s ease-out}@keyframes modalPop{from{transform: scale(0.95);opacity: 0}to{transform: scale(1);opacity: 1}}.swim-modal-header{display: flex;align-items: center;justify-content: space-between;border-bottom: 1px solid var(--card-border);padding-bottom: 0.75rem}.swim-modal-header h3{font-size: 1.05rem;font-weight: 700;color: var(--text-main);margin: 0}.swim-modal-footer{display: flex;justify-content: flex-end;gap: 0.65rem;border-top: 1px solid var(--card-border);padding-top: 0.85rem}.ratio-slider-wrap{display: flex;flex-direction: column;gap: 0.5rem;padding: 0.75rem;background: rgba(15,23,42,0.6);border-radius: 8px;border: 1px solid rgba(255,255,255,0.05)}.custom-scroll{scrollbar-width: thin;scrollbar-color: rgba(56,189,248,0.3) rgba(15,23,42,0.5)}