/* Global: tout au carré */
:root{
    /* Couleur primaire */
    --bs-primary: #204391;
    --bs-primary-rgb: 32, 67, 145;

    /* Liens */
    --bs-link-color: #204391;
    --bs-link-hover-color: #1d3c83; /* ~10% plus sombre */

    /* Variables “emphasis/subtle” (alerts, list-group, badges-subtle, etc.) */
    --bs-primary-text-emphasis: #0f275f;
    --bs-primary-bg-subtle: #e4e8f2;
    --bs-primary-border-subtle: #bcc7de;

    /* Bordures carrées */
    --bs-border-radius: 0;
    --bs-border-radius-sm: 0;
    --bs-border-radius-lg: 0;
    --bs-border-radius-xl: 0;
    --bs-border-radius-xxl: 0;
    --bs-border-radius-pill: 0;

    /* Composants clés */
    --bs-btn-border-radius: 0;
    --bs-btn-border-radius-sm: 0;
    --bs-btn-border-radius-lg: 0;
    --bs-card-border-radius: 0;
    --bs-input-border-radius: 0;            /* form-control */
    --bs-nav-pills-border-radius: 0;        /* pills */
    --bs-badge-border-radius: 0;
    --bs-alert-border-radius: 0;
    --bs-list-group-border-radius: 0;
    --bs-progress-border-radius: 0;
    --bs-modal-border-radius: 0;
    --bs-offcanvas-border-radius: 0;
    --bs-popover-border-radius: 0;
    --bs-tooltip-border-radius: 0;
    --bs-toast-border-radius: 0;
    --bs-dropdown-border-radius: 0;
}

html, body {
    font-size: 0.95em;
}

header .logo { max-height: 100px; }
.section-title { letter-spacing: .2px; }
.card { border-width: 1px; } /* trait sobre */
.card-title { font-size: 1rem; color: var(--bs-emphasis-color); }
.btn { text-transform: none; } /* pas de “caps” forcées */
.mono-nums { font-variant-numeric: tabular-nums; } /* aligner les chiffres */
.muted-label { color: var(--bs-secondary-color); font-size: .875rem; }

.kv dt { width: 40%; min-width: 160px; }
.kv dd { margin-left: 0; }
@media (max-width: 576px) { .kv dt { width: 100%; } }

/* un chouïa d’espacement entre lettres et un gris secondaire pour les labels */
.tracking-1 { letter-spacing: .06em; }

/* Bouton .btn-primary (tous états) */
.btn-primary{
    --bs-btn-color: #fff;
    --bs-btn-bg: #204391;
    --bs-btn-border-color: #204391;

    --bs-btn-hover-bg: #1d3c83;    /* hover ~10% plus sombre */
    --bs-btn-hover-border-color: #1d3c83;

    --bs-btn-active-bg: #1b397b;   /* active ~15% plus sombre */
    --bs-btn-active-border-color: #1b397b;

    --bs-btn-disabled-bg: #204391;
    --bs-btn-disabled-border-color: #204391;

    --bs-btn-focus-shadow-rgb: 32, 67, 145; /* halo focus cohérent */
}

/* Bouton .btn-outline-primary (cohérence hover/active) */
.btn-outline-primary{
    --bs-btn-color: #204391;
    --bs-btn-border-color: #204391;

    --bs-btn-hover-bg: #204391;
    --bs-btn-hover-border-color: #204391;
    --bs-btn-hover-color: #fff;

    --bs-btn-active-bg: #1b397b;
    --bs-btn-active-border-color: #1b397b;
    --bs-btn-focus-shadow-rgb: 32, 67, 145;
}

/* Composants divers alignés sur primary (facultatif mais propre) */
a { color: #204391; }
a:hover { color: #4063a9; }
.nav-pills .nav-link.active { --bs-nav-pills-link-active-bg: #204391; }
.form-check-input:checked { background-color:#204391; border-color:#204391; }
.progress-bar { background-color:#204391; }
.pagination .page-link { --bs-pagination-active-bg: #204391;--bs-pagination-active-border-color: #204391; }
.dropdown-item.active, .dropdown-item:active { background-color:#204391; }
.badge.text-bg-primary { background-color:#204391 !important; }
