/* ===== LPM STORE - CSS PERSONNALISÉ ===== */
/* Optimisations WooCommerce et composants UI */

/* ===== BOUTONS ELEMENTOR - FORCER LE BOUTON SECONDAIRE EN BLEU ===== */
/* S'assurer que le bouton secondaire reste bleu même avec les styles Elementor */
/* Règle globale avec haute spécificité pour surcharger tous les styles */
.elementor-button.lpm-btn--secondary,
.elementor-button.elementor-button-secondary,
.elementor-button[class*="lpm-btn--secondary"],
.elementor-widget-button .elementor-button.lpm-btn--secondary,
.elementor-widget-button .elementor-button.elementor-button-secondary,
.elementor-button-wrapper .elementor-button.lpm-btn--secondary,
.elementor-button-wrapper a.lpm-btn--secondary,
.elementor-button-wrapper button.lpm-btn--secondary,
a.lpm-btn.lpm-btn--secondary,
a.elementor-button.lpm-btn--secondary,
button.lpm-btn.lpm-btn--secondary,
button.elementor-button.lpm-btn--secondary,
.elementor-widget-button .lpm-btn--secondary,
.elementor-widget-button a.lpm-btn--secondary,
.elementor-widget-button button.lpm-btn--secondary,
.lpm-btn.lpm-btn--secondary,
[class*="elementor"] .lpm-btn--secondary,
[class*="elementor"] a.lpm-btn--secondary,
[class*="elementor"] button.lpm-btn--secondary {
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  background-color: transparent !important;
  color: var(--lpm-white) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.elementor-button.lpm-btn--secondary:hover,
.elementor-button.elementor-button-secondary:hover,
.elementor-button[class*="lpm-btn--secondary"]:hover,
.elementor-widget-button .elementor-button.lpm-btn--secondary:hover,
.elementor-widget-button .elementor-button.elementor-button-secondary:hover,
.elementor-button-wrapper .elementor-button.lpm-btn--secondary:hover,
.elementor-button-wrapper a.lpm-btn--secondary:hover,
.elementor-button-wrapper button.lpm-btn--secondary:hover,
a.lpm-btn.lpm-btn--secondary:hover,
a.elementor-button.lpm-btn--secondary:hover,
button.lpm-btn.lpm-btn--secondary:hover,
button.elementor-button.lpm-btn--secondary:hover,
.elementor-widget-button .lpm-btn--secondary:hover,
.elementor-widget-button a.lpm-btn--secondary:hover,
.elementor-widget-button button.lpm-btn--secondary:hover,
.lpm-btn.lpm-btn--secondary:hover,
[class*="elementor"] .lpm-btn--secondary:hover,
[class*="elementor"] a.lpm-btn--secondary:hover,
[class*="elementor"] button.lpm-btn--secondary:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.1) !important;
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  background-color: transparent !important;
  color: var(--lpm-white) !important;
}

/* Protection contre les styles inline Elementor - Règle avec spécificité maximale */
.elementor-element .elementor-button.lpm-btn--secondary,
.elementor-element a.lpm-btn--secondary,
.elementor-element button.lpm-btn--secondary {
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  color: var(--lpm-white) !important;
}

/* ===== WOOCOMMERCE - NOTIFICATIONS v2 - Position Haut/Droite ===== */

/* Positionnement fixed en haut à droite */
.woocommerce-notices-wrapper {
  position: fixed;
  top: 20px;
  right: 20px;
  width: auto;
  max-width: min(400px, 90vw);
  z-index: 9999;
  margin: 0 !important;
}

/* Animation d'apparition */
.woocommerce-message {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 1rem 1.25rem;
  border-radius: var(--lpm-radius-lg);
  border-top: 0;
  color: var(--lpm-blue-dk);
  box-shadow: 0 8px 30px rgba(242, 167, 194, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.2);
  animation: slideInRight 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
  position: relative;
  overflow: hidden;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.4;
}

/* Animation d'entrée depuis la droite */
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Effet de brillance sur le bandeau */
.woocommerce-message::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  transition: left 0.6s ease;
}

.woocommerce-message:hover::before {
  left: 100%;
}

/* Icône de succès personnalisée */
.woocommerce-message::after {
  content: "✓";
  font-size: 18px;
  font-weight: 900;
  color: var(--lpm-green);
  margin-right: 8px;
}

/* Bouton "Voir le panier" */
.woocommerce-message .button,
.woocommerce-info .button {
  background: var(--lpm-gradient-blue) !important;
  color: #fff !important;
  border: 1px solid transparent !important;
  border-radius: var(--lpm-radius-md) !important;
  padding: 0.5rem 1rem !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  box-shadow: 0 4px 12px rgba(65, 90, 119, 0.3) !important;
  transition: all 0.3s ease !important;
  white-space: nowrap;
  flex-shrink: 0;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(27, 38, 59, 0.4) !important;
  filter: brightness(1.05) !important;
}

/* Message d'information - Fond neutre complet (utilisé aussi pour les codes promo) */
.woocommerce-info {
  background: var(--lpm-white) !important;
  background-color: var(--lpm-white) !important;
  background-image: none !important;
  color: var(--lpm-blue-dk) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg);
  border: none !important;
}

/* Exception : Messages d'information importants (hors checkout) peuvent avoir un fond coloré */
.woocommerce:not(.woocommerce-checkout) .woocommerce-info.woocommerce-message {
  background: var(--lpm-gradient-blue) !important;
  background-image: var(--lpm-gradient-blue) !important;
  color: white !important;
  border: none !important;
  box-shadow: 0 8px 30px rgba(27, 38, 59, 0.3) !important;
}

/* Message d'erreur - fond neutre, texte rouge lisible (accessibilité) */
.woocommerce-error,
ul.woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-checkout .woocommerce-error {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-left: none !important;
  color: #B91C1C !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  list-style: none !important;
  margin: 0 0 var(--lpm-space-md) 0 !important;
}

.woocommerce-error li,
ul.woocommerce-error li,
.woocommerce-notices-wrapper .woocommerce-error li {
  color: #B91C1C !important;
  padding: 0.25em 0 !important;
}

/* Assurer la visibilité sur tous les fonds (hors erreurs : fond transparent) */
.woocommerce-message,
.woocommerce-info {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* Animation de disparition optionnelle */
.woocommerce-message.fade-out {
  animation: slideOutRight 0.4s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
}

@keyframes slideOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(100%);
  }
}

/* Gestion des notifications multiples */
.woocommerce-notices-wrapper .woocommerce-message:not(:first-child) {
  margin-top: 10px;
}

/* RESPONSIVE MOBILE */
@media (max-width: 768px) {
  .woocommerce-notices-wrapper {
    top: 15px;
    right: 15px;
    left: 15px;
    max-width: none;
    width: auto;
  }
  
  .woocommerce-message {
    flex-direction: row;
    align-items: center;
    padding: 1rem;
    gap: 10px;
  }
  
  .woocommerce-message .button {
    padding: 0.5rem 0.8rem !important;
    font-size: 12px !important;
    white-space: nowrap;
  }
}

@media (max-width: 480px) {
  .woocommerce-notices-wrapper {
    top: 10px;
    right: 10px;
    left: 10px;
  }
  
  .woocommerce-message {
    flex-direction: column;
    text-align: center;
    gap: 8px;
  }
  
  .woocommerce-message .button {
    width: 100%;
    justify-content: center;
  }
}

/* ===== CHECKOUT - ZONE "DÉJÀ CLIENT?" ===== */
/* Pas de fond coloré, pas de bordure, texte normal, lien souligné uniquement */
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-info.woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-info:first-of-type,
body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout .woocommerce-info.woocommerce-form-login-toggle {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--lpm-text, #0D1B2A) !important;
  padding: var(--lpm-space-md) 0 !important;
  margin-bottom: var(--lpm-space-md) !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle a,
.woocommerce-checkout .woocommerce-info.woocommerce-form-login-toggle a,
.woocommerce-checkout .woocommerce-info:first-of-type a,
body.woocommerce-checkout .woocommerce-form-login-toggle a,
body.woocommerce-checkout .woocommerce-info a.showlogin {
  color: var(--lpm-text, #0D1B2A) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
  background: transparent !important;
  border: none !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle a:hover,
.woocommerce-checkout .woocommerce-info.woocommerce-form-login-toggle a:hover,
.woocommerce-checkout .woocommerce-info:first-of-type a:hover {
  color: var(--lpm-blue-md, #1B263B) !important;
}

/* ===== WOOCOMMERCE - BOUTONS ===== */
.woocommerce .button,
.woocommerce-page .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--lpm-space-sm);
  padding: var(--lpm-space-md) var(--lpm-space-lg);
  border-radius: var(--lpm-radius-md);
  font-weight: var(--lpm-font-weight-semibold);
  font-size: 0.95rem;
  line-height: 1.2;
  border: 1px solid transparent;
  text-decoration: none;
  cursor: pointer;
  transition: all var(--lpm-transition-normal);
  min-height: 44px;
}

/* Bouton principal WooCommerce - Exclure explicitement les boutons secondaires */
.woocommerce .button.alt:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce-page .button.alt:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce a.button.alt:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce button.button.alt:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce input.button.alt:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]) {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm);
}

.woocommerce .button.alt:not(.lpm-btn--secondary):hover,
.woocommerce-page .button.alt:not(.lpm-btn--secondary):hover,
.woocommerce a.button.alt:not(.lpm-btn--secondary):hover,
.woocommerce button.button.alt:not(.lpm-btn--secondary):hover,
.woocommerce input.button.alt:not(.lpm-btn--secondary):hover {
  transform: translateY(-2px);
  box-shadow: var(--lpm-shadow-md);
  filter: brightness(1.05);
}

/* Bouton secondaire WooCommerce - Bleu */
.woocommerce .button:not(.alt):not(.primary),
.woocommerce-page .button:not(.alt):not(.primary),
.woocommerce a.button:not(.alt):not(.primary),
.woocommerce button.button:not(.alt):not(.primary),
.woocommerce input.button:not(.alt):not(.primary),
.woocommerce .button.secondary,
.woocommerce-page .button.secondary,
.woocommerce a.button.secondary,
.woocommerce button.button.secondary,
.woocommerce input.button.secondary {
  background: var(--lpm-gradient-secondary) !important;
  color: var(--lpm-white) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm);
}

.woocommerce .button:not(.alt):not(.primary):hover,
.woocommerce-page .button:not(.alt):not(.primary):hover,
.woocommerce a.button:not(.alt):not(.primary):hover,
.woocommerce button.button:not(.alt):not(.primary):hover,
.woocommerce input.button:not(.alt):not(.primary):hover,
.woocommerce .button.secondary:hover,
.woocommerce-page .button.secondary:hover,
.woocommerce a.button.secondary:hover,
.woocommerce button.button.secondary:hover,
.woocommerce input.button.secondary:hover {
  transform: translateY(-2px);
  box-shadow: var(--lpm-shadow-md);
  filter: brightness(1.1);
}

/* Boutons spécifiques */
.woocommerce .single_add_to_cart_button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  width: 100%;
  font-size: 1.1rem;
  padding: var(--lpm-space-lg) var(--lpm-space-xl);
  min-height: 52px;
}

.woocommerce .checkout-button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  width: 100%;
  font-size: 1.1rem;
  padding: var(--lpm-space-lg) var(--lpm-space-xl);
  min-height: 52px;
}

/* ===== WOOCOMMERCE - PRODUITS ===== */
.woocommerce ul.products li.product {
  background: var(--lpm-white);
  border-radius: var(--lpm-radius-lg);
  box-shadow: var(--lpm-shadow-sm);
  overflow: hidden;
  transition: all var(--lpm-transition-normal);
  border: 1px solid var(--lpm-blue-xlg);
}

.woocommerce ul.products li.product:hover {
  box-shadow: var(--lpm-shadow-md);
  transform: translateY(-4px);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  color: var(--lpm-blue-dk);
  font-weight: var(--lpm-font-weight-semibold);
  font-size: 1.1rem;
  margin-bottom: var(--lpm-space-sm);
}

.woocommerce ul.products li.product .price {
  color: var(--lpm-green);
  font-weight: var(--lpm-font-weight-bold);
  font-size: 1.2rem;
}

.woocommerce ul.products li.product .price del {
  color: var(--lpm-text-muted);
  font-weight: var(--lpm-font-weight-normal);
}


/* ===== WOOCOMMERCE - PANIER ===== */
.woocommerce-cart .cart-collaterals {
  background: var(--lpm-blue-xlg);
  border-radius: var(--lpm-radius-lg);
  padding: var(--lpm-space-xl);
  margin-top: var(--lpm-space-xl);
}

.woocommerce-cart .cart-collaterals h2 {
  color: var(--lpm-blue-dk);
  font-size: 1.5rem;
  margin-bottom: var(--lpm-space-lg);
}

.woocommerce-cart .cart-collaterals .cart_totals {
  background: transparent;
}

.woocommerce-cart .cart-collaterals .shop_table {
  background: var(--lpm-white);
  border-radius: var(--lpm-radius-md);
  box-shadow: var(--lpm-shadow-sm);
  border: none;
}

.woocommerce-cart .cart-collaterals .shop_table th,
.woocommerce-cart .cart-collaterals .shop_table td {
  border-color: var(--lpm-blue-xlg);
  padding: var(--lpm-space-md);
}

.woocommerce-cart .cart-collaterals .shop_table .order-total {
  background: var(--lpm-blue-pastel);
  font-weight: var(--lpm-font-weight-bold);
}

/* ===== WOOCOMMERCE - CHECKOUT ===== */
.woocommerce-checkout .woocommerce {
  background: var(--lpm-blue-xlg);
  border-radius: var(--lpm-radius-lg);
  padding: var(--lpm-space-xl);
}

/* Exclure les sections code promo et points de fidélité du fond bleu général */
.woocommerce-checkout .woocommerce .checkout_coupon,
.woocommerce-checkout .woocommerce [class*="coupon"],
.woocommerce-checkout .woocommerce [class*="promo"],
.woocommerce-checkout .woocommerce [class*="loyalty"],
.woocommerce-checkout .woocommerce [class*="points"],
.woocommerce-checkout .woocommerce [class*="fidélité"],
.woocommerce-checkout .woocommerce [class*="reward"],
.woocommerce-checkout .woocommerce .wcf-coupon-section,
.woocommerce-checkout .woocommerce .wcf-loyalty-section,
.woocommerce-checkout .woocommerce .wcf-rewards-section,
/* Classes spécifiques identifiées */
.woocommerce-checkout .woocommerce .custom_point_checkout,
.woocommerce-checkout .woocommerce .wps_wpr_checkout_points_class,
.woocommerce-checkout .woocommerce .wfacp_main_showcoupon,
.woocommerce-checkout .woocommerce .woocommerce-info,
.custom_point_checkout,
.wps_wpr_checkout_points_class,
.wfacp_main_showcoupon {
  background: var(--lpm-white) !important;
  background-color: var(--lpm-white) !important;
}

.woocommerce-checkout .woocommerce h3 {
  color: var(--lpm-blue-dk);
  font-size: 1.25rem;
  margin-bottom: var(--lpm-space-lg);
  padding-bottom: var(--lpm-space-sm);
  border-bottom: 2px solid var(--lpm-rose);
}

.woocommerce-checkout .woocommerce .form-row {
  margin-bottom: var(--lpm-space-lg);
}

.woocommerce-checkout .woocommerce .form-row input,
.woocommerce-checkout .woocommerce .form-row select,
.woocommerce-checkout .woocommerce .form-row textarea {
  background: var(--lpm-white);
  border: 2px solid var(--lpm-blue-xlg);
  border-radius: var(--lpm-radius-md);
  padding: var(--lpm-space-md);
  font-size: 1rem;
  transition: all var(--lpm-transition-normal);
}

.woocommerce-checkout .woocommerce .form-row input:focus,
.woocommerce-checkout .woocommerce .form-row select:focus,
.woocommerce-checkout .woocommerce .form-row textarea:focus {
  outline: none;
  border-color: var(--lpm-rose);
  box-shadow: 0 0 0 3px rgba(242, 167, 194, 0.1);
}

.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order {
  background: var(--lpm-white);
  border-radius: 0;
  padding: var(--lpm-space-xl);
  box-shadow: none;
  border: none;
}

/* Section de paiement - Retirer ombrage et bordure */
.woocommerce-checkout #payment,
.woocommerce-checkout .woocommerce-checkout-payment,
.woocommerce-checkout #payment_methods,
.woocommerce-checkout .payment_methods,
.woocommerce-checkout .payment_box,
.woocommerce-checkout .wc_payment_methods,
.woocommerce-checkout [class*="payment"] {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Retirer les ombrages et bordures des méthodes de paiement */
.woocommerce-checkout #payment .payment_methods,
.woocommerce-checkout #payment .payment_methods li,
.woocommerce-checkout .wc_payment_methods li,
.woocommerce-checkout .payment_methods li {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  margin-bottom: var(--lpm-space-sm) !important;
}

/* Retirer ombrage et bordure de la box de paiement */
.woocommerce-checkout .payment_box,
.woocommerce-checkout .payment_box:before,
.woocommerce-checkout .payment_box:after {
  background: var(--lpm-white) !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
}

/* ===== CHECKOUT - CODE PROMO ET POINTS DE FIDÉLITÉ ===== */
/* Neutraliser les backgrounds bleus pour améliorer la lisibilité */
.woocommerce-checkout .checkout_coupon,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .coupon,
.woocommerce-checkout [class*="coupon"],
.woocommerce-checkout [class*="promo"],
.woocommerce-checkout [class*="code-promo"],
.woocommerce-checkout [id*="coupon"],
.woocommerce-checkout [id*="promo"],
/* Sections de points de fidélité */
.woocommerce-checkout [class*="loyalty"],
.woocommerce-checkout [class*="points"],
.woocommerce-checkout [class*="fidélité"],
.woocommerce-checkout [class*="reward"],
.woocommerce-checkout [id*="loyalty"],
.woocommerce-checkout [id*="points"],
.woocommerce-checkout [id*="reward"],
/* FunnelKit spécifique */
.wcf-coupon-section,
.wcf-loyalty-section,
.wcf-rewards-section,
[class*="wcf"][class*="coupon"],
[class*="wcf"][class*="loyalty"],
[class*="wcf"][class*="points"],
/* Classes spécifiques identifiées - Règles ultra-spécifiques pour forcer le fond blanc */
body .custom_point_checkout,
body .wps_wpr_checkout_points_class,
body .wfacp_main_showcoupon,
body .woocommerce-checkout .woocommerce-info,
body .woocommerce-checkout .custom_point_checkout,
body .woocommerce-checkout .wps_wpr_checkout_points_class,
body .woocommerce-checkout .wfacp_main_showcoupon,
body.woocommerce-checkout .custom_point_checkout,
body.woocommerce-checkout .wps_wpr_checkout_points_class,
body.woocommerce-checkout .wfacp_main_showcoupon,
body.woocommerce-checkout .woocommerce-info,
html body .custom_point_checkout,
html body .wps_wpr_checkout_points_class,
html body .wfacp_main_showcoupon,
html body .woocommerce-checkout .woocommerce-info {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  color: #0D1B2A !important;
  border-radius: var(--lpm-radius-md) !important;
  padding: var(--lpm-space-md) !important;
  margin-bottom: var(--lpm-space-md) !important;
}

/* Cibler aussi tous les éléments enfants de ces sections */
body .wfacp_main_showcoupon *,
body .custom_point_checkout *,
body .wps_wpr_checkout_points_class *,
body .woocommerce-checkout .woocommerce-info * {
  color: #0D1B2A !important;
}

/* Exception pour les liens */
body .wfacp_main_showcoupon a,
body .custom_point_checkout a,
body .wps_wpr_checkout_points_class a,
body .woocommerce-checkout .woocommerce-info a {
  color: #F2A7C2 !important;
  text-decoration: underline !important;
}

/* Cibler aussi dans le panier (cart summary) - Section à droite */
body .woocommerce-checkout-review-order-table .wfacp_main_showcoupon,
body .woocommerce-checkout-review-order .wfacp_main_showcoupon,
body #order_review .wfacp_main_showcoupon,
body .cart-collaterals .wfacp_main_showcoupon,
body .shop_table .wfacp_main_showcoupon,
body .woocommerce .wfacp_main_showcoupon,
body .wfacp_main_showcoupon.wfacp_main_showcoupon,
body [class*="cart"] .wfacp_main_showcoupon,
body [class*="order"] .wfacp_main_showcoupon,
body [class*="review"] .wfacp_main_showcoupon {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  color: #0D1B2A !important;
}

body .woocommerce-checkout-review-order-table .wfacp_main_showcoupon *,
body .woocommerce-checkout-review-order .wfacp_main_showcoupon *,
body #order_review .wfacp_main_showcoupon *,
body .cart-collaterals .wfacp_main_showcoupon *,
body .shop_table .wfacp_main_showcoupon * {
  color: #0D1B2A !important;
}

body .woocommerce-checkout-review-order-table .wfacp_main_showcoupon a,
body .woocommerce-checkout-review-order .wfacp_main_showcoupon a,
body #order_review .wfacp_main_showcoupon a,
body .cart-collaterals .wfacp_main_showcoupon a {
  color: #F2A7C2 !important;
  text-decoration: underline !important;
}

/* Textes dans les sections code promo et points */
.woocommerce-checkout .checkout_coupon p,
.woocommerce-checkout .checkout_coupon label,
.woocommerce-checkout .checkout_coupon .description,
.woocommerce-checkout [class*="coupon"] p,
.woocommerce-checkout [class*="coupon"] label,
.woocommerce-checkout [class*="coupon"] .description,
.woocommerce-checkout [class*="loyalty"] p,
.woocommerce-checkout [class*="loyalty"] label,
.woocommerce-checkout [class*="loyalty"] .description,
.woocommerce-checkout [class*="points"] p,
.woocommerce-checkout [class*="points"] label,
.woocommerce-checkout [class*="points"] .description,
.wcf-coupon-section p,
.wcf-coupon-section label,
.wcf-coupon-section .description,
.wcf-loyalty-section p,
.wcf-loyalty-section label,
.wcf-loyalty-section .description,
[class*="wcf"][class*="coupon"] p,
[class*="wcf"][class*="coupon"] label,
[class*="wcf"][class*="loyalty"] p,
[class*="wcf"][class*="loyalty"] label,
/* Textes dans les classes spécifiques - Règles ultra-spécifiques */
body .custom_point_checkout p,
body .custom_point_checkout label,
body .custom_point_checkout .description,
body .custom_point_checkout span,
body .custom_point_checkout div,
body .custom_point_checkout strong,
body .custom_point_checkout b,
body .wps_wpr_checkout_points_class p,
body .wps_wpr_checkout_points_class label,
body .wps_wpr_checkout_points_class .description,
body .wps_wpr_checkout_points_class span,
body .wps_wpr_checkout_points_class div,
body .wps_wpr_checkout_points_class strong,
body .wps_wpr_checkout_points_class b,
body .wfacp_main_showcoupon p,
body .wfacp_main_showcoupon label,
body .wfacp_main_showcoupon .description,
body .wfacp_main_showcoupon span,
body .wfacp_main_showcoupon div,
body .wfacp_main_showcoupon strong,
body .wfacp_main_showcoupon b,
body .woocommerce-checkout .woocommerce-info p,
body .woocommerce-checkout .woocommerce-info label,
body .woocommerce-checkout .woocommerce-info .description,
body .woocommerce-checkout .woocommerce-info span,
body .woocommerce-checkout .woocommerce-info div,
body .woocommerce-checkout .woocommerce-info strong,
body .woocommerce-checkout .woocommerce-info b {
  color: #0D1B2A !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Champs de saisie code promo et points - fond blanc */
.woocommerce-checkout .checkout_coupon input[type="text"],
.woocommerce-checkout .checkout_coupon input[type="number"],
.woocommerce-checkout [class*="coupon"] input[type="text"],
.woocommerce-checkout [class*="coupon"] input[type="number"],
.woocommerce-checkout [class*="loyalty"] input[type="text"],
.woocommerce-checkout [class*="loyalty"] input[type="number"],
.woocommerce-checkout [class*="points"] input[type="text"],
.woocommerce-checkout [class*="points"] input[type="number"],
.wcf-coupon-section input[type="text"],
.wcf-coupon-section input[type="number"],
.wcf-loyalty-section input[type="text"],
.wcf-loyalty-section input[type="number"],
[class*="wcf"][class*="coupon"] input[type="text"],
[class*="wcf"][class*="coupon"] input[type="number"],
[class*="wcf"][class*="loyalty"] input[type="text"],
[class*="wcf"][class*="loyalty"] input[type="number"],
/* Champs dans les classes spécifiques */
.custom_point_checkout input[type="text"],
.custom_point_checkout input[type="number"],
.wps_wpr_checkout_points_class input[type="text"],
.wps_wpr_checkout_points_class input[type="number"],
.wfacp_main_showcoupon input[type="text"],
.wfacp_main_showcoupon input[type="number"],
.woocommerce-checkout .woocommerce-info input[type="text"],
.woocommerce-checkout .woocommerce-info input[type="number"] {
  background: var(--lpm-white) !important;
  background-color: var(--lpm-white) !important;
  color: var(--lpm-blue-dk) !important;
  border: 2px solid var(--lpm-blue-xlg) !important;
  border-radius: var(--lpm-radius-md) !important;
  padding: var(--lpm-space-md) !important;
}

.woocommerce-checkout .checkout_coupon input[type="text"]:focus,
.woocommerce-checkout .checkout_coupon input[type="number"]:focus,
.woocommerce-checkout [class*="coupon"] input[type="text"]:focus,
.woocommerce-checkout [class*="coupon"] input[type="number"]:focus,
.woocommerce-checkout [class*="loyalty"] input[type="text"]:focus,
.woocommerce-checkout [class*="loyalty"] input[type="number"]:focus,
.woocommerce-checkout [class*="points"] input[type="text"]:focus,
.woocommerce-checkout [class*="points"] input[type="number"]:focus,
.wcf-coupon-section input[type="text"]:focus,
.wcf-coupon-section input[type="number"]:focus,
.wcf-loyalty-section input[type="text"]:focus,
.wcf-loyalty-section input[type="number"]:focus,
/* Focus dans les classes spécifiques */
.custom_point_checkout input[type="text"]:focus,
.custom_point_checkout input[type="number"]:focus,
.wps_wpr_checkout_points_class input[type="text"]:focus,
.wps_wpr_checkout_points_class input[type="number"]:focus,
.wfacp_main_showcoupon input[type="text"]:focus,
.wfacp_main_showcoupon input[type="number"]:focus,
.woocommerce-checkout .woocommerce-info input[type="text"]:focus,
.woocommerce-checkout .woocommerce-info input[type="number"]:focus {
  border-color: var(--lpm-rose) !important;
  box-shadow: 0 0 0 3px rgba(242, 167, 194, 0.1) !important;
  outline: none !important;
}

/* Boutons code promo - style neutre (pas bleu) */
.woocommerce-checkout .checkout_coupon button:not(.lpm-btn--secondary),
.woocommerce-checkout .checkout_coupon .button:not(.lpm-btn--secondary),
.woocommerce-checkout [class*="coupon"] button:not(.lpm-btn--secondary),
.woocommerce-checkout [class*="coupon"] .button:not(.lpm-btn--secondary),
.woocommerce-checkout [class*="coupon"] input[type="submit"]:not(.lpm-btn--secondary),
.wcf-coupon-section button:not(.lpm-btn--secondary),
.wcf-coupon-section .button:not(.lpm-btn--secondary),
.wcf-coupon-section input[type="submit"]:not(.lpm-btn--secondary),
[class*="wcf"][class*="coupon"] button:not(.lpm-btn--secondary),
[class*="wcf"][class*="coupon"] .button:not(.lpm-btn--secondary) {
  background: var(--lpm-gradient-primary) !important;
  background-image: var(--lpm-gradient-primary) !important;
  background-color: transparent !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
}

/* Bouton "Appliquer des points" - GARDER LE STYLE BLEU (bouton secondaire) */
.woocommerce-checkout [class*="points"] button.lpm-btn--secondary,
.woocommerce-checkout [class*="points"] .button.lpm-btn--secondary,
.woocommerce-checkout [class*="points"] button[class*="lpm-btn--secondary"],
.woocommerce-checkout [class*="points"] .button[class*="lpm-btn--secondary"],
.woocommerce-checkout [class*="loyalty"] button.lpm-btn--secondary,
.woocommerce-checkout [class*="loyalty"] .button.lpm-btn--secondary,
.woocommerce-checkout [class*="loyalty"] button[class*="lpm-btn--secondary"],
.woocommerce-checkout [class*="loyalty"] .button[class*="lpm-btn--secondary"],
.wcf-loyalty-section button.lpm-btn--secondary,
.wcf-loyalty-section .button.lpm-btn--secondary,
.wcf-loyalty-section button[class*="lpm-btn--secondary"],
.wcf-loyalty-section .button[class*="lpm-btn--secondary"],
[class*="wcf"][class*="loyalty"] button.lpm-btn--secondary,
[class*="wcf"][class*="loyalty"] .button.lpm-btn--secondary,
[class*="wcf"][class*="loyalty"] button[class*="lpm-btn--secondary"],
[class*="wcf"][class*="loyalty"] .button[class*="lpm-btn--secondary"],
/* Cibler spécifiquement le bouton "Appliquer des points" */
[class*="apply-points"],
[class*="apply_points"],
[id*="apply-points"],
[id*="apply_points"],
button[class*="apply"],
.button[class*="apply"] {
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  background-color: transparent !important;
  color: var(--lpm-white) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

/* Autres boutons dans les sections points/loyalty - style neutre */
.woocommerce-checkout [class*="points"] button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce-checkout [class*="points"] .button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce-checkout [class*="loyalty"] button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.woocommerce-checkout [class*="loyalty"] .button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.wcf-loyalty-section button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]),
.wcf-loyalty-section .button:not(.lpm-btn--secondary):not([class*="lpm-btn--secondary"]) {
  background: var(--lpm-gradient-primary) !important;
  background-image: var(--lpm-gradient-primary) !important;
  background-color: transparent !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
}

/* Liens dans les sections code promo et points */
.woocommerce-checkout .checkout_coupon a,
.woocommerce-checkout [class*="coupon"] a,
.woocommerce-checkout [class*="loyalty"] a,
.woocommerce-checkout [class*="points"] a,
.wcf-coupon-section a,
.wcf-loyalty-section a {
  color: var(--lpm-rose) !important;
  text-decoration: underline !important;
}

.woocommerce-checkout .checkout_coupon a:hover,
.woocommerce-checkout [class*="coupon"] a:hover,
.woocommerce-checkout [class*="loyalty"] a:hover,
.woocommerce-checkout [class*="points"] a:hover,
.wcf-coupon-section a:hover,
.wcf-loyalty-section a:hover {
  color: var(--lpm-blue-md) !important;
}

/* ===== WOOCOMMERCE - COMPTE CLIENT ===== */
.woocommerce-account .woocommerce {
  background: var(--lpm-blue-xlg);
  border-radius: var(--lpm-radius-lg);
  padding: var(--lpm-space-xl);
}

.woocommerce-account .woocommerce h2,
.woocommerce-account .woocommerce h3 {
  color: var(--lpm-blue-dk);
  margin-bottom: var(--lpm-space-lg);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
  background: var(--lpm-white);
  border-radius: var(--lpm-radius-lg);
  padding: var(--lpm-space-lg);
  box-shadow: var(--lpm-shadow-sm);
  margin-bottom: var(--lpm-space-xl);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li {
  margin-bottom: var(--lpm-space-sm);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: var(--lpm-space-md);
  color: var(--lpm-blue-dk);
  text-decoration: none;
  border-radius: var(--lpm-radius-md);
  transition: all var(--lpm-transition-normal);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a {
  background: var(--lpm-gradient-primary);
  color: var(--lpm-blue-dk);
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
  background: var(--lpm-white);
  border-radius: var(--lpm-radius-lg);
  padding: var(--lpm-space-xl);
  box-shadow: var(--lpm-shadow-sm);
}

/* ===== BOUTONS D'ACTION DANS L'ESPACE COMPTE WOOCOMMERCE ===== */
/* Tous les boutons primaires dans l'espace compte doivent avoir le gradient rose */
/* Utilisation des sélecteurs WooCommerce natifs */
.woocommerce-account .woocommerce .button:not(.secondary),
.woocommerce-account .woocommerce a.button:not(.secondary),
.woocommerce-account .woocommerce button.button:not(.secondary),
.woocommerce-account .woocommerce input.button:not(.secondary),
.woocommerce-account .woocommerce button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce input[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content .button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content a.button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content button.button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content input.button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content input.button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"].button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:not(.secondary),
.woocommerce-account form .button:not(.secondary),
.woocommerce-account form button.button:not(.secondary),
.woocommerce-account form input.button[type="submit"]:not(.secondary),
.woocommerce-account form button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-address-fields .button:not(.secondary),
.woocommerce-account .woocommerce-address-fields button.button:not(.secondary),
.woocommerce-account .woocommerce-address-fields input.button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-address-fields button[type="submit"]:not(.secondary) {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--lpm-space-sm) !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  font-size: 0.95rem !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all var(--lpm-transition-normal) !important;
  min-height: 44px !important;
}

.woocommerce-account .woocommerce .button:not(.secondary):hover,
.woocommerce-account .woocommerce a.button:not(.secondary):hover,
.woocommerce-account .woocommerce button.button:not(.secondary):hover,
.woocommerce-account .woocommerce input.button:not(.secondary):hover,
.woocommerce-account .woocommerce button[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce input[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content .button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content a.button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content button.button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content input.button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content input.button[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content input[type="submit"].button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:not(.secondary):hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:not(.secondary):hover,
.woocommerce-account form .button:not(.secondary):hover,
.woocommerce-account form button.button:not(.secondary):hover,
.woocommerce-account form input.button[type="submit"]:not(.secondary):hover,
.woocommerce-account form button[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce-address-fields .button:not(.secondary):hover,
.woocommerce-account .woocommerce-address-fields button.button:not(.secondary):hover,
.woocommerce-account .woocommerce-address-fields input.button[type="submit"]:not(.secondary):hover,
.woocommerce-account .woocommerce-address-fields button[type="submit"]:not(.secondary):hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.05) !important;
}

/* Bouton "Parcourir les produits" dans la page Commandes */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message a.button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
}

/* Boutons dans les boîtes d'information (Commandes vides, etc.) */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message {
  background: var(--lpm-blue-md) !important;
  color: var(--lpm-white) !important;
  border: none !important;
  border-radius: var(--lpm-radius-lg) !important;
  padding: var(--lpm-space-xl) !important;
  box-shadow: var(--lpm-shadow-md) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  margin-top: var(--lpm-space-md) !important;
}

/* Boutons "Ajouter" dans les pages Adresses et Moyens de paiement */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title a {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
}

/* Liens "Ajouter Adresse" et "Ajouter un moyen de paiement" */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title .edit,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod .woocommerce-PaymentMethod-title a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod .woocommerce-PaymentMethod-title .edit {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  text-decoration: none !important;
  transition: all var(--lpm-transition-normal) !important;
  min-height: 44px !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title .edit:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod .woocommerce-PaymentMethod-title a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethod .woocommerce-PaymentMethod-title .edit:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.05) !important;
}

/* Bouton "Ajouter un moyen de paiement" dans la page Moyens de paiement */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethods__add-new,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethods__add-new .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .woocommerce-PaymentMethods__add-new a.button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
}

/* Liens "Ajouter Adresse" qui doivent être stylés comme des boutons */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="add"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="billing"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="shipping"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a:not(.edit) {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  text-decoration: none !important;
  transition: all var(--lpm-transition-normal) !important;
  min-height: 44px !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="add"]:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="billing"]:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a[href*="shipping"]:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a:not(.edit):hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.05) !important;
}

/* Tous les liens dans les sections d'adresses qui ne sont pas des boutons d'édition */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a:not(.edit):not(.delete) {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  text-decoration: none !important;
  transition: all var(--lpm-transition-normal) !important;
  min-height: 44px !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address a:not(.edit):not(.delete):hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.05) !important;
}

/* Bouton "Enregistrer" dans les formulaires WooCommerce - Sélecteurs renforcés */
.woocommerce-account .woocommerce form .button:not(.secondary),
.woocommerce-account .woocommerce form input.button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce form button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce form button.button:not(.secondary),
.woocommerce-account .woocommerce-address-fields .button:not(.secondary),
.woocommerce-account .woocommerce-address-fields input.button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-address-fields button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-address-fields button.button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content form .button:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content form input.button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content form button[type="submit"]:not(.secondary),
.woocommerce-account .woocommerce-MyAccount-content form button.button:not(.secondary) {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  min-height: 44px !important;
  box-shadow: var(--lpm-shadow-sm) !important;
  transition: all var(--lpm-transition-normal) !important;
}

/* Boutons secondaires WooCommerce - garder le style bleu partout */
.woocommerce-account .woocommerce .button.secondary,
.woocommerce-account .woocommerce a.button.secondary,
.woocommerce-account .woocommerce button.button.secondary,
.woocommerce-account .woocommerce input.button.secondary,
.woocommerce-account .woocommerce-MyAccount-content .button.secondary,
.woocommerce-account .woocommerce-MyAccount-content a.button.secondary,
.woocommerce-account .woocommerce-MyAccount-content button.button.secondary,
.woocommerce-account .woocommerce-MyAccount-content input.button.secondary,
.woocommerce-account form .button.secondary,
.woocommerce-account form button.button.secondary,
.woocommerce-account form input.button.secondary,
.woocommerce-account .woocommerce-address-fields .button.secondary,
.woocommerce-account .woocommerce-address-fields button.button.secondary,
.woocommerce-account .woocommerce-address-fields input.button.secondary {
  background: var(--lpm-gradient-secondary) !important;
  color: var(--lpm-white) !important;
  border-color: transparent !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.woocommerce-account .woocommerce .button.secondary:hover,
.woocommerce-account .woocommerce a.button.secondary:hover,
.woocommerce-account .woocommerce button.button.secondary:hover,
.woocommerce-account .woocommerce input.button.secondary:hover,
.woocommerce-account .woocommerce-MyAccount-content .button.secondary:hover,
.woocommerce-account .woocommerce-MyAccount-content a.button.secondary:hover,
.woocommerce-account .woocommerce-MyAccount-content button.button.secondary:hover,
.woocommerce-account .woocommerce-MyAccount-content input.button.secondary:hover,
.woocommerce-account form .button.secondary:hover,
.woocommerce-account form button.button.secondary:hover,
.woocommerce-account form input.button.secondary:hover,
.woocommerce-account .woocommerce-address-fields .button.secondary:hover,
.woocommerce-account .woocommerce-address-fields button.button.secondary:hover,
.woocommerce-account .woocommerce-address-fields input.button.secondary:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.1) !important;
}

/* Style général pour tous les liens d'action dans l'espace compte qui doivent ressembler à des boutons */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods a {
  /* S'assurer que les liens dans ces sections sont stylés comme des boutons */
  text-decoration: none !important;
}

/* Bouton "Ajouter un moyen de paiement" - style spécifique pour le lien */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods a.button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .button {
  background: var(--lpm-gradient-primary) !important;
  color: var(--lpm-blue-dk) !important;
  border-color: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: var(--lpm-space-md) var(--lpm-space-lg) !important;
  border-radius: var(--lpm-radius-md) !important;
  font-weight: var(--lpm-font-weight-semibold) !important;
  text-decoration: none !important;
  transition: all var(--lpm-transition-normal) !important;
  min-height: 44px !important;
  box-shadow: var(--lpm-shadow-sm) !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods a.button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods .button:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--lpm-shadow-md) !important;
  filter: brightness(1.05) !important;
}

/* ===== WOOCOMMERCE - FORMULAIRES ===== */
.woocommerce .form-row input.input-text,
.woocommerce .form-row select,
.woocommerce .form-row textarea {
  background: var(--lpm-white);
  border: 2px solid var(--lpm-blue-xlg);
  border-radius: var(--lpm-radius-md);
  padding: var(--lpm-space-md);
  font-size: 1rem;
  transition: all var(--lpm-transition-normal);
  width: 100%;
}

.woocommerce .form-row input.input-text:focus,
.woocommerce .form-row select:focus,
.woocommerce .form-row textarea:focus {
  outline: none;
  border-color: var(--lpm-rose);
  box-shadow: 0 0 0 3px rgba(242, 167, 194, 0.1);
}

.woocommerce .form-row .required {
  color: var(--lpm-rose);
}

.woocommerce .form-row .woocommerce-validated input.input-text {
  border-color: var(--lpm-green);
}

.woocommerce .form-row .woocommerce-invalid input.input-text {
  border-color: #EF4444;
}

/* ===== WOOCOMMERCE - TABLES ===== */
.woocommerce table.shop_table {
  background: var(--lpm-white);
  border-radius: var(--lpm-radius-lg);
  box-shadow: var(--lpm-shadow-sm);
  border: none;
  overflow: hidden;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border-color: var(--lpm-blue-xlg);
  padding: var(--lpm-space-md);
  color: var(--lpm-blue-dk);
}

.woocommerce table.shop_table th {
  background: var(--lpm-blue-pastel);
  font-weight: var(--lpm-font-weight-semibold);
  color: var(--lpm-blue-dk);
}

.woocommerce table.shop_table tbody tr:nth-child(even) {
  background: var(--lpm-blue-xlg);
}

/* ===== WOOCOMMERCE - PAGINATION ===== */
.woocommerce nav.woocommerce-pagination {
  margin-top: var(--lpm-space-xl);
}

.woocommerce nav.woocommerce-pagination ul {
  display: flex;
  justify-content: center;
  gap: var(--lpm-space-sm);
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
  margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--lpm-radius-md);
  background: var(--lpm-white);
  color: var(--lpm-blue-dk);
  text-decoration: none;
  font-weight: var(--lpm-font-weight-semibold);
  transition: all var(--lpm-transition-normal);
  border: 1px solid var(--lpm-blue-xlg);
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--lpm-gradient-primary);
  color: var(--lpm-blue-dk);
  border-color: transparent;
}

/* ===== RESPONSIVE WOOCOMMERCE ===== */
@media (max-width: 768px) {
  .woocommerce-message {
    flex-direction: column;
    align-items: stretch;
    text-align: left;
    gap: var(--lpm-space-sm);
  }
  
  .woocommerce-message .button {
    width: 100%;
    justify-content: center;
  }
  
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout .woocommerce,
  .woocommerce-account .woocommerce {
    padding: var(--lpm-space-lg);
  }
  
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
    margin-bottom: var(--lpm-space-lg);
  }
  
  .woocommerce nav.woocommerce-pagination ul {
    flex-wrap: wrap;
  }
}

@media (max-width: 480px) {
  .woocommerce .single_add_to_cart_button,
  .woocommerce .checkout-button {
    font-size: 1rem;
    padding: var(--lpm-space-md) var(--lpm-space-lg);
    min-height: 48px;
  }
  
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout .woocommerce,
  .woocommerce-account .woocommerce {
    padding: var(--lpm-space-md);
  }
}

/* ===== ANIMATIONS ET INTERACTIONS ===== */
@keyframes lpm-fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.lpm-animate-fadeIn {
  animation: lpm-fadeIn 0.6s ease-out;
}

/* ===== ACCESSIBILITÉ ===== */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Focus visible pour tous les éléments interactifs */
.lpm-btn:focus-visible,
.woocommerce .button:focus-visible,
.woocommerce input:focus-visible,
.woocommerce select:focus-visible,
.woocommerce textarea:focus-visible {
  outline: 2px solid var(--lpm-rose);
  outline-offset: 2px;
}

/* ===== RÈGLE FINALE - FORCER BOUTON SECONDAIRE EN BLEU ===== */
/* Règle avec spécificité maximale pour surcharger TOUS les styles possibles */
body .elementor-element .elementor-widget-button .elementor-button.lpm-btn--secondary,
body .elementor-element .elementor-widget-button a.lpm-btn--secondary,
body .elementor-element .elementor-widget-button button.lpm-btn--secondary,
body .elementor-element .elementor-button-wrapper .elementor-button.lpm-btn--secondary,
body .elementor-element .elementor-button-wrapper a.lpm-btn--secondary,
body .elementor-element .elementor-button.lpm-btn--secondary,
body a.lpm-btn.lpm-btn--secondary,
body button.lpm-btn.lpm-btn--secondary,
body .lpm-btn.lpm-btn--secondary {
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  background-color: transparent !important;
  color: var(--lpm-white) !important;
  border-color: transparent !important;
}

body .elementor-element .elementor-widget-button .elementor-button.lpm-btn--secondary:hover,
body .elementor-element .elementor-widget-button a.lpm-btn--secondary:hover,
body .elementor-element .elementor-widget-button button.lpm-btn--secondary:hover,
body .elementor-element .elementor-button-wrapper .elementor-button.lpm-btn--secondary:hover,
body .elementor-element .elementor-button-wrapper a.lpm-btn--secondary:hover,
body .elementor-element .elementor-button.lpm-btn--secondary:hover,
body a.lpm-btn.lpm-btn--secondary:hover,
body button.lpm-btn.lpm-btn--secondary:hover,
body .lpm-btn.lpm-btn--secondary:hover {
  background: var(--lpm-gradient-secondary) !important;
  background-image: var(--lpm-gradient-secondary) !important;
  background-color: transparent !important;
  color: var(--lpm-white) !important;
}

/* ===== RÈGLE FINALE ULTRA-SPÉCIFIQUE - FORCER FOND BLANC CHECKOUT ===== */
/* Cette règle doit être en dernier pour surcharger TOUS les autres styles */
html body.woocommerce-checkout .wfacp_main_showcoupon,
html body.woocommerce-checkout .custom_point_checkout,
html body.woocommerce-checkout .wps_wpr_checkout_points_class,
html body.woocommerce-checkout .woocommerce-info,
html body .woocommerce-checkout .wfacp_main_showcoupon,
html body .woocommerce-checkout .custom_point_checkout,
html body .woocommerce-checkout .wps_wpr_checkout_points_class,
html body .woocommerce-checkout .woocommerce-info,
html body #order_review .wfacp_main_showcoupon,
html body .woocommerce-checkout-review-order .wfacp_main_showcoupon,
html body .cart-collaterals .wfacp_main_showcoupon {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  background-image: linear-gradient(to bottom, #FFFFFF, #FFFFFF) !important;
  color: #0D1B2A !important;
}

html body.woocommerce-checkout .wfacp_main_showcoupon *:not(a):not(.lpm-btn--secondary),
html body.woocommerce-checkout .custom_point_checkout *:not(a):not(.lpm-btn--secondary),
html body.woocommerce-checkout .wps_wpr_checkout_points_class *:not(a):not(.lpm-btn--secondary),
html body.woocommerce-checkout .woocommerce-info *:not(a):not(.lpm-btn--secondary) {
  color: #0D1B2A !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* ===== PRINT STYLES ===== */
@media print {
  .lpm-btn,
  .woocommerce .button,
  .woocommerce nav.woocommerce-pagination {
    display: none !important;
  }
  
  .woocommerce-cart .cart-collaterals,
  .woocommerce-checkout .woocommerce,
  .woocommerce-account .woocommerce {
    background: white !important;
    box-shadow: none !important;
  }
}

