/**
 * Template 5 - Violet Royal
 * Palette inspirée de la royauté - violets profonds, pourpres riches et ors élégants
 * Date: 2025-07-11 03:24:00
 */

:root {
    /* === COULEURS PRINCIPALES === */
    --primary-50: #faf5ff;
    --primary-100: #f3e8ff;
    --primary-200: #e9d5ff;
    --primary-300: #d8b4fe;
    --primary-400: #c084fc;
    --primary-500: #a855f7;
    --primary-600: #9333ea;
    --primary-700: #7c3aed;
    --primary-800: #6b21b8;
    --primary-900: #581c87;

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

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

    /* === VARIABLES SÉMANTIQUES === */
    --text-primary: #581c87;
    --text-secondary: #6b21b8;
    --text-muted: #a855f7;
    --bg-primary: #faf5ff;
    --bg-secondary: #f3e8ff;
    --border-light: #c084fc;
    --border-dark: #9333ea;

    /* === VARIABLES RGB === */
    --primary-200-rgb: 233, 213, 255;
    --primary-300-rgb: 216, 180, 254;
    --primary-400-rgb: 192, 132, 252;
    --primary-500-rgb: 168, 85, 247;
    --primary-600-rgb: 147, 51, 234;
    --primary-700-rgb: 124, 58, 237;
    --primary-800-rgb: 107, 33, 168;
    --primary-900-rgb: 88, 28, 135;
    --secondary-200-rgb: 226, 232, 240;
    --secondary-300-rgb: 203, 213, 225;
    --secondary-400-rgb: 148, 163, 184;
    --secondary-500-rgb: 100, 116, 139;
    --secondary-600-rgb: 71, 85, 105;
    --secondary-700-rgb: 51, 65, 85;
    --secondary-800-rgb: 30, 41, 59;
    --secondary-900-rgb: 15, 23, 42;
    --accent-200-rgb: 253, 230, 138;
    --accent-300-rgb: 252, 211, 77;
    --accent-400-rgb: 251, 191, 36;
    --accent-500-rgb: 245, 158, 11;
    --accent-600-rgb: 217, 119, 6;
    --accent-700-rgb: 180, 83, 9;
    --accent-800-rgb: 146, 64, 14;
    --accent-900-rgb: 120, 53, 15;
}

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

/* Purple Colors (Primary) */
.bg-purple-50 { background-color: var(--primary-50) !important; }
.bg-purple-100 { background-color: var(--primary-100) !important; }
.bg-purple-200 { background-color: var(--primary-200) !important; }
.bg-purple-300 { background-color: var(--primary-300) !important; }
.bg-purple-400 { background-color: var(--primary-400) !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; }
.bg-purple-800 { background-color: var(--primary-800) !important; }
.bg-purple-900 { background-color: var(--primary-900) !important; }

.text-purple-50 { color: var(--primary-50) !important; }
.text-purple-100 { color: var(--primary-100) !important; }
.text-purple-200 { color: var(--primary-200) !important; }
.text-purple-300 { color: var(--primary-300) !important; }
.text-purple-400 { color: var(--primary-400) !important; }
.text-purple-500 { color: var(--primary-500) !important; }
.text-purple-600 { color: var(--primary-600) !important; }
.text-purple-700 { color: var(--primary-700) !important; }
.text-purple-800 { color: var(--primary-800) !important; }
.text-purple-900 { color: var(--primary-900) !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; }

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

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

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

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

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

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

/* Green Colors (Mapped to Accent Gold) */
.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; }

/* Yellow Colors (Accent Gold) */
.bg-yellow-50 { background-color: var(--accent-50) !important; }
.bg-yellow-300 { background-color: var(--accent-300) !important; }
.bg-yellow-400 { background-color: var(--accent-400) !important; }
.bg-yellow-500 { background-color: var(--accent-500) !important; }

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

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

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

/* Red Colors (Rich Burgundy) */
.bg-red-50 { background-color: #fdf2f8 !important; }
.bg-red-100 { background-color: #fce7f3 !important; }
.bg-red-400 { background-color: #f472b6 !important; }
.bg-red-500 { background-color: #ec4899 !important; }
.bg-red-600 { background-color: #db2777 !important; }
.bg-red-700 { background-color: #be185d !important; }

.text-red-100 { color: #fce7f3 !important; }
.text-red-400 { color: #f472b6 !important; }
.text-red-500 { color: #ec4899 !important; }
.text-red-600 { color: #db2777 !important; }
.text-red-700 { color: #be185d !important; }
.text-red-800 { color: #9d174d !important; }

.border-red-200 { border-color: #fbcfe8 !important; }
.border-red-400 { border-color: #f472b6 !important; }
.border-red-500 { border-color: #ec4899 !important; }

.from-red-700 { --tw-gradient-from: #be185d !important; }
.to-red-800 { --tw-gradient-to: #9d174d !important; }

/* Gray Colors (Elegant Neutrals) */
.bg-gray-50 { background-color: var(--secondary-50) !important; }
.bg-gray-100 { background-color: var(--secondary-100) !important; }
.bg-gray-200 { background-color: var(--secondary-200) !important; }
.bg-gray-300 { background-color: var(--secondary-300) !important; }
.bg-gray-400 { background-color: var(--secondary-400) !important; }
.bg-gray-600 { background-color: var(--secondary-600) !important; }
.bg-gray-700 { background-color: var(--secondary-700) !important; }

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

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

.to-gray-200 { --tw-gradient-to: var(--secondary-200) !important; }

/* Indigo Colors (Deep Purple) */
.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; }

/* Orange Colors (Royal Gold) */
.bg-orange-100 { background-color: var(--accent-100) !important; }
.bg-orange-500 { background-color: var(--accent-500) !important; }

.text-orange-600 { color: var(--accent-600) !important; }
.text-orange-800 { color: var(--accent-800) !important; }

.border-orange-500 { border-color: var(--accent-500) !important; }

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

/* Emerald Colors (Rich 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(--secondary-700) !important; }
.hover\:bg-green-600:hover { background-color: var(--accent-600) !important; }
.hover\:text-blue-800:hover { color: var(--secondary-800) !important; }

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