/* Charte graphique çaCzen */
/* Note: Les polices Urbanist et Playfair Display sont chargées via Google Fonts dans les layouts */

:root {
    --caczen-primary: #A18959;
    --caczen-primary-dark: #8a7549;
    --caczen-primary-light: #b8a078;
    --caczen-dark: #1a1a1a;
    --caczen-blue: #B8E7FF;
    --caczen-blue-dark: #9dd5f0;
    --font-edensor: 'Edensor', serif;
    --font-urbanist: 'Urbanist', sans-serif;
}

/* Polices */
/* EDENSOR - Police pour les titres */
@font-face {
    font-family: 'Edensor';
    src: url('/fonts/Edensor-FREE.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

h1, h2, h3, h4, h5, h6,
.font-edensor,
.title {
    font-family: var(--font-urbanist), 'Urbanist', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif;
    font-weight: 600;
    letter-spacing: -0.01em;
}

body, p, span, a, li, label, input, textarea, select, button, div,
.font-urbanist {
    font-family: var(--font-urbanist), -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Application globale */
html {
    font-family: var(--font-urbanist), -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Boutons principaux avec couleur de la marque */
.btn-primary,
button[type="submit"].bg-blue-600,
.bg-blue-600[type="submit"],
a.bg-blue-600,
.bg-blue-600 {
    background-color: var(--caczen-primary) !important;
    color: white !important;
    transition: all 0.2s ease;
}

.btn-primary:hover,
button[type="submit"].bg-blue-600:hover,
.bg-blue-600[type="submit"]:hover,
a.bg-blue-600:hover,
.bg-blue-600:hover {
    background-color: var(--caczen-primary-dark) !important;
}

/* Boutons verts remplacés par la couleur de la marque */
.bg-green-600,
.bg-green-700,
button.bg-green-600,
button.bg-green-700,
a.bg-green-600,
a.bg-green-700 {
    background-color: var(--caczen-primary) !important;
    color: white !important;
}

.bg-green-600:hover,
.bg-green-700:hover,
button.bg-green-600:hover,
button.bg-green-700:hover,
a.bg-green-600:hover,
a.bg-green-700:hover {
    background-color: var(--caczen-primary-dark) !important;
}

/* Liens avec couleur de la marque */
.text-blue-600,
a.text-blue-600 {
    color: var(--caczen-primary) !important;
}

.text-blue-600:hover,
a.text-blue-600:hover {
    color: var(--caczen-primary-dark) !important;
}

/* Boutons secondaires (gris) - garder gris mais avec hover amélioré */
.btn-secondary,
.bg-gray-500,
.bg-gray-600 {
    transition: all 0.2s ease;
}

/* Boutons de danger (rouge) - garder rouge */
.btn-danger,
.text-red-600,
button.text-red-600 {
    color: #dc2626 !important;
}

.text-red-600:hover,
button.text-red-600:hover {
    color: #b91c1c !important;
}

/* Classes hover Tailwind */
.hover\:bg-blue-700:hover,
a.hover\:bg-blue-700:hover,
button.hover\:bg-blue-700:hover {
    background-color: var(--caczen-primary-dark) !important;
}

.hover\:bg-green-700:hover,
a.hover\:bg-green-700:hover,
button.hover\:bg-green-700:hover {
    background-color: var(--caczen-primary-dark) !important;
}

/* Barres de progression */
.bg-green-600.h-3,
.bg-green-600.h-4,
.bg-green-600.h-5,
div.bg-green-600 {
    background-color: var(--caczen-primary) !important;
}

/* Messages dans la messagerie - GARDER LE BLEU pour distinguer les messages */
/* Exception : les messages dans les conversations gardent leur bleu pour la distinction visuelle */
.max-w-md.bg-blue-600.text-white,
div.max-w-md.bg-blue-600.text-white {
    background-color: #2563eb !important; /* Garder le bleu pour les messages */
}

/* Badges et avatars dans la messagerie - garder le bleu aussi */
.w-10.bg-blue-600.rounded-full,
.w-12.bg-blue-600.rounded-full,
.w-8.bg-blue-600.rounded-full {
    background-color: #2563eb !important;
}

/* Boutons de type message (texte/vocal/image) - utiliser la couleur de la marque */
.message-type-btn.bg-blue-600,
.message-type-btn.border-blue-600 {
    background-color: var(--caczen-primary) !important;
    border-color: var(--caczen-primary) !important;
}

/* Boutons avec border */
.border-blue-600:not(.max-w-md),
button.border-blue-600 {
    border-color: var(--caczen-primary) !important;
}

/* Tous les éléments avec bg-blue-600 SAUF les messages, avatars et boutons de filtrage */
[class*="bg-blue-600"]:not(.max-w-md):not([class*="w-10"]):not([class*="w-12"]):not([class*="w-8"]):not(.btn-filter) {
    background-color: var(--caczen-primary) !important;
}

[class*="bg-blue-600"]:not(.max-w-md):not([class*="w-10"]):not([class*="w-12"]):not([class*="w-8"]):not(.btn-filter):hover {
    background-color: var(--caczen-primary-dark) !important;
}

/* Boutons de filtrage - utiliser le bleu de la charte graphique */
/* Les boutons avec la classe btn-filter utilisent le bleu de la marque */
button.btn-filter,
button.btn-filter.bg-blue-600 {
    background-color: var(--caczen-blue) !important; /* Bleu de la charte graphique #B8E7FF */
    color: var(--caczen-dark) !important; /* Texte sombre pour le contraste */
}

button.btn-filter:hover,
button.btn-filter.bg-blue-600:hover,
button.btn-filter.hover\:bg-blue-700:hover {
    background-color: var(--caczen-blue-dark) !important; /* Bleu foncé au hover */
    color: var(--caczen-dark) !important;
}

/* Exception spécifique pour les messages */
.max-w-md[class*="bg-blue-600"],
div.max-w-md[class*="bg-blue-600"] {
    background-color: #2563eb !important;
}

/* Tous les éléments avec bg-green-600 ou bg-green-700 */
[class*="bg-green-600"],
[class*="bg-green-700"] {
    background-color: var(--caczen-primary) !important;
}

[class*="bg-green-600"]:hover,
[class*="bg-green-700"]:hover {
    background-color: var(--caczen-primary-dark) !important;
}

/* Uniformisation des couleurs d'icônes dans l'admin */
/* Toutes les icônes FontAwesome dans l'admin utilisent la couleur principale de la marque */
/* Exception : garder le rouge pour les icônes de suppression et d'alerte */
.fas.text-blue-600:not(.text-red-600),
.fas.text-green-600:not(.text-red-600),
.fas.text-yellow-600:not(.text-red-600),
.fas.text-purple-600:not(.text-red-600),
i.fas.text-blue-600:not(.text-red-600),
i.fas.text-green-600:not(.text-red-600),
i.fas.text-yellow-600:not(.text-red-600),
i.fas.text-purple-600:not(.text-red-600) {
    color: var(--caczen-primary) !important;
}

/* Arrière-plans des icônes dans les cartes du dashboard - uniformiser avec la couleur de la marque */
.bg-blue-100,
.bg-green-100,
.bg-yellow-100,
.bg-purple-100 {
    background-color: rgba(161, 137, 89, 0.1) !important;
}

/* Bandeau RGPD */
.rgpd-banner {
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 9999;
}

.rgpd-banner:not(.hidden) {
    opacity: 1;
    transform: translateY(0);
}

.rgpd-banner .rgpd-btn-accept {
    background-color: var(--caczen-primary) !important;
    color: white !important;
}

.rgpd-banner .rgpd-btn-accept:hover {
    background-color: var(--caczen-primary-dark) !important;
}

.rgpd-banner .rgpd-btn-reject {
    background-color: #e5e7eb !important;
    color: #374151 !important;
}

.rgpd-banner .rgpd-btn-reject:hover {
    background-color: #d1d5db !important;
}

/* Responsive pour le bandeau RGPD */
@media (max-width: 768px) {
    .rgpd-banner {
        padding: 1rem;
    }
    
    .rgpd-banner .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    .rgpd-banner .flex {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .rgpd-banner .flex.flex-col.sm\:flex-row {
        width: 100%;
    }
    
    .rgpd-banner .flex.flex-col.sm\:flex-row button {
        width: 100%;
    }
}

