/* Data visualisation. Ported from Vantage XO (palettes, chart types, motion) and re-keyed to LongTable hues.
   Roles map 1:1: Vantage fg → ink, navy-6 accent → lacquer-600, forest → lacquer, navy-4 → harbour, warning → brass. */
:root{
  /* Chrome */
  --viz-fg:var(--lt-ink);--viz-fg-2:var(--lt-neutral-700);--viz-label:var(--lt-stone);
  --viz-grid:var(--lt-neutral-200);--viz-axis:var(--lt-neutral-300);--viz-track:var(--lt-neutral-100);--viz-hover-band:rgba(21,25,24,0.04);
  /* Quiet default: one series in ink, comparisons in neutrals, one colour moment */
  --viz-quiet-1:var(--lt-ink);--viz-quiet-2:var(--lt-neutral-400);--viz-quiet-3:var(--lt-neutral-300);
  --viz-accent:var(--lt-lacquer-600); /* the one colour moment per chart */
  --viz-highlight:var(--lt-brass-500); /* callout a single mark: record, target, today */
  /* Categorical: use in order, max 8. Adjacent pairs differ in hue and lightness */
  --viz-1:var(--lt-lacquer-900);--viz-2:var(--lt-harbour-500);--viz-3:var(--lt-brass-400);--viz-4:var(--lt-lacquer-400);
  --viz-5:var(--lt-claret-500);--viz-6:var(--lt-harbour-300);--viz-7:var(--lt-sage-600);--viz-8:var(--lt-brass-200);
  /* Sequential (low → high) */
  --viz-seq-1:var(--lt-lacquer-100);--viz-seq-2:var(--lt-lacquer-300);--viz-seq-3:var(--lt-lacquer-500);--viz-seq-4:var(--lt-lacquer-700);--viz-seq-5:var(--lt-lacquer-900);
  /* Diverging (3-point) */
  --viz-div-neg:var(--lt-error-600);--viz-div-mid:var(--lt-neutral-100);--viz-div-pos:var(--lt-lacquer-700);
  /* Ordered band ramp (8): risk → healthy → mature, for age / tenure / score bands */
  --viz-band-1:var(--lt-error-600);--viz-band-2:var(--lt-error-400);--viz-band-3:var(--lt-brass-500);--viz-band-4:var(--lt-brass-200);
  --viz-band-5:var(--lt-lacquer-100);--viz-band-6:var(--lt-lacquer-300);--viz-band-7:var(--lt-lacquer-600);--viz-band-8:var(--lt-harbour-700);
  /* Delta chips */
  --viz-up-tint:var(--lt-success-100);--viz-up-text:var(--lt-success-700);--viz-down-tint:var(--lt-error-100);--viz-down-text:var(--lt-error-700);
  /* Motion. Charts are the one place durations exceed --dur-slow: marks grow from data, they never decorate.
     All of it is skipped under prefers-reduced-motion (end state, no tween). */
  --viz-dur-draw:850ms; /* @kind other */ /* bars, lines, areas growing in */
  --viz-dur-radial:1100ms; /* @kind other */ /* pie and donut sweep */
  --viz-dur-count:1000ms; /* @kind other */ /* headline figure count-up */
  --viz-dur-reveal:700ms; /* @kind other */ /* stacked column wipe, per column */
  --viz-dur-wipe:900ms; /* @kind other */ /* stacked area left-to-right wipe */
  --viz-dur-race:1600ms; /* @kind other */ /* bar race: one period */
  --viz-dur-rank:420ms; /* @kind other */ /* bar race: row swapping rank */
  --viz-dur-hover:160ms; /* @kind other */ /* dimming, tooltip in */
  --viz-dur-switch:280ms; /* @kind other */ /* period switch thumb */
  --viz-stagger-line:16ms; /* @kind other */ --viz-stagger-bar:40ms; /* @kind other */
  --viz-ease-draw:cubic-bezier(0.25,1,0.5,1); /* @kind other */ /* quartic out: fast start, long settle */
  --viz-dim:0.32; /* @kind other */ /* opacity of non-hovered marks */
}
