/* ============================================================================
   GEVA — Design tokens (charte officielle Global Essor)
   Source unique de vérité. Aucun composant ne doit écrire une couleur en dur :
   tout passe par var(--ge-*). Voir docs/CHARTE.md.
   Mode CLAIR uniquement pour l'instant ; la structure est prête pour un mode
   sombre (voir bloc réservé en bas) sans rien réécrire.
   ========================================================================== */

:root {
  /* --- Palette de marque (brut) ------------------------------------------ */
  --ge-blue: #1F4FD8;          /* bleu principal */
  --ge-blue-bright: #2F7BFF;   /* bleu vif */
  --ge-blue-deep: #071A3D;     /* bleu profond */
  --ge-ink: #0B1B2B;           /* bleu profond / encre */

  --ge-success: #1B9B5A;
  --ge-white: #FFFFFF;

  /* --- Dégradé signature ------------------------------------------------- */
  --ge-gradient: linear-gradient(135deg, #1F4FD8, #2F7BFF);
  --ge-gradient-soft: linear-gradient(135deg, rgba(31,79,216,.10), rgba(47,123,255,.10));

  /* --- Rôles sémantiques (à utiliser dans les composants) ---------------- */
  --ge-bg: var(--ge-white);          /* fond appli */
  --ge-bg-soft: #F8FAFE;             /* fond doux (sections, en-têtes table) */
  --ge-surface: var(--ge-white);     /* cartes, panneaux */
  --ge-border: #E8EEF6;              /* lignes / bordures */

  --ge-text: var(--ge-ink);          /* texte fort */
  --ge-text-soft: #3A4A5A;           /* texte secondaire */
  --ge-text-muted: #5A6B7B;          /* texte atténué */
  --ge-text-on-blue: var(--ge-white);/* texte sur fond bleu/dégradé */

  --ge-primary: var(--ge-blue);
  --ge-primary-hover: #1A45BE;
  --ge-focus-ring: rgba(31, 79, 216, .28);
  --ge-border-strong: #D7E0EE;       /* bordure au survol */
  --ge-border-soft: #EEF3FB;         /* bordure très discrète (premium : on s'appuie sur l'ombre) */
  --ge-surface-raised: #FFFFFF;      /* carte élevée */
  --ge-tint: #F4F8FE;                /* aplat bleuté très léger (accents discrets) */

  /* --- Couleurs d'état (hors palette de marque, usage fonctionnel justifié :
         succès dérivé du vert charte ; alerte/danger nécessaires pour le feedback) */
  --ge-success-bg: rgba(27, 155, 90, .13);
  --ge-success-text: #0F6B39;
  --ge-success-border: rgba(27, 155, 90, .32);
  --ge-warn-bg: #FBE6C2;
  --ge-warn-text: #8A5200;
  --ge-warn-border: #EFC987;
  --ge-warn-num: #A96A12;            /* chiffre "en attente" */
  --ge-danger: #E5484D;
  --ge-danger-hover: #D33B40;
  --ge-danger-bg: #FDECEC;
  --ge-danger-text: #9B1C1C;
  --ge-danger-border: #F5C2C2;

  /* --- Typographie ------------------------------------------------------- */
  --ge-font: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --ge-fw-body: 400;
  --ge-fw-medium: 500;
  --ge-fw-semibold: 600;
  --ge-fw-bold: 700;
  --ge-fw-strong: 800;   /* titres */
  --ge-fw-black: 900;    /* titres forts */

  /* Échelle typographique (hiérarchie nette : le regard sait où aller). */
  --ge-fs-display: 2.6rem;   /* chiffres clés / hero */
  --ge-fs-h1: 1.75rem;       /* titre de page */
  --ge-fs-h2: 1.25rem;       /* titre de carte / section */
  --ge-fs-body: 0.95rem;     /* corps */
  --ge-fs-sm: 0.85rem;       /* aide / secondaire */
  --ge-fs-caption: 0.72rem;  /* légendes / labels uppercase */

  /* --- Rayons (charte : cartes 18-28px) ---------------------------------- */
  --ge-radius-sm: 10px;
  --ge-radius: 18px;
  --ge-radius-lg: 24px;
  --ge-radius-xl: 28px;
  --ge-radius-pill: 999px;

  /* --- Ombres douces multi-couches (profondeur subtile, pas de bordure dure) --- */
  --ge-shadow-sm: 0 1px 2px rgba(11, 27, 43, .04), 0 1px 3px rgba(11, 27, 43, .05);
  --ge-shadow: 0 1px 2px rgba(11, 27, 43, .04), 0 6px 16px rgba(11, 27, 43, .055),
               0 12px 28px rgba(11, 27, 43, .045);
  --ge-shadow-lg: 0 2px 6px rgba(11, 27, 43, .05), 0 16px 40px rgba(11, 27, 43, .10),
                  0 28px 64px rgba(11, 27, 43, .07);
  --ge-halo: 0 10px 30px rgba(31, 79, 216, .16);   /* halo bleu adouci au survol */

  /* --- Espacements (généreux : 1er marqueur de premium) ------------------- */
  --ge-space-1: 4px;
  --ge-space-2: 8px;
  --ge-space-3: 12px;
  --ge-space-4: 16px;
  --ge-space-5: 24px;
  --ge-space-6: 32px;
  --ge-space-7: 48px;
  --ge-space-8: 64px;

  /* --- Layout ------------------------------------------------------------ */
  --ge-sidebar-w: 260px;
  --ge-header-h: 68px;
  --ge-content-max: 1200px;

  /* --- Transitions (dosées) ---------------------------------------------- */
  --ge-transition: .16s ease;
  --ge-transition-lift: .24s cubic-bezier(.2, .7, .2, 1);  /* élévation douce au survol */
}

/* ----------------------------------------------------------------------------
   Mode SOMBRE — RÉSERVÉ (non activé). La charte officielle ne définit qu'un
   univers clair. Quand le sombre sera validé, redéfinir ici les rôles
   sémantiques (--ge-bg, --ge-surface, --ge-text, --ge-border, ...) ; aucun
   composant n'aura à changer puisqu'ils consomment déjà ces variables.

   [data-theme="dark"] {
     --ge-bg: #0B1B2B;
     --ge-surface: #0F2238;
     --ge-text: #EAF1FB;
     ...
   }
   -------------------------------------------------------------------------- */
