/* ═══════════════════════════════════════════════════════════════════
   La Manufacture — Design v2 "Calm Precision" (light mode)
   Tokens : couleurs, typographie, rayons, ombres, motion.
   Une seule idée : l'outil disparaît, la data parle.
   ═══════════════════════════════════════════════════════════════════ */

:root {
  /* ─── Surfaces (warm paper white, pas blanc pur agressif) ─────── */
  --paper-0: #FAFAF7;   /* fond app */
  --paper-1: #FFFFFF;   /* cards, panels (surfaces élevées) */
  --paper-2: #F4F3EF;   /* hover, inputs, alt row */
  --paper-3: #ECEAE4;   /* borders discrets */
  --paper-4: #D6D3CC;   /* borders élevés */

  /* ─── Encre (texte) — gris chaud, pas noir clinical ──────────── */
  --ink-1: #17181B;     /* primary text */
  --ink-2: #4A4D54;     /* secondary */
  --ink-3: #7C7F86;     /* tertiary */
  --ink-4: #A8ABB0;     /* disabled, placeholders */

  /* ─── Accents ────────────────────────────────────────────────── */
  --moss:       #16A34A;   /* vert principal (plus mûr que #22C55E) */
  --moss-deep:  #15803D;   /* hover / pressed */
  --moss-soft:  #F0FDF4;   /* bg soft */
  --moss-ring:  rgba(22,163,74,0.14);

  --amber:      #D97706;   /* warning */
  --amber-soft: #FEF3C7;

  --rust:       #DC2626;   /* danger */
  --rust-soft:  #FEF2F2;

  --ocean:      #2563EB;   /* info */
  --ocean-soft: #EFF6FF;

  /* ─── Mapping variables héritées (cascade sur tout l'app) ────── */
  --bg: var(--paper-0);
  --card: var(--paper-1);
  --text: var(--ink-1);
  --text-light: var(--ink-2);
  --text-muted: var(--ink-3);
  --border: var(--paper-3);
  --border-light: var(--paper-3);

  --primary: var(--moss);
  --primary-light: var(--moss);
  --primary-dark: var(--moss-deep);
  --primary-50: var(--moss-soft);
  --accent: var(--moss);

  --danger: var(--rust);
  --danger-light: var(--rust-soft);
  --warning: var(--amber);
  --warning-light: var(--amber-soft);
  --success: var(--moss);
  --success-light: var(--moss-soft);
  --info: var(--ocean);
  --info-light: var(--ocean-soft);

  /* ─── Typography ─ une seule famille, hiérarchie par poids ───── */
  --font-ui: 'Geist', 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  /* ─── Layout ─────────────────────────────────────────────────── */
  --sidebar-w: 232px;
  --radius-sm: 6px;
  --radius: 8px;
  --radius-lg: 12px;

  /* ─── Shadows — minimales, presque invisibles ────────────────── */
  --shadow-sm: 0 1px 2px rgba(15,15,15,0.04);
  --shadow-md: 0 1px 2px rgba(15,15,15,0.04), 0 4px 8px rgba(15,15,15,0.04);
  --shadow-lg: 0 2px 4px rgba(15,15,15,0.05), 0 16px 32px rgba(15,15,15,0.08);

  /* ─── Motion ─────────────────────────────────────────────────── */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --transition: 0.16s var(--ease-out);
  --transition-fast: 0.12s var(--ease-out);
}

/* ─── Global body / font application ───────────────────────────── */

html { background: var(--paper-0); }

body {
  font-family: var(--font-ui);
  font-feature-settings: 'ss01', 'cv11';
  letter-spacing: -0.005em;
  background: var(--paper-0);
  color: var(--ink-1);
  -webkit-font-smoothing: antialiased;
}

/* Chiffres tabulaires partout où on les aligne en colonnes */
.amount,
.stat-value,
td.text-right,
th.text-right,
.renta-value {
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum';
}

/* ─── Scrollbars discrètes ─────────────────────────────────────── */

* {
  scrollbar-width: thin;
  scrollbar-color: var(--paper-4) transparent;
}

*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb {
  background: var(--paper-4);
  border-radius: 10px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
*::-webkit-scrollbar-thumb:hover {
  background: var(--ink-4);
  background-clip: padding-box;
  border: 2px solid transparent;
}

/* ─── Sélection ────────────────────────────────────────────────── */

::selection {
  background: var(--moss-ring);
  color: var(--ink-1);
}
