@charset "UTF-8";
/* ==========================================================
   IPM · thème Bootstrap 5.3 · L'Avenir
   À charger APRÈS bootstrap.min.css. Même HTML pour toutes les
   marques : on change seulement ce fichier.
   Valeurs : fiche L'Avenir de la toolbox IPM Tools-Design.
   Survols et teintes douces calculés quand la fiche n'en donne pas.
   Note : Le bouton primaire de la fiche est noir avec un texte vert vif : .btn-primary le reproduit. --bs-primary reste le vert forêt pour les liens et les fonds.
   ========================================================== */
@font-face { font-family: "Lato"; src: url("fonts/Lato-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Lato"; src: url("fonts/Lato-Italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Lato"; src: url("fonts/Lato-Bold.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Lato"; src: url("fonts/Lato-Black.woff2") format("woff2"); font-weight: 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Lato"; src: url("fonts/Lato-BlackItalic.woff2") format("woff2"); font-weight: 900; font-style: italic; font-display: swap; }

:root, [data-bs-theme="light"] {
  --ipm-brand: "lavenir";
  --ipm-font-title: "Lato", Georgia, serif;
  --ipm-font-base: "Lato", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --ipm-title-weight: 900;
  --ipm-accent-dark: #00E25D;          /* accent lisible sur fond sombre */
  --ipm-surface-dark: #1C1C1E;   /* fond des blocs sombres (lecteur audio...) */

  --bs-primary: #0A3623; --bs-primary-rgb: 10,54,35;
  --bs-secondary: #656565; --bs-secondary-rgb: 101,101,101;
  --bs-warning: #FED80B; --bs-warning-rgb: 254,216,11;
  --bs-primary-text-emphasis: #061E13;
  --bs-primary-bg-subtle: #E2E7E5;
  --bs-primary-border-subtle: #A9B9B2;
  --bs-body-font-family: var(--ipm-font-base);
  --bs-body-color: #141415; --bs-body-color-rgb: 20,20,21;
  --bs-emphasis-color: #141415;
  --bs-link-color: #0A3623; --bs-link-color-rgb: 10,54,35;
  --bs-link-hover-color: #082E1E; --bs-link-hover-color-rgb: 8,46,30;
  --bs-focus-ring-color: rgba(10,54,35,.35);
  --bs-border-radius: .25rem;
  --bs-border-radius-sm: .25rem;
  --bs-border-radius-lg: .5rem;
}
[data-bs-theme="dark"] {
  --bs-primary-text-emphasis: #00E25D;
  --bs-primary-bg-subtle: #03100B;
  --bs-primary-border-subtle: #062015;
  --bs-link-color: #00E25D; --bs-link-color-rgb: 0,226,93;
  --bs-link-hover-color: #40E986; --bs-link-hover-color-rgb: 64,233,134;
  --bs-body-color: #E9E9EA; --bs-body-color-rgb: 233,233,234; --bs-emphasis-color: #FFFFFF;
}

/* Titres : police de titre de la marque */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
  font-family: var(--ipm-font-title); font-weight: var(--ipm-title-weight);
}

/* Boutons : Bootstrap les compile en bleu, il faut les redéfinir */
.btn-primary {
  --bs-btn-color: #00E25D; --bs-btn-bg: #141415; --bs-btn-border-color: #141415;
  --bs-btn-hover-color: #00E25D; --bs-btn-hover-bg: #000000; --bs-btn-hover-border-color: #000000;
  --bs-btn-focus-shadow-rgb: 0,226,93;
  --bs-btn-active-color: #00E25D; --bs-btn-active-bg: #000000; --bs-btn-active-border-color: #000000;
  --bs-btn-disabled-color: #00E25D; --bs-btn-disabled-bg: #141415; --bs-btn-disabled-border-color: #141415;
}
.btn-secondary {
  --bs-btn-color: #FFFFFF; --bs-btn-bg: #656565; --bs-btn-border-color: #656565;
  --bs-btn-hover-color: #FFFFFF; --bs-btn-hover-bg: #565656; --bs-btn-hover-border-color: #565656;
  --bs-btn-focus-shadow-rgb: 101,101,101;
  --bs-btn-active-color: #FFFFFF; --bs-btn-active-bg: #565656; --bs-btn-active-border-color: #565656;
  --bs-btn-disabled-color: #FFFFFF; --bs-btn-disabled-bg: #656565; --bs-btn-disabled-border-color: #656565;
}
.btn-warning {
  --bs-btn-color: #1D1D1B; --bs-btn-bg: #FED80B; --bs-btn-border-color: #FED80B;
  --bs-btn-hover-color: #1D1D1B; --bs-btn-hover-bg: #EAC70A; --bs-btn-hover-border-color: #EAC70A;
  --bs-btn-focus-shadow-rgb: 254,216,11;
  --bs-btn-active-color: #1D1D1B; --bs-btn-active-bg: #D8B809; --bs-btn-active-border-color: #D8B809;
  --bs-btn-disabled-color: #1D1D1B; --bs-btn-disabled-bg: #FED80B; --bs-btn-disabled-border-color: #FED80B;
}
.btn-outline-primary {
  --bs-btn-color: #0A3623; --bs-btn-border-color: #0A3623;
  --bs-btn-hover-color: #FFFFFF; --bs-btn-hover-bg: #0A3623; --bs-btn-hover-border-color: #0A3623;
  --bs-btn-focus-shadow-rgb: 10,54,35;
  --bs-btn-active-color: #FFFFFF; --bs-btn-active-bg: #0A3623; --bs-btn-active-border-color: #0A3623;
  --bs-btn-disabled-color: #0A3623; --bs-btn-disabled-border-color: #0A3623;
}
.btn-outline-secondary {
  --bs-btn-color: #656565; --bs-btn-border-color: #656565;
  --bs-btn-hover-color: #FFFFFF; --bs-btn-hover-bg: #656565; --bs-btn-hover-border-color: #656565;
  --bs-btn-focus-shadow-rgb: 101,101,101;
  --bs-btn-active-color: #FFFFFF; --bs-btn-active-bg: #656565; --bs-btn-active-border-color: #656565;
  --bs-btn-disabled-color: #656565; --bs-btn-disabled-border-color: #656565;
}
.btn { --bs-btn-font-family: var(--ipm-font-base); }
.btn:focus-visible { box-shadow: 0 0 0 .25rem rgba(0,226,93,.5); }
[data-bs-theme="dark"] .btn-outline-primary { --bs-btn-color: #00E25D; --bs-btn-border-color: #00E25D; }

/* Formulaires : focus et cases cochées */
.form-control:focus, .form-select:focus, .form-check-input:focus { border-color: #6C867B; box-shadow: 0 0 0 .25rem rgba(0,226,93,.5); }
.form-check-input:checked, .form-check-input[type=checkbox]:indeterminate { background-color: #0A3623; border-color: #0A3623; }
.form-switch .form-check-input:focus { --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%236C867B'/%3e%3c/svg%3e"); }
.form-range::-webkit-slider-thumb { background-color: #0A3623; }
.form-range::-moz-range-thumb { background-color: #0A3623; }
.form-range:focus::-webkit-slider-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(0,226,93,.5); }
.form-range:focus::-moz-range-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(0,226,93,.5); }

/* Composants à couleur active */
.nav-pills { --bs-nav-pills-link-active-bg: #0A3623; }
.nav-link:focus-visible { box-shadow: 0 0 0 .25rem rgba(0,226,93,.5); }
.pagination { --bs-pagination-active-bg: #0A3623; --bs-pagination-active-border-color: #0A3623; --bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(0,226,93,.5); }
.progress, .progress-stacked { --bs-progress-bar-bg: #0A3623; }
.list-group { --bs-list-group-active-bg: #0A3623; --bs-list-group-active-border-color: #0A3623; }
.dropdown-menu { --bs-dropdown-link-active-bg: #0A3623; }
.accordion { --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(0,226,93,.5); --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23062317' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e"); }
.table-primary { --bs-table-bg: #E2E7E5; }
