.elementor-5630 .elementor-element.elementor-element-e41241a{--display:flex;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5630 .elementor-element.elementor-element-507640f{--update-cart-automatically-display:none;--totals-title-alignment:start;--sections-padding:0px 0px 0px 0px;--sections-margin:2px;--sections-title-spacing:0px;}.elementor-5630 .elementor-element.elementor-element-507640f.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-5630 .elementor-element.elementor-element-507640f .coupon{--apply-coupon-button-alignment:start;--apply-coupon-button-width:auto;}@media(max-width:767px){.elementor-5630 .elementor-element.elementor-element-e41241a{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--flex-wrap:wrap;}.elementor-5630 .elementor-element.elementor-element-e41241a.e-con{--order:-99999 /* order start hack */;}.elementor-5630 .elementor-element.elementor-element-507640f{width:initial;max-width:initial;--sections-padding:0px 0px 0px 0px;--sections-margin:0px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-507640f *//* =========================================================
   PANIER WOOCOMMERCE - MOBILE (cartes produits)
   ========================================================= */
@media (max-width: 767px) {

  /* ---------- Structure : on neutralise le tableau ---------- */
  body .woocommerce-cart-form table.shop_table thead {
    display: none !important;
  }
  body .woocommerce-cart-form table.shop_table,
  body .woocommerce-cart-form table.shop_table tbody {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* ---------- Carte produit ---------- */
  body .woocommerce-cart-form table.shop_table tr.cart_item {
    display: flex !important;
    flex-direction: column;
    background: #fff;
    border: 1px solid #eceef1 !important;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    padding: 14px 18px 4px !important;
    margin: 0 0 16px !important;
  }

  /* Lignes de la carte : libellé à gauche / valeur à droite */
  body .woocommerce-cart-form table.shop_table tr.cart_item td {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    width: 100% !important;
    min-height: 0 !important;
    padding: 8px 0 !important;
    border: 0 !important;
    border-top: 1px solid #f1f2f4 !important;
    background: transparent !important;
    text-align: right !important;
  }
  body .woocommerce-cart-form table.shop_table tr.cart_item td::before {
    content: attr(data-title) !important;
    float: none !important;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #6b7280;
  }

  /* ---------- Bouton supprimer : en haut, aligné à droite ---------- */
  body .woocommerce-cart-form tr.cart_item td.product-remove {
    order: -1;
    justify-content: flex-end !important;
    padding: 0 !important;
    margin: 0 0 4px !important;
    border-top: 0 !important;
  }
  body .woocommerce-cart-form tr.cart_item td.product-remove::before {
    display: none !important;
  }
  body .woocommerce-cart-form tr.cart_item td.product-remove a.remove {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-left: auto;
    border-radius: 50%;
    background: #f3f4f6;
    color: #374151 !important;
  }
  body .woocommerce-cart-form tr.cart_item td.product-remove svg {
    width: 16px;
    height: 16px;
  }

  /* ---------- Image centrée ---------- */
  body .woocommerce-cart-form tr.cart_item td.product-thumbnail {
    justify-content: center !important;
    padding: 0 0 10px !important;
    border-top: 0 !important;
  }
  body .woocommerce-cart-form tr.cart_item td.product-thumbnail::before {
    display: none !important;
  }
  body .woocommerce-cart-form tr.cart_item td.product-thumbnail img {
    width: 180px !important;
    max-width: 70%;
    height: auto !important;
    border-radius: 12px;
  }

  /* ---------- Nom du produit ---------- */
  body .woocommerce-cart-form tr.cart_item td.product-name {
    justify-content: center !important;
    text-align: center !important;
    padding: 0 0 12px !important;
    border-top: 0 !important;
    font-size: 1.05rem;
    font-weight: 600;
    line-height: 1.35;
  }
  body .woocommerce-cart-form tr.cart_item td.product-name::before {
    display: none !important;
  }

  /* ---------- Quantité et sous-total ---------- */
  body .woocommerce-cart-form tr.cart_item td.product-quantity .quantity {
    margin: 0;
  }
  body .woocommerce-cart-form tr.cart_item td.product-quantity input.qty {
    width: 72px;
    padding: 8px;
    text-align: center;
    border-radius: 8px;
  }
  body .woocommerce-cart-form tr.cart_item td.product-subtotal {
    font-size: 1.05rem;
    font-weight: 700;
  }

  /* ---------- Ligne des actions (code promo / mise à jour) ---------- */
  body .woocommerce-cart-form table.shop_table tr:not(.cart_item) {
    display: block !important;
    margin: 0 !important;
  }
  body .woocommerce-cart-form td.actions {
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* ---------- Code promo : carte centrée ---------- */
  body .woocommerce-cart-form td.actions .coupon {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #eceef1;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    padding: 22px 18px;
    margin: 0 0 24px !important;
    text-align: center;
  }
  body .woocommerce-cart-form td.actions .coupon input#coupon_code {
    width: 100% !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 12px 14px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #f9fafb;
    text-align: center;
  }
  body .woocommerce-cart-form td.actions .coupon button[name="apply_coupon"] {
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px;
    border-radius: 10px;
  }
  body .woocommerce-cart-form td.actions button[name="update_cart"] {
    width: 100%;
    margin: 0 0 20px;
    border-radius: 10px;
  }

  /* ---------- Totaux du panier : même style de carte ---------- */
  body .cart_totals {
    background: #fff;
    border: 1px solid #eceef1;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    padding: 20px 18px !important;
    margin-top: 8px;
  }
  body .cart_totals h2 {
    margin-bottom: 16px;
  }

  /* ---------- Modes de livraison ---------- */
  body .woocommerce-shipping-methods li {
    list-style: none;
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
  }
  body .woocommerce-shipping-methods li:last-child {
    border-bottom: 0;
  }
  body .woocommerce-shipping-methods input[type="radio"] {
    margin-right: 8px;
  }
  body .woocommerce-shipping-methods img {
    max-height: 24px;
    width: auto;
  }

  /* ---------- Bouton "Valider la commande" ---------- */
  body .checkout-button {
    width: 100%;
    margin-top: 16px;
    padding: 16px;
    border-radius: 10px;
    font-weight: 600;
  }
}

@media (max-width: 767px) {

  /* 1. On supprime le cadre vide sous la carte produit */
  body .woocommerce-cart-form table.shop_table tr:not(.cart_item),
  body .woocommerce-cart-form table.shop_table td.actions {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  /* 2. Plus d'espace entre la dernière carte produit et le code promo */
  body .woocommerce-cart-form table.shop_table tr.cart_item:has(+ tr:not(.cart_item)) {
    margin-bottom: 0 !important;
  }

  /* 3. Code promo : carte centrée (classes Elementor + WooCommerce) */
  body .elementor-widget-woocommerce-cart .e-coupon-box,
  body .woocommerce-cart-form .coupon {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #eceef1 !important;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    padding: 20px 18px !important;
    margin: 0 0 10px !important;   /* 10px max avant les totaux */
    text-align: center;
  }
  body .elementor-widget-woocommerce-cart .e-coupon-box input,
  body .woocommerce-cart-form .coupon input#coupon_code {
    width: 100% !important;
    margin: 0 !important;
    text-align: center;
    border-radius: 10px;
  }
  body .elementor-widget-woocommerce-cart .e-coupon-box button,
  body .woocommerce-cart-form .coupon button[name="apply_coupon"] {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 10px;
  }

  /* 4. Espace entre code promo et totaux : 10px au maximum */
  body .elementor-widget-woocommerce-cart .e-cart__container {
    gap: 0 !important;
    row-gap: 0 !important;
  }
  body .elementor-widget-woocommerce-cart .e-cart__column-start,
  body .elementor-widget-woocommerce-cart .e-cart__column-end {
    margin: 0 !important;
  }
  body .cart_totals {
    margin-top: 0 !important;
  }
}/* End custom CSS */