/* Couleurs dynamiques du site */
:root {
    --couleur-primaire: #212529;
    --couleur-secondaire: #ffffff;
    --couleur-action: #0d6efd;
    --couleur-texte: #000000;
    --couleur-texte-navbar: #ffffff;
    --couleur-section-accueil: #0d6efd;
    --couleur-texte-section-accueil: #ffffff;
    --couleur-texte-bouton: #ffffff;
    
    /* Variations de couleur d'action */
    --couleur-action-hover: #0b5ed7;
    --couleur-action-active: #0a58ca;
    --couleur-action-light: #e7f1ff;
}

/* Variables Bootstrap compatibles */
:root {
    --bs-primary: var(--couleur-action);
    --bs-secondary: var(--couleur-primaire);
    --bs-body-bg: var(--couleur-secondaire);
    --bs-body-color: var(--couleur-texte);
}

/* Classes utilitaires pour les couleurs */
.bg-primary-custom {
    background-color: var(--couleur-primaire) !important;
}

.bg-secondary-custom {
    background-color: var(--couleur-secondaire) !important;
}

.bg-action-custom {
    background-color: var(--couleur-action) !important;
}

.text-primary-custom {
    color: var(--couleur-primaire) !important;
}

.text-secondary-custom {
    color: var(--couleur-secondaire) !important;
}

.text-action-custom {
    color: var(--couleur-action) !important;
}

.border-primary-custom {
    border-color: var(--couleur-primaire) !important;
}

.border-secondary-custom {
    border-color: var(--couleur-secondaire) !important;
}

.border-action-custom {
    border-color: var(--couleur-action) !important;
}

/* Boutons avec couleur d'action */
.btn-primary,
.btn-outline-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--couleur-action);
    --bs-btn-border-color: var(--couleur-action);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--couleur-action-hover);
    --bs-btn-hover-border-color: var(--couleur-action-hover);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--couleur-action-active);
    --bs-btn-active-border-color: var(--couleur-action-active);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--couleur-action);
    --bs-btn-disabled-border-color: var(--couleur-action);
}

.btn-outline-primary {
    --bs-btn-color: var(--couleur-action);
    --bs-btn-border-color: var(--couleur-action);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--couleur-action);
    --bs-btn-hover-border-color: var(--couleur-action);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--couleur-action);
    --bs-btn-active-border-color: var(--couleur-action);
    --bs-btn-disabled-color: var(--couleur-action);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--couleur-action);
}

/* Liens avec couleur d'action */
a, .link {
    color: var(--couleur-action);
}

a:hover, .link:hover {
    color: var(--couleur-action-hover);
}

/* Badges avec couleur d'action */
.badge.bg-primary {
    background-color: var(--couleur-action) !important;
}

/* Alerts avec couleur d'action */
.alert-info {
    --bs-alert-bg: rgba(13, 110, 253, 0.1);
    --bs-alert-border-color: var(--couleur-action);
    --bs-alert-color: var(--couleur-texte);
}

/* Form focus */
.form-control:focus,
.form-select:focus {
    border-color: var(--couleur-action);
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Progressbar */
.progress-bar {
    background-color: var(--couleur-action);
}

/* Navs & tabs */
.nav-link.active {
    color: var(--couleur-action);
    border-bottom-color: var(--couleur-action);
}

.nav-pills .nav-link.active {
    background-color: var(--couleur-action);
}

/* Pagination */
.page-link {
    color: var(--couleur-action);
}

.page-link:hover {
    color: var(--couleur-action-hover);
    background-color: #e9ecef;
    border-color: var(--couleur-action);
}

.page-link.active {
    background-color: var(--couleur-action);
    border-color: var(--couleur-action);
}

/* Spinners */
.spinner-border {
    color: var(--couleur-action);
}

/* Navbar styling */
.navbar-dark {
    color: var(--couleur-texte-navbar) !important;
}

.navbar-dark .nav-link {
    color: var(--couleur-texte-navbar) !important;
}

.navbar-dark .nav-link:hover,
.navbar-dark .nav-link:focus {
    color: var(--couleur-texte-navbar) !important;
    opacity: 0.8;
}

.navbar-dark .navbar-brand {
    color: var(--couleur-texte-navbar) !important;
}

.navbar-dark .dropdown-menu {
    background-color: var(--couleur-primaire) !important;
}

.navbar-dark .dropdown-menu .dropdown-item {
    color: var(--couleur-texte-navbar) !important;
}

.navbar-dark .dropdown-menu .dropdown-item:hover,
.navbar-dark .dropdown-menu .dropdown-item:focus {
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--couleur-texte-navbar) !important;
}

/* Footer styling */
.footer, footer {
    color: var(--couleur-texte-navbar) !important;
}

.footer a, footer a {
    color: var(--couleur-texte-navbar) !important;
    text-decoration: none;
}

.footer a:hover, footer a:hover {
    opacity: 0.8;
}
