
/* Thème vert léger global
   Objectif : remplacer le bleu principal par un vert professionnel,
   sans modifier les couleurs métier : rouge retard, orange en cours, violet maintenance. */

:root{
  --primary:#2e8b57 !important;
  --accent:#34c77b !important;
  --nav-accent:#2e8b57 !important;
  --nav-accent-soft:#e8f7ef !important;
  --bs-primary:#2e8b57 !important;
  --bs-primary-rgb:46,139,87 !important;
  --bs-link-color:#2e8b57 !important;
  --bs-link-hover-color:#216b43 !important;
}

/* Navigation générale */
.sidebar{
  background:linear-gradient(180deg,#2e8b57,#123524) !important;
}
.sidebar .nav-link.active,
.sidebar .nav-link:hover{
  background:#e8f7ef !important;
  color:#216b43 !important;
}
.sidebar .nav-link.active i,
.sidebar .nav-link:hover i{
  color:#216b43 !important;
}
.brand-icon,
.topbar-app-icon,
.profile-avatar,
.profile-chip .profile-avatar,
.bottom-nav-avatar{
  background:linear-gradient(135deg,#2e8b57,#34c77b) !important;
}

/* Boutons et éléments Bootstrap bleus */
.btn-primary,
.btn-info,
.bg-primary,
.badge.bg-primary,
.alert-primary,
.list-group-item-primary{
  background:linear-gradient(135deg,#2e8b57,#34c77b) !important;
  border-color:#2e8b57 !important;
  color:#fff !important;
}
.btn-outline-primary{
  border-color:#2e8b57 !important;
  color:#2e8b57 !important;
}
.btn-outline-primary:hover{
  background:#2e8b57 !important;
  color:#fff !important;
}
.text-primary,
a,
.page-link{
  color:#2e8b57;
}
.page-item.active .page-link{
  background:#2e8b57 !important;
  border-color:#2e8b57 !important;
}

/* Champs actifs */
.form-control:focus,
.form-select:focus{
  border-color:#34c77b !important;
  box-shadow:0 0 0 .22rem rgba(46,139,87,.18) !important;
}

/* Barre du haut et navigation mobile */
.top-menu-btn,
.notification-bell,
.top-pill i,
.mobile-bottom-item i,
.mobile-bottom-item.active i,
.mobile-bottom-item.active span{
  color:#2e8b57 !important;
}
.top-pill.active,
.mobile-bottom-item.active{
  background:#e8f7ef !important;
  color:#216b43 !important;
}
.top-pill.active i{
  color:#216b43 !important;
}

/* Cartes/tableau de bord et icônes anciennement bleues */
.quick-action,
.quick-reserve-btn,
.availability-mobile-icon,
.availability-mobile-action .quick-action{
  background:#e8f7ef !important;
  border-color:#b9e8cc !important;
  color:#216b43 !important;
}
.quick-row:hover{
  background:#f1fbf6 !important;
}

/* Planning : remplacer le bleu principal des cases normales par vert.
   Les statuts retard/en cours/maintenance gardent leurs couleurs propres via leurs classes spécifiques. */
.ymp-panel h2,
.ymp-filter-title,
.fc .fc-toolbar-title,
.fc .fc-button-primary,
.fc-event:not(.en-retard):not(.en-cours-utilisation):not(.maintenance):not(.hors-service),
.fc-daygrid-event:not(.en-retard):not(.en-cours-utilisation):not(.maintenance):not(.hors-service){
  border-color:#2e8b57 !important;
}
.fc .fc-button-primary{
  background:#2e8b57 !important;
  color:#fff !important;
}
.fc .fc-button-primary:hover,
.fc .fc-button-primary:focus{
  background:#216b43 !important;
}
.ymp-event.car:not(.en-retard):not(.en-cours-utilisation):not(.maintenance):not(.hors-service),
.ymp-list-card:not(.en-retard):not(.en-cours-utilisation):not(.maintenance):not(.hors-service){
  border-left-color:#2e8b57 !important;
}
.ymp-event.car:not(.en-retard):not(.en-cours-utilisation):not(.maintenance):not(.hors-service){
  background:linear-gradient(90deg,#e8f7ef,#fff) !important;
}

/* En-têtes bleus remplacés par vert */
[class*="header"],
[class*="hero"],
[class*="banner"]{
  --primary:#2e8b57 !important;
}

/* Ne pas toucher aux couleurs métier importantes */
.en-retard,
.status-retard,
.badge-retard,
.text-danger,
.bg-danger{
  /* règles existantes conservées */
}
.en-cours-utilisation,
.status-encours{
  /* règles existantes conservées */
}


/* Correctif final accueil : supprime les derniers bleus ciel du tableau de bord */
.dashboard-hero-modern{
  background:linear-gradient(135deg,#2e8b57 0%,#216b43 52%,#34c77b 100%) !important;
}
.dashboard-hero-panel-icon,
.dashboard-stat-blue .dashboard-stat-top i,
.dashboard-action-card i,
.dashboard-rule-list i{
  background:#e8f7ef !important;
  color:#2e8b57 !important;
}
.dashboard-stat-blue .dashboard-stat-top i{
  color:#2e8b57 !important;
}
.dashboard-action-card.action-primary{
  background:linear-gradient(135deg,#2e8b57,#34c77b) !important;
  color:#ffffff !important;
  border-color:#2e8b57 !important;
}
.dashboard-action-card.action-primary i{
  background:rgba(255,255,255,.18) !important;
  color:#ffffff !important;
}
.dashboard-pill{
  background:#e8f7ef !important;
  color:#2e8b57 !important;
}
.dashboard-notification-icon,
.dashboard-notification-badge{
  background:#fff1f1 !important;
  color:#ff1f2d !important;
}
.dashboard-notification-icon i,
.dashboard-notification-later i{
  color:#ff1f2d !important;
}
.dashboard-notification-icon span{
  background:#ff1f2d !important;
}
.dashboard-notification-open{
  background:linear-gradient(135deg,#ff3b45,#ff1f2d) !important;
  border-color:#ff1f2d !important;
  color:#ffffff !important;
}
.dashboard-notification-later{
  color:#ff1f2d !important;
  border-color:rgba(255,31,45,.38) !important;
}
.dashboard-stat-card.dashboard-stat-blue{
  border-top-color:#2e8b57 !important;
}

/* Bootstrap bleu primaire restant */
.bg-primary,
.badge.bg-primary,
.btn-primary,
.alert-primary{
  background:linear-gradient(135deg,#2e8b57,#34c77b) !important;
  border-color:#2e8b57 !important;
  color:#fff !important;
}
.text-primary,
.border-primary{
  color:#2e8b57 !important;
  border-color:#2e8b57 !important;
}

/* Anciennes classes/teintes bleues internes */
[style*="#1877f2"],
[style*="#0f5cc8"],
[style*="#0b3d91"],
[style*="#eaf3ff"],
[style*="#e8f3ff"],
[style*="#e7f0ff"]{
  --primary:#2e8b57 !important;
}
