/*
 * SoneyaDrive — Palette Guinée (vert forêt / or / rouge drapeau)
 */

:root {
    /* === Identité Guinée === */
    --gn-green:       #1A8F5C;   /* vert forêt – couleur principale */
    --gn-green-dark:  #136B44;
    --gn-green-light: #4DB88A;
    --gn-gold:        #F5A623;   /* or/ambre – accent */
    --gn-gold-dark:   #D4891A;
    --gn-gold-light:  #FBCE78;
    --gn-red:         #CE1126;   /* rouge drapeau guinéen */
    --gn-dark:        #0D2E1A;   /* fond sombre navigation */
    --gn-light:       #F6FBF8;   /* fond clair teinté vert */

    /* === Compatibilité alias === */
    --bbc-blue:  var(--gn-green);   /* rétro-compat */
    --bbc-green: var(--gn-gold);
    --bbc-dark:  var(--gn-dark);
    --bbc-bg:    var(--gn-light);
    --bbc-radius: 18px;

    /* === Tokens principaux === */
    --primary-color:    var(--gn-green);
    --primary-dark:     var(--gn-green-dark);
    --primary-light:    var(--gn-green-light);
    --primary-lighter:  #b2e8d0;

    --secondary-color:  var(--gn-gold);
    --secondary-dark:   var(--gn-gold-dark);
    --secondary-light:  var(--gn-gold-light);

    --accent-color:     var(--gn-gold);
    --accent-dark:      var(--gn-gold-dark);
    --accent-light:     var(--gn-gold-light);
    
    /* === COULEURS D'ÉTAT === */
    --success-color: #22c55e;
    --danger-color: #ef4444;
    --warning-color: #f59e0b;
    --info-color: #3b82f6;
    --success-50: #ecfdf5;
    --success-200: #a7f3d0;
    --danger-50: #fef2f2;
    --danger-200: #fecaca;
    --warning-50: #fffbeb;
    --warning-200: #fde68a;
    --info-50: #eff6ff;
    --info-200: #bfdbfe;

    /* === NOUVELLE ÉCHELLE DE GRIS (Plus douce) === */

    --light-bg: var(--bbc-bg);
    --dark-bg: var(--bbc-dark);
    --white: #ffffff;
    --black: #020617;
    --gray-50: #f8fafc;
    --gray-100: #f1f5f9;    /* slate-100 */
    --gray-200: #e2e8f0;    /* slate-200 */
    --gray-300: #cbd5e1;    /* slate-300 */
    --gray-400: #94a3b8;    /* slate-400 */
    --gray-500: #64748b;    /* slate-500 */
    --gray-600: #475569;    /* slate-600 */
    --gray-700: #334155;    /* slate-700 */
    --gray-800: #1e293b;    /* slate-800 */
    --gray-900: #0f172a;    /* slate-900 */
    
    /* === COULEURS DE TEXTE === */
    --text-dark: var(--gray-800);
    --text-muted: var(--gray-500);
    --text-light: var(--gray-400);
    --text-white: var(--white);
    
    /* === COULEURS DE BORDURE (Plus subtiles) === */
    --border-color: var(--gray-200);
    --border-light: var(--gray-100);
    --border-dark: var(--gray-300);
    
    /* === OMBRES (Plus douces) === */
    --box-shadow-sm: 0 4px 15px rgba(0, 0, 0, 0.04);
    --box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
    --box-shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.08);
    --box-shadow-xl: 0 24px 60px rgba(0, 0, 0, 0.1);
    --box-shadow-inner: inset 0 2px 6px rgba(0, 0, 0, 0.05);

    /* === Rayons === */
    --border-radius-sm: 10px;
    --border-radius: var(--bbc-radius);
    --border-radius-lg: 28px;
    --border-radius-xl: 40px;
    --border-radius-pill: 999px;
    
    /* === ESPACEMENT === */
    --spacing-xs: 0.35rem;
    --spacing-sm: 0.75rem;
    --spacing-md: 1.25rem;
    --spacing-lg: 2rem;
    --spacing-xl: 3rem;
    --spacing-xxl: 4rem;
    
    /* === TYPOGRAPHIE (Standardisée sur Inter) === */
    --font-family-base: 'Questrial', 'Inter', system-ui, -apple-system, Segoe UI, sans-serif;
    --font-family-heading: 'Questrial', 'Inter', sans-serif;
    --font-family-mono: 'JetBrains Mono', 'Fira Code', monospace;
    
    --font-size-xs: 0.75rem;   /* 12px */
    --font-size-sm: 0.875rem;  /* 14px */
    --font-size-base: 1rem;    /* 16px */
    --font-size-lg: 1.125rem;  /* 18px */
    --font-size-xl: 1.25rem;   /* 20px */
    --font-size-xxl: 1.5rem;   /* 24px */
    --font-size-3xl: 1.875rem; /* 30px */
    --font-size-4xl: 2.25rem;  /* 36px */
    
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    
    --line-height-tight: 1.25;
    --line-height-normal: 1.6;
    --line-height-relaxed: 1.8;
    
    /* === TRANSITIONS === */
    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 500ms cubic-bezier(0.4, 0, 0.2, 1);
    
    /* === Z-INDEX === */
    --z-dropdown: 10;
    --z-sticky: 20;
    --z-fixed: 30;
    --z-modal-backdrop: 40;
    --z-modal: 50;
    
    /* === BREAKPOINTS === */
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    
    /* === DÉGRADÉS === */
    --gradient-primary:   linear-gradient(135deg, var(--gn-green), var(--gn-green-dark));
    --gradient-secondary: linear-gradient(135deg, var(--gn-gold),  var(--gn-gold-dark));
    --gradient-accent:    linear-gradient(135deg, var(--gn-gold),  var(--gn-gold-dark));
    --gradient-hero:      linear-gradient(135deg, var(--gn-dark) 0%, #1a4a2e 60%, var(--gn-green) 100%);
    --gradient-cta:       linear-gradient(135deg, var(--gn-green), var(--gn-gold));
    --nav-gradient:       linear-gradient(135deg, var(--gn-dark), #1a3d26);
    --cta-gradient:       linear-gradient(135deg, var(--gn-green), var(--gn-gold));
    --nav-bg:             var(--gn-dark);
}

/* Utilitaires (généralement pas besoin de les modifier) */
.text-primary { color: var(--primary-color) !important; }
.bg-primary { background-color: var(--primary-color) !important; }
.border-primary { border-color: var(--primary-color) !important; }
.shadow { box-shadow: var(--box-shadow) !important; }
.rounded { border-radius: var(--border-radius) !important; }
.rounded-lg { border-radius: var(--border-radius-lg) !important; }
.rounded-pill { border-radius: var(--border-radius-pill) !important; }
