/*******************************************************************
 * OVERRIDE FORCÉ DES BOUTONS - CHARGÉ EN DERNIER
 * Élimine complètement les styles PrestaShop par défaut
 *******************************************************************/

/* RESET TOTAL - TOUS LES BOUTONS PRODUITS */
.product_list .ajax_add_to_cart_button,
.product_list button.ajax_add_to_cart_button,
.product_list span.ajax_add_to_cart_button,
.product_list a.ajax_add_to_cart_button,
.product_list .button,
.product_list button.button,
.product_list span.button,
.product_list a.button,
.product_list .btn,
.product_list .btn-default,
.product_list .exclusive,
.product_list button.exclusive,
.product_list span.exclusive,
.product_list a.exclusive,
.product_list .exclusive-medium,
.product_list input[type="submit"],
.product_list button[type="submit"],
#product .ajax_add_to_cart_button,
#product button.ajax_add_to_cart_button,
#product .exclusive,
#product button.exclusive,
#product .button,
#product .btn,
#product .exclusive-medium,
.product-container .ajax_add_to_cart_button,
.product-container .button,
.product-container .btn,
.product-container .exclusive,
.product-container .exclusive-medium,
.button-container .ajax_add_to_cart_button,
.button-container .button,
.button-container .btn,
.button-container .exclusive,
.button-container .exclusive-medium,
#add_to_cart button,
#add_to_cart .btn,
#add_to_cart .exclusive,
.box-cart-bottom .exclusive,
.box-cart-bottom .btn,
/* Sélecteurs génériques pour être sûr */
a.exclusive,
a.exclusive_large,
a.exclusive_small,
a.exclusive_mini,
span.exclusive,
span.exclusive_large,
button.exclusive,
input.exclusive,
.exclusive-medium span {
  /* Reset complet des styles PrestaShop */
  background-image: none !important;
  background: #58A333 !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 24px !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  line-height: normal !important;
  color: #ffffff !important;
  text-align: center !important;
  text-decoration: none !important;
  text-shadow: none !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
  cursor: pointer !important;
  display: inline-block !important;
  position: relative !important;
  white-space: nowrap !important;
  transition: all 0.2s ease !important;
  vertical-align: middle !important;
  min-height: 44px !important;
  /* Reset des gradients */
  background-image: none !important;
  background-repeat: no-repeat !important;
  background-position: 0 0 !important;
  filter: none !important;
}

/* Suppression span intérieur pour exclusive-medium */
.exclusive-medium span,
.button span,
.btn span {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: inline !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* Suppression des pseudo-éléments */
.ajax_add_to_cart_button:before,
.ajax_add_to_cart_button:after,
.button:before,
.button:after,
.btn:before,
.btn:after,
.exclusive:before,
.exclusive:after,
.exclusive-medium:before,
.exclusive-medium:after {
  display: none !important;
  content: none !important;
}

/* ÉTATS HOVER - FORCÉ */
.product_list .ajax_add_to_cart_button:hover,
.product_list .button:hover,
.product_list .btn:hover,
.product_list .exclusive:hover,
.product_list .exclusive-medium:hover,
#product .ajax_add_to_cart_button:hover,
#product .button:hover,
#product .btn:hover,
#product .exclusive:hover,
.product-container .ajax_add_to_cart_button:hover,
.product-container .button:hover,
.product-container .btn:hover,
.product-container .exclusive:hover,
.button-container .ajax_add_to_cart_button:hover,
.button-container .button:hover,
.button-container .btn:hover,
.button-container .exclusive:hover,
#add_to_cart button:hover,
a.exclusive:hover,
button.exclusive:hover,
.exclusive-medium:hover {
  background: #3d7a22 !important;
  background-image: none !important;
  background-position: 0 0 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
  transform: translateY(-1px) !important;
  border: none !important;
  filter: none !important;
}

/* ÉTATS ACTIVE */
.ajax_add_to_cart_button:active,
.button:active,
.btn:active,
.exclusive:active,
.exclusive-medium:active {
  background: #2d5a16 !important;
  background-image: none !important;
  transform: translateY(0) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
}

/* ÉTATS DISABLED */
.ajax_add_to_cart_button:disabled,
.ajax_add_to_cart_button.disabled,
.button:disabled,
.button.disabled,
.btn:disabled,
.btn.disabled,
.exclusive:disabled,
.exclusive.disabled,
input.exclusive_disabled,
span.exclusive_large_disabled {
  background: #b2bec3 !important;
  background-image: none !important;
  opacity: 0.6 !important;
  cursor: not-allowed !important;
  transform: none !important;
  color: #ffffff !important;
}

/* FOCUS */
.ajax_add_to_cart_button:focus,
.button:focus,
.btn:focus,
.exclusive:focus {
  outline: 2px solid #58A333 !important;
  outline-offset: 2px !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
}

/* ICÔNES DANS LES BOUTONS */
.ajax_add_to_cart_button i,
.button i,
.btn i,
.exclusive i,
.exclusive-medium i {
  color: #ffffff !important;
  margin-right: 8px !important;
}

/* OVERRIDE BOOTSTRAP - 480-767px se comporte comme 768-991px */
@media (min-width: 480px) and (max-width: 767px) {
  /* VUE LISTE - Appliquer layout col-sm-* dès 480px */
  .product_list.list .left-block.col-xs-4 {
    width: 41.66666667% !important;  /* Comme col-sm-5 */
  }
  
  .product_list.list .center-block.col-xs-4 {
    width: 58.33333333% !important;  /* Comme col-sm-7 */
  }
  
  .product_list.list .right-block.col-xs-4 {
    width: 100% !important;  /* Comme col-sm-12 */
    clear: both !important;
  }
  
  .product_list.list .content_price.col-xs-5 {
    width: 100% !important;  /* Comme col-md-12 */
    float: none !important;
  }
  
  .product_list.list .button-container.col-xs-7 {
    width: 100% !important;  /* Comme col-md-12 */
    float: none !important;
  }
}

/* MOBILE - TOUCH TARGETS + OVERRIDE BOOTSTRAP */
@media (max-width: 767px) {
  /* Override des classes Bootstrap qui limitent la largeur */
  .product_list .right-block.col-xs-4,
  .product_list .right-block.col-xs-12,
  .product_list .right-block {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  
  .product_list .right-block-content.row {
    margin: 0 !important;
    width: 100% !important;
  }
  
  .product_list .content_price.col-xs-5,
  .product_list .content_price {
    width: 100% !important;
    float: none !important;
    padding: 16px !important;
    margin: 0 !important;
  }
  
  .product_list .button-container.col-xs-7,
  .product_list .button-container.col-md-12,
  .product_list .button-container,
  .button-container.col-xs-7,
  .button-container.col-md-12,
  .button-container {
    width: 100% !important;
    float: none !important;
    padding: 0 16px 16px 16px !important;
    margin: 0 !important;
    clear: both !important;
  }
  
  /* Boutons eux-mêmes */
  .product_list .ajax_add_to_cart_button,
  .product_list .button,
  .product_list .btn,
  .product_list .exclusive,
  .product_list .exclusive-medium,
  #product .ajax_add_to_cart_button,
  #product .button,
  #product .btn,
  #product .exclusive,
  .button-container .ajax_add_to_cart_button,
  .button-container .button,
  .button-container .btn,
  .button-container .exclusive {
    min-height: 48px !important;
    width: 100% !important;
    margin: 0 0 16px 0 !important;
    display: block !important;
    float: none !important;
  }
}

/* VUE LISTE - BOUTONS PLUS LARGES */
ul.product_list.list .button-container .btn,
ul.product_list.list .button-container .ajax_add_to_cart_button,
ul.product_list.list .button-container .button,
ul.product_list.list .button-container .exclusive,
ul.product_list.list .right-block-content .btn,
ul.product_list.list .right-block-content .ajax_add_to_cart_button,
ul.product_list.list .right-block-content .exclusive {
  min-width: 180px !important;
}

/* Garder le "+" du comparateur toujours visible */
.functional-buttons.compare a:before,
.compare a:before {
  display: inline-block !important;
  content: "\f067" !important;
  font-family: FontAwesome !important;
  margin-right: 3px !important;
}

/* VUE LISTE DESKTOP - Boutons compacts pour col-lg-3 (25%) à partir de 1200px */
@media (min-width: 1200px) {
  ul.product_list.list .button-container .btn,
  ul.product_list.list .button-container .ajax_add_to_cart_button,
  ul.product_list.list .button-container .button,
  ul.product_list.list .button-container .exclusive,
  ul.product_list.list .right-block-content .btn,
  ul.product_list.list .right-block-content .ajax_add_to_cart_button,
  ul.product_list.list .right-block-content .exclusive {
    padding: 10px 8px !important;
    font-size: 13px !important;
    min-width: auto !important;
    width: 100% !important;
    line-height: 1.4 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  
  ul.product_list.list .functional-buttons a,
  ul.product_list.list .lnk_view,
  ul.product_list.list .compare {
    font-size: 11px !important;
    padding: 6px 2px !important;
    text-align: center !important;
    white-space: normal !important;  /* Permet passage sur 2 lignes */
    line-height: 1.3 !important;
  }
}

/* FIX SPÉCIFIQUE POUR CART */
.cart_navigation .button-exclusive {
  background: transparent !important;
  color: #2d3436 !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: auto !important;
}

.cart_navigation .button-exclusive:hover {
  background: transparent !important;
  color: #3d7a22 !important;
  transform: none !important;
}

/* ========================================
   CARACTÉRISTIQUES PRODUITS MODERNISÉES
   ======================================== */

/* Suppression margin-top du h5 (titre produit) */
.product_list h5,
.center-block h5 {
  margin-top: 0 !important;
}

/* Masquer les éléments vides pour ne pas prendre de place */
.product_list .product-flags:empty,
.center-block .product-flags:empty,
.product_list .product-desc:empty,
.center-block .product-desc:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

/* Remplacement de la table par flexbox - VUE GRILLE ET LISTE */
.product_list .product-features-list,
.center-block .product-features-list,
.right-block .product-features-list {
  margin: 0 !important;
  width: 100% !important;
}

/* Marge en mobile pour séparer les produits */
@media (max-width: 767px) {
  .product_list .product-features-list {
    margin-bottom: 20px !important;
  }
}

/* BASE - Layout horizontal TOUJOURS */
.product_list .product-feature-item,
.center-block .product-feature-item,
.right-block .product-feature-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  padding: 6px 0 !important;
  border-bottom: 1px dotted #dfe6e9 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  flex-wrap: nowrap !important;
}

.product_list .product-feature-item:last-child,
.center-block .product-feature-item:last-child,
.right-block .product-feature-item:last-child {
  border-bottom: none !important;
}

/* Styles des labels et valeurs - TOUJOURS horizontal */
.product_list .product-feature-item .feature-label,
.center-block .product-feature-item .feature-label,
.right-block .product-feature-item .feature-label {
  font-weight: 600 !important;
  color: #636e72 !important;
  flex: 0 0 auto !important;
  width: 140px !important;
  text-align: left !important;
  display: block !important;
}

.product_list .product-feature-item .feature-value,
.center-block .product-feature-item .feature-value,
.right-block .product-feature-item .feature-value {
  color: #2d3436 !important;
  text-align: left !important;
  flex: 1 1 auto !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
  font-weight: 400 !important;
  display: block !important;
  min-width: 0 !important;
  margin-left: 10px !important;
}

/* MOBILE - Ajustements légers (garde layout horizontal) */
@media (max-width: 767px) {
  .product_list .product-feature-item .feature-label,
  .center-block .product-feature-item .feature-label,
  .right-block .product-feature-item .feature-label {
    width: 120px !important;
  }
  
  .product_list .product-feature-item .feature-value,
  .center-block .product-feature-item .feature-value,
  .right-block .product-feature-item .feature-value {
    margin-left: 8px !important;
  }
}

/* SUPPRESSION DES ANCIENS BACKGROUNDS D'IMAGES */
input.button_mini,
input.button_small,
input.button,
input.button_large,
a.button_mini,
a.button_small,
a.button,
a.button_large {
  background-image: none !important;
  filter: none !important;
}

/* MASQUAGE DES BLOCS INFORMATIONS ET PROMOTIONS SUR MOBILE */
/* Masquer quand la colonne est en mode accordéon (mobile) */
#left_column.accordion .informations_block_left,
#left_column.accordion section[id^="informations_block_left_"],
#left_column.accordion #cmsinfo_block,
#left_column.accordion #special_block_right {
  display: none !important;
}

/* Masquer également avec media query pour plus de sûreté */
@media (max-width: 767px) {
  #left_column .informations_block_left,
  #left_column section[id^="informations_block_left_"],
  #left_column #cmsinfo_block,
  #left_column #special_block_right,
  #right_column #special_block_right {
    display: none !important;
  }
}