/**
 * Divisi Metrics — Theme constants
 *
 * JS-accessible color palette mirroring the CSS custom properties defined in
 * globals.css.  Recharts (and other non-CSS consumers) need plain hex strings,
 * so we keep a single source of truth here.
 */

// ── Divisi brand palette ────────────────────────────────────────────────────

export const divisiColors = {
  bg: '#0a0a0a',
  card: '#141414',
  border: 'rgba(255,255,255,0.08)',
  accent: '#c8e600',
  accentHover: '#d4f000',
  textPrimary: '#ffffff',
  textSecondary: '#a0a0a0',
} as const;

// ── Chart color palette ─────────────────────────────────────────────────────

export const chartColors = {
  primary: '#c8e600',
  secondary: '#6366f1',
  tertiary: '#06b6d4',
  quaternary: '#f59e0b',
  quinary: '#ec4899',
} as const;

/**
 * Ordered array of chart colors for multi-series charts.
 * All colors are vibrant and visible on dark backgrounds.
 */
export const chartColorArray: readonly string[] = [
  chartColors.primary,   // lime
  chartColors.secondary, // indigo
  chartColors.tertiary,  // cyan
  chartColors.quaternary, // amber
  chartColors.quinary,   // pink
  '#8b5cf6',             // violet
  '#10b981',             // emerald
  '#f97316',             // orange
  '#14b8a6',             // teal
  '#e879f9',             // fuchsia
] as const;

// ── Tooltip / card styling tokens ───────────────────────────────────────────

export const tooltipStyle = {
  backgroundColor: divisiColors.card,
  borderColor: divisiColors.accent,
  textColor: divisiColors.textPrimary,
  labelColor: divisiColors.textSecondary,
} as const;
