/**
 * Template 2 - Océan Profond
 * Palette inspirée des profondeurs marines - bleus profonds, cyans et teintes aquatiques
 * Date: 2025-07-11 03:21:00
 */

:root {
    /* === COULEURS PRINCIPALES === */
    --primary-50: #ecfeff;
    --primary-100: #cffafe;
    --primary-200: #a5f3fc;
    --primary-300: #67e8f9;
    --primary-400: #22d3ee;
    --primary-500: #06b6d4;
    --primary-600: #0891b2;
    --primary-700: #0e7490;
    --primary-800: #155e75;
    --primary-900: #164e63;

    --secondary-50: #f0f9ff;
    --secondary-100: #e0f2fe;
    --secondary-200: #bae6fd;
    --secondary-300: #7dd3fc;
    --secondary-400: #38bdf8;
    --secondary-500: #0ea5e9;
    --secondary-600: #0284c7;
    --secondary-700: #0369a1;
    --secondary-800: #075985;
    --secondary-900: #0c4a6e;

    --accent-50: #f0fdfa;
    --accent-100: #ccfbf1;
    --accent-200: #99f6e4;
    --accent-300: #5eead4;
    --accent-400: #2dd4bf;
    --accent-500: #14b8a6;
    --accent-600: #0d9488;
    --accent-700: #0f766e;
    --accent-800: #115e59;
    --accent-900: #134e4a;

    /* === VARIABLES SÉMANTIQUES === */
    --text-primary: #0c4a6e;
    --text-secondary: #075985;
    --text-muted: #0ea5e9;
    --bg-primary: #f0f9ff;
    --bg-secondary: #e0f2fe;
    --border-light: #38bdf8;
    --border-dark: #0284c7;

    /* === VARIABLES RGB === */
    --primary-200-rgb: 165, 243, 252;
    --primary-300-rgb: 103, 232, 249;
    --primary-400-rgb: 34, 211, 238;
    --primary-500-rgb: 6, 182, 212;
    --primary-600-rgb: 8, 145, 178;
    --primary-700-rgb: 14, 116, 144;
    --primary-800-rgb: 21, 94, 117;
    --primary-900-rgb: 22, 78, 99;
    --secondary-200-rgb: 186, 230, 253;
    --secondary-300-rgb: 125, 211, 252;
    --secondary-400-rgb: 56, 189, 248;
    --secondary-500-rgb: 14, 165, 233;
    --secondary-600-rgb: 2, 132, 199;
    --secondary-700-rgb: 3, 105, 161;
    --secondary-800-rgb: 7, 89, 133;
    --secondary-900-rgb: 12, 74, 110;
    --accent-200-rgb: 153, 246, 228;
    --accent-300-rgb: 94, 234, 212;
    --accent-400-rgb: 45, 212, 191;
    --accent-500-rgb: 20, 184, 166;
    --accent-600-rgb: 13, 148, 136;
    --accent-700-rgb: 15, 118, 110;
    --accent-800-rgb: 17, 94, 89;
    --accent-900-rgb: 19, 78, 74;
}

/* === OVERRIDES TAILWIND COMPLETS === */

/* Backgrounds */
.bg-blue-50 { background-color: var(--primary-50) !important; }
.bg-blue-100 { background-color: var(--primary-100) !important; }
.bg-blue-200 { background-color: var(--primary-200) !important; }
.bg-blue-300 { background-color: var(--primary-300) !important; }
.bg-blue-400 { background-color: var(--primary-400) !important; }
.bg-blue-500 { background-color: var(--primary-500) !important; }
.bg-blue-600 { background-color: var(--primary-600) !important; }
.bg-blue-700 { background-color: var(--primary-700) !important; }
.bg-blue-800 { background-color: var(--primary-800) !important; }
.bg-blue-900 { background-color: var(--primary-900) !important; }

/* Text Colors */
.text-blue-50 { color: var(--primary-50) !important; }
.text-blue-100 { color: var(--primary-100) !important; }
.text-blue-200 { color: var(--primary-200) !important; }
.text-blue-300 { color: var(--primary-300) !important; }
.text-blue-400 { color: var(--primary-400) !important; }
.text-blue-500 { color: var(--primary-500) !important; }
.text-blue-600 { color: var(--primary-600) !important; }
.text-blue-700 { color: var(--primary-700) !important; }
.text-blue-800 { color: var(--primary-800) !important; }
.text-blue-900 { color: var(--primary-900) !important; }

/* Border Colors */
.border-blue-200 { border-color: var(--primary-200) !important; }
.border-blue-300 { border-color: var(--primary-300) !important; }
.border-blue-400 { border-color: var(--primary-400) !important; }
.border-blue-500 { border-color: var(--primary-500) !important; }
.border-blue-600 { border-color: var(--primary-600) !important; }
.border-blue-700 { border-color: var(--primary-700) !important; }

/* Gradients - From */
.from-blue-50 { --tw-gradient-from: var(--primary-50) !important; }
.from-blue-100 { --tw-gradient-from: var(--primary-100) !important; }
.from-blue-400 { --tw-gradient-from: var(--primary-400) !important; }
.from-blue-500 { --tw-gradient-from: var(--primary-500) !important; }
.from-blue-600 { --tw-gradient-from: var(--primary-600) !important; }
.from-blue-700 { --tw-gradient-from: var(--primary-700) !important; }
.from-blue-900 { --tw-gradient-from: var(--primary-900) !important; }

/* Gradients - To */
.to-blue-100 { --tw-gradient-to: var(--primary-100) !important; }
.to-blue-200 { --tw-gradient-to: var(--primary-200) !important; }
.to-blue-400 { --tw-gradient-to: var(--primary-400) !important; }
.to-blue-600 { --tw-gradient-to: var(--primary-600) !important; }
.to-blue-700 { --tw-gradient-to: var(--primary-700) !important; }
.to-blue-800 { --tw-gradient-to: var(--primary-800) !important; }

/* Gradients - Via */
.via-blue-700 { --tw-gradient-via: var(--primary-700) !important; }

/* Green Colors (Accent) */
.bg-green-100 { background-color: var(--accent-100) !important; }
.bg-green-300 { background-color: var(--accent-300) !important; }
.bg-green-400 { background-color: var(--accent-400) !important; }
.bg-green-500 { background-color: var(--accent-500) !important; }
.bg-green-600 { background-color: var(--accent-600) !important; }
.bg-green-700 { background-color: var(--accent-700) !important; }

.text-green-100 { color: var(--accent-100) !important; }
.text-green-200 { color: var(--accent-200) !important; }
.text-green-300 { color: var(--accent-300) !important; }
.text-green-400 { color: var(--accent-400) !important; }
.text-green-500 { color: var(--accent-500) !important; }
.text-green-600 { color: var(--accent-600) !important; }
.text-green-700 { color: var(--accent-700) !important; }
.text-green-800 { color: var(--accent-800) !important; }
.text-green-900 { color: var(--accent-900) !important; }

.border-green-200 { border-color: var(--accent-200) !important; }
.border-green-400 { border-color: var(--accent-400) !important; }
.border-green-500 { border-color: var(--accent-500) !important; }

.from-green-400 { --tw-gradient-from: var(--accent-400) !important; }
.from-green-50 { --tw-gradient-from: var(--accent-50) !important; }
.from-green-500 { --tw-gradient-from: var(--accent-500) !important; }
.from-green-600 { --tw-gradient-from: var(--accent-600) !important; }
.to-green-600 { --tw-gradient-to: var(--accent-600) !important; }
.to-green-700 { --tw-gradient-to: var(--accent-700) !important; }
.via-green-700 { --tw-gradient-via: var(--accent-700) !important; }

/* Purple Colors (Mapped to Secondary) */
.bg-purple-100 { background-color: var(--secondary-100) !important; }
.bg-purple-500 { background-color: var(--secondary-500) !important; }
.bg-purple-600 { background-color: var(--secondary-600) !important; }
.bg-purple-700 { background-color: var(--secondary-700) !important; }

.text-purple-100 { color: var(--secondary-100) !important; }
.text-purple-200 { color: var(--secondary-200) !important; }
.text-purple-600 { color: var(--secondary-600) !important; }
.text-purple-800 { color: var(--secondary-800) !important; }

.border-purple-500 { border-color: var(--secondary-500) !important; }
.border-purple-600 { border-color: var(--secondary-600) !important; }

.from-purple-400 { --tw-gradient-from: var(--secondary-400) !important; }
.from-purple-500 { --tw-gradient-from: var(--secondary-500) !important; }
.from-purple-600 { --tw-gradient-from: var(--secondary-600) !important; }
.to-purple-600 { --tw-gradient-to: var(--secondary-600) !important; }
.to-purple-800 { --tw-gradient-to: var(--secondary-800) !important; }

/* Red Colors (Emergency/Alert) */
.bg-red-50 { background-color: #fef2f2 !important; }
.bg-red-100 { background-color: #fee2e2 !important; }
.bg-red-400 { background-color: #f87171 !important; }
.bg-red-500 { background-color: #ef4444 !important; }
.bg-red-600 { background-color: #dc2626 !important; }
.bg-red-700 { background-color: #b91c1c !important; }

.text-red-100 { color: #fee2e2 !important; }
.text-red-400 { color: #f87171 !important; }
.text-red-500 { color: #ef4444 !important; }
.text-red-600 { color: #dc2626 !important; }
.text-red-700 { color: #b91c1c !important; }
.text-red-800 { color: #991b1b !important; }

.border-red-200 { border-color: #fecaca !important; }
.border-red-400 { border-color: #f87171 !important; }
.border-red-500 { border-color: #ef4444 !important; }

.from-red-700 { --tw-gradient-from: #b91c1c !important; }
.to-red-800 { --tw-gradient-to: #991b1b !important; }

/* Yellow Colors (Highlights) */
.bg-yellow-50 { background-color: #fefce8 !important; }
.bg-yellow-300 { background-color: #fde047 !important; }
.bg-yellow-400 { background-color: #facc15 !important; }
.bg-yellow-500 { background-color: #eab308 !important; }

.text-yellow-100 { color: #fef3c7 !important; }
.text-yellow-200 { color: #fde68a !important; }
.text-yellow-300 { color: #fcd34d !important; }
.text-yellow-400 { color: #fbbf24 !important; }
.text-yellow-600 { color: #d97706 !important; }
.text-yellow-700 { color: #b45309 !important; }
.text-yellow-800 { color: #92400e !important; }
.text-yellow-900 { color: #78350f !important; }

.border-yellow-200 { border-color: #fde68a !important; }
.border-yellow-300 { border-color: #fcd34d !important; }

.from-yellow-50 { --tw-gradient-from: #fefce8 !important; }
.from-yellow-400 { --tw-gradient-from: #facc15 !important; }
.to-yellow-600 { --tw-gradient-to: #d97706 !important; }

/* Gray Colors (Neutrals) */
.bg-gray-50 { background-color: #f8fafc !important; }
.bg-gray-100 { background-color: #f1f5f9 !important; }
.bg-gray-200 { background-color: #e2e8f0 !important; }
.bg-gray-300 { background-color: #cbd5e1 !important; }
.bg-gray-400 { background-color: #94a3b8 !important; }
.bg-gray-600 { background-color: #475569 !important; }
.bg-gray-700 { background-color: #334155 !important; }

.text-gray-200 { color: #e2e8f0 !important; }
.text-gray-300 { color: #cbd5e1 !important; }
.text-gray-400 { color: #94a3b8 !important; }
.text-gray-500 { color: #64748b !important; }
.text-gray-600 { color: #475569 !important; }
.text-gray-700 { color: #334155 !important; }
.text-gray-800 { color: #1e293b !important; }
.text-gray-900 { color: #0f172a !important; }

.border-gray-100 { border-color: #f1f5f9 !important; }
.border-gray-200 { border-color: #e2e8f0 !important; }
.border-gray-300 { border-color: #cbd5e1 !important; }

.to-gray-200 { --tw-gradient-to: #e2e8f0 !important; }

/* Indigo Colors (Deep Blues) */
.bg-indigo-600 { background-color: var(--secondary-600) !important; }
.bg-indigo-700 { background-color: var(--secondary-700) !important; }

.text-indigo-100 { color: var(--secondary-100) !important; }
.text-indigo-200 { color: var(--secondary-200) !important; }
.text-indigo-600 { color: var(--secondary-600) !important; }

.from-indigo-50 { --tw-gradient-from: var(--secondary-50) !important; }
.from-indigo-500 { --tw-gradient-from: var(--secondary-500) !important; }
.from-indigo-600 { --tw-gradient-from: var(--secondary-600) !important; }
.to-indigo-50 { --tw-gradient-to: var(--secondary-50) !important; }
.to-indigo-100 { --tw-gradient-to: var(--secondary-100) !important; }
.to-indigo-500 { --tw-gradient-to: var(--secondary-500) !important; }
.to-indigo-600 { --tw-gradient-to: var(--secondary-600) !important; }
.to-indigo-700 { --tw-gradient-to: var(--secondary-700) !important; }
.to-indigo-800 { --tw-gradient-to: var(--secondary-800) !important; }
.to-indigo-900 { --tw-gradient-to: var(--secondary-900) !important; }

/* Orange Colors (Warm Accents) */
.bg-orange-100 { background-color: #fed7aa !important; }
.bg-orange-500 { background-color: #f97316 !important; }

.text-orange-600 { color: #ea580c !important; }
.text-orange-800 { color: #9a3412 !important; }

.border-orange-500 { border-color: #f97316 !important; }

.from-orange-400 { --tw-gradient-from: #fb923c !important; }
.to-orange-100 { --tw-gradient-to: #fed7aa !important; }
.to-orange-600 { --tw-gradient-to: #ea580c !important; }

/* Emerald Colors (Natural Greens) */
.to-emerald-100 { --tw-gradient-to: var(--accent-100) !important; }
.to-emerald-800 { --tw-gradient-to: var(--accent-800) !important; }

/* Special Colors */
.bg-white { background-color: #ffffff !important; }
.bg-black { background-color: #000000 !important; }
.bg-transparent { background-color: transparent !important; }

.text-white { color: #ffffff !important; }
.text-black { color: #000000 !important; }
.text-transparent { color: transparent !important; }

.border-white { border-color: #ffffff !important; }
.border-black { border-color: #000000 !important; }
.border-transparent { border-color: transparent !important; }

/* === HOVER STATES === */
.hover\:bg-blue-700:hover { background-color: var(--primary-700) !important; }
.hover\:bg-green-600:hover { background-color: var(--accent-600) !important; }
.hover\:text-blue-800:hover { color: var(--primary-800) !important; }

/* === FOCUS STATES === */
.focus\:ring-blue-500:focus { --tw-ring-color: var(--primary-500) !important; }
.focus\:border-blue-500:focus { border-color: var(--primary-500) !important; }
