/* ============================================================
   PVHUB — CDG07 — Styles personnalisés
   ============================================================ */

:root {
    --cdg07-blue: #1a4f8a;
    --cdg07-blue-light: #2563b0;
    --cdg07-blue-dark: #123a66;
}

/* Couleur principale CDG07 */
.bg-cdg07 { background-color: var(--cdg07-blue) !important; }
.text-cdg07 { color: var(--cdg07-blue) !important; }
.border-cdg07 { border-color: var(--cdg07-blue) !important; }

.btn-cdg07 {
    background-color: var(--cdg07-blue);
    border-color: var(--cdg07-blue);
    color: #fff;
}
.btn-cdg07:hover {
    background-color: var(--cdg07-blue-dark);
    border-color: var(--cdg07-blue-dark);
    color: #fff;
}

/* Couleur violet (pour F3SCT) */
.bg-purple { background-color: #6f42c1 !important; }
.text-purple { color: #6f42c1 !important; }
.border-purple { border-color: #6f42c1 !important; }

/* Navbar */
.navbar-dark .nav-link { color: rgba(255,255,255,.8); }
.navbar-dark .nav-link:hover,
.navbar-dark .nav-link.active { color: #fff; }

/* Cards */
.card { border-radius: .625rem; }
.card .border-start { border-left-width: 4px !important; }

/* Tables */
.table th { font-weight: 600; font-size: .85rem; color: #555; white-space: nowrap; }
.table td { vertical-align: middle; font-size: .9rem; }

/* Formulaires */
.form-label { font-weight: 500; font-size: .875rem; color: #444; }
.form-section-header {
    font-weight: 700;
    color: var(--cdg07-blue);
    border-bottom: 2px solid var(--cdg07-blue);
    padding-bottom: .25rem;
    margin-bottom: 1rem;
    margin-top: 1.5rem;
}

/* Footer */
.footer { font-size: .8rem; }

/* HTMX loading indicator */
.htmx-indicator { opacity: 0; transition: opacity 200ms ease-in; }
.htmx-request .htmx-indicator { opacity: 1; }
.htmx-request.htmx-indicator { opacity: 1; }

/* Badges commissions */
.badge-cst { background-color: #0d6efd; color: #fff; }
.badge-f3sct { background-color: #198754; color: #fff; }

/* Responsive table */
@media (max-width: 768px) {
    .table-responsive { font-size: .8rem; }
}
