/* Widget Upsale - Panier avec Suggestions
 * Architecture CSS basée sur Elementor Pro Cart Widget
 * Compatible avec widget-woocommerce-cart.min.css
 */

/* === STRUCTURE PRINCIPALE === */
.elementor-widget-upsale.e-cart-layout-one-column .e-cart__container {
    grid-template-columns: auto;
}

.elementor-widget-upsale table tbody tr:hover > td,
.elementor-widget-upsale table tbody tr:hover > th {
    background-color: transparent !important;
}

.elementor-widget-upsale .e-clear {
    height: 0;
    overflow: hidden;
    width: 0;
}

/* === SECTIONS === */
.elementor-widget-upsale .e-cart-section {
    background-color: var(--sections-background-color, #fff);
    border-color: var(--sections-border-color, #d5d8dc);
    border-radius: var(--sections-border-radius, 3px);
    border-style: var(--sections-border-type, solid);
    border-width: 1px;
    margin: var(--sections-margin, 0 0 30px 0);
    padding: var(--sections-padding, 16px 30px);
}

.elementor-widget-upsale .e-cart-section--no-coupon {
    margin: var(--sections-margin, 0 0 0 0);
}

@media (min-width: 1024px) {
    .elementor-widget-upsale .e-cart-section:last-child {
        margin: var(--sections-margin, 0);
    }
}

.elementor-widget-upsale .e-cart-content {
    color: var(--sections-descriptions-color, #69727d);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 23px;
}

/* === CONTAINER GRID === */
.elementor-widget-upsale .e-cart__container {
    align-items: stretch;
    display: grid;
    flex-wrap: wrap;
    grid-template-columns: 1fr auto;
    grid-column-gap: var(--sections-margin, 30px);
    grid-row-gap: var(--sections-margin, 30px);
}

@media (max-width: 1024px) {
    .elementor-widget-upsale .e-cart__container {
        grid-template-columns: repeat(1, 1fr);
    }
}

.elementor-widget-upsale .e-cart-layout-one-column .e-cart__container {
    grid-template-columns: auto;
}

/* === FORMULAIRES === */
.elementor-widget-upsale .select2-container {
    margin-bottom: 4px;
}

.elementor-widget-upsale .select2-container--default .select2-selection--single {
    background-color: #f9fafa;
    border: none;
    border-radius: var(--forms-fields-border-radius, 0);
    color: var(--forms-fields-normal-color, #69727d);
    height: 45px;
}

.elementor-widget-upsale .select2-container--default .select2-selection--single:focus {
    background-color: #f9fafa;
    border-color: var(--forms-fields-focus-border-color, initial);
    color: var(--forms-fields-focus-color, #69727d);
    transition-duration: var(--forms-fields-focus-transition-duration, .3s);
}

/* === WOOCOMMERCE === */
.elementor-widget-upsale .woocommerce {
    font-family: Roboto, sans-serif;
}

/* === CART COLLATERALS FIX === */
/* Corriger les styles par défaut WooCommerce qui forcent 48% width */
.elementor-widget-upsale .cart-collaterals {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.elementor-widget-upsale .cart-collaterals .cart_totals {
    width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.elementor-widget-upsale .woocommerce button.button {
    background-color: var(--e-a-bg-default);
    border-color: var(--forms-buttons-border-color, #5bc0de);
    border-radius: var(--forms-buttons-border-radius, 3px);
    border-style: var(--forms-buttons-border-type, solid);
    border-width: 2px;
    color: var(--forms-buttons-normal-text-color, #69727d);
    padding: var(--forms-buttons-padding, .88rem 2rem);
    width: var(--forms-buttons-width, auto);
}

.elementor-widget-upsale .woocommerce button.button:hover {
    border-color: var(--forms-buttons-hover-border-color, #5bc0de);
    color: var(--forms-buttons-hover-text-color, #69727d);
    transition-duration: var(--forms-buttons-hover-transition-duration, .3s);
}

/* === TABLEAU PANIER === */
.elementor-widget-upsale .woocommerce table.shop_table {
    border: 0 solid;
}

.elementor-widget-upsale .woocommerce table.shop_table .button {
    float: left;
    font-size: 14px;
    font-weight: 700;
}

.elementor-widget-upsale .woocommerce table.shop_table.cart .actions {
    display: table-cell;
    text-align: var(--update-cart-button-alignment, left) !important;
}

.elementor-widget-upsale .woocommerce table.shop_table.cart .actions .button {
    display: inline-block !important;
    float: none;
    width: var(--update-cart-button-width, auto);
}

@media (max-width: 1024px) {
    .elementor-widget-upsale .woocommerce table.shop_table.cart .actions .button {
        width: var(--update-cart-button-width, 100%) !important;
    }
}

.elementor-widget-upsale .woocommerce table.shop_table td,
.elementor-widget-upsale .woocommerce table.shop_table th,
.elementor-widget-upsale .woocommerce table.shop_table tr {
    border: 0 solid;
}

.elementor-widget-upsale .woocommerce table.shop_table tr:nth-child(odd) > td,
.elementor-widget-upsale .woocommerce table.shop_table tr:nth-child(odd) > th {
    background-color: transparent;
}

/* === PANIER ELEMENTS === */
.elementor-widget-upsale .woocommerce table.cart {
    margin-bottom: 0;
}

/* === MISE À JOUR AUTOMATIQUE PANIER === */
/* Masquer le bouton "Mettre à jour le panier" quand l'option automatique est activée */
/* NIVEAU 1: Sélecteurs de base */
.elementor-element.update-cart-automatically .elementor-widget-upsale .actions button[name="update_cart"],
.elementor-widget-upsale.update-cart-automatically .actions button[name="update_cart"],
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale .actions button[name="update_cart"] {
    display: none !important;
}

/* NIVEAU 2: Sélecteurs WooCommerce spécifiques */
.elementor-element.update-cart-automatically .elementor-widget-upsale .woocommerce table.cart .actions button[name="update_cart"],
.elementor-widget-upsale.update-cart-automatically .woocommerce table.cart .actions button[name="update_cart"],
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale .woocommerce table.cart .actions button[name="update_cart"] {
    display: none !important;
    visibility: hidden !important;
}

/* NIVEAU 3: Sélecteurs ultra-spécifiques avec table shop_table */
.elementor-element.update-cart-automatically .elementor-widget-upsale .woocommerce table.shop_table.cart .actions button[name="update_cart"],
.elementor-widget-upsale.update-cart-automatically .woocommerce table.shop_table.cart .actions button[name="update_cart"],
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale .woocommerce table.shop_table.cart .actions button[name="update_cart"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}

/* NIVEAU 4: Sélecteurs avec tbody pour cibler précisément */
.elementor-element.update-cart-automatically .elementor-widget-upsale .woocommerce table.shop_table.cart tbody .actions button[name="update_cart"],
.elementor-widget-upsale.update-cart-automatically .woocommerce table.shop_table.cart tbody .actions button[name="update_cart"],
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale .woocommerce table.shop_table.cart tbody .actions button[name="update_cart"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    width: 0 !important;
    height: 0 !important;
}

/* NIVEAU 5: Masquer également toute la ligne actions si elle ne contient que le bouton update */
.elementor-element.update-cart-automatically .elementor-widget-upsale .actions:has(button[name="update_cart"]:only-child),
.elementor-widget-upsale.update-cart-automatically .actions:has(button[name="update_cart"]:only-child),
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale .actions:has(button[name="update_cart"]:only-child) {
    display: none !important;
}

/* NIVEAU 6: Fallback ultra-agressif pour TOUS les contexts */
.update-cart-automatically button[name="update_cart"],
.update-cart-automatically input[name="update_cart"],
.update-cart-automatically .button[name="update_cart"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -9999px !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}

/* NIVEAU 7: Sélecteur par attribut value du bouton */
.elementor-element.update-cart-automatically .elementor-widget-upsale button[value="Mettre à jour le panier"],
.elementor-widget-upsale.update-cart-automatically button[value="Mettre à jour le panier"],
.elementor-element[data-settings*='"update_cart_automatically":"yes"'] .elementor-widget-upsale button[value="Mettre à jour le panier"] {
    display: none !important;
    visibility: hidden !important;
}

/* === TABLE HEADERS === */
.elementor-widget-upsale .woocommerce table.shop_table thead th {
    background-color: var(--order-summary-heading-background, transparent);
    color: var(--order-summary-heading-color, #333);
    font-size: var(--order-summary-heading-font-size, 14px) !important;
    font-weight: var(--order-summary-heading-font-weight, 600);
    text-transform: var(--order-summary-heading-text-transform, none) !important;
    padding: 12px 20px 12px 0;
}

/* Force la même taille pour tous les en-têtes */
.elementor-widget-upsale .woocommerce table.shop_table thead th.product-name,
.elementor-widget-upsale .woocommerce table.shop_table thead th.product-price,
.elementor-widget-upsale .woocommerce table.shop_table thead th.product-quantity,
.elementor-widget-upsale .woocommerce table.shop_table thead th.product-subtotal {
    font-size: inherit !important;
}

.elementor-widget-upsale .woocommerce table.cart img {
    display: block;
    height: auto;
    width: 55px;
}

.elementor-widget-upsale .woocommerce table.cart td {
    padding-bottom: var(--order-summary-rows-gap-bottom, 20px);
    padding-left: 0;
    padding-right: 20px;
    padding-top: var(--order-summary-rows-gap-top, 20px);
}

.elementor-widget-upsale .woocommerce table.cart td span {
    color: var(--order-summary-color, #000);
    font-size: 14px;
    font-weight: 400;
}

/* === TOTAUX === */
.elementor-widget-upsale .e-cart__column-end {
    min-width: 300px;
}

.elementor-widget-upsale .woocommerce .cart_totals h2 {
    text-align: var(--totals-title-alignment, left);
    color: var(--sections-title-color, #000);
    margin-bottom: var(--sections-title-spacing, 1rem);
    font-size: 14px;
    font-weight: 700;
    margin-top: 0;
    padding: 0 20px 8px 0;
}

.elementor-widget-upsale .woocommerce .cart_totals table.shop_table td {
    padding-bottom: var(--totals-rows-gap-bottom, 9px);
    padding-top: var(--totals-rows-gap-top, 12px);
}

/* === COULEUR DES TITRES ET VALEURS TOTAUX === */
/* Titres des lignes (Sous-total, Expédition, Total) */
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table th,
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table td:before {
    color: var(--totals-color, #69727d);
    font-weight: 700;
}

/* Valeurs des montants */
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table td .woocommerce-Price-amount,
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table td .amount {
    color: var(--totals-color, #69727d);
    font-weight: 700;
}

/* === SÉPARATEUR TOTAL === */
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table tr.order-total th,
.elementor-widget-upsale .woocommerce .cart_totals table.shop_table tr.order-total td {
    border-top: var(--totals-divider-weight, 1px) solid var(--totals-divider-color, #69727d) !important;
    padding-top: calc(var(--totals-rows-gap-top, 12px) + 8px);
}

/* === BOUTON CHECKOUT === */
.elementor-widget-upsale .woocommerce .wc-proceed-to-checkout {
    align-items: var(--place-order-title-alignment, stretch);
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding-bottom: 0;
}

.elementor-widget-upsale .woocommerce .wc-proceed-to-checkout .checkout-button {
    background-color: #5bc0de;
    border-radius: var(--checkout-button-border-radius, 3px);
    color: var(--checkout-button-normal-text-color, #fff);
    font-size: 15px;
    margin-bottom: 0;
    min-height: auto;
    padding: var(--checkout-button-padding, 15px 1em);
    text-align: center;
    width: var(--checkout-button-width, auto);
}

.elementor-widget-upsale .woocommerce .wc-proceed-to-checkout .checkout-button:hover {
    background-color: #5bc0de;
    border-color: var(--checkout-button-hover-border-color, #5bc0de);
    color: var(--checkout-button-hover-text-color, #fff);
    transition-duration: var(--checkout-button-hover-transition-duration, .3s);
}

/* === COUPON === */
.elementor-widget-upsale .woocommerce .coupon .button,
.elementor-widget-upsale .woocommerce .e-apply-coupon {
    float: right;
    width: 100%;
    /* Hériter des variables globales pour cohérence avec autres boutons */
    background-color: var(--forms-buttons-normal-background-color, #5bc0de);
    color: var(--forms-buttons-normal-text-color, #fff);
    border-color: var(--forms-buttons-border-color, #5bc0de);
    border-radius: var(--forms-buttons-border-radius, 3px);
    border-style: var(--forms-buttons-border-type, solid);
    border-width: var(--forms-buttons-border-width, 1px);
    padding: var(--forms-buttons-padding, 15px 1em);
    transition-duration: var(--forms-buttons-hover-transition-duration, 0.3s);
}

.elementor-widget-upsale .woocommerce .coupon .button:hover,
.elementor-widget-upsale .woocommerce .e-apply-coupon:hover {
    background-color: var(--forms-buttons-hover-background-color, #5bc0de);
    color: var(--forms-buttons-hover-text-color, #fff);
    border-color: var(--forms-buttons-hover-border-color, #5bc0de);
}

.elementor-widget-upsale .woocommerce .coupon .form-row {
    padding: 0;
}

.elementor-widget-upsale .woocommerce .coupon-col {
    display: flex;
}

.elementor-widget-upsale .woocommerce .coupon-col-start {
    flex: 2;
    padding-right: 30px;
}

@media (max-width: 1024px) {
    .elementor-widget-upsale .woocommerce .coupon-col-start {
        padding-right: 0;
    }
}

.elementor-widget-upsale .woocommerce .coupon-col-end {
    flex: 1;
}

@media (max-width: 1024px) {
    .elementor-widget-upsale .woocommerce .coupon-col-end {
        text-align: var(--apply-coupon-button-alignment, center);
    }
    .elementor-widget-upsale .woocommerce .coupon-col {
        display: block;
    }
    .elementor-widget-upsale .woocommerce .coupon {
        margin: var(--sections-margin, 0);
    }
    .elementor-widget-upsale .woocommerce .coupon #coupon_code {
        margin-bottom: 15px;
        margin-right: 0;
        width: 100%;
    }
    .elementor-widget-upsale .woocommerce .coupon .button {
        float: none;
        width: var(--apply-coupon-button-width, 100%);
    }
}

/* === CHAMPS DE FORMULAIRE === */
.elementor-widget-upsale .woocommerce .input-text,
.elementor-widget-upsale .woocommerce select {
    background-color: #f9fafa;
    border: none;
    border-radius: var(--forms-fields-border-radius, 3px);
    color: var(--forms-fields-normal-color, #69727d);
    font-size: 14px;
    padding: var(--forms-fields-padding, 16px);
}

.elementor-widget-upsale .woocommerce .input-text:focus,
.elementor-widget-upsale .woocommerce select:focus {
    background-color: #f9fafa;
    border-color: var(--forms-fields-focus-border-color, transparent);
    color: var(--forms-fields-focus-color, #69727d);
    transition-duration: var(--forms-fields-focus-transition-duration, .3s);
}

/* === CHAMPS QUANTITÉ SPÉCIFIQUES === */
/* Style par défaut Elementor Pro : fond transparent, texte blanc, bordure secondary */
.elementor-widget-upsale .woocommerce .quantity .input-text,
.elementor-widget-upsale .woocommerce .quantity input.qty {
    background-color: transparent;
    border: 1px solid var(--e-global-color-secondary, #5bc0de);
    color: #fff;
    text-align: center;
    width: 60px;
    height: 40px;
    padding: 8px;
}

.elementor-widget-upsale .woocommerce .quantity .input-text:focus,
.elementor-widget-upsale .woocommerce .quantity input.qty:focus {
    background-color: transparent;
    border-color: var(--e-global-color-secondary, #5bc0de);
    color: #fff;
    outline: none;
}

/* === ITEM FRAIS DE PORT GRATUITS === */
/* L'item frais de port utilise maintenant les mêmes classes CSS que cart-free-gift */
/* Seule l'icône a besoin de styles spécifiques */

.elementor-widget-upsale .cart-free-gift .free-shipping-icon-transparent {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    /* Fond transparent */
    background: transparent;
    /* Forcer le centrage */
    text-align: center !important;
}

.elementor-widget-upsale .cart-free-gift .free-shipping-emoji {
    /* Taille de l'emoji */
    font-size: 40px !important;
    line-height: 55px !important;
    /* Centrage horizontal et vertical */
    display: flex;
    align-items: center;
    justify-content: center;
    /* Pas de width/height 100% qui pourrait décaler */
    width: auto;
    height: auto;
    /* Empêcher tout décalage */
    margin: 0;
    padding: 0;
}

/* Correction alignement mobile */
@media (max-width: 767px) {
    .elementor-widget-upsale .cart-free-gift .product-thumbnail {
        /* Forcer l'alignement à gauche sur mobile */
        text-align: left !important;
    }
    
    .elementor-widget-upsale .cart-free-gift .free-shipping-icon-transparent {
        /* Ajuster le positionnement sur mobile */
        margin-left: 0;
        margin-right: auto;
        justify-content: flex-start;
    }
    
    .elementor-widget-upsale .cart-free-gift .free-shipping-emoji {
        /* Réduire légèrement la taille sur mobile */
        font-size: 35px !important;
        line-height: 50px !important;
    }
}

/* === PRODUITS OFFERTS === */
.elementor-widget-upsale .cart-free-gifts-separator {
    border-top: 2px solid var(--e-global-color-primary, #5bc0de) !important;
}

.elementor-widget-upsale .cart-free-gifts-separator .free-gifts-separator-text {
    padding: 15px 0 10px 0;
    text-align: center !important;
}

.elementor-widget-upsale .cart-free-gifts-separator .free-gifts-separator-text h4 {
    color: var(--e-global-color-primary, #5bc0de);
    font-weight: 700;
    margin: 0;
    font-size: 16px;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Harmoniser la typographie du prix dans le titre avec WooCommerce */
.elementor-widget-upsale .cart-free-gifts-separator .free-gifts-separator-text h4 .woocommerce-Price-amount {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    text-transform: inherit;
    letter-spacing: inherit;
}

/* Lignes de cadeaux offerts - même style que les autres lignes */
.elementor-widget-upsale .cart-free-gift-item {
    background-color: transparent !important;
    border-left: 3px solid #27ae60 !important;
}

/* Force explicit transparent background - plus spécifique que la règle globale tr:hover */
.elementor-widget-upsale table tbody .cart-free-gift-item:hover,
.elementor-widget-upsale table tbody .cart-free-gift-item:hover > td,
.elementor-widget-upsale table tbody .cart-free-gift-item:hover > th,
.elementor-widget-upsale .cart-free-gift-item:hover,
.elementor-widget-upsale .cart-free-gift-item:hover td,
.elementor-widget-upsale .cart-free-gift-item:hover th {
    background-color: transparent !important;
    background-image: none !important;
    background: transparent !important;
    color: inherit !important;
    transform: none !important;
    box-shadow: none !important;
    border-color: inherit !important;
}

/* Désactiver hover spécifiquement sur les badges et textes prix */
.elementor-widget-upsale .cart-free-gift-item:hover .free-gift-badge-cart,
.elementor-widget-upsale .cart-free-gift-item .free-gift-badge-cart:hover {
    background-color: inherit !important;
    color: inherit !important;
    transform: none !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Styles spécifiques aux produits offerts (utilisant les classes suggestion) */
.elementor-widget-upsale .cart-free-gift .free-gift-subtotal.available {
    color: #27ae60;
    font-weight: 600;
}

.elementor-widget-upsale .cart-free-gift .free-gift-subtotal.pending {
    color: #f39c12;
    font-weight: 500;
}

.elementor-widget-upsale .cart-free-gift .remaining-amount small {
    color: #f39c12;
    font-weight: 500;
    font-style: italic;
}

/* Label "à partir de" - pas barré, même taille que le texte des sous-totaux */
.elementor-widget-upsale .cart-free-gift .shipping-label {
    color: #333;
    font-weight: normal;
    text-decoration: none !important;
    font-size: inherit;
}


.elementor-widget-upsale .cart-free-gift .free-gift-message .gift-available {
    color: #27ae60;
    font-weight: 600;
}

/* Prix barré pour produit offert */
.elementor-widget-upsale .cart-free-gift .free-gift-original-price {
    text-decoration: line-through;
    color: #999;
    opacity: 0.8;
    outline: none !important;
}

/* Règle ultime anti-hover avec sélecteur universel */
.elementor-widget-upsale .cart-free-gift-item:hover *,
.elementor-widget-upsale .cart-free-gift-item * :hover {
    background-color: transparent !important;
    background-image: none !important;
    background: transparent !important;
    color: inherit !important;
    transform: none !important;
    box-shadow: none !important;
    filter: none !important;
    opacity: inherit !important;
    border-color: inherit !important;
    outline: none !important;
}

/* Badge OFFERT dans colonne suppression */
.elementor-widget-upsale .cart-free-gift-item .free-gift-badge-cart {
    background-color: #27ae60;
    color: #fff;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Message d'éligibilité */
.elementor-widget-upsale .cart-free-gift-item .free-gift-eligibility {
    margin: 5px 0;
    color: #27ae60;
    font-style: italic;
}

/* Conteneurs prix produit offert */
.elementor-widget-upsale .cart-free-gift-item .free-gift-price-container,
.elementor-widget-upsale .cart-free-gift-item .free-gift-subtotal-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

/* Prix original barré - style simple pour colonne Prix */
.elementor-widget-upsale .cart-free-gift-item .product-price .free-gift-original-price {
    text-decoration: line-through;
    color: #999;
    font-size: 14px;
    opacity: 0.8;
    display: block;
    text-align: center;
}

/* Prix original barré dans les conteneurs (si encore utilisé ailleurs) */
.elementor-widget-upsale .cart-free-gift-item .free-gift-price-container .free-gift-original-price {
    text-decoration: line-through;
    color: #999;
    font-size: 12px;
    opacity: 0.8;
}

/* Label "Gratuit" */
.elementor-widget-upsale .cart-free-gift-item .free-gift-free-label {
    font-weight: 600;
    font-size: 14px;
}

.elementor-widget-upsale .cart-free-gift-item .free-gift-price-container.available .free-gift-free-label,
.elementor-widget-upsale .cart-free-gift-item .free-gift-subtotal-container.available .free-gift-free-label {
    color: #27ae60;
}

.elementor-widget-upsale .cart-free-gift-item .free-gift-price-container.pending .free-gift-free-label {
    color: #f39c12;
}

/* Styles pour le sous-total simple (sans prix barré) */
.elementor-widget-upsale .cart-free-gift-item .free-gift-subtotal.available {
    color: #27ae60;
    font-weight: 600;
    font-size: 14px;
}

.elementor-widget-upsale .cart-free-gift-item .free-gift-subtotal.pending {
    color: #f39c12;
    font-weight: 500;
    font-size: 14px;
}

/* Quantité des cadeaux */
.elementor-widget-upsale .cart-free-gift-item .free-gift-quantity {
    color: #666;
    font-weight: 400;
}

/* === SUGGESTIONS PRODUITS === */
.elementor-widget-upsale .upsale-suggestions-container {
    margin-top: var(--sections-margin, 30px);
}

.elementor-widget-upsale .upsale-suggestions-title {
    color: var(--sections-title-color, #000);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: var(--sections-title-spacing, 1rem);
    margin-top: 0;
}

.elementor-widget-upsale .upsale-suggestions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 20px;
}

@media (max-width: 1024px) {
    .elementor-widget-upsale .upsale-suggestions-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .elementor-widget-upsale .upsale-suggestions-grid {
        grid-template-columns: 1fr;
    }
}

.elementor-widget-upsale .upsale-suggestion-item {
    background: #fff;
    border: 1px solid var(--sections-border-color, #d5d8dc);
    border-radius: var(--sections-border-radius, 3px);
    padding: 16px;
    text-align: center;
    transition: all 0.3s ease;
}

.elementor-widget-upsale .upsale-suggestion-item:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.elementor-widget-upsale .suggestion-image {
    margin-bottom: 15px;
}

.elementor-widget-upsale .suggestion-image img {
    max-width: 100%;
    height: auto;
}

.elementor-widget-upsale .suggestion-title {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 10px 0;
}

.elementor-widget-upsale .suggestion-title a {
    color: var(--product-link-normal-color, #000);
    text-decoration: none;
}

.elementor-widget-upsale .suggestion-title a:hover {
    color: var(--product-link-hover-color, #5bc0de);
}

.elementor-widget-upsale .suggestion-price {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 15px;
}

.elementor-widget-upsale .suggestion-price .original-price {
    text-decoration: line-through;
    color: #999;
    margin-right: 5px;
}

.elementor-widget-upsale .suggestion-price .effective-price {
    color: #5bc0de;
}

.elementor-widget-upsale .shipping-savings {
    display: block;
    font-size: 12px;
    color: #5bc0de;
    margin-top: 5px;
}

.elementor-widget-upsale .suggestion-promo {
    background: #f8f9fa;
    border-radius: 3px;
    font-size: 12px;
    margin-bottom: 15px;
    padding: 5px 10px;
    color: #666;
}

.elementor-widget-upsale .suggestion-add-to-cart {
    background-color: #5bc0de;
    border: none;
    border-radius: 3px;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    padding: 10px 20px;
    transition: background-color 0.3s ease;
    width: 100%;
}

.elementor-widget-upsale .suggestion-add-to-cart:hover {
    background-color: #46a0c4;
}

.elementor-widget-upsale .suggestion-add-to-cart:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}

/* === SUGGESTIONS INTÉGRÉES DANS TABLE PANIER === */

/* Ligne de séparation "Combinez ce produit avec" */
.elementor-widget-upsale .cart-suggestions-separator {
    background-color: transparent !important;
    border-top: 2px solid var(--e-global-color-primary, #5bc0de) !important;
}

.elementor-widget-upsale .cart-suggestions-separator .suggestions-separator-text {
    text-align: center !important;
    padding: 20px !important;
}

.elementor-widget-upsale .cart-suggestions-separator .suggestions-separator-text h4 {
    margin: 0 !important;
    color: var(--order-summary-heading-color, var(--e-global-color-primary, #5bc0de)) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Lignes de suggestions - même style que les produits normaux */
.elementor-widget-upsale .cart-suggestion-item {
    background-color: transparent !important;
    border-left: 3px solid var(--e-global-color-secondary, #46a0c4) !important;
}

.elementor-widget-upsale .cart-suggestion-item:hover {
    background-color: inherit !important;
}

/* Badge suggestion dans colonne suppression */
.elementor-widget-upsale .cart-suggestion-item .suggestion-badge {
    background-color: var(--e-global-color-secondary, #46a0c4);
    color: #fff;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Badges produits offerts - mêmes styles que suggestions, juste couleur différente */
.elementor-widget-upsale .cart-suggestion-item.cart-free-gift .suggestion-badge.free-gift-available {
    background-color: #27ae60; /* Vert pour OFFERT */
}

.elementor-widget-upsale .cart-suggestion-item.cart-free-gift .suggestion-badge.free-gift-pending {
    background-color: #f39c12; /* Orange pour BIENTÔT */
}

/* Texte promotionnel suggestion */
.elementor-widget-upsale .cart-suggestion-item .suggestion-promo-text {
    color: var(--e-global-color-accent, #f39c12);
    margin: 5px 0;
}

/* Texte promotionnel produit offert */
.elementor-widget-upsale .cart-free-gift-item .free-gift-promo-text {
    color: var(--e-global-color-accent, #f39c12);
    margin: 5px 0;
}

/* Quantité suggestion */
.elementor-widget-upsale .cart-suggestion-item .suggestion-quantity {
    text-align: center;
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-qty {
    background-color: #f0f0f0 !important;
    color: #999 !important;
    cursor: not-allowed;
    text-align: center;
    width: 60px;
}

.elementor-widget-upsale .cart-suggestion-item .quantity-note {
    margin-top: 5px;
}

.elementor-widget-upsale .cart-suggestion-item .quantity-note small {
    color: #666;
    font-style: italic;
}

/* Boutons d'action suggestions */
.elementor-widget-upsale .cart-suggestion-item .suggestion-actions {
    text-align: center;
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart,
.elementor-widget-upsale .cart-suggestion-item .suggestion-view-product {
    background-color: var(--e-global-color-secondary, #46a0c4);
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-block;
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart:hover,
.elementor-widget-upsale .cart-suggestion-item .suggestion-view-product:hover {
    background-color: var(--e-global-color-primary, #5bc0de);
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart:disabled {
    background-color: #ccc;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart.added {
    background-color: #27ae60;
}

.elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart.error {
    background-color: #e74c3c;
}

/* === RESPONSIVE - MOBILE PANIER STYLE MENU DIX === */
@media (max-width: 767px) {
    /* ===== DISPOSITION MOBILE COMPACTE COMME MENU DIX ===== */
    
    /* Masquer l'en-tête du tableau sur mobile */
    .elementor-widget-upsale table.shop_table thead {
        display: none !important;
    }
    
    /* Container principal avec layout flex */
    .elementor-widget-upsale table.shop_table,
    .elementor-widget-upsale tbody {
        display: block !important;
        width: 100% !important;
    }
    
    /* SOLUTION SIMPLE : RÉORGANISER LES TD AVEC FLEXBOX */
    
    .elementor-widget-upsale .cart_item {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        padding: 15px 10px !important;
        border-bottom: 1px solid #eee !important;
        position: relative !important;
        background: transparent !important;
    }
    
    /* IMAGE - À GAUCHE, position fixe */
    .elementor-widget-upsale .cart_item .product-thumbnail {
        order: 1 !important;
        position: absolute !important;
        left: 10px !important;
        top: 15px !important;
        width: 60px !important;
        height: 60px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
    }
    
    .elementor-widget-upsale .cart_item .product-thumbnail img {
        width: 60px !important;
        height: 60px !important;
        object-fit: cover !important;
        border-radius: 4px !important;
    }
    
    /* BOUTON SUPPRIMER - en haut à droite */
    .elementor-widget-upsale .cart_item .product-remove {
        order: 2 !important;
        position: absolute !important;
        top: 15px !important;
        right: 10px !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* 1. NOM DU PRODUIT - Première ligne */
    .elementor-widget-upsale .cart_item .product-name {
        order: 3 !important;
        width: calc(100% - 110px) !important;
        margin-left: 85px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: block !important;
    }
    
    .elementor-widget-upsale .cart_item .product-name a {
        font-size: 14px !important;
        font-weight: bold !important;
        line-height: 1.3 !important;
    }
    
    /* 2. PRIX UNITAIRE - Deuxième ligne */
    .elementor-widget-upsale .cart_item .product-price {
        order: 4 !important;
        width: calc(100% - 110px) !important;
        margin-left: 85px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: flex !important;
        align-items: baseline !important;
        font-weight: normal !important;
    }
    
    .elementor-widget-upsale .cart_item .product-price::before {
        content: "Prix: " !important;
        font-weight: normal !important;
        font-size: 14px !important;
        margin-right: 5px !important;
        display: inline !important;
    }
    
    /* 3. QUANTITÉ - Troisième ligne avec label */
    .elementor-widget-upsale .cart_item .product-quantity {
        order: 5 !important;
        width: calc(100% - 110px) !important;
        margin-left: 85px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: flex !important;
        align-items: baseline !important;
        font-weight: normal !important;
    }
    
    .elementor-widget-upsale .cart_item .product-quantity::before {
        content: "Quantité: " !important;
        font-weight: normal !important;
        font-size: 14px !important;
        margin-right: 5px !important;
        display: inline !important;
    }
    
    .elementor-widget-upsale .cart_item .product-quantity .quantity {
        display: inline-flex !important;
        align-items: baseline !important;
    }
    
    /* 4. SOUS-TOTAL - Quatrième ligne */
    .elementor-widget-upsale .cart_item .product-subtotal {
        order: 6 !important;
        width: calc(100% - 110px) !important;
        margin-left: 85px !important;
        margin-bottom: 4px !important;
        font-weight: normal !important;
        text-align: left !important;
        padding: 0 !important;
        display: block !important;
        font-size: 14px !important;
    }
    
    .elementor-widget-upsale .cart_item .product-subtotal::before {
        font-weight: normal !important;
        font-size: 14px !important;
        margin-right: 5px !important;
    }
    
    /* MASQUER TOUS LES LABELS AUTO-GÉNÉRÉS PAR WOOCOMMERCE */
    .elementor-widget-upsale .cart_item td::before {
        display: none !important;
    }
    
    .elementor-widget-upsale .cart_item .product-name::before {
        display: none !important;
    }
    
    /* MASQUER LES : DES TITRES SECTIONS SUGGESTIONS ET PRODUITS OFFERTS */
    .elementor-widget-upsale .cart-suggestions-separator td::before,
    .elementor-widget-upsale .cart-free-gifts-separator td::before,
    .elementor-widget-upsale .suggestions-separator-text::before,
    .elementor-widget-upsale .free-gifts-separator-text::before {
        display: none !important;
    }
    
    /* RE-AFFICHER NOS LABELS PERSONNALISÉS AVEC PLUS DE SPÉCIFICITÉ */
    .elementor-widget-upsale .cart_item .product-price::before,
    .elementor-widget-upsale .cart_item .product-quantity::before,
    .elementor-widget-upsale .cart_item .product-subtotal::before {
        display: inline !important;
    }
    
    .elementor-widget-upsale .cart_item .product-quantity .quantity {
        display: inline-block !important;
    }
    
    .elementor-widget-upsale .cart_item .product-quantity input.qty {
        width: 50px !important;
        height: 28px !important;
        padding: 2px 5px !important;
        font-size: 13px !important;
    }
    
    
    /* STYLES COMPLÉMENTAIRES */
    
    .elementor-widget-upsale .cart_item .product-remove .remove {
        font-size: 16px !important;
        width: 20px !important;
        height: 20px !important;
        line-height: 20px !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    /* ===== SECTIONS TOTAUX ET ACTIONS ===== */
    
    /* Tableau des totaux */
    .elementor-widget-upsale .cart_totals table {
        width: 100% !important;
    }
    
    .elementor-widget-upsale .cart_totals th,
    .elementor-widget-upsale .cart_totals td {
        padding: 10px 5px !important;
        font-size: 14px !important;
    }
    
    /* Boutons actions */
    .elementor-widget-upsale .wc-proceed-to-checkout .button {
        width: 100% !important;
        padding: 12px !important;
        font-size: 16px !important;
    }
    
    .elementor-widget-upsale .actions .button {
        padding: 10px 15px !important;
        font-size: 14px !important;
    }
    
    /* ===== SUGGESTIONS MOBILE ===== */
    
    /* Suggestions en ligne comme les produits du panier */
    .elementor-widget-upsale .cart-suggestion-item {
        display: flex !important;
        flex-wrap: wrap !important;
        padding: 12px 5px !important;
        position: relative !important;
    }
    
    /* SUGGESTION - Badge avant le nom du produit */
    .elementor-widget-upsale .cart-suggestion-item .product-remove {
        order: 2 !important;
        position: static !important;
        top: auto !important;
        right: auto !important;
        width: calc(100% - 50px) !important;
        height: auto !important;
        margin: 0 !important;
        margin-left: 50px !important;
        margin-bottom: 2px !important;
        text-align: left !important;
        padding: 0 !important;
    }
    
    .elementor-widget-upsale .cart-suggestion-item .suggestion-badge {
        position: relative !important;
        font-size: 9px !important;
        padding: 2px 4px !important;
        z-index: 1 !important;
        display: inline-block !important;
        margin: 0 !important;
        vertical-align: middle !important;
    }
    
    /* Image suggestion 30x30 - même position que produits normaux */
    .elementor-widget-upsale .cart-suggestion-item .product-thumbnail {
        width: 30px !important;
        height: 30px !important;
        position: absolute !important;
        left: 10px !important;
        top: 15px !important;
        margin: 0 !important;
    }
    
    /* Nom suggestion - juste après le badge */
    .elementor-widget-upsale .cart-suggestion-item .product-name {
        order: 3 !important;
        width: calc(100% - 50px) !important;
        margin-left: 50px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: block !important;
    }
    
    .elementor-widget-upsale .cart-suggestion-item .product-name a {
        font-size: 14px !important;
        margin-bottom: 2px !important;
    }
    
    /* SUGGESTION - Prix, quantité, sous-total alignés avec badge et nom */
    .elementor-widget-upsale .cart-suggestion-item .product-price {
        order: 4 !important;
        width: calc(100% - 50px) !important;
        margin-left: 50px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: flex !important;
        align-items: baseline !important;
        font-weight: normal !important;
    }
    
    .elementor-widget-upsale .cart-suggestion-item .product-quantity {
        order: 5 !important;
        width: calc(100% - 50px) !important;
        margin-left: 50px !important;
        margin-bottom: 4px !important;
        text-align: left !important;
        padding: 0 !important;
        display: block !important;
        font-weight: normal !important;
    }
    
    .elementor-widget-upsale .cart-suggestion-item .product-subtotal {
        order: 6 !important;
        width: calc(100% - 50px) !important;
        margin-left: 50px !important;
        margin-bottom: 4px !important;
        font-weight: normal !important;
        text-align: left !important;
        padding: 0 !important;
        display: block !important;
        font-size: 14px !important;
    }
    
    .elementor-widget-upsale .cart-suggestion-item .suggestion-promo-text {
        font-size: 11px !important;
        margin: 2px 0 !important;
    }
    
    /* Bouton ajouter suggestion */
    .elementor-widget-upsale .cart-suggestion-item .suggestion-add-to-cart {
        padding: 6px 12px !important;
        font-size: 12px !important;
        margin-top: 5px !important;
    }
    
    /* ===== PRODUITS OFFERTS MOBILE ===== */
    
    /* Même style que suggestions */
    .elementor-widget-upsale .cart-free-gift {
        display: flex !important;
        flex-wrap: wrap !important;
        padding: 12px 5px !important;
        position: relative !important;
    }
    
    /* Titres sections */
    .elementor-widget-upsale .cart-suggestions-separator .suggestions-separator-text h4,
    .elementor-widget-upsale .cart-free-gifts-separator .free-gifts-separator-text h4 {
        font-size: 14px !important;
        padding: 8px 5px !important;
    }
}

/* === SÉLECTEUR DE VARIATIONS POUR SUGGESTIONS === */
.elementor-widget-upsale .suggestion-variations-form {
    margin: 8px 0;
    padding: 8px;
    background-color: #f9f9f9;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
}

.elementor-widget-upsale .suggestion-variations-form .variation-option {
    margin-bottom: 8px;
}

.elementor-widget-upsale .suggestion-variations-form .variation-option:last-child {
    margin-bottom: 0;
}

.elementor-widget-upsale .suggestion-variations-form label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    margin-bottom: 3px;
}

.elementor-widget-upsale .suggestion-variation-select {
    width: 100%;
    padding: 4px 8px;
    font-size: 12px;
    border: 1px solid #ddd;
    border-radius: 3px;
    background-color: #fff;
    color: #333;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 6px center;
    background-size: 12px;
    padding-right: 25px;
}

.elementor-widget-upsale .suggestion-variation-select:focus {
    outline: none;
    border-color: var(--e-global-color-primary, #5bc0de);
    box-shadow: 0 0 0 1px var(--e-global-color-primary, #5bc0de);
}

/* Masquer les données JSON */
.elementor-widget-upsale .suggestion-variations-data {
    display: none;
}

/* Adaptation du bouton pour les variations */
.elementor-widget-upsale .cart-suggestion-item[data-has-variations="true"] .suggestion-add-to-cart {
    background-color: #6c757d; /* Gris si pas de variation sélectionnée */
    cursor: not-allowed;
}


.elementor-widget-upsale .cart-suggestion-item[data-has-variations="true"][data-variation-selected="true"] .suggestion-add-to-cart {
    background-color: var(--e-global-color-secondary, #46a0c4);
    cursor: pointer;
}

/* === RESPONSIVE VARIATIONS === */
@media (max-width: 767px) {
    .elementor-widget-upsale .suggestion-variations-form {
        margin: 5px 0;
        padding: 6px;
    }
    
    .elementor-widget-upsale .suggestion-variations-form label {
        font-size: 11px;
        margin-bottom: 2px;
    }
    
    .elementor-widget-upsale .suggestion-variation-select {
        font-size: 11px;
        padding: 3px 6px;
        padding-right: 20px;
        background-size: 10px;
    }
}

/* === CHARGEMENT === */
.elementor-widget-upsale .upsale-suggestions-loading,
.elementor-widget-upsale .cart-suggestions-loading {
    text-align: center;
    padding: 20px;
    color: #666;
    font-style: italic;
}

.elementor-widget-upsale .upsale-suggestions-content.loading {
    opacity: 0.6;
}

/* === STICKY COLONNE DROITE === */
.e-sticky-right-column--active {
    position: sticky;
    top: 0;
}

/* === RESPONSIVE === */
@media (max-width: 767px) {
    .elementor-widget-upsale .woocommerce table.cart {
        padding: 0;
    }
    .elementor-widget-upsale .woocommerce table.cart tr {
        padding: 16px 28px;
    }
    .elementor-widget-upsale .woocommerce table.cart tr:first-child {
        border-top: none;
    }
    .elementor-widget-upsale .woocommerce table.cart td {
        padding-left: 0;
        padding-right: 0;
    }
    .elementor-widget-upsale .woocommerce table.cart td.actions {
        padding: 0;
    }
    
    /* === INTITULÉS MOBILES === */
    /* Sur mobile, WooCommerce utilise data-title au lieu des thead th */
    .elementor-widget-upsale .woocommerce table.shop_table_responsive td:before {
        background-color: var(--order-summary-heading-background, transparent) !important;
        color: var(--order-summary-heading-color, #333) !important;
        font-size: var(--order-summary-heading-font-size, 14px) !important;
        font-weight: var(--order-summary-heading-font-weight, 600) !important;
        text-transform: var(--order-summary-heading-text-transform, none) !important;
    }
    
    /* Cibler spécifiquement les intitulés par data-title */
    .elementor-widget-upsale .woocommerce table.cart td[data-title]:before {
        background-color: var(--order-summary-heading-background, transparent) !important;
        color: var(--order-summary-heading-color, #333) !important;
        font-size: var(--order-summary-heading-font-size, 14px) !important;
        font-weight: var(--order-summary-heading-font-weight, 600) !important;
        text-transform: var(--order-summary-heading-text-transform, none) !important;
    }
}

/* === STYLES POUR LES SÉLECTEURS DE VARIATIONS === */
.suggestion-variations-form {
    margin: 10px 0;
    border: none !important; /* Pas de bordure sur le conteneur */
    background-color: transparent !important;
    color: var(--product-link-normal-color, #000) !important; /* Force la couleur pour tout le texte */
}

/* Force la couleur sur tous les éléments texte dans le formulaire */
.suggestion-variations-form * {
    color: inherit !important;
}

.suggestion-variations-form .variation-option {
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: none !important; /* Pas de bordure sur le div option */
}

.suggestion-variations-form label {
    font-size: 12px;
    font-weight: 600;
    min-width: 60px;
    margin: 0;
    color: var(--product-link-normal-color, #000) !important; /* Couleur des noms de produits */
}

/* Spécifiquement pour les cellules de table contenant les variations */
.elementor-widget-upsale .woocommerce table.cart td.product-name .suggestion-variations-form,
.elementor-widget-upsale .woocommerce table.cart td.product-name .suggestion-variations-form label {
    color: var(--product-link-normal-color, #000) !important;
}

/* Style inspiré des champs quantité : fond transparent avec bordure */
.suggestion-variations-form select.suggestion-variation-select {
    flex: 1;
    max-width: 120px;
    padding: 6px 10px;
    font-size: 13px;
    border: 1px solid var(--e-global-color-secondary, #5bc0de);
    border-radius: 3px;
    height: 32px;
    line-height: 1.4;
    background-color: transparent;
    color: var(--product-link-normal-color, #000) !important; /* Utilise la couleur des liens produits */
    cursor: pointer;
    transition: all 0.3s ease;
}

.suggestion-variations-form select.suggestion-variation-select:focus {
    outline: none;
    border-color: var(--e-global-color-secondary, #5bc0de);
    box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.1);
    background-color: rgba(91, 192, 222, 0.05);
}

/* Option de select dans la dropdown */
.suggestion-variations-form select.suggestion-variation-select option {
    background-color: #fff;
    color: #333;
    padding: 4px 8px;
}

/* Harmonisation avec le style des lignes de produit */
.cart-suggestion-item .suggestion-variations-form {
    background-color: transparent;
}

/* Adaptation pour mobile */
@media (max-width: 768px) {
    .suggestion-variations-form select.suggestion-variation-select {
        max-width: 120px !important;
        width: 120px !important;
        font-size: 11px !important;
        padding: 3px 6px !important;
        height: 28px !important;
    }
    
    .suggestion-variations-form .variation-option {
        flex-direction: row !important;
        align-items: center !important;
        gap: 6px !important;
    }
    
    .suggestion-variations-form label {
        min-width: auto !important;
        font-size: 11px !important;
        flex-shrink: 0 !important;
    }
}

/* === BARRE DE PROGRESSION LIVRAISON GRATUITE - DÉSACTIVÉE === */
/* La barre de progression a été supprimée. */
/* Les frais de port sont maintenant affichés dans la liste des produits offerts. */