/* ==============================================
   LAYERONE WEBSITE - Design Tokens
   Basé sur le design glassmorphism de l'app
   ============================================== */

:root {
  /* ========== COULEURS ACCENT (basées sur le logo) ========== */
  --accent-blue: rgb(66, 133, 255);
  --accent-purple: rgb(140, 100, 240);
  --accent-pink: rgb(236, 72, 180);
  --accent-primary: var(--accent-blue);
  --accent-secondary: var(--accent-pink);
  --accent-gradient: linear-gradient(135deg, var(--accent-blue), var(--accent-purple), var(--accent-pink));

  /* ========== COULEURS TEXTE ========== */
  --text-primary: rgb(51, 64, 89);
  --text-secondary: rgb(102, 115, 140);
  --text-muted: rgb(128, 140, 163);
  --text-placeholder: rgb(153, 166, 179);
  --text-white: #ffffff;

  /* ========== COULEURS BORDURES & FONDS ========== */
  --border-light: rgb(217, 222, 230);
  --border-input: rgb(217, 222, 230);
  --background-card: rgba(255, 255, 255, 0.85);
  --background-input: rgb(255, 255, 255);
  --background-section: rgb(248, 250, 252);

  /* ========== COULEURS SÉMANTIQUES ========== */
  --success: rgb(0, 170, 68);
  --danger: rgb(221, 0, 0);
  --warning: rgb(255, 136, 0);
  --info: var(--accent-primary);

  /* ========== FOND ANIMÉ - MODE CLAIR ========== */
  --bg-gradient-1: rgb(248, 250, 255);
  --bg-gradient-2: rgb(245, 248, 255);
  --bg-gradient-3: rgb(250, 248, 252);

  --wave-1: rgba(66, 133, 255, 0.25);
  --wave-2: rgba(140, 100, 240, 0.20);
  --wave-3: rgba(236, 72, 180, 0.15);
  --wave-4: rgba(180, 100, 220, 0.18);

  /* ========== FOND ANIMÉ - MODE SOMBRE ========== */
  --dark-bg-1: rgb(12, 15, 30);
  --dark-bg-2: rgb(20, 22, 45);
  --dark-bg-3: rgb(15, 18, 38);

  --dark-wave-1: rgba(66, 133, 255, 0.25);
  --dark-wave-2: rgba(140, 100, 240, 0.20);
  --dark-wave-3: rgba(236, 72, 180, 0.15);
  --dark-wave-4: rgba(180, 100, 220, 0.18);

  /* ========== TYPOGRAPHIE ========== */
  --font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --text-xs: 0.6875rem;   /* 11px */
  --text-sm: 0.75rem;     /* 12px */
  --text-base: 0.8125rem; /* 13px */
  --text-md: 0.875rem;    /* 14px */
  --text-lg: 0.9375rem;   /* 15px */
  --text-xl: 1.25rem;     /* 20px */
  --text-2xl: 1.625rem;   /* 26px */
  --text-3xl: 2.25rem;    /* 36px */
  --text-4xl: 3rem;       /* 48px */
  --text-5xl: 3.5rem;     /* 56px */

  --font-regular: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;

  --leading-tight: 1.2;
  --leading-normal: 1.5;
  --leading-relaxed: 1.6;

  /* ========== ESPACEMENTS ========== */
  --space-xs: 0.25rem;   /* 4px */
  --space-sm: 0.5rem;    /* 8px */
  --space-md: 0.75rem;   /* 12px */
  --space-lg: 1rem;      /* 16px */
  --space-xl: 1.25rem;   /* 20px */
  --space-2xl: 1.5rem;   /* 24px */
  --space-3xl: 2rem;     /* 32px */
  --space-4xl: 2.5rem;   /* 40px */
  --space-5xl: 3rem;     /* 48px */
  --space-6xl: 4rem;     /* 64px */
  --space-7xl: 6rem;     /* 96px */

  /* ========== LAYOUT ========== */
  --container-max: 1200px;
  --container-padding: var(--space-lg);
  --section-padding: var(--space-7xl);
  --nav-height: 72px;

  /* ========== OMBRES ========== */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 25px 50px rgba(0, 0, 0, 0.2);
  --shadow-card: 0 25px 50px rgba(0, 0, 0, 0.25), 0 10px 20px rgba(0, 0, 0, 0.15);
  --shadow-accent: 0 6px 20px rgba(140, 100, 240, 0.4);

  /* ========== BORDER RADIUS ========== */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* ========== TRANSITIONS ========== */
  --transition-fast: 150ms ease;
  --transition-base: 200ms ease;
  --transition-slow: 300ms ease;

  /* ========== Z-INDEX ========== */
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-fixed: 300;
  --z-modal-backdrop: 400;
  --z-modal: 500;
  --z-tooltip: 600;
}

/* ========== MODE SOMBRE ========== */
@media (prefers-color-scheme: dark) {
  :root {
    --text-primary: rgb(230, 235, 245);
    --text-secondary: rgb(180, 190, 210);
    --text-muted: rgb(140, 150, 170);
    --border-light: rgb(60, 70, 90);
    --background-card: rgba(30, 35, 50, 0.85);
    --background-input: rgb(40, 45, 60);
    --background-section: rgb(20, 25, 40);
  }
}

/* ========== RÉDUCTION DE MOUVEMENT ========== */
@media (prefers-reduced-motion: reduce) {
  :root {
    --transition-fast: 0.01ms;
    --transition-base: 0.01ms;
    --transition-slow: 0.01ms;
  }
}
