/**
 * CVK BUILD 06.20 — MOBILE CART UX FINAL
 * Cart page only. Product Card baseline untouched.
 */
@media screen and (max-width: 767px) {
    body.woocommerce-cart .woocommerce {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin: 0 auto !important;
    }

    body.woocommerce-cart table.shop_table,
    body.woocommerce-cart .cart_totals {
        box-sizing: border-box !important;
    }

    body.woocommerce-cart table.shop_table_responsive tr.cart_item {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        gap: 0 14px !important;
        margin: 0 0 12px !important;
        padding: 14px !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 16px !important;
        background: #fff !important;
        overflow: hidden !important;
    }

    body.woocommerce-cart table.shop_table_responsive tr.cart_item td {
        box-sizing: border-box !important;
        min-width: 0 !important;
        padding: 10px 0 !important;
        border-top: 1px solid #ededed !important;
        text-align: right !important;
    }

    body.woocommerce-cart table.shop_table_responsive tr.cart_item td::before {
        font-weight: 700 !important;
        text-align: left !important;
        padding-right: 10px !important;
    }

    body.woocommerce-cart td.product-remove {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        padding: 0 0 8px !important;
        border: 0 !important;
        text-align: right !important;
    }

    body.woocommerce-cart td.product-remove::before {
        display: none !important;
    }

    body.woocommerce-cart td.product-remove a.remove {
        display: inline-grid !important;
        place-items: center !important;
        width: 34px !important;
        height: 34px !important;
        margin: 0 !important;
        border-radius: 50% !important;
        font-size: 26px !important;
        line-height: 1 !important;
    }

    body.woocommerce-cart td.product-thumbnail {
        grid-column: 1 !important;
        grid-row: 2 / span 4 !important;
        align-self: start !important;
        padding: 10px 0 !important;
        border: 0 !important;
        text-align: left !important;
    }

    body.woocommerce-cart td.product-thumbnail::before {
        display: none !important;
    }

    body.woocommerce-cart td.product-thumbnail img {
        display: block !important;
        width: 88px !important;
        max-width: 88px !important;
        height: 88px !important;
        object-fit: contain !important;
        margin: 0 !important;
    }

    body.woocommerce-cart td.product-name,
    body.woocommerce-cart td.product-price,
    body.woocommerce-cart td.product-quantity,
    body.woocommerce-cart td.product-subtotal {
        grid-column: 2 !important;
    }

    body.woocommerce-cart td.product-name {
        border-top: 0 !important;
        padding-top: 8px !important;
    }

    body.woocommerce-cart td.product-name a {
        display: inline !important;
        overflow-wrap: anywhere !important;
    }

    body.woocommerce-cart td.product-quantity .quantity {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        width: auto !important;
        margin: 0 !important;
    }

    body.woocommerce-cart td.product-quantity .quantity .qty {
        width: 68px !important;
        min-width: 68px !important;
        height: 44px !important;
    }

    body.woocommerce-cart td.product-quantity .quantity button,
    body.woocommerce-cart td.product-quantity .quantity .plus,
    body.woocommerce-cart td.product-quantity .quantity .minus {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
    }

    body.woocommerce-cart table.shop_table_responsive tr:not(.cart_item) td.actions {
        display: block !important;
        padding: 14px !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 16px !important;
        background: #fff !important;
    }

    body.woocommerce-cart td.actions .coupon {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    body.woocommerce-cart td.actions .coupon input,
    body.woocommerce-cart td.actions .coupon button,
    body.woocommerce-cart td.actions > button[name="update_cart"] {
        width: 100% !important;
        min-height: 48px !important;
        margin: 0 0 10px !important;
    }

    body.woocommerce-cart .cart-collaterals,
    body.woocommerce-cart .cart_totals {
        width: 100% !important;
        float: none !important;
    }

    body.woocommerce-cart .cart_totals {
        margin: 12px 0 96px !important;
        padding: 16px !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 16px !important;
        background: #fff !important;
    }

    body.woocommerce-cart .cart_totals h2 {
        margin: 0 0 14px !important;
        font-size: 24px !important;
    }

    body.woocommerce-cart .cart_totals table {
        margin: 0 0 14px !important;
    }

    body.woocommerce-cart .cart_totals th,
    body.woocommerce-cart .cart_totals td {
        padding: 12px 0 !important;
    }

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

    body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
        width: 100% !important;
        min-height: 56px !important;
        margin: 0 !important;
        padding: 15px 18px !important;
        font-size: 19px !important;
        line-height: 1.35 !important;
        white-space: normal !important;
    }
}
