/**
 * AGEC Ready — Design tokens (source de vérité unique du design system).
 * Tous les contrastes texte/fond clés sont vérifiés ≥ WCAG 2.1 AA (cf. docs/design/brand-and-ux.md).
 * Préfixe `--agec-`. Thème clair (le produit cohabite avec l'admin WordPress, clair par nature).
 *
 * Cohabitation WP admin : pour le « chrome » admin, on s'appuie sur les gris natifs WP ;
 * la couleur de marque (vert) est réservée aux composants AGEC (badges, actions, accents).
 */
:root {
	/* ----- Palette brute (verte / encre) ----- */
	--agec-green-900: #0B3D2A; /* texte sur surfaces vertes claires */
	--agec-green-800: #0E5234; /* hover action, deep */
	--agec-green-700: #0F6B3F; /* MARQUE / action primaire — 6.57:1 sur blanc */
	--agec-green-600: #15834E;
	--agec-green-500: #1E9E5F;
	--agec-green-300: #7FD6A2; /* accent sur fond sombre */
	--agec-green-100: #DCF0E4; /* fond badge « conforme » */
	--agec-green-50:  #EEF7F1; /* surface verte la plus claire */

	--agec-ink-900: #13211B; /* titres — 16.65:1 sur blanc */
	--agec-ink-700: #2E3A34; /* corps — 11.86:1 sur blanc */
	--agec-ink-500: #5A655E; /* texte atténué — 6.07:1 sur blanc */
	--agec-ink-300: #C9D2CD; /* bordures */
	--agec-ink-100: #E7ECE9; /* filets / séparateurs */

	--agec-paper-50:  #F6F8F7; /* fond de page */
	--agec-paper-200: #D9E2DD; /* corps sur fond sombre */
	--agec-white:     #FFFFFF;

	--agec-gold-800: #73490E; /* texte badge veille — 6.78:1 sur gold-100 */
	--agec-gold-700: #8A5A12; /* texte/icône premium — 5.91:1 sur blanc */
	--agec-gold-500: #B5821A;
	--agec-gold-400: #E0B765; /* accent premium sur fond sombre */
	--agec-gold-300: #E7D3A6; /* bordure premium claire (sur gold-100) */
	--agec-gold-100: #F7EEDD; /* fond badge veille / premium */

	--agec-danger-800: #8A1B12;
	--agec-danger-700: #B42318; /* 6.57:1 sur blanc */
	--agec-danger-100: #FBE9E7;

	--agec-info-700: #1E5B8F; /* 7.12:1 sur blanc */
	--agec-info-100: #E7F0F8;

	/* ----- Rôles sémantiques ----- */
	--agec-color-brand:        var(--agec-green-700);
	--agec-color-brand-strong: var(--agec-green-800);
	--agec-color-heading:      var(--agec-ink-900);
	--agec-color-body:         var(--agec-ink-700);
	--agec-color-muted:        var(--agec-ink-500);
	--agec-color-bg:           var(--agec-paper-50);
	--agec-color-surface:      var(--agec-white);
	--agec-color-border:       var(--agec-ink-300);
	--agec-color-hairline:     var(--agec-ink-100);

	--agec-color-success:      var(--agec-green-700);
	--agec-color-success-bg:   var(--agec-green-50);
	--agec-color-success-strong: var(--agec-green-900);
	--agec-color-premium:        var(--agec-gold-700);
	--agec-color-premium-bg:     var(--agec-gold-100);
	--agec-color-premium-text:   var(--agec-gold-800);
	--agec-color-premium-border: var(--agec-gold-300);
	--agec-color-overlay-on-dark: color-mix(in srgb, var(--agec-white) 8%, transparent);
	--agec-color-danger:       var(--agec-danger-700);
	--agec-color-danger-bg:    var(--agec-danger-100);
	--agec-color-info:         var(--agec-info-700);
	--agec-color-info-bg:      var(--agec-info-100);

	/* ----- Typographie ----- */
	--agec-font-display: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--agec-font-ui:      'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--agec-font-mono:    'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

	--agec-text-xs:   12px;
	--agec-text-sm:   13px;
	--agec-text-base: 15px;
	--agec-text-md:   16px;
	--agec-text-lg:   18px;
	--agec-text-xl:   22px;
	--agec-text-2xl:  28px;
	--agec-text-3xl:  36px;
	--agec-text-4xl:  48px;

	--agec-leading-tight: 1.18;
	--agec-leading-snug:  1.35;
	--agec-leading-normal: 1.55;

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

	/* ----- Espacement (base 4px) ----- */
	--agec-space-1: 4px;
	--agec-space-2: 8px;
	--agec-space-3: 12px;
	--agec-space-4: 16px;
	--agec-space-5: 20px;
	--agec-space-6: 24px;
	--agec-space-8: 32px;
	--agec-space-10: 40px;
	--agec-space-12: 48px;
	--agec-space-16: 64px;

	/* ----- Rayons (alignés sur l'admin existant 8/12) ----- */
	--agec-radius-sm:   8px;
	--agec-radius-md:   12px;
	--agec-radius-lg:   16px;
	--agec-radius-pill: 999px;

	/* ----- Bordures ----- */
	--agec-border-width: 1px;

	/* ----- Élévation (ombre encre-verte) ----- */
	--agec-shadow-sm: 0 1px 2px rgba(8, 41, 28, 0.06);
	--agec-shadow-md: 0 4px 14px rgba(8, 41, 28, 0.08);
	--agec-shadow-lg: 0 12px 32px rgba(8, 41, 28, 0.12);

	/* ----- Mouvement ----- */
	--agec-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
	--agec-duration: 160ms;

	/* ----- Focus (visible, AA) ----- */
	--agec-focus-ring: 0 0 0 2px var(--agec-white), 0 0 0 4px var(--agec-green-700);
	/* Anneau de focus « doux » (halo vert atténué) — dérivé du token de marque, aucune couleur en dur. */
	--agec-focus-ring-soft: 0 0 0 3px color-mix(in srgb, var(--agec-green-700) 12%, transparent);
}

@media (prefers-reduced-motion: reduce) {
	:root { --agec-duration: 0ms; }
}
