/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

.select2-container {
  font-size: 12px;
  outline: none;
  width: 100% !important;
  z-index: 9999999;
}


    .site-main ul:not(.elementor-icon-list-items, .woocommerce-shipping-methods, .woocommerce-error), .list_custom ul {
      list-style: none; /* Supprime les puces par défaut */
      padding: 0;
      margin: 0;
    }
    
    .site-main ul:not(.elementor-icon-list-items, .woocommerce-shipping-methods, .woocommerce-error) li, .list_custom ul li {
      position: relative; /* Nécessaire pour positionner l'encoche */
      padding-left: 25px; /* Espace pour l'encoche */
      margin-bottom: 10px;
    }

    .site-main ul:not(.elementor-icon-list-items, .woocommerce-shipping-methods, .woocommerce-error) li::before, .list_custom ul:not(.elementor-icon-list-items) li::before {
      content: "✔"; /* Remplace par une encoche */
      color: #ffcd08; /* Couleur de l'encoche */
      font-size: 1.2em; /* Taille de l'encoche */
      position: absolute; /* Permet de positionner précisément */
      left: 0; /* Aligne à gauche */
      top: 0; /* Ajuste la hauteur */
    }

    .vehicle-filters-form {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      margin-bottom: 20px;
        flex-direction: column;
  }
  
  .filter-group {
      flex: 1;
      min-width: 100px;
  }
  
  .filter-title {
      font-weight: bold;
      margin-bottom: 10px;
  }
  
  .filter-search {
      width: 100%;
      padding: 8px;
      margin-bottom: 10px;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 14px;
  }
  
  .sidebar-widget-area {
    max-height: 200px; /* ou calc(100vh - header) si tu veux plein écran */
    overflow-y: auto;
    overflow-x: hidden; /* pas de scroll horizontal */
}
  .filter-list {
      list-style: none;
      padding: 0;
      margin: 0;
  }

    /* Firefox */
    .filter-list {
    scrollbar-width: thin;       /* fine */
    scrollbar-color: #DD341D transparent; /* thumb / track */
    }

    /* Chrome, Edge, Safari */
    .filter-list::-webkit-scrollbar {
    width: 6px; /* largeur fine */
    }

    .filter-list::-webkit-scrollbar-track {
    background: transparent; /* transparent ou couleur douce */
    }
  
  .filter-list li {
      margin-bottom: 5px;
  }
  
  .filter-list label {
      display: block;
      padding: 5px 10px;
      cursor: pointer;
  }
  
  .filter-list label:hover {
      background-color: #ffcd08;
  }
  
  .filter-list input[type="radio"] {
      display: none; /* Masquer les boutons radio */
  }
  
  .filter-list label::before {
      content: "○"; /* Apparence d'un bouton radio non sélectionné */
      display: inline-block;
      margin-right: 10px;
      font-size: 16px;
      color: #ccc;
  }
  
  .filter-list input[type="radio"]:checked + label::before {
      content: "●"; /* Apparence d'un bouton radio sélectionné */
      color: #0073aa;
  }

  .filter-list li.selected label {
    background-color: #0073aa; /* Couleur de fond pour l'élément sélectionné */
    color: #fff; /* Couleur du texte */
    font-weight: bold; /* Texte en gras */
    border-radius: 4px; /* Coins arrondis */
  }

  .filter-list li.selected label:hover {
      background-color: #005f8d; /* Couleur de fond au survol */
  }
  
  /* Responsivité */
  @media (max-width: 768px) {
      .vehicle-filters-form {
        flex-direction: row;
        }
          /*flex-direction: column;*/
    }
  
  

  /* Masquer le contenu des filtres par défaut uniquement sur mobile */
@media (max-width: 768px) {
    .filter-group .filter-list,
    .filter-group .filter-search {
        display: none;
    }

    .filter-group.open .filter-list,
    .filter-group.open .filter-search {
        display: block;
    }

    .filter-group .filter-title {
        cursor: pointer;
        font-weight: bold;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 1.2em;
    }

    .filter-group .filter-toggle {
        font-size: 16px;
        transition: transform 0.3s ease;
    }

    /* Rotation de la flèche lorsque le filtre est ouvert */
    .filter-group.open .filter-toggle {
        transform: rotate(180deg);
    }
}

/* Sur les écrans plus grands, les filtres restent visibles */
@media (min-width: 769px) {
    .filter-group .filter-list,
    .filter-group .filter-search {
        display: block;
    }

    .filter-group .filter-toggle {
        display: none; /* Masquer la flèche sur desktop */
    }
}



  .child-product-categories-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.child-product-categories-list li {
    margin-bottom: 10px;
}

.child-product-categories-list a {
    text-decoration: none;
    color: #f3f3f3;
    font-weight: normal;
    text-transform: uppercase;
}

.child-product-categories-list a:hover {
    color: #ffcd08;
    text-decoration: underline;
}

.hierarchical-product-categories-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.hierarchical-product-categories-list li {
    margin-bottom: 10px;
}

.hierarchical-product-categories-list a {
    text-decoration: none;
    color: #0073aa;
    font-weight: bold;
}

.hierarchical-product-categories-list a:hover {
    color: #005f8d;
    text-decoration: underline;
}

.hierarchical-product-categories-list ul {
    margin-left: 20px;
    padding-left: 10px;
    border-left: 1px solid #ddd;
}


  @media (max-width: 768px) {
    .child-product-categories-list h3, .hierarchical-product-categories-list h3 {
        font-size: 1.2em;
    }
     
    .child-product-categories-list li, .hierarchical-product-categories-list li
    {
        margin-bottom: 6px;
        font-size: 0.8em;
    }
  }

.woocommerce-reparation-shipping-message p{
    font-size: 14px;
    color: #333;
}
.woocommerce-reparation-shipping-message li{
    font-size: 14px;
    color: #333;
}

#payment .payment_methods .payment_box {
    color: #333333 !important;
}



.ajax-tools {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.ajax-tools input[type="search"] {
    flex: 1;
    padding: 12px 16px;
    border: 1px solid #eee;
    border-radius: 8px;
    font-size: 14px;
    transition: 0.2s ease;
}

.ajax-tools input[type="search"]:focus {
    border-color: #DD341D;
    box-shadow: 0 0 0 2px rgba(221, 52, 29, 0.15);
    outline: none;
}

.ajax-tools select {
    width: 137px;
    padding: 6px 16px;
    border: 1px solid #eee;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer;
    background: white;
}

.elementor-widget-loop-grid {
    transition: opacity 0.3s ease;
}
@media (max-width: 768px) {
    .ajax-tools {
        flex-direction: column;
        align-items: stretch;
    }

    .ajax-tools select {
        width: 100%;
    }
}
