/* =========================================================
   WOOCOMMERCE - PANIER
   VERSION NETTOYÉE
   ========================================================= */

body.woocommerce-cart .woocommerce {
    width: min(1100px, calc(100% - 40px));
    max-width: 1100px;

    margin: 60px auto 100px !important;

    color: var(--text-sub);
}


/* =========================================================
   PANIER VIDE / MESSAGES
   ========================================================= */

body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .cart-empty {
    margin: 0 0 24px !important;
    padding: 22px 24px !important;

    color: var(--text-sub) !important;

    background: var(--bg-card) !important;

    border: 1px solid var(--border) !important;
    border-top: 2px solid var(--accent) !important;
    border-radius: 5px !important;

    font-size: 0.9rem;
    line-height: 1.6;
}

body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-cart .cart-empty::before {
    display: none !important;
    content: none !important;
}

/* =========================================================
   PANIER - MESSAGES DE CONFIRMATION
   ========================================================= */

body.woocommerce-cart .woocommerce-message {
    position: relative;

    margin: 0 0 28px !important;
    padding: 16px 20px !important;

    color: var(--text-sub) !important;

    background: var(--bg-card) !important;

    border: 1px solid var(--border) !important;
    border-top: 2px solid var(--accent) !important;
    border-radius: 4px !important;

    box-shadow: none !important;

    font-size: 0.85rem !important;
    line-height: 1.5 !important;
}


/* Supprime l'icône WooCommerce bleue */

body.woocommerce-cart .woocommerce-message::before {
    display: none !important;

    content: none !important;
}


/* Liens éventuels dans le message */

body.woocommerce-cart .woocommerce-message a {
    color: var(--accent) !important;

    text-decoration: none !important;
}


body.woocommerce-cart .woocommerce-message a:hover {
    color: var(--text-main) !important;
}

/* =========================================================
   RETOUR BOUTIQUE
   ========================================================= */

body.woocommerce-cart .return-to-shop {
    margin: 0 !important;
}

body.woocommerce-cart .return-to-shop .button,
body.woocommerce-cart .return-to-shop .button:hover,
body.woocommerce-cart .return-to-shop .button:focus,
body.woocommerce-cart .return-to-shop .button:active {
    display: inline-block;

    padding: 12px 20px !important;

    color: #0a0a0a !important;

    background: var(--accent) !important;

    border: 1px solid var(--accent) !important;
    border-radius: 3px !important;

    box-shadow: none !important;
    outline: none !important;

    font-size: 0.74rem !important;
    font-weight: 500 !important;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

body.woocommerce-cart .return-to-shop .button:hover {
    background: var(--text-main) !important;
    border-color: var(--text-main) !important;
}


/* =========================================================
   TABLEAU PRINCIPAL
   ========================================================= */

body.woocommerce-cart table.shop_table.cart {
    overflow: hidden;

    background: var(--bg-card) !important;

    border: 1px solid var(--border) !important;
    border-radius: 5px !important;
}

body.woocommerce-cart table.shop_table.cart th {
    padding: 16px 14px !important;

    color: var(--accent) !important;

    background: #111 !important;

    border-color: var(--border) !important;

    font-size: 0.72rem;
    font-weight: 500;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

body.woocommerce-cart table.shop_table.cart td {
    padding: 16px 14px !important;

    color: var(--text-sub) !important;

    background: transparent !important;

    border-color: var(--border) !important;
}

body.woocommerce-cart table.shop_table.cart td.actions {
    padding: 16px !important;

    background: #121212 !important;

    border-top: 1px solid var(--border) !important;
}


/* =========================================================
   PRODUIT
   ========================================================= */

body.woocommerce-cart .product-name a {
    color: var(--text-main) !important;

    text-decoration: none;
}

body.woocommerce-cart .product-name a:hover {
    color: var(--accent) !important;
}

body.woocommerce-cart .product-thumbnail img {
    width: 70px !important;

    border-radius: 3px;
}

body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal {
    color: var(--accent) !important;
}

body.woocommerce-cart .quantity .qty {
    width: 70px;

    padding: 9px 8px;

    color: var(--text-main);

    background: #0d0d0d;

    border: 1px solid var(--border);
    border-radius: 3px;
}

body.woocommerce-cart .product-remove a {
    color: var(--accent) !important;

    font-size: 1.4rem;
}

body.woocommerce-cart .product-remove a:hover {
    color: var(--text-main) !important;
}


/* =========================================================
   COUPON + MISE À JOUR
   ========================================================= */

body.woocommerce-cart .coupon input.input-text {
    min-width: 180px;

    padding: 11px 12px !important;

    color: var(--text-main);

    background: #0d0d0d;

    border: 1px solid var(--border) !important;
    border-radius: 3px;
}

body.woocommerce-cart button.button,
body.woocommerce-cart input.button {
    padding: 11px 18px !important;

    color: #0a0a0a !important;

    background: var(--accent) !important;

    border: 1px solid var(--accent) !important;
    border-radius: 3px !important;

    box-shadow: none !important;

    font-size: 0.72rem !important;
    font-weight: 500 !important;

    letter-spacing: 0.07em;

    text-transform: uppercase;
}

body.woocommerce-cart button.button:hover,
body.woocommerce-cart input.button:hover {
    background: var(--text-main) !important;

    border-color: var(--text-main) !important;
}

body.woocommerce-cart table.shop_table.cart button.button:disabled,
body.woocommerce-cart table.shop_table.cart button.button:disabled[disabled] {
    opacity: 0.45 !important;

    color: #0a0a0a !important;

    background: var(--accent) !important;
}


/* =========================================================
   TOTAL PANIER
   ========================================================= */

body.woocommerce-cart .cart-collaterals {
    display: flex;
    justify-content: flex-end;

    margin-top: 32px !important;
}

body.woocommerce-cart .cart_totals {
    width: min(430px, 100%) !important;

    float: none !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden;

    background: var(--bg-card) !important;

    border: 1px solid var(--border) !important;
    border-radius: 5px !important;
}

body.woocommerce-cart .cart_totals h2 {
    margin: 0 !important;
    padding: 20px 22px !important;

    color: var(--text-main) !important;

    background: #111111 !important;

    border-bottom: 1px solid var(--border) !important;

    font-family: var(--font-display) !important;
    font-size: 1.45rem !important;
    font-weight: 400 !important;
}

body.woocommerce-cart .cart_totals table {
    width: calc(100% - 36px) !important;

    margin: 18px !important;

    overflow: hidden;

    border: 1px solid var(--border) !important;
    border-radius: 4px !important;
}

body.woocommerce-cart .cart_totals table th,
body.woocommerce-cart .cart_totals table td {
    padding: 16px 14px !important;

    background: transparent !important;

    border-color: var(--border) !important;
}

body.woocommerce-cart .cart_totals table th {
    width: 42%;

    color: var(--accent) !important;

    font-size: 0.72rem !important;
    font-weight: 500 !important;

    letter-spacing: 0.08em;

    text-transform: uppercase;
}

body.woocommerce-cart .cart_totals table td {
    color: var(--text-sub) !important;

    font-size: 0.95rem !important;
}

body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-cart .cart_totals .order-total strong,
body.woocommerce-cart .cart_totals .order-total .amount {
    color: var(--accent) !important;

    font-weight: 600 !important;
}


/* =========================================================
   PASSER COMMANDE
   ========================================================= */

body.woocommerce-cart .wc-proceed-to-checkout {
    padding: 0 18px 18px !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:active {
    width: 100%;

    margin: 0 !important;
    padding: 14px 18px !important;

    color: #0a0a0a !important;

    background: var(--accent) !important;

    border: 1px solid var(--accent) !important;
    border-radius: 3px !important;

    box-shadow: none !important;
    outline: none !important;

    font-size: 0.74rem !important;
    font-weight: 500 !important;

    letter-spacing: 0.08em;

    text-align: center;
    text-transform: uppercase;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: var(--text-main) !important;

    border-color: var(--text-main) !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 768px) {

    body.woocommerce-cart .woocommerce {
        width: calc(100% - 32px);

        margin: 40px auto 70px !important;
    }

    body.woocommerce-cart table.shop_table.cart {
        background: transparent !important;

        border: none !important;
    }

    body.woocommerce-cart table.shop_table_responsive tr {
        margin-bottom: 16px;
        padding: 16px;

        background: var(--bg-card);

        border: 1px solid var(--border);
        border-radius: 5px;
    }

    body.woocommerce-cart .coupon {
        display: flex;
        flex-direction: column;

        gap: 10px;
    }

    body.woocommerce-cart .coupon input.input-text {
        width: 100% !important;
    }

    body.woocommerce-cart .cart-collaterals {
        display: block;
    }

    body.woocommerce-cart .cart_totals {
        width: 100% !important;

        margin-top: 20px !important;
    }

    body.woocommerce-cart .cart_totals table {
        width: calc(100% - 28px) !important;

        margin: 14px !important;
    }

}

/* =========================================================
   WOOCOMMERCE NOTICE - BOUTON VOIR LE PANIER
   ========================================================= */

.woocommerce .woocommerce-message .button.wc-forward,
.woocommerce .woocommerce-message a.button.wc-forward,
.woocommerce-message .button.wc-forward,
.woocommerce-message a.button.wc-forward {
    color: #0a0a0a !important;
    -webkit-text-fill-color: #0a0a0a !important;

    background: #d1ad6b !important;
    background-color: #d1ad6b !important;
    background-image: none !important;

    border: 1px solid #d1ad6b !important;
    border-radius: 3px !important;

    box-shadow: none !important;
    outline: none !important;

    padding: 11px 20px !important;

    font-size: 0.72rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    letter-spacing: 0.06em;
    text-decoration: none !important;
    text-transform: uppercase;
}


/* SURVOL */

.woocommerce .woocommerce-message .button.wc-forward:hover,
.woocommerce .woocommerce-message a.button.wc-forward:hover,
.woocommerce-message .button.wc-forward:hover,
.woocommerce-message a.button.wc-forward:hover {
    color: #0a0a0a !important;
    -webkit-text-fill-color: #0a0a0a !important;

    background: #f0ede7 !important;
    background-color: #f0ede7 !important;
    background-image: none !important;

    border-color: #f0ede7 !important;
}