/* ============================================================
 * HUB THEME — Overrides Materialize avec couleurs HUB International
 * Couleurs : #263746 (navy), #00A0E1 (cyan), #064EA0 (royal)
 * À charger APRÈS core.css et demo.css
 * ============================================================ */

:root {
    --hub-navy:        #263746;
    --hub-navy-rgb:    38, 55, 70;
    --hub-cyan:        #00A0E1;
    --hub-cyan-rgb:    0, 160, 225;
    --hub-royal:       #064EA0;
    --hub-royal-rgb:   6, 78, 160;

    /* Variantes claires pour les badges/labels */
    --hub-cyan-soft:   #E5F5FC;
    --hub-royal-soft:  #E1ECF7;
}

/* ============================================================
 * 1. Override de la palette primaire Materialize
 * Materialize utilise --bs-primary-rgb partout (boutons, liens, badges...)
 * ============================================================ */
[data-bs-theme="light"],
[data-bs-theme="dark"] {
    --bs-primary:        var(--hub-cyan);
    --bs-primary-rgb:    var(--hub-cyan-rgb);
}

/* Bouton primary aux couleurs HUB cyan */
.btn-primary {
    --bs-btn-bg:                  var(--hub-cyan);
    --bs-btn-border-color:        var(--hub-cyan);
    --bs-btn-hover-bg:            var(--hub-royal);
    --bs-btn-hover-border-color:  var(--hub-royal);
    --bs-btn-active-bg:           var(--hub-royal);
    --bs-btn-active-border-color: var(--hub-royal);
    --bs-btn-disabled-bg:         var(--hub-cyan);
    --bs-btn-disabled-border-color: var(--hub-cyan);
}

.btn-outline-primary {
    --bs-btn-color:               var(--hub-cyan);
    --bs-btn-border-color:        var(--hub-cyan);
    --bs-btn-hover-bg:            var(--hub-cyan);
    --bs-btn-hover-border-color:  var(--hub-cyan);
    --bs-btn-active-bg:           var(--hub-cyan);
    --bs-btn-active-border-color: var(--hub-cyan);
}

/* Badges souples (bg-label-primary) */
.bg-label-primary {
    background-color: var(--hub-cyan-soft) !important;
    color:            var(--hub-royal) !important;
}

.text-primary { color: var(--hub-cyan) !important; }
.bg-primary   { background-color: var(--hub-cyan) !important; }
.border-primary { border-color: var(--hub-cyan) !important; }

/* Liens */
a { color: var(--hub-cyan); }
a:hover { color: var(--hub-royal); }

/* ============================================================
 * 2. Sidebar / Menu — Fond navy HUB
 * ============================================================ */
.layout-menu {
    background-color: var(--hub-navy) !important;
}

.layout-menu .menu-inner-shadow {
    background: linear-gradient(var(--hub-navy) 5%, rgba(var(--hub-navy-rgb), 0.85) 50%, rgba(var(--hub-navy-rgb), 0)) !important;
}

/* Texte du menu */
.layout-menu .menu-link,
.layout-menu .menu-header-text {
    color: rgba(255, 255, 255, 0.7) !important;
}

.layout-menu .menu-link:hover {
    color: #ffffff !important;
    background-color: rgba(255, 255, 255, 0.06) !important;
}

.layout-menu .menu-icon {
    color: rgba(255, 255, 255, 0.6) !important;
}

.layout-menu .menu-link:hover .menu-icon {
    color: #ffffff !important;
}

/* En-têtes de sections du menu */
.layout-menu .menu-header {
    color: rgba(255, 255, 255, 0.45) !important;
}

/* Item actif */
.layout-menu .menu-item.active > .menu-link:not(.menu-toggle) {
    background-color: var(--hub-cyan) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(var(--hub-cyan-rgb), 0.35);
}

.layout-menu .menu-item.active > .menu-link:not(.menu-toggle) .menu-icon {
    color: #ffffff !important;
}

/* Logo brand */
.app-brand-text {
    color: #ffffff !important;
}

.layout-menu-toggle {
    color: rgba(255, 255, 255, 0.7) !important;
}

.layout-menu-toggle:hover {
    color: #ffffff !important;
}

/* Séparateur sous le logo */
.app-brand.demo {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* ============================================================
 * 3. Avatar / Initials — Couleurs HUB
 * ============================================================ */
.avatar-initial.bg-label-primary {
    background-color: var(--hub-cyan) !important;
    color: #ffffff !important;
}

/* ============================================================
 * 4. Form controls focus — Couleurs HUB
 * ============================================================ */
.form-control:focus,
.form-select:focus {
    border-color: var(--hub-cyan);
    box-shadow: 0 0 0 0.15rem rgba(var(--hub-cyan-rgb), 0.2);
}

.form-check-input:checked {
    background-color: var(--hub-cyan);
    border-color: var(--hub-cyan);
}

/* ============================================================
 * 5. Status badges — Couleurs des statuts de référence
 * Utilisées dans les listes et le détail de référence
 * ============================================================ */
.hub-badge-non_attitree        { background-color: #a8aaae; color: #fff; }
.hub-badge-attitree            { background-color: #03c3ec; color: #fff; }
.hub-badge-recue               { background-color: var(--hub-cyan); color: #fff; }
.hub-badge-en_communication    { background-color: #ffab00; color: #fff; }
.hub-badge-soumission_a_venir  { background-color: #ffab00; color: #fff; }
.hub-badge-soumission_en_cours { background-color: #ff9f43; color: #fff; }
.hub-badge-presentation_faite  { background-color: var(--hub-royal); color: #fff; }
.hub-badge-acceptee            { background-color: #71dd37; color: #fff; }
.hub-badge-refusee             { background-color: #ff3e1d; color: #fff; }
.hub-badge-payee               { background-color: #20c997; color: #fff; }

/* Badges souples (bg-label-*) pour l'utilisation dans les listes */
.bg-label-hub-navy {
    background-color: rgba(var(--hub-navy-rgb), 0.12) !important;
    color: var(--hub-navy) !important;
}

.bg-label-hub-royal {
    background-color: var(--hub-royal-soft) !important;
    color: var(--hub-royal) !important;
}

/* ============================================================
 * 6. Petits ajustements visuels HUB
 * ============================================================ */

/* Cards: ombre plus douce et coins légèrement plus arrondis */
.card {
    border: 1px solid rgba(0, 0, 0, 0.04);
}

/* En-tête de page (h4 avec breadcrumb "Admin / Tableau de bord") */
.content-wrapper h4.fw-bold {
    color: var(--hub-navy);
}

.content-wrapper h4.fw-bold .text-muted {
    color: rgba(var(--hub-navy-rgb), 0.55) !important;
}

/* Footer link */
.footer-link {
    color: var(--hub-cyan) !important;
}

.footer-link:hover {
    color: var(--hub-royal) !important;
}
