/**
 * Variables du design system XT Woo Devis
 * Chargé en premier, utilisé par tous les CSS du plugin.
 *
 * @package XT_Woo_Devis
 */

:root {
  /* ===== Marque (Astra) — fallbacks pour les thèmes non-Astra ===== */
  --xt-primary:       var(--ast-global-color-6, #257178);
  --xt-primary-dark:  var(--ast-global-color-0, #1c5d63);
  --xt-primary-hover: var(--ast-global-color-1, #1e6b72);
  --xt-primary-light: var(--ast-global-color-1, #1e6b72);

  /* ===== Texte ===== */
  --xt-text-dark:  var(--ast-global-color-3, #1f2937);
  --xt-text-muted: color-mix(in srgb, var(--ast-global-color-3, #1f2937) 60%, white);

  /* ===== Fonds ===== */
  --xt-bg-white: var(--ast-global-color-4, #ffffff);
  --xt-bg-light: color-mix(in srgb, var(--ast-global-color-7, #e5e7eb) 10%, var(--ast-global-color-4, #ffffff));
  --xt-bg-page:  var(--ast-global-color-4, #ffffff);

  /* ===== Bordures & focus ===== */
  --xt-border:        var(--ast-global-color-7, #e5e7eb);
  --xt-focus-ring:    color-mix(in srgb, var(--ast-global-color-6, #257178) 20%, transparent);

  /* ===== Border radius ===== */
  --xt-border-radius-sm:  6px;
  --xt-border-radius:     8px;
  --xt-border-radius-lg:  12px;
  --xt-border-radius-pill: 9999px;

  /* ===== États — feedback ===== */
  --xt-error:        #dc2626;
  --xt-error-bg:     #fef2f2;
  --xt-error-border: color-mix(in srgb, #dc2626 25%, white);
  --xt-error-text:   #991b1b;

  --xt-success:        #16a34a;
  --xt-success-bg:     #f0fdf4;
  --xt-success-border: color-mix(in srgb, #16a34a 30%, white);
  --xt-success-text:   #166534;

  --xt-warning:        #d97706;
  --xt-warning-bg:     #fffbeb;
  --xt-warning-border: color-mix(in srgb, #d97706 30%, white);
  --xt-warning-text:   #92400e;

  --xt-info:        #2563eb;
  --xt-info-bg:     #eff6ff;
  --xt-info-border: color-mix(in srgb, #2563eb 30%, white);
  --xt-info-text:   #1e40af;

  /* ===== Espacements ===== */
  --xt-space-xs:  4px;
  --xt-space-sm:  8px;
  --xt-space-md:  16px;
  --xt-space-lg:  24px;
  --xt-space-xl:  32px;
  --xt-space-2xl: 48px;

  /* ===== Ombres ===== */
  --xt-shadow-sm:  0 1px 3px color-mix(in srgb, var(--ast-global-color-3, #1f2937) 8%, transparent);
  --xt-shadow-md:  0 4px 12px color-mix(in srgb, var(--ast-global-color-3, #1f2937) 12%, transparent);
  --xt-shadow-btn: 0 4px 14px color-mix(in srgb, var(--ast-global-color-6, #257178) 25%, transparent);

  /* ===== Transitions ===== */
  --xt-transition:        0.15s ease;
  --xt-transition-slow:   0.2s ease;
  --xt-transition-spring: cubic-bezier(0.22, 1, 0.36, 1);

  /* ===== Z-index ===== */
  --xt-z-base:     1;
  --xt-z-dropdown: 100;
  --xt-z-sticky:   200;
  --xt-z-modal:    300;
  --xt-z-toast:    9999;
}

/* ===== Accessibilité — réduction de mouvement ===== */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: 0.01ms !important;
    animation-duration:  0.01ms !important;
  }
}
