/*
 * Thème Panorama sur Bootstrap 5 — choix de design assumés de l'application.
 * (Successeur de la couche transitoire bs3-compat.css, fondue le 16/07/2026 :
 *  le markup BS3 a été migré vers les composants natifs BS5 ; ne restent ici
 *  que des personnalisations volontaires, via les APIs documentées de BS5.)
 */

/* ---------- Échelle typographique (14px, héritée du design historique) ---------- */

:root {
    --bs-body-font-size: 14px;
    --bs-body-line-height: 1.428571429;
}
h1, .h1 { font-size: 36px; }
h2, .h2 { font-size: 30px; }
h3, .h3 { font-size: 24px; }
h4, .h4 { font-size: 18px; }
h5, .h5 { font-size: 14px; }
h6, .h6 { font-size: 12px; }
h1, .h1, h2, .h2, h3, .h3 { margin-top: 20px; margin-bottom: 10px; }
h4, .h4, h5, .h5, h6, .h6 { margin-top: 10px; margin-bottom: 10px; }
/* …mais pas quand le titre sert d'en-tête de composant */
.popover-header,
.modal-header h1, .modal-header h2, .modal-header h3, .modal-header h4, .modal-title,
.card-header h1, .card-header h2, .card-header h3, .card-header h4, .card-title {
    margin-top: 0;
    margin-bottom: 0;
}
.btn { --bs-btn-font-size: 14px; }
.btn-sm { --bs-btn-font-size: 12px; }
.btn-lg { --bs-btn-font-size: 18px; }
.dropdown-menu { --bs-dropdown-font-size: 14px; }
.form-control, .form-select, .input-group-text { font-size: 14px; }
.modal-title { font-size: 18px; }
.popover { --bs-popover-font-size: 14px; }
.tooltip { --bs-tooltip-font-size: 12px; }
label { font-size: 14px; font-weight: 600; }
/* les liens ne sont soulignés qu'au survol */
a:hover { text-decoration: underline; }

/* ---------- Variante de bouton très compacte (tableaux d'actions) ---------- */
/* Valeurs de Bootstrap 3, à l'identique de la production.
   ⚠️ bootstrap5-toggle redéfinit .btn-xs avec des valeurs EN DUR
   (font-size .875rem, line-height .5…) pour ses interrupteurs « mini » :
   les propriétés sont donc reposées directement ici, pas seulement via les
   variables Bootstrap, sans quoi la feuille du plugin l'emporterait. */

/* :not(.toggle) — les interrupteurs bootstrap5-toggle (data-size="mini")
   portent aussi .btn-xs et gardent leur propre géométrie */
.btn-xs:not(.toggle) {
    --bs-btn-padding-y: 1px;
    --bs-btn-padding-x: 5px;
    --bs-btn-font-size: 12px;
    --bs-btn-border-radius: 3px;
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

/* ---------- Largeur de page historique (BS3 : 1170px ; BS5 monte à 1140/1320px) ---------- */

@media (min-width: 1200px) {
    .container { max-width: 1170px; }
}

/* ---------- Largeurs de modales ---------- */

.modal { --bs-modal-width: 600px; }
.modal .modal-lg { --bs-modal-width: 900px; }

/* ---------- Icônes : rendu légèrement plus dense (validé en recette) ---------- */

.fa-solid { -webkit-text-stroke: 0.03em; }

/* ---------- Navbar : carets personnalisés (le caret auto de BS5 est désactivé) ---------- */

.caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 2px;
    vertical-align: middle;
    border-top: 4px dashed;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
}
.dropdown-toggle::after { display: none; }

/* ---------- Encarts "well" (composant maison, ex-BS3) ---------- */

.well {
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    background-color: #f5f5f5;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}

/* ---------- Blocs de formulaire (classe maison, ex-BS3) ---------- */

.form-group { margin-bottom: 15px; }
input[type="file"] { display: block; }

/* ---------- Socle checkbox/radio du plugin awesome-bootstrap-checkbox ---------- */
/* le plugin décore le markup BS3 (.checkbox/.radio) ; ce socle disparaîtra
   avec le plugin (remplacement Symfony UX / form-check natif) */

.checkbox, .radio {
    position: relative;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
}
.checkbox label, .radio label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer;
}
.checkbox input[type="checkbox"], .radio input[type="radio"] {
    position: absolute;
    margin-left: -20px;
}
