/**
 * CSS Niveau 1 — Tokens & Variables de Design System (tokens.css)
 * Source unique des styles fondamentaux du Studio iVideoA.
 */

/* Polices Locales Montserrat Officielles */
@font-face {
  font-family: 'Montserrat Black';
  src: url('/assets/fonts/Montserrat-Black.ttf') format('truetype');
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat ExtraBold';
  src: url('/assets/fonts/Montserrat-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat Bold';
  src: url('/assets/fonts/Montserrat-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat SemiBold';
  src: url('/assets/fonts/Montserrat-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat Regular';
  src: url('/assets/fonts/Montserrat-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

:root {
  /* --- Palette de Couleurs Fondamentales --- */
  --color-bg-canvas: #090d16;
  --color-bg-base: #060911;
  --color-bg-surface: #0f172a;
  --color-bg-card: rgba(22, 30, 49, 0.7);
  --color-bg-card-hover: rgba(30, 41, 67, 0.85);
  --color-bg-card-active: rgba(37, 51, 84, 0.95);
  --color-bg-elevated: #1e293b;
  --color-bg-input: rgba(15, 23, 42, 0.8);
  --color-bg-backdrop: rgba(5, 8, 15, 0.75);

  /* Alias Legacy */
  --bg-dark: #090d16;
  --bg-card: rgba(22, 30, 49, 0.7);
  --bg-card-hover: rgba(30, 41, 67, 0.8);
  --border-color: rgba(255, 255, 255, 0.08);
  --border-highlight: rgba(99, 102, 241, 0.3);
  --text-primary: #f8fafc;
  --text-secondary: #94a3b8;
  --text-muted: #64748b;
  --brand-blue: #3b82f6;
  --brand-pink: #d926f8;

  /* --- Bordures & Lignes de Séparation --- */
  --color-border: rgba(255, 255, 255, 0.08);
  --color-border-subtle: rgba(255, 255, 255, 0.04);
  --color-border-hover: rgba(255, 255, 255, 0.16);
  --color-border-focus: rgba(99, 102, 241, 0.5);
  --color-border-brand: rgba(217, 38, 248, 0.4);

  /* --- Typographie & Textes --- */
  --color-text-primary: #f8fafc;
  --color-text-secondary: #94a3b8;
  --color-text-muted: #64748b;
  --color-text-inverse: #0f172a;

  /* --- Couleurs de Marque iVideoA --- */
  --color-brand-blue: #3b82f6;
  --color-brand-blue-hover: #60a5fa;
  --color-brand-pink: #d926f8;
  --color-brand-pink-hover: #e879f9;
  --color-brand-purple: #8b5cf6;
  --color-brand-indigo: #6366f1;

  /* --- Statuts & Retours Utilisateur --- */
  --color-status-success: #10b981;
  --color-status-success-bg: rgba(16, 185, 129, 0.15);
  --color-status-warning: #f59e0b;
  --color-status-warning-bg: rgba(245, 158, 11, 0.15);
  --color-status-danger: #ef4444;
  --color-status-danger-bg: rgba(239, 68, 68, 0.15);
  --color-status-info: #38bdf8;
  --color-status-info-bg: rgba(56, 189, 248, 0.15);

  /* --- Crédits & Facturation --- */
  --color-credit-gold: #f59e0b;
  --color-credit-amber: #d97706;
  --color-credit-bg: rgba(245, 158, 11, 0.12);
  --color-credit-border: rgba(245, 158, 11, 0.35);

  /* --- Dégradés Signatures --- */
  --gradient-brand: linear-gradient(135deg, #3b82f6 0%, #d926f8 100%);
  --gradient-brand-hover: linear-gradient(135deg, #60a5fa 0%, #e879f9 100%);
  --gradient-title: linear-gradient(135deg, #3b82f6 0%, #d926f8 100%);
  --gradient-card: linear-gradient(145deg, rgba(30, 41, 67, 0.6) 0%, rgba(15, 23, 42, 0.8) 100%);
  --gradient-glass: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.01) 100%);
  --gradient-credit: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);

  /* --- Ombres & Halos Lumineux --- */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, 0.6), 0 8px 10px -6px rgba(0, 0, 0, 0.6);
  --shadow-glow-pink: 0 0 25px rgba(217, 38, 248, 0.35);
  --shadow-glow-blue: 0 0 25px rgba(59, 130, 246, 0.35);
  --shadow-glow-credit: 0 0 15px rgba(245, 158, 11, 0.4);

  /* --- Typographies --- */
  --font-family-sans: 'Outfit', 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-family-display: 'Montserrat ExtraBold', 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-family-mono: 'JetBrains Mono', SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* --- Tailles de Police --- */
  --font-size-2xs: 0.6875rem; /* 11px */
  --font-size-xs: 0.75rem;    /* 12px */
  --font-size-sm: 0.8125rem;  /* 13px */
  --font-size-base: 0.875rem; /* 14px */
  --font-size-md: 1rem;       /* 16px */
  --font-size-lg: 1.125rem;   /* 18px */
  --font-size-xl: 1.25rem;    /* 20px */
  --font-size-2xl: 1.5rem;    /* 24px */

  /* --- Espacements --- */
  --space-0-5: 0.125rem; /* 2px */
  --space-1: 0.25rem;    /* 4px */
  --space-1-5: 0.375rem; /* 6px */
  --space-2: 0.5rem;     /* 8px */
  --space-3: 0.75rem;    /* 12px */
  --space-4: 1rem;       /* 16px */
  --space-5: 1.25rem;    /* 20px */
  --space-6: 1.5rem;     /* 24px */
  --space-8: 2rem;       /* 32px */

  /* --- Rayons de Courbure --- */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;

  /* --- Niveaux de Profondeur (Z-Index) --- */
  --z-base: 1;
  --z-sticky: 100;
  --z-dropdown: 200;
  --z-modal-backdrop: 1000;
  --z-modal: 1001;
  --z-toast: 2000;

  /* --- Transitions & Animations --- */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-smooth: 350ms cubic-bezier(0.16, 1, 0.3, 1);
}
