/* 2.99.0: Reports → Supervisor dashboard (supdash.js): the filter bar, the tiles, the times table, the charts, where to look */
.sd-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0 0 12px; }
.sd-bar select, .sd-bar input { height: 32px; max-width: 180px; }
.sd-kpis { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.sd-tile { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sd-tile.sd-off { border-style: dashed; background: var(--sunk); }
.sd-trend { font-size: .78rem; font-variant-numeric: tabular-nums; }
.sd-trend.ok { color: var(--ok); }
.sd-trend.bad { color: var(--fault); }
.sd-times { margin: 0 0 16px; }
.sd-table td, .sd-table th { white-space: nowrap; font-variant-numeric: tabular-nums; }
.sd-table td.sd-late { color: var(--fault); font-weight: 600; }
.sd-charts { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; margin: 0 0 16px; }
.sd-chart { margin: 0; background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; }
.sd-chart figcaption { font-weight: 600; font-size: .9rem; margin-bottom: 4px; }
.sd-svg { width: 100%; height: auto; display: block; direction: ltr; }
.sd-axis { stroke: var(--line); stroke-width: 1; }
.sd-target { stroke: var(--muted); stroke-width: 1; stroke-dasharray: 4 3; }
.sd-line { fill: none; stroke-width: 2; }
.sd-lab { font-size: 9px; fill: var(--muted); }
.sd-c0 { stroke: var(--accent); fill: var(--accent); }
.sd-c1 { stroke: #d97706; fill: #d97706; }
.sd-c2 { stroke: #7c3aed; fill: #7c3aed; }
.sd-line.sd-c0, .sd-line.sd-c1, .sd-line.sd-c2 { fill: none; }
.sd-legend { display: flex; flex-wrap: wrap; gap: 4px 12px; color: var(--muted); }
.sd-key { display: inline-block; width: 10px; height: 3px; margin-inline-end: 4px; vertical-align: middle; border-radius: 2px; background: currentColor; }
.sd-key.sd-c0 { background: var(--accent); }
.sd-key.sd-c1 { background: #d97706; }
.sd-key.sd-c2 { background: #7c3aed; }
.sd-key.sd-tk { background: none; border-top: 1px dashed var(--muted); height: 0; }
.sd-look { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.sd-look section { background: var(--panel); border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px 12px; min-width: 0; }
.sd-look h3 { margin: 0 0 6px; font-size: 1rem; }
.sd-look h4 { margin: 8px 0 2px; font-size: .85rem; color: var(--muted); }
.sd-list { margin: 0; padding-inline-start: 18px; }
.sd-list li { margin: 2px 0; overflow-wrap: anywhere; }
.sd-full .sd-kpis .kpi-v { font-size: 2.2rem; }
@media (max-width: 600px) { .sd-bar select, .sd-bar input { max-width: none; flex: 1 1 140px; } }
