/* ============================================================
   PAPA PV — Design Tokens
   Source unique de vérité pour couleurs, typo, espacement.
   Ne contient que des variables CSS — pas de règles de style.
   ============================================================ */

:root {

  /* ── Couleurs principales ────────────────────────────────── */
  --color-primary:       #1E3A8A;
  --color-primary-dark:  #162d6e;
  --color-primary-light: #dbeafe;

  --color-secondary:      #2563EB;
  --color-secondary-dark: #1d4ed8;

  --color-accent:       #10B981;
  --color-accent-dark:  #059669;
  --color-accent-light: #d1fae5;

  --color-bg:      #F8FAFC;
  --color-white:   #ffffff;
  --color-text:    #0F172A;
  --color-neutral: #CBD5E1;

  /* Échelle de gris */
  --gray-50:  #f8fafc;
  --gray-100: #f1f5f9;
  --gray-200: #e2e8f0;
  --gray-300: #cbd5e1;
  --gray-400: #94a3b8;
  --gray-500: #64748b;
  --gray-600: #475569;
  --gray-700: #334155;
  --gray-800: #1e293b;
  --gray-900: #0f172a;

  /* ── Couleurs de statut commande ─────────────────────────── */
  --status-success-bg:     #dcfce7;
  --status-success-text:   #166534;
  --status-success-border: #86efac;

  --status-pending-bg:     #fef3c7;
  --status-pending-text:   #92400e;
  --status-pending-border: #fcd34d;

  --status-progress-bg:     #dbeafe;
  --status-progress-text:   #1e40af;
  --status-progress-border: #93c5fd;

  --status-error-bg:     #fee2e2;
  --status-error-text:   #991b1b;
  --status-error-border: #fca5a5;

  --status-info-bg:     #e0f2fe;
  --status-info-text:   #075985;
  --status-info-border: #7dd3fc;

  --color-danger:      #dc2626;
  --color-danger-dark: #b91c1c;
  --color-danger-light:#fee2e2;

  --color-warning:      #f59e0b;
  --color-warning-dark: #d97706;
  --color-warning-light:#fef3c7;

  /* ── Typographie ─────────────────────────────────────────── */
  --font-heading: 'Poppins', sans-serif;
  --font-body:    'Inter', sans-serif;

  --fw-normal:   400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;

  --text-h1:      2.5rem;    /* 40px */
  --text-h2:      2rem;      /* 32px */
  --text-h3:      1.5rem;    /* 24px */
  --text-h4:      1.25rem;   /* 20px */
  --text-body:    1rem;      /* 16px */
  --text-small:   0.875rem;  /* 14px */
  --text-caption: 0.75rem;   /* 12px */

  --lh-tight:  1.2;
  --lh-snug:   1.35;
  --lh-normal: 1.5;
  --lh-relaxed:1.65;

  /* ── Espacement (échelle 4px) ────────────────────────────── */
  --sp-1:  0.25rem;   /*  4px */
  --sp-2:  0.5rem;    /*  8px */
  --sp-3:  0.75rem;   /* 12px */
  --sp-4:  1rem;      /* 16px */
  --sp-5:  1.25rem;   /* 20px */
  --sp-6:  1.5rem;    /* 24px */
  --sp-8:  2rem;      /* 32px */
  --sp-10: 2.5rem;    /* 40px */
  --sp-12: 3rem;      /* 48px */
  --sp-16: 4rem;      /* 64px */
  --sp-20: 5rem;      /* 80px */

  /* ── Rayons ──────────────────────────────────────────────── */
  --radius-xs:   0.25rem;  /*  4px */
  --radius-sm:   0.5rem;   /*  8px */
  --radius-md:   0.75rem;  /* 12px  – cartes */
  --radius-lg:   1rem;     /* 16px  – modals */
  --radius-xl:   1.5rem;   /* 24px */
  --radius-pill: 999px;    /* pills, badges, boutons arrondis */

  /* ── Ombres ──────────────────────────────────────────────── */
  --shadow-xs: 0 1px 2px rgba(0,0,0,.06);
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);
  --shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.05);
  --shadow-lg: 0 10px 15px rgba(0,0,0,.08), 0 4px 6px rgba(0,0,0,.04);
  --shadow-xl: 0 20px 25px rgba(0,0,0,.08), 0 10px 10px rgba(0,0,0,.04);

  /* ── Layout ──────────────────────────────────────────────── */
  --container-max: 1200px;
  --container-pad: var(--sp-6);
  --topbar-h:      68px;
  --sidebar-w:     260px;
  --bottom-nav-h:  64px;

  /* ── Transitions ─────────────────────────────────────────── */
  --t-fast:   150ms ease;
  --t-normal: 250ms ease;
  --t-slow:   400ms ease;

  /* ── Z-index ─────────────────────────────────────────────── */
  --z-dropdown: 100;
  --z-sticky:   200;
  --z-fixed:    300;
  --z-overlay:  350;
  --z-modal:    400;
  --z-toast:    500;
}
