/**
 * Template 12 - Jade Impérial
 * Palette inspirée du jade impérial - verts profonds, ors nobles et touches de cuivre
 * Date: 2025-07-11 09:46:00
 */

:root {
    /* === COULEURS PRINCIPALES === */
    --primary-50: #f0fdf4;
    --primary-100: #dcfce7;
    --primary-200: #bbf7d0;
    --primary-300: #86efac;
    --primary-400: #4ade80;
    --primary-500: #22c55e;
    --primary-600: #16a34a;
    --primary-700: #15803d;
    --primary-800: #166534;
    --primary-900: #14532d;

    --secondary-50: #fffbeb;
    --secondary-100: #fef3c7;
    --secondary-200: #fde68a;
    --secondary-300: #fcd34d;
    --secondary-400: #fbbf24;
    --secondary-500: #f59e0b;
    --secondary-600: #d97706;
    --secondary-700: #b45309;
    --secondary-800: #92400e;
    --secondary-900: #78350f;

    --accent-50: #f8fafc;
    --accent-100: #f1f5f9;
    --accent-200: #e2e8f0;
    --accent-300: #cbd5e1;
    --accent-400: #94a3b8;
    --accent-500: #64748b;
    --accent-600: #475569;
    --accent-700: #334155;
    --accent-800: #1e293b;
    --accent-900: #0f172a;

    /* === VARIABLES SÉMANTIQUES === */
    --text-primary: #14532d;
    --text-secondary: #166534;
    --text-muted: #22c55e;
    --bg-primary: #f0fdf4;
    --bg-secondary: #dcfce7;
    --border-light: #4ade80;
    --border-dark: #16a34a;
}

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

/* Green Colors (Primary Jade) */
.bg-green-50 { background-color: var(--primary-50) !important; }
.bg-green-100 { background-color: var(--primary-100) !important; }
.bg-green-200 { background-color: var(--primary-200) !important; }
.bg-green-300 { background-color: var(--primary-300) !important; }
.bg-green-400 { background-color: var(--primary-400) !important; }
.bg-green-500 { background-color: var(--primary-500) !important; }
.bg-green-600 { background-color: var(--primary-600) !important; }
.bg-green-700 { background-color: var(--primary-700) !important; }
.bg-green-800 { background-color: var(--primary-800) !important; }
.bg-green-900 { background-color: var(--primary-900) !important; }

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

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

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

/* Yellow Colors (Golden Accents) */
.bg-yellow-50 { background-color: var(--secondary-50) !important; }
.bg-yellow-100 { background-color: var(--secondary-100) !important; }
.bg-yellow-200 { background-color: var(--secondary-200) !important; }
.bg-yellow-300 { background-color: var(--secondary-300) !important; }
.bg-yellow-400 { background-color: var(--secondary-400) !important; }
.bg-yellow-500 { background-color: var(--secondary-500) !important; }
.bg-yellow-600 { background-color: var(--secondary-600) !important; }
.bg-yellow-700 { background-color: var(--secondary-700) !important; }
.bg-yellow-800 { background-color: var(--secondary-800) !important; }
.bg-yellow-900 { background-color: var(--secondary-900) !important; }

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

.border-yellow-200 { border-color: var(--secondary-200) !important; }
.border-yellow-300 { border-color: var(--secondary-300) !important; }

.from-yellow-50 { --tw-gradient-from: var(--secondary-50) !important; }
.from-yellow-400 { --tw-gradient-from: var(--secondary-400) !important; }
.to-yellow-600 { --tw-gradient-to: var(--secondary-600) !important; }

/* Blue Colors (Mapped to Slate) */
.bg-blue-50 { background-color: var(--accent-50) !important; }
.bg-blue-100 { background-color: var(--accent-100) !important; }
.bg-blue-200 { background-color: var(--accent-200) !important; }
.bg-blue-400 { background-color: var(--accent-400) !important; }
.bg-blue-500 { background-color: var(--accent-500) !important; }
.bg-blue-600 { background-color: var(--accent-600) !important; }
.bg-blue-700 { background-color: var(--accent-700) !important; }

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

.border-blue-200 { border-color: var(--accent-200) !important; }
.border-blue-300 { border-color: var(--accent-300) !important; }
.border-blue-500 { border-color: var(--accent-500) !important; }
.border-blue-600 { border-color: var(--accent-600) !important; }
.border-blue-700 { border-color: var(--accent-700) !important; }

.from-blue-50 { --tw-gradient-from: var(--accent-50) !important; }
.from-blue-100 { --tw-gradient-from: var(--accent-100) !important; }
.from-blue-400 { --tw-gradient-from: var(--accent-400) !important; }
.from-blue-500 { --tw-gradient-from: var(--accent-500) !important; }
.from-blue-600 { --tw-gradient-from: var(--accent-600) !important; }
.from-blue-700 { --tw-gradient-from: var(--accent-700) !important; }
.from-blue-900 { --tw-gradient-from: var(--accent-900) !important; }

.to-blue-100 { --tw-gradient-to: var(--accent-100) !important; }
.to-blue-200 { --tw-gradient-to: var(--accent-200) !important; }
.to-blue-400 { --tw-gradient-to: var(--accent-400) !important; }
.to-blue-600 { --tw-gradient-to: var(--accent-600) !important; }
.to-blue-700 { --tw-gradient-to: var(--accent-700) !important; }
.to-blue-800 { --tw-gradient-to: var(--accent-800) !important; }

.via-blue-700 { --tw-gradient-via: var(--accent-700) !important; }

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

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

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

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

/* Red Colors (Warm Copper) */
.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; }

/* Orange Colors (Copper Tones) */
.bg-orange-50 { background-color: var(--secondary-50) !important; }
.bg-orange-100 { background-color: var(--secondary-100) !important; }
.bg-orange-500 { background-color: var(--secondary-500) !important; }
.bg-orange-600 { background-color: var(--secondary-600) !important; }

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

.from-orange-400 { --tw-gradient-from: var(--secondary-400) !important; }
.to-orange-100 { --tw-gradient-to: var(--secondary-100) !important; }
.to-orange-600 { --tw-gradient-to: var(--secondary-600) !important; }

/* Gray Colors (Soft Neutrals) */
.bg-gray-50 { background-color: #f9fafb !important; }
.bg-gray-100 { background-color: #f3f4f6 !important; }
.bg-gray-200 { background-color: #e5e7eb !important; }
.bg-gray-300 { background-color: #d1d5db !important; }
.bg-gray-400 { background-color: #9ca3af !important; }
.bg-gray-600 { background-color: #4b5563 !important; }
.bg-gray-700 { background-color: #374151 !important; }

.text-gray-200 { color: #e5e7eb !important; }
.text-gray-300 { color: #d1d5db !important; }
.text-gray-400 { color: #9ca3af !important; }
.text-gray-500 { color: #6b7280 !important; }
.text-gray-600 { color: #4b5563 !important; }
.text-gray-700 { color: #374151 !important; }
.text-gray-800 { color: #1f2937 !important; }
.text-gray-900 { color: #111827 !important; }

.border-gray-100 { border-color: #f3f4f6 !important; }
.border-gray-200 { border-color: #e5e7eb !important; }
.border-gray-300 { border-color: #d1d5db !important; }

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

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

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

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

/* Emerald Colors (Natural Jade) */
.to-emerald-100 { --tw-gradient-to: var(--primary-100) !important; }
.to-emerald-800 { --tw-gradient-to: var(--primary-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(--accent-700) !important; }
.hover\:bg-green-600:hover { background-color: var(--primary-600) !important; }
.hover\:text-blue-800:hover { color: var(--accent-800) !important; }

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