/* ------------------------------ */
/* RESET & TYPOGRAPHIE */
/* ------------------------------ */

html, body {
    height: 100%;
      margin: 0;  
}



main {
     flex: 1 0 auto;
}

body {
    /*font-family: "Inter", Arial, sans-serif;*/
     font-family: 'Montserrat', sans-serif;
    background: #f5f6f8;
    color: #333;
    display: flex;
    flex-direction: column;
}

b, strong {
    font-weight: 700;
}

/* ------------------------------ */
/* HEADER & TOPBAR */
/* ------------------------------ */

header {
    background: #ffffff;
}
header .flex-grow-1 {
  display: flex;
}
header .flex-grow-1 .input-group {
  width: 100%;
}

header .flex-grow-1 .form-control {
  flex: 1 1 auto;
}
.top-bar-icon {
    width: 42px;
    height: 42px;
    background: #009641;
    color: #ffffff;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: 0.2s;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.45);
      cursor: pointer;
}

.header-btnIco a { 
    color: #fff!Important;
}



.top-bar-icon.active{
    background-color: #878888!important; 
}
.top-bar-icon.active:hover{
    background-color: #fff!important; 
      color: #009641!Important;
}



.header-btnIco a:hover { 
  
    
     color: #009641!Important;
}

.top-bar-icon:hover {
     background: #fff;
    color: #009641;
    transform: translateY(-4px);
}

.navbar {
    background: #009641 !important;
}

.navbar .nav-link {
    color: #fff !important;
    font-weight: 600;
    transition: 0.1s;
       display: flex;
  
    gap: 8px; 
      background-color: rgba(255,255,255,0);  
         border-radius: 5px;
    transition:  background-color 0.5s ease;
}

@media (max-width:1200px){
    .navbar .nav-link {
    font-size: .8rem;
}
}

@media(max-width:992px){
.navbar .nav-link {
    font-size: 1rem;
}
}

.navbar  .nav-item:not(.active) .nav-link:hover {
    background: #287e51;
    border-radius: 5px;
   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
   
   
    
}

.navbar .nav-item.active {
    background: #fff;
    border-radius: 5px;
     box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
   
    
}

.nav-item.active .nav-link::before {
    content: "";
    width: 15px;
    height: 20px;
    background-image: url("/images/cactus-ico.png"); 
    background-size: contain;
    background-repeat: no-repeat;
  
}

@media(max-width:992px){
    .nav-item.active .nav-link::before {
            margin-left: 10px;
    }
}

.navbar .nav-item.active .nav-link {
    color: #009641 !important;
}

.nav-item.active a{ 
   
    color:#333;
}

.navbar-toggler {
    box-shadow: none;
}

.navbar-toggler-icon {
    filter: invert(1);
}

.header-search{
   
       display: flex !important;
    justify-content: flex-end;   /* 🔥 aligne le contenu à droite */
    align-items: center;         /* centre verticalement */
    width: 100%;
}


@media (max-width:992px) {
  header > .container {
    flex-wrap: wrap;   /* 🔑 autorise le passage à la ligne */
  }
   .header-search {
    order: 3;              /* 🔥 passe après logo + icônes */
    width: 100%;           /* prend toute la ligne */
    justify-content: center; /* centre le bloc */
    margin-top: 40px;
    padding: 0 !important; /* enlève px-5 */
  }
}

@media (max-width:576px) {
    .header-logo{
         width: 100%;
          justify-content: center; /* centre le bloc */
                  padding-bottom: 30px;
    }

    .header-icons{
         width: 100%;
          justify-content: center; /* centre le bloc */
    }
     header .header-search .input-group {
   flex-direction: column;   
  }
}
.header-search .input-group {
    width: auto; 
    display: flex;
    align-items: center;   /* 🔥 centre label + select verticalement */
    gap: 12px;
}
.header-search label{
  flex: 0 0 auto;
    padding-right: 10px;
    font-family: 'Poppins', sans-serif;
    color: #009647;
    font-style: italic;
    font-weight: 800;
    font-size: 1.4rem;
       margin: 0;
    white-space: nowrap;
    
}
.header-search select.form-select {
      flex: 0 0 auto;
    min-width: 150px;
   
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
    border-radius: 10px !important;
    height: 45px;
      border: 0;
  border-radius: 0 !important;
  box-shadow: none !important;

  width: auto !important;  



}


/* ------------------------------ */
/* TABLE & FORMULAIRES */
/* ------------------------------ */

.tableCommand {
    font-size: 0.9rem;
     width: 100%;
  table-layout: fixed;
}
.order-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
        width: 90%; 
}

@media (max-width: 1200px) {
  .order-status{
    font-size: 0.7rem;
  }
}

@media (max-width: 992px) {
    .order-status {
    font-size: 0;     /* cache le texte */
   
    padding: 6px;
    padding-left: 14px;
    width: auto;
  }

  .order-status i {
    font-size: 1rem; /* réaffiche l’icône */
    margin: auto;
  }
}

.status-preparing {
    background-color: #ff9800;
}

.status-open {
    background-color: #009640;
}
.status-close {
    background-color: #b83737;
}

.status-disabled {
    background-color: #878888;
}



.status-sent,.status-delivered,.status-new  {
    background-color: #009640;
}


.status-canceled,.status-not-modifiable {
    background-color: #c0392b;
}



.table-light th {
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    vertical-align: top;

  
    background-color: #878888;
    color: #ffffff;
    
}

@media(max-width:768px){
.table-light th {
    font-size: .7rem;

}

}

.tableCommand td {
    vertical-align: middle;
    text-align: center;
}
.tableCommand th:nth-child(1) {
  width: 30%;
}
.tableCommand  input[type="number"] {
    max-width: 90px;
}
.tableCommand .table-produit.color2{
    background-color: #f7f7f7;
    
}
.col-calcul {
    background-color: #6c6c6c !important
}
.tableCommand .table-produit td {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 20px;
}
@media(max-width:768px){
    .tableCommand .table-produit td{
        font-size: .6rem;
    }
}



.tableCommand .table-produit .content-flex{
    display: flex;
     align-items: center;   
     gap: 10px;
}

.tableCommand .table-produit .content-flex  .container-img{
    background-color: #fff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
     border-radius: 2px;
     width: 80px;
      height: 80px;
     padding: 5px;
       overflow: hidden;    

         display: flex;             /* 🔴 clé n°2 */
    align-items: center;
    justify-content: center;
     flex: 0 0 80px;   /* 🔴 largeur fixe */
}

.tableCommand .table-produit .content-flex img{
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;

    object-fit: contain;
    display: block;
    border-radius: 5px;
          
}

@media(max-width:768px){
    .tableCommand .table-produit .content-flex  .container-img{
   
     width: 50px;
      height: 50px;

     flex: 0 0 50px;   /* 🔴 largeur fixe */
}
}


.tableCommand .table-produit .content-flex p {
     font-size: .8rem;
     text-align: left;
}

@media(max-width:768px){
.tableCommand .table-produit .content-flex p {
     font-size: .6rem;

}
}

.tableCommand .table-produit .inputField{
    text-align: center;
}
.tableCommand .table-produit .inputField input {
    margin: 0 auto;
    display: block;
    max-width: 90px;
}
.product-click {
    cursor: pointer;
     transition: transform 0.25s ease-out, box-shadow 0.25s ease-out;
}
.product-click:hover{
    transform: scale(1.08);
}

/* Petit badge / labels */
.small-label {
    font-size: 0.75rem;
    color: #777;
}

/* Bloc résumé à droite */
.summary-box {
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e0e0e0;
    padding: 20px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

/* ------------------------------ */
/* FOOTER */
/* ------------------------------ */

footer {
    flex-shrink: 0;
    background: #ffffff;
    padding-top: 35px;
    
    border-top: 1px solid #009647;
       color: #333;

   

}
footer .bi{
    color:#009641;
}
footer a {
    color: #444 !important;
    text-decoration: none;
}

footer a:hover {
    text-decoration: underline;
  
}

.footer-title {
    font-weight: 700;
    margin-bottom: 5px;
    color:#009641;
}
.footer-down{
     background-color: #383838;
   display: flex;              
    justify-content: center;   
   
}
.footer-down .content{
    background-color: #383838;
    color: #fff;
      border-top-left-radius: 10px;
    border-top-right-radius: 10px;
     
    align-items: center;    
    justify-content: center;  
     gap: 6px;  
    
    padding:20px; 

}
  
.footer-down img{
    max-height: 20px;
  position: relative;
  top: -1px;   
     
}
/* ------------------------------ */
/* DIVERS */
/* ------------------------------ */
.support a{ color: #fff; text-decoration: none;}
.support a:hover{ text-decoration: underline;}
.btn-search {
    background: #009641 !important;
    border: none;
    font-weight: 600;
    color:#fff;
       box-shadow: 0 4px 10px rgba(0, 0, 0, 0.45);
}

.btn-search:hover {
    background: #ffffff !important;
    color:#009641;
}

.btn-success {
    font-weight: 600;
}

/* Containers arrondis */
.rounded-box {
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
    background: #fff;
}

/* Espacement standard */
.section {
    padding: 40px 0;
}


.logo-header{
    width:80%;
}
        
/*list commande*/
.list-command .header{
    display: flex;
     justify-content: space-between;  
       
}

.btn-primary{
    background: #009641 ;
      color:#fff;
       border: none;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.45);
       
}
.btn-primary:hover{
     background: #fff ;
      color:#009641;
    
}
.btn-primary.return{
 transition: transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
}
.btn-primary.return:hover{
 transform:translateX(-3px);
}

.btn-primary.zoom{
    transition: transform 0.25s ease-out, box-shadow 0.25s ease-out;
}
.btn-primary.zoom:hover{
 transform:scale(1.04)
}

.btn-primary.modify{
    background: rgb(0, 0, 0);
}
.btn-primary.modify:hover{
    color:#fff;
  
}
.btn-primary.size2{
    font-size: 1.2rem;
}


.list-command h1{
    font-size: 2rem;
}
.col-validate-command {
     position: sticky;
    top: 110px;   /* sous le header */
    align-self: flex-start;  
    z-index: 10;
   
}

.col-infos-command {
     position: sticky;
    top: 90px;   /* sous le header */
    align-self: flex-start;  
    z-index: 10;
    padding-top: 130px;
}

@media(max-width:992px){
    .col-validate-command{
        padding-top: 0px;
    }
}

.validate-command h2{
     font-size: 1.5rem;
}
.validate-command h2 span,
.list-command h1 span, .home-dashboard .title span{
    font-family: 'Poppins', sans-serif; 
    color:#009641;
      font-style: italic;
          font-weight: 900;
}

.list-command p{
    font-size: 1rem;
    font-weight: 200;

}

.ico-create-command{
      display: inline-flex;             
  align-items: center;
  justify-content: center;
  color: #009646;
  font-size: 1.2rem;
  transition: transform 0.2s ease, color 0.2s ease;
  padding-left:10px;
}



.ico-create-command:hover{
   color: #007a39; /* vert un peu plus foncé */
    transform: scale(1.3);
}


    /*Modal*/
    .modal-content {
        border-radius: 20px;
        overflow: hidden;
    }
.modal-header { 
    background-color: #009641;
   padding: 0px;
    padding-left: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
  border-radius: 0;        /* 🔑 important */
  margin: 0;
  
}
.modal-header  .modal-title {
    color:#fff;
    font-weight: bold;
}
.modal-header .btn-close {
 
    color:#fff;
}
.modal-body {
      text-align: center;
}

.modal-body img {
    max-height: 350px;
    object-fit: contain;
     width: 100%;
         border-radius: 5px;
}


.btn-close-custom {
    background: transparent;
    border: none;
    font-size: 22px;
    color: #ffffff;
    padding: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
        padding-right: 20px;
}

.btn-close-custom:hover {
   
    color:#fff; 
    transform: scale(1.25);
}
.modal-content .btns{
    display: flex;
    justify-content: center;
    gap: 20px;
}

/*Calendrier*/
/* Rendre Flatpickr responsive */

.calendarShoppi-container{ 
 display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
 
}
.CalendarOnly {
    margin-top: 72px !Important;
}

.flatpickr-calendar.inline {
   
    max-width: 334px !important;
}

span.flatpickr-weekday {
    font-size: 90%!important;
}
@media(max-width:1200px){
span.flatpickr-weekday {
    font-size: 85%!important;
}
}
@media(max-width:992px){
span.flatpickr-weekday {
    font-size: 90%!important;
}
}

/* Cache complètement les jours hors mois */
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
  visibility: hidden;   /* garde la grille alignée */
  pointer-events: none;
}


.flatpickr-calendar .flatpickr-days,
.flatpickr-calendar .dayContainer {
    width: 100% !important;     
    max-width: 100% !important;
     
}
.flatpickr-day.flatpickr-disabled{
    color:#cbcbcb;
}

.flatpickr-calendar .flatpickr-day {
    height: 38px;              
}



.flatpickr-calendar {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
@media(max-width:1200px){
.flatpickr-calendar {
    font-size: 13px!important;
}
}
@media(max-width:992px){
.flatpickr-calendar {
    font-size: 14px!important;
}
}



.flatpickr-months,
.flatpickr-weekdays {
    background: transparent !important;
    border: none !important;
}


.flatpickr-day {
    border: none !important;
}

.flatpickr-day.selected,.flatpickr-day.selected:hover{
    background: #009647;
}

.flatpickr-rContainer{
    margin: auto;
}
.flatpickr-current-month {
    font-size: 135%;
    line-height: inherit;
    font-weight: 300;
    color: inherit;
    position: absolute;
    width: 80%;
    left: 12.5%;
    padding: 7.48px 0 0 0;
    line-height: 1;
    height: 34px;
    display: inline-block;
    /* text-align: center; */
    /* margin: auto; */
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.flatpickr-secondary-day {
  background: #ff9800 !important;
  color: #fff !important;
  border-radius: 50%;
}

.flatpickr-day.selected {
  background: #0a9d58 !important; /* vert */
  border-color: #0a9d58 !important;
}

/* Dates "alertes" en rouge */
.flatpickr-day.fp-alert-day {
  background: #c0392b !important;
  color: #fff !important;
  border-radius: 50%;
}

/* petit effet au survol */
.flatpickr-day.fp-alert-day:hover {
  filter: brightness(1.05);
  cursor: pointer;
}

@media (max-width: 1400px) {
    .flatpickr-current-month {
       font-size: 100%;
    }
}
@media (max-width: 992px) {
    .flatpickr-current-month {
       font-size: 135%;
    }
}

.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
        top: -5px;
}
@media (max-width: 1200px) {
  .flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
        top: -10px;
            padding-left: 40px;
    padding-right: 40px;
}
}
@media (max-width: 992px) {
   .flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
        top: -5px;
           padding-left: 10px;
    padding-right: 10px;
}
}

/*tooltip User*/
.tooltip-inner {
    background-color: #009641;
    font-weight: 600;
}

.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: #009641;
}

/*popOver liste des commandes en cours*/

/* Enlever les marges internes du popover */
.popover {
    min-width: 380px !important; /* ajustable */
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.45);
      border-radius: 10px;
       pointer-events: auto;
        
}
.popover-header {
    background-color: #009641 !important;   /* fond du header */
    color: #fff !important;                 /* texte du header */
   
}

.popover-body {
     padding: 0 !important;             /* optionnel : colle le tableau au bord */
    border-radius: 0 0 12px 12px !important; /* arrondi en bas */
    overflow: hidden;                  /* masque le débordement du tableau */
}

/* Faire prendre toute la largeur au tableau */
.popover-body table {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

/* Enlever arrondis internes si nécessaire */
.popover-body table thead th,
.popover-body table td {
    padding-left: 12px; /* Ajuste si tu veux */
    padding-right: 12px;
}

.popOverLastCommand{
    border-radius: 10px;
}

.popOverLastCommand td {
    vertical-align: middle;
    text-align: center;
}


/* Légende calendrier */
.calendar-legend {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 0.85rem;
    
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.legend-dot {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    display: inline-block;
}


.legend-order {
    background: #0a9d58;
}


.legend-delivery {
    background: #ff9800;
}

.legend-already-order {
    background: #c0392b ;
}

.legend-not-available {
    background: #cbcbcb ;
}



/*Pagination*/
.pagination {
  --bs-pagination-active-bg: #009640;        /* vert Cactus */
  --bs-pagination-active-border-color: #009640;
  --bs-pagination-active-color: #fff;
}
.page-link{
    color:#878888;
}


/*page list des catégories*/

.information-command-delay-2{
background-color: #fff;
color:#009640;
    font-size: 1.2rem;
     box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
}

.information-command-delay-1{
background-color: #878888;
color:#fff;
    font-size: 1.2rem;
}


.search-group{
    display: flex;
    align-items: center;
    gap: 20px;              /* espace global */
    width: 100%;
 

}

.search-group .filters-right {
    margin-left: auto;        /* 🔥 pousse à droite */
    display: flex;
    gap: 20px;
}
.search-group .title{

   flex: 0 0 auto;
     margin-right: 30px;  
}

@media (max-width: 992px) {

    .search-group {
        flex-wrap: wrap;           /* autorise le retour ligne */
    }

    .search-group .title {
        width: 100%;               /* prend toute la ligne */
        margin-bottom: 12px;       /* espace avec les filtres */
    }

    .search-group .filters-right {
        margin-left: 0;            /* annule l’alignement droite */
        width: 100%;
        justify-content: flex-start;
    }
}



.search-group .title h1 {
    white-space: nowrap;  /* 🔑 une seule ligne */
    margin: 0;            /* évite les décalages */
}
.search-group .Filter-input{
   flex: 0 1 320px;
}
.search-group .filter-category  {
    flex: 0 1 300px;       /* largeur fixe */
}

@media (max-width: 768px) {
    

         .search-group .filters-right {
       flex-wrap: wrap;     
    }
  
    .search-group .Filter-input{
   width: 100%;
    }
    .search-group .filter-category  {
        width: 100%;
    }
}


.command-Filter .input-group-text i {
    font-size: 1.1rem;
}

.command-Filter .input-group-text {
    color: #009641;
}

.search-command{
    width: 600px;
}

/*Contact*/
.contact-coordonate a{
color: #878888;
    font-weight: bold;
    font-size: .9rem;
}

/* ACTUALITES */


.actualites h1 span {
    color: #009641;
    font-style: italic;
    font-weight: 900;
}

.news-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    height: 100%;

    display: flex;
    flex-direction: column;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    text-decoration: none;
    color: inherit;
}

.news-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
    text-decoration: none;
}

.news-img {
    width: 100%;
    height: 200px;
    overflow: hidden;
}

.news-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.news-content h3 {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-decoration:none!important;
    color:#000;
}

.news-content p {
    font-size: 0.9rem;
    color: #666;
    flex: 1;
}

.news-content .btn {
    align-self: flex-start;
    margin-top: 15px;
}


/*News detail*/
  .news-detail-card{
            background:#fff;
            border-radius:12px;
            overflow:hidden;
            box-shadow: 0 4px 10px rgba(0,0,0,0.15);
        }
        .news-hero{
            width:100%;
            max-height: 420px;
            overflow:hidden;
            background-color: #009647;
          

        }
            .news-hero .title {
            padding-left: 20px;
            padding-top: 20px;
            color:#fff;
            }
        .news-hero .title h2{
                font-family: 'Poppins', sans-serif;
             font-style: italic;
             font-weight: 700;
          
        }
        .news-hero .title p{
             font-weight: 900;
        }
        .news-hero img{
            width:100%;
            height:100%;
            object-fit: cover;
            display:block;
            border-left: 1px solid #fff;
             box-shadow: 0 4px 10px rgba(0,0,0,0.55);
        }
        .news-meta{
            color:#777;
            font-size: .9rem;
            display:flex;
            flex-wrap: wrap;
            gap: 14px;
            align-items: center;
        }
        .news-meta i{
            color:#009641;
        }
        .news-body p{
            color:#444;
            line-height: 1.7;
            margin-bottom: 14px;
        }
        .chip{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:6px 12px;
            border-radius: 999px;
            background:#f3f5f7;
            font-weight: 600;
            font-size: .85rem;
            color:#333;
        }
        .chip i{ color:#009641; }



/* index */

.home-dashboard .brand{
  color:#009641;
  font-style: italic;
  font-weight: 900;
  font-family: 'Poppins', sans-serif;
}

.dash-card{
  background:#fff;
  border-radius:12px;
  overflow:hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
  display:block;
  text-decoration:none;
  color:inherit;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  height:100%;
}

.dash-card-notification{
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    display: block;
    text-decoration: none;
    color: inherit;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    height: 100%;
}


.dash-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 8px 18px rgba(0,0,0,0.25);
}

.dash-card__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  border-radius:999px;
  background:#f3f5f7;
  font-weight:600;
  font-size:1.1rem;
  color:#333;
  margin: 0 auto 12px auto;      /* ⬅️ clé n°2 (centrage réel) */
  width: fit-content;            /* ⬅️ clé n°3 */
}

@media (max-width:1200px) {
    .dash-card__badge{
        font-size:.8rem;
    }
}

.dash-card__badge i{ color:#009641; }

.dash-card__title{
  font-weight:800;
  
     text-align: center; 
}

@media (max-width:1200px) {
h2.dash-card__title {
    font-size: 1.5rem;
}

}

.dash-card__text{
  color:#666;
  margin:0 0 16px 0;
      text-align: center;
}

@media (max-width:1200px) {
    .dash-card__text{
font-size: 1rem;
}
}

/* Featured (Dernière actu) */
.dash-card--featured{
  flex-direction:row;
  height: 320px;
}

/* Featured (Dernière actu) : version mobile */
@media (max-width: 991.98px) {
  .dash-card--featured{
    height: auto;              /* enlève la hauteur fixe */
  }

  /* optionnel : centre le contenu en mobile */
  .dash-card--featured .dash-card__content{
    padding: 20px;
    text-align: center;
    align-items: center;
  }

  .dash-card--featured .dash-card__content .btn{
    align-self: center;
  }
}


.dash-card--featured .dash-card__media img{
  
    width: 100%;
  height: auto;

}
.dash-card__media-notification {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 10px;
}

.dash-card-notification .dash-card__media-notification img {
    max-height: 300px;
}


@media (max-width:1200px) {
    .dash-card--featured .dash-card__media img{
    width: 105%;
   
  }
}
@media (max-width: 991.98px) {
  .dash-card--featured .dash-card__media img{
    max-height: 200px;
    object-fit: cover;
  }
}

.dash-card--featured .dash-card__content{

  display: flex;
  flex-direction: column;
  justify-content: flex-start;
      padding: 20px;

}



/* CTA cards */
.dash-card--cta{
  padding:18px 18px;
  gap:14px;
  align-items:center;
}

.dash-card--cta .dash-card__icon{
  width:52px;
  height:52px;
  border-radius:10px;
  background:#009641;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
  flex:0 0 auto;
}

.dash-card--cta .dash-card__content{
  flex:1;
}

.dash-card--cta .dash-card__title{
  font-size:1.05rem;
  margin:0 0 6px 0;
}

.dash-card--cta .dash-card__text{
  font-size:.9rem;
  margin:0;
}

.dash-card__arrow{
  color:#009641;
  font-size:20px;
  flex:0 0 auto;
}

.dash-card__content .btn {
  align-self: center;  
  
}

.legal-page a{
    color: #007a39;
}

/* =========================
   COOKIE BANNER + MODAL
========================= */

.cookie-banner{
  position: fixed;
  left: 50%;
  right: auto;                /* important */
  transform: translateX(-50%);
  bottom: 25px;
  z-index: 1055;

  background: #fff;
  border-radius: 14px;
  padding: 14px 16px;
  border: 1px solid rgba(0,0,0,0.06);
  display: none;

  width: fit-content;         /* s’adapte au contenu */
  max-width: calc(100vw - 32px); /* ne dépasse jamais l’écran */
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35)!important;
  margin: 0;
}


.cookie-banner.is-visible{ display:block; }

.cookie-banner__content{
  display: flex;
  align-items: center;
  flex-wrap: wrap;     /* garde l'empilement */
  gap: 14px;           /* espace général (vertical + entre texte et boutons si wrap) */
  justify-content: flex-start; /* IMPORTANT : pas space-between */
}

.cookie-banner__text{
  color:#3b3b3b;
  font-size: .95rem;
  line-height: 1.4;
  max-width: 600px;  
}

.cookie-banner__link{
  margin-left: 8px;
  font-weight: 700;
  text-decoration: underline;
  color:#009641;
}

.cookie-banner__actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.cookie-btn{
  border-radius: 10px;
  padding: 9px 14px;
  font-weight: 700;
}

@media (max-width: 768px){
  .cookie-banner__content{
    flex-direction: column;
    align-items: stretch;
  }
  .cookie-banner__actions{
    justify-content: stretch;
  }
  .cookie-btn{
    width: 100%;
  }
}

/* Modal */
.cookie-modal{
  border-radius: 16px;
  overflow:hidden;
}

.cookie-modal__logo{
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(0,150,65,0.10);
  position: relative;
}
.cookie-modal__logo::after{
  content:"";
  position:absolute;
  inset: 8px;
  border-radius: 8px;
  background:#009641;
  opacity: .25;
}

/* Preference blocks */
.cookie-pref{
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 12px;
  padding: 14px 14px;
  margin-bottom: 14px;
  background:#fff;
}

.cookie-pref__top{
  display:flex;
  align-items:flex-start;
  justify-content: space-between;
  gap: 14px;
}

.cookie-pref__title{
  font-weight: 800;
  margin-bottom: 4px;
}

.cookie-pref__desc{
  color:#666;
  font-size:.95rem;
  line-height: 1.35;
}

.cookie-pref__note{
  margin-top: 10px;
}

/* Switch color (Bootstrap) */
.form-check-input:checked{
  background-color: #009641;
  border-color: #009641;
}

.btn-return-1{
      width: 100%;
    text-align: right;
    padding-right: 5px;
}

/* Select + login icon as one linked component */
.client-switch {
    display: inline-flex;
    align-items: stretch;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
    background: #fff;
    width: 100%;

}

/* Icône verte à gauche */
.client-switch__icon{
  width: 45px;
  height: 45px;
  background: #009641;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 45px;
}


/* Desktop: la zone Station ne doit PAS prendre 100% */
@media (min-width: 992px) {
    .header-search{
    width: auto !important;
    justify-content: flex-end;
  }

  /* le bloc "Station" reste à sa taille */
  .client.header-search{
    flex: 0 0 auto;
  }

  /* le bloc recherche prend tout l’espace restant */
  header .flex-grow-1{
    flex: 1 1 auto;
    min-width: 0; /* important pour éviter les comportements bizarres */
  }

  header .flex-grow-1 .input-group{
    width: 100%;
  }

  header .flex-grow-1 .form-control{
    min-width: 0;
  }
}
@media (max-width: 992px) {
  .header-search-filter{
    display: none!important;
  }
}

.alert-produit {
    color: red;
    font-size: .7rem !Important;
}

.alert-message {
    color: red;
}

.btn-open-delete-modal, .btn-open-copy-modal {
    /*padding-left: 10px;*/
}

.tableCommand .table-produit td.action {
    text-align:left;
}

.text-product-filter {
    font-size: 1rem;
    color: #4a4a4a;
    font-weight: 500;
}
.cactus-switch {
    position: relative;
    display: inline-block;
    width: 46px;
    height: 24px;
    margin-bottom: 0; 
}

    /* Cache la case à cocher native de HTML */
    .cactus-switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

    /* Le bouton de fond (Slider) */
    .cactus-switch .cactus-slider {
        position: absolute;
        cursor: pointer;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: #ccc; /* Gris quand il est désactivé (n'affiche pas tout) */
        transition: .3s ease;
        border-radius: 24px;
    }

        /* Le petit rond blanc à l'intérieur du bouton */
        .cactus-switch .cactus-slider:before {
            position: absolute;
            content: "";
            height: 18px;
            width: 18px;
            left: 3px;
            bottom: 3px;
            background-color: white;
            transition: .3s ease;
            border-radius: 50%;
            box-shadow: 0 2px 4px rgba(0,0,0,0.2);
        }

    /* Couleur de fond quand le Switch est coché (Vert Cactus) */
    .cactus-switch input:checked + .cactus-slider {
        background-color: #009639;
    }

        /* Déplacement du rond blanc vers la droite quand activé */
        .cactus-switch input:checked + .cactus-slider:before {
            transform: translateX(22px);
        }

    /* Effet de focus optionnel pour l'accessibilité */
    .cactus-switch input:focus + .cactus-slider {
        box-shadow: 0 0 1px #009639;
    }