/* DataVia Design Tokens v1
   Central source of truth for colors, typography, spacing, radius and elevation. */
:root {
  /* Brand */
  --dv-color-primary-900: #0f2f55;
  --dv-color-primary-800: #173f73;
  --dv-color-primary-700: #24558f;
  --dv-color-primary-600: #3b73ad;
  --dv-color-primary-100: #eaf2fb;
  --dv-color-primary-50: #f5f9fe;

  --dv-color-accent-700: #23704a;
  --dv-color-accent-600: #2f855a;
  --dv-color-accent-100: #e8f5ee;

  /* Semantic */
  --dv-color-success-700: #087443;
  --dv-color-success-100: #ecfdf3;
  --dv-color-warning-700: #b54708;
  --dv-color-warning-500: #f59e0b;
  --dv-color-warning-100: #fff7e6;
  --dv-color-danger-700: #b42318;
  --dv-color-danger-600: #d92d20;
  --dv-color-danger-100: #fef3f2;
  --dv-color-info-700: #175cd3;
  --dv-color-info-100: #eef4ff;

  /* Neutral */
  --dv-color-neutral-950: #101828;
  --dv-color-neutral-900: #172033;
  --dv-color-neutral-700: #344054;
  --dv-color-neutral-600: #475467;
  --dv-color-neutral-500: #667085;
  --dv-color-neutral-400: #98a2b3;
  --dv-color-neutral-300: #cfd8e5;
  --dv-color-neutral-200: #dbe3ed;
  --dv-color-neutral-100: #eef2f6;
  --dv-color-neutral-50: #f7f9fc;
  --dv-color-white: #ffffff;

  /* Surfaces */
  --dv-color-canvas: #eef3f8;
  --dv-color-surface: #ffffff;
  --dv-color-surface-subtle: #f7f9fc;
  --dv-color-sidebar: #10182c;

  /* Typography */
  --dv-font-family: Tahoma, "Segoe UI", Arial, sans-serif;
  --dv-font-size-xs: 0.6875rem;
  --dv-font-size-sm: 0.75rem;
  --dv-font-size-md: 0.875rem;
  --dv-font-size-lg: 1rem;
  --dv-font-size-xl: 1.25rem;
  --dv-font-size-2xl: 1.75rem;
  --dv-font-weight-regular: 400;
  --dv-font-weight-medium: 500;
  --dv-font-weight-semibold: 600;
  --dv-font-weight-bold: 700;
  --dv-line-height-tight: 1.35;
  --dv-line-height-normal: 1.7;

  /* Spacing: 4px base scale */
  --dv-space-1: 0.25rem;
  --dv-space-2: 0.5rem;
  --dv-space-3: 0.75rem;
  --dv-space-4: 1rem;
  --dv-space-5: 1.25rem;
  --dv-space-6: 1.5rem;
  --dv-space-8: 2rem;
  --dv-space-10: 2.5rem;

  /* Radius */
  --dv-radius-sm: 0.5rem;
  --dv-radius-md: 0.625rem;
  --dv-radius-lg: 0.875rem;
  --dv-radius-xl: 1rem;
  --dv-radius-pill: 999px;

  /* Elevation */
  --dv-shadow-xs: 0 1px 2px rgba(16, 24, 40, 0.04);
  --dv-shadow-sm: 0 3px 10px rgba(16, 24, 40, 0.06);
  --dv-shadow-md: 0 10px 30px rgba(28, 40, 80, 0.08);
  --dv-shadow-lg: 0 20px 50px rgba(16, 24, 40, 0.14);

  /* Motion */
  --dv-duration-fast: 150ms;
  --dv-duration-normal: 220ms;
  --dv-ease-standard: cubic-bezier(.2, .8, .2, 1);

  /* Backward-compatible aliases for the current codebase */
  --brand: var(--dv-color-primary-800);
  --brand-dark: var(--dv-color-sidebar);
  --brand-mid: var(--dv-color-primary-600);
  --brand-soft: var(--dv-color-primary-100);
  --brand2: var(--dv-color-accent-600);
  --accent: var(--dv-color-accent-600);
  --accent-soft: var(--dv-color-accent-100);
  --bg: var(--dv-color-canvas);
  --card: var(--dv-color-surface);
  --surface: var(--dv-color-surface);
  --surface-2: var(--dv-color-surface-subtle);
  --ink: var(--dv-color-neutral-900);
  --muted: var(--dv-color-neutral-500);
  --line: var(--dv-color-neutral-200);
  --danger: var(--dv-color-danger-600);
  --warn: var(--dv-color-warning-500);
  --ok: var(--dv-color-success-700);
  --blue: var(--dv-color-info-700);
  --shadow: var(--dv-shadow-md);
  --radius: var(--dv-radius-lg);
}
