/* Two-panel evidence dashboard. Component colours consume the project tokens. */
#tab-statistik { padding: 0; overflow: hidden; }
.statistik-main { display: flex; flex-direction: column; overflow: hidden; min-width: 0; min-height: 0; padding: 0; }
.dashboard-stage { display: flex; flex: 1 1 0; min-width: 0; min-height: 0; overflow: hidden; }
.dashboard-workspace { display: flex; flex-direction: column; flex: 1 1 0; min-width: 0; min-height: 0; container: dashboard-workspace / inline-size; }
.dashboard-presets { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2);
  flex: 0 0 auto; padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--line); }
.dashboard-presets__label, .dashboard-presets__status { color: var(--color-text-secondary); font-size: var(--text-2xs); }
.dashboard-presets__button[aria-pressed="true"] { color: var(--accent); border-color: var(--accent); background: var(--surface-2); }
.dashboard-panels {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3);
  flex: 1 1 0; min-width: 0; min-height: 0; padding: var(--space-3); overflow: auto;
}
.dashboard-panel {
  display: flex; flex-direction: column; min-width: 0; min-height: 420px;
  border: 1px solid var(--line); border-radius: var(--border-radius); background: var(--surface);
  overflow: visible;
}
.dashboard-panel__head {
  display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-2);
  padding: var(--space-2); border-bottom: 1px solid var(--line); background: var(--surface-2);
}
.dashboard-panel__select, .dashboard-panel__sets { max-width: 190px; }
.dashboard-panel__sets { width: 190px; }
.dashboard-panel-menu { position: relative; }
.dashboard-panel-menu > summary { padding: var(--space-1) var(--space-2); color: var(--accent); cursor: pointer; font-size: var(--text-xs); }
.dashboard-panel-menu__content { position: absolute; z-index: var(--z-local-popover);
  inset-block-start: calc(100% + var(--space-1)); inset-inline-end: 0;
  display: flex; flex-direction: column; align-items: stretch; gap: var(--space-2);
  width: max-content; max-width: min(280px, calc(100vw - 2 * var(--space-3)));
  padding: var(--space-3); border: 1px solid var(--line); border-radius: var(--border-radius);
  background: var(--surface); box-shadow: var(--shadow-md); }
.dashboard-panel-menu:not([open]) > .dashboard-panel-menu__content { display: none; }
.dashboard-panel-menu__content > * { max-width: 100%; }
.dashboard-panel__unit { margin-inline-start: auto; color: var(--color-text-secondary); font-size: var(--text-2xs); }
.dashboard-panel__set-chip { border: 1px solid var(--line); border-radius: var(--border-radius); text-decoration: none; }
.dashboard-panel__body { flex: 1 1 0; min-width: 0; min-height: 0; padding: var(--space-2); overflow: auto; }
.dashboard-chart-status, .dashboard-chart-selection, .dashboard-note, .dashboard-empty {
  margin: 0 0 var(--space-2); color: var(--color-text-secondary); font-size: var(--text-xs); line-height: var(--leading-normal);
}
.dashboard-chart-selection { padding-inline-start: var(--space-2); border-inline-start: 2px solid var(--accent); }
.dashboard-empty { padding: var(--space-6); font-style: italic; }
.dashboard-drawing { min-width: 0; overflow: auto; }
.dashboard-svg { display: block; width: 100%; min-width: 420px; height: auto; }
.dashboard-mark { cursor: pointer; outline: none; }
.dashboard-mark:focus-visible { filter: drop-shadow(0 0 2px var(--accent)); }
.dashboard-mark--highlighted rect, .dashboard-mark--highlighted circle {
  stroke: var(--accent-dark); stroke-width: 3px;
}
.dashboard-mark--highlighted.dashboard-sankey__link { stroke: var(--accent-dark); opacity: 0.9; }
.dashboard-treemap__label, .dashboard-sankey__label, .dashboard-upset__label,
.dashboard-upset__count, .dashboard-compare__label, .dashboard-compare__value {
  fill: var(--color-text-primary); font: var(--text-xs) var(--font-ui); pointer-events: none;
}
.dashboard-treemap__label { fill: var(--color-text-inverse); font-weight: var(--weight-semibold); }
.dashboard-sankey__label { font-size: 15px; paint-order: stroke; stroke: var(--surface); stroke-width: 3px; }
.dashboard-time__mark + .tick text, .dashboard-svg .tick text { font-size: 15px; }
.dashboard-breadcrumb, .dashboard-local-focus, .dashboard-time-range {
  display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-1);
  margin-bottom: var(--space-2); color: var(--color-text-secondary); font-size: var(--text-xs);
}
.dashboard-matrix-wrap { max-height: 430px; overflow: auto; border: 1px solid var(--line); }
.dashboard-matrix { width: 100%; border-collapse: separate; border-spacing: 0; font-size: var(--text-2xs); }
.dashboard-matrix th, .dashboard-matrix td { padding: var(--space-1); border: 1px solid var(--line-soft); }
.dashboard-matrix th { position: sticky; min-width: 90px; max-width: 160px;
  background: var(--surface-2); color: var(--color-text-secondary); text-align: start; }
.dashboard-matrix thead th { top: 0; z-index: var(--z-sticky); }
.dashboard-matrix thead th:first-child { inset-inline-start: 0; z-index: calc(var(--z-sticky) + 1); }
.dashboard-matrix__axis { max-width: 140px; padding: 0; white-space: normal; overflow-wrap: anywhere; text-align: start;
  color: var(--accent); background: none; border: 0; font: inherit; cursor: pointer; }
.dashboard-matrix__focus { float: inline-end; margin-inline-start: var(--space-1); padding: 0; color: var(--accent);
  background: none; border: 0; font: inherit; cursor: pointer; }
.dashboard-matrix tbody th { inset-inline-start: 0; z-index: var(--z-sticky); }
.dashboard-matrix__cell { width: 100%; min-width: 38px; padding: var(--space-1); border: 1px solid transparent;
  border-radius: var(--border-radius); color: var(--color-text-primary); background: var(--surface-3); cursor: pointer; }
.dashboard-matrix__cell--q1 { background: color-mix(in srgb, var(--accent) 18%, var(--surface)); }
.dashboard-matrix__cell--q2 { background: color-mix(in srgb, var(--accent) 32%, var(--surface)); }
.dashboard-matrix__cell--q3 { background: color-mix(in srgb, var(--accent) 48%, var(--surface)); }
.dashboard-matrix__cell--q4 { background: color-mix(in srgb, var(--accent) 66%, var(--surface)); color: var(--color-text-inverse); }
.dashboard-matrix__cell--q5 { background: var(--accent); color: var(--color-text-inverse); }
.dashboard-matrix__cell:hover, .dashboard-matrix__cell:focus-visible { border-color: var(--accent); }
.dashboard-matrix__cell.dashboard-mark--highlighted {
  outline: 2px solid var(--accent-dark);
  outline-offset: -3px;
  box-shadow: inset 0 0 0 4px var(--color-text-inverse);
}
.dashboard-matrix__empty { color: var(--color-text-tertiary); text-align: center; }
.dashboard-time-range input { width: 10ch; min-width: 8rem; }
.dashboard-time__legend { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-3);
  margin: var(--space-2) 0; padding: 0; list-style: none; color: var(--color-text-secondary); font-size: var(--text-xs); }
.dashboard-time__legend li { display: inline-flex; align-items: center; gap: var(--space-1); }
.dashboard-time__legend-swatch { width: 0.8rem; height: 0.8rem; flex: 0 0 auto; border: 1px solid var(--line);
  border-radius: 2px; background: var(--stack-color); }
.dashboard-time-range__validation, .dashboard-selection__empty-evidence { color: var(--color-text-secondary); font-size: var(--text-xs); }
.dashboard-upset__sets { padding-inline-start: var(--space-5); }
.dashboard-values { margin-top: var(--space-3); border-top: 1px solid var(--line-soft); padding-top: var(--space-2); }
.dashboard-values summary { color: var(--accent); cursor: pointer; font-size: var(--text-xs); }
.dashboard-values__list { display: flex; flex-direction: column; align-items: start; gap: var(--space-1);
  max-height: 260px; overflow: auto; margin: var(--space-2) 0 0; padding: 0; list-style: none; }
.dashboard-values__list li { display: flex; align-items: center; width: 100%; gap: var(--space-1); }
.dashboard-values__select { overflow: hidden; text-align: start; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-values__add { margin-inline-start: auto; font-size: var(--text-base); text-decoration: none; }
.dashboard-map { height: 430px; min-height: 300px; border: 1px solid var(--line-soft); }
.dashboard-selection__actions { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-bottom: var(--space-3); }
.dashboard-selection__union, .dashboard-selection__evidence { color: var(--color-text-secondary); font-size: var(--text-xs); }
.dashboard-selection__marks, .dashboard-selection__records { margin: var(--space-2) 0; padding: 0; list-style: none; }
.dashboard-selection__witnesses { display: flex; flex-direction: column; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }
.dashboard-selection__witnesses li { display: grid; grid-template-columns: minmax(80px, auto) minmax(0, 1fr) auto;
  gap: var(--space-1) var(--space-2); align-items: baseline; border-bottom: 1px solid var(--line-soft); padding-bottom: var(--space-1); }
.dashboard-selection__witness-kind, .dashboard-selection__source-state { color: var(--color-text-tertiary); font-size: var(--text-2xs); }
.dashboard-selection__source-state { grid-column: 2 / -1; }
.dashboard-selection__marks { display: flex; flex-wrap: wrap; gap: var(--space-1); }
.dashboard-selection__marks li { display: inline-flex; align-items: center; gap: var(--space-1); padding: var(--space-1) var(--space-2);
  border: 1px solid var(--line); border-radius: var(--border-radius); font-size: var(--text-xs); }
.dashboard-selection__records { display: flex; flex-direction: column; align-items: start; gap: var(--space-1); }

@container dashboard-workspace (width < 980px) {
  .dashboard-panels { grid-template-columns: minmax(0, 1fr); }
  .dashboard-panel { min-height: 390px; }
}
@container view-shell (width < 900px) {
  .dashboard-panels { grid-template-columns: minmax(0, 1fr); padding: var(--space-2); }
  .dashboard-panel__unit { margin-inline-start: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .dashboard-panel *, .dashboard-mark { scroll-behavior: auto; transition: none; }
}
