:root {
  --font-sans: "Manrope", "Avenir Next", "Segoe UI Variable Text", "Segoe UI", ui-sans-serif, system-ui, sans-serif;
  --font-display: "Manrope", "Avenir Next", "Segoe UI Variable Display", "Segoe UI", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;

  --text-xs: 0.8125rem;
  --text-sm: 0.875rem;
  --text-md: 0.9375rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 2rem;
  --text-4xl: 2.75rem;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;

  --leading-tight: 1.15;
  --leading-normal: 1.5;

  --ink-1000: #07101f;
  --ink-950: #0a1425;
  --ink-900: #111d31;
  --ink-850: #18263c;
  --ink-800: #20314a;
  --ink-700: #40516a;
  --ink-650: #506078;
  --ink-600: #607089;
  --ink-500: #8290a4;
  --ink-400: #a6b1c1;

  --navy-1000: #020814;
  --navy-950: #041021;
  --navy-900: #07182e;
  --navy-850: #0a203b;
  --navy-800: #0d2949;

  /* Identité : logo, accents de marque, badges informatifs et graphiques. */
  --brand-cyan-700: #078fa8;
  --brand-cyan-600: #08b8d3;
  --brand-cyan-500: #10d3eb;
  --brand-cyan-300: #79ebfb;
  --brand-cyan-100: #dff9fd;
  --brand-cyan-050: #f1fcfe;

  /* Action : boutons primaires, liens, focus et navigation active. */
  --action-blue-800: #0647a8;
  --action-blue-700: #075dcc;
  --action-blue-600: #0878e8;
  --action-blue-500: #1193f5;
  --action-blue-100: #e4f2ff;
  --action-blue-050: #f1f7ff;

  /* Palette de données : réservée aux graphiques. */
  --chart-1: var(--brand-cyan-600);
  --chart-2: #1a9ef0;
  --chart-3: #3c7ce8;
  --chart-4: #3156b8;
  --chart-5: #839bc1;

  --surface: #ffffff;
  --surface-2: #f7faff;
  --surface-3: #edf4fb;
  --surface-card: rgba(255, 255, 255, .985);
  --surface-card-muted: #f4f8fc;
  --canvas: #06162b;
  --line: #dce5f0;
  --line-strong: #c9d6e5;
  --card-border: rgba(212, 225, 239, .94);

  --success-700: #087a57;
  --success-100: #ddf8ed;
  --warning-700: #a85c00;
  --warning-100: #fff0d6;
  --amber-500: #ffb845;
  --amber-100: rgba(255, 184, 69, .14);
  --danger-700: #bc3548;
  --danger-600: #d33f52;
  --danger-100: #ffe5e9;

  --radius-xs: 9px;
  --radius-sm: 12px;
  --radius-md: 17px;
  --radius-lg: 23px;
  --radius-xl: 30px;

  --shadow-xs: 0 2px 8px rgba(4, 16, 33, .05);
  --shadow-sm: 0 10px 28px rgba(4, 16, 33, .08);
  --shadow-md: 0 20px 56px rgba(2, 10, 24, .15);
  --shadow-lg: 0 34px 90px rgba(1, 7, 18, .28);
  --shadow-focus: 0 0 0 4px rgba(8, 120, 232, .16);

  --sidebar-w: 258px;
  --content-max: 1640px;
  --form-content-max: 1240px;
  --transition: 170ms cubic-bezier(.2,.8,.2,1);
}
