/**
 * QI Cart V1
 */


/* =========================================================
   ROOT
   ========================================================= */

body.woocommerce-cart #main {

    background:
        #ffffff;
}


body.woocommerce-cart
.page-wrapper {

    padding-top:
        30px;
}


/* =========================================================
   CHECKOUT STEPS
   ========================================================= */

body.woocommerce-cart
.checkout-page-title {

    margin-bottom:
        30px !important;
}


body.woocommerce-cart
.checkout-page-title
.page-title-inner {

    padding:
        0 !important;
}


body.woocommerce-cart
.checkout-breadcrumbs {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        13px;

    color:
        #A4B1B6;

    font-size:
        20px !important;

    font-weight:
        650;
}


body.woocommerce-cart
.checkout-breadcrumbs
a {

    color:
        #A4B1B6 !important;

    text-decoration:
        none;
}


body.woocommerce-cart
.checkout-breadcrumbs
a.current,

body.woocommerce-cart
.checkout-breadcrumbs
.current {

    color:
        var(--qi-dark, #0D2F43) !important;
}


/* =========================================================
   MAIN CART LAYOUT
   ========================================================= */

@media (min-width: 850px) {

    body.woocommerce-cart
    .woocommerce-cart-form {

        padding-right:
            28px;
    }


    body.woocommerce-cart
    .cart-collaterals {

        padding-left:
            28px;
    }

}


/* =========================================================
   CART TABLE
   ========================================================= */

body.woocommerce-cart
.shop_table {

    border:
        0 !important;

    background:
        transparent;
}


body.woocommerce-cart
.shop_table thead {

    border-bottom:
        1px solid
        var(--qi-border, #D8E6E9);
}


body.woocommerce-cart
.shop_table thead th {

    padding:
        0 8px 13px !important;

    color:
        var(--qi-text, #173B4A);

    font-size:
        12px !important;

    font-weight:
        750;

    text-transform:
        none;
}


body.woocommerce-cart
.shop_table
.cart_item {

    border-bottom:
        1px solid
        var(--qi-border, #D8E6E9);
}


body.woocommerce-cart
.shop_table
.cart_item td {

    padding:
        18px 8px !important;

    border:
        0 !important;

    vertical-align:
        middle;
}


/* =========================================================
   PRODUCT IMAGE
   ========================================================= */

body.woocommerce-cart
.product-thumbnail img {

    width:
        68px !important;

    height:
        68px !important;

    padding:
        4px;

    border:
        1px solid
        #E5EEF0;

    border-radius:
        8px;

    background:
        #ffffff;

    object-fit:
        contain;
}


/* =========================================================
   PRODUCT NAME
   ========================================================= */

body.woocommerce-cart
.product-name a {

    color:
        var(--qi-text, #173B4A) !important;

    font-size:
        13px;

    font-weight:
        700;

    line-height:
        1.5;

    text-decoration:
        none;
}


body.woocommerce-cart
.product-name a:hover {

    color:
        var(--qi-primary, #0F9693) !important;
}


body.woocommerce-cart
.product-name
.variation {

    margin-top:
        4px;

    color:
        var(--qi-muted, #6D8189);

    font-size:
        11px;
}


/* =========================================================
   PRICE
   ========================================================= */

body.woocommerce-cart
.product-price,

body.woocommerce-cart
.product-subtotal {

    color:
        var(--qi-dark, #0D2F43);

    font-size:
        13px;

    font-weight:
        750;
}


body.woocommerce-cart
.amount {

    color:
        inherit;

    font-weight:
        inherit;
}


/* =========================================================
   REMOVE BUTTON
   ========================================================= */

body.woocommerce-cart
.product-remove a.remove {

    width:
        30px !important;

    height:
        30px !important;

    overflow:
        hidden;

    border:
        1px solid
        #D7E2E5 !important;

    border-radius:
        50%;

    color:
        transparent !important;

    font-size:
        0 !important;

    text-indent:
        -9999px;

    background-color:
        #ffffff !important;

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236D8189' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='m7 7 10 10M17 7 7 17'/%3E%3C/svg%3E") !important;

    background-position:
        center !important;

    background-repeat:
        no-repeat !important;

    background-size:
        14px 14px !important;
}


body.woocommerce-cart
.product-remove a.remove:hover {

    border-color:
        #B8CDD1 !important;

    background-color:
        var(--qi-surface, #F6FAFB) !important;
}


/* =========================================================
   QUANTITY
   ========================================================= */

body.woocommerce-cart
.quantity {

    display:
        inline-flex;

    overflow:
        hidden;

    height:
        40px;

    margin:
        0 !important;

    border:
        1px solid
        var(--qi-border, #D8E6E9);

    border-radius:
        8px;

    background:
        #ffffff;
}


body.woocommerce-cart
.quantity
.qty {

    width:
        38px !important;

    height:
        38px !important;

    margin:
        0 !important;

    border-top:
        0 !important;

    border-bottom:
        0 !important;

    border-left:
        1px solid
        #E8EFF1 !important;

    border-right:
        1px solid
        #E8EFF1 !important;

    box-shadow:
        none !important;
}


body.woocommerce-cart
.quantity
.minus,

body.woocommerce-cart
.quantity
.plus {

    width:
        28px !important;

    min-width:
        28px !important;

    height:
        38px !important;

    min-height:
        38px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    color:
        transparent !important;

    font-size:
        0 !important;

    text-indent:
        -9999px;

    background-color:
        var(--qi-surface, #F6FAFB) !important;

    background-position:
        center !important;

    background-repeat:
        no-repeat !important;

    background-size:
        13px 13px !important;

    box-shadow:
        none !important;
}


body.woocommerce-cart
.quantity
.minus {

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23173B4A' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E") !important;
}


body.woocommerce-cart
.quantity
.plus {

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23173B4A' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") !important;
}


/* =========================================================
   CART ACTIONS
   ========================================================= */

body.woocommerce-cart
.cart-actions {

    padding-top:
        18px !important;
}


body.woocommerce-cart
.cart-actions
.button {

    min-height:
        42px;

    margin:
        0 8px 0 0 !important;

    padding:
        0 17px !important;

    border-radius:
        8px !important;

    font-size:
        12px !important;

    font-weight:
        700;

    line-height:
        40px !important;

    text-transform:
        none !important;

    box-shadow:
        none !important;
}


/* Continue shopping */

body.woocommerce-cart
.continue-shopping
.button {

    min-height:
        42px;

    padding:
        0 17px !important;

    border:
        1px solid
        var(--qi-primary, #0F9693) !important;

    border-radius:
        8px !important;

    background:
        #ffffff !important;

    color:
        var(--qi-primary-hover, #0B7D7B) !important;

    font-size:
        12px !important;

    font-weight:
        700;

    line-height:
        40px !important;

    text-transform:
        none !important;

    box-shadow:
        none !important;
}


/* Update cart */

body.woocommerce-cart
button[name="update_cart"] {

    border:
        1px solid
        var(--qi-border, #D8E6E9) !important;

    background:
        var(--qi-surface, #F6FAFB) !important;

    color:
        var(--qi-text, #173B4A) !important;
}


/* =========================================================
   CART TOTALS
   ========================================================= */

body.woocommerce-cart
.cart_totals {

    padding:
        22px 23px 23px;

    border:
        1px solid
        var(--qi-border, #D8E6E9);

    border-radius:
        14px;

    background:
        #F8FBFB;
}


body.woocommerce-cart
.cart_totals h2 {

    margin:
        0 0 14px !important;

    padding:
        0 0 13px;

    border-bottom:
        1px solid
        var(--qi-border, #D8E6E9);

    color:
        var(--qi-dark, #0D2F43);

    font-size:
        17px;

    font-weight:
        800;
}


body.woocommerce-cart
.cart_totals
.shop_table th {

    color:
        var(--qi-muted, #6D8189);

    font-size:
        12px;

    font-weight:
        550;
}


body.woocommerce-cart
.cart_totals
.shop_table td {

    color:
        var(--qi-text, #173B4A);

    font-size:
        12px;

    text-align:
        right;
}


body.woocommerce-cart
.cart_totals
.order-total {

    border-top:
        1px solid
        var(--qi-border, #D8E6E9);
}


body.woocommerce-cart
.cart_totals
.order-total th,

body.woocommerce-cart
.cart_totals
.order-total td {

    padding-top:
        15px !important;

    color:
        var(--qi-dark, #0D2F43);

    font-size:
        15px !important;

    font-weight:
        800 !important;
}


body.woocommerce-cart
.woocommerce-shipping-methods {

    margin:
        0;
}


body.woocommerce-cart
.woocommerce-shipping-destination {

    color:
        var(--qi-muted, #6D8189);

    font-size:
        11px;
}


/* =========================================================
   CHECKOUT CTA
   ========================================================= */

body.woocommerce-cart
.wc-proceed-to-checkout {

    padding:
        15px 0 0 !important;
}


body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button {

    display:
        flex !important;

    align-items:
        center;

    justify-content:
        center;

    width:
        100%;

    min-height:
        48px;

    margin:
        0 !important;

    border:
        1px solid
        var(--qi-primary, #0F9693) !important;

    border-radius:
        9px !important;

    background:
        var(--qi-primary, #0F9693) !important;

    color:
        #ffffff !important;

    font-size:
        14px !important;

    font-weight:
        800 !important;

    line-height:
        1 !important;

    text-transform:
        none !important;

    box-shadow:
        none !important;
}


body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button:hover {

    border-color:
        var(--qi-primary-hover, #0B7D7B) !important;

    background:
        var(--qi-primary-hover, #0B7D7B) !important;
}


/* =========================================================
   NOTICES
   ========================================================= */

body.woocommerce-cart
.woocommerce-message {

    margin-bottom:
        22px !important;

    padding:
        13px 16px !important;

    border:
        1px solid
        #CFE7E4;

    border-radius:
        9px;

    background:
        var(--qi-soft-teal, #EAF7F6);

    color:
        var(--qi-text, #173B4A);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 849px) {

    


    /* Steps */

    body.woocommerce-cart
    .checkout-page-title {

        margin-bottom:
            18px !important;
    }


    body.woocommerce-cart
    .checkout-breadcrumbs {

        justify-content:
            flex-start;

        padding:
            0 15px;

        font-size:
            24px !important;
    }


    /*
     * Flatsome mobile already hides later steps.
     * Keep only current title visually dominant.
     */

    body.woocommerce-cart
    .checkout-breadcrumbs
    a:not(.current),

    body.woocommerce-cart
    .checkout-breadcrumbs
    .divider {

        display:
            none !important;
    }


    /* -----------------------------------------------------
       CART PRODUCT CARD
       ----------------------------------------------------- */

    body.woocommerce-cart
    .woocommerce-cart-form
    .shop_table {

        display:
            block;
    }


    body.woocommerce-cart
    .woocommerce-cart-form
    .shop_table thead {

        display:
            none;
    }


    body.woocommerce-cart
    .woocommerce-cart-form
    .shop_table tbody {

        display:
            block;
    }


    body.woocommerce-cart
    .woocommerce-cart-form
    .cart_item {

        position:
            relative;

        display:
            grid !important;

        grid-template-columns:
            30px 80px minmax(0,1fr);

        grid-template-areas:
            "remove image name"
            ".      image qty";

        gap:
            5px 10px;

        padding:
            15px 0 !important;

        border-bottom:
            1px solid
            var(--qi-border, #D8E6E9);
    }


    body.woocommerce-cart
    .cart_item
    .product-remove {

        grid-area:
            remove;

        display:
            flex !important;

        align-items:
            flex-start;

        padding:
            2px 0 !important;
    }


    body.woocommerce-cart
    .cart_item
    .product-thumbnail {

        grid-area:
            image;

        display:
            block !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .product-thumbnail img {

        width:
            76px !important;

        height:
            76px !important;
    }


    body.woocommerce-cart
    .cart_item
    .product-name {

        grid-area:
            name;

        display:
            block !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .product-name a {

        font-size:
            15px !important;

        line-height:
            1.45;
    }


    body.woocommerce-cart
    .cart_item
    .product-price,

    body.woocommerce-cart
    .cart_item
    .product-subtotal {

        display:
            none !important;
    }


    body.woocommerce-cart
    .cart_item
    .product-quantity {

        grid-area:
            qty;

        display:
            flex !important;

        align-items:
            center;

        justify-content:
            flex-start;

        padding:
            4px 0 0 !important;
    }


    /*
     * Flatsome places quantity × price beneath product name.
     * Keep it readable.
     */

    body.woocommerce-cart
    .product-name
    .show-for-small {

        display:
            block !important;

        margin-top:
            5px;

        color:
            var(--qi-muted, #6D8189);

        font-size:
            14px !important;
    }


    /* -----------------------------------------------------
       ACTIONS
       ----------------------------------------------------- */

    body.woocommerce-cart
    .cart-actions {

        display:
            grid;

        grid-template-columns:
            repeat(2, minmax(0,1fr));

        gap:
            8px;

        padding-top:
            15px !important;
    }


    body.woocommerce-cart
    .cart-actions
    .button {

        width:
            100%;

        min-height:
            44px;

        margin:
            0 !important;

        padding:
            0 10px !important;

        font-size:
            14px !important;

        line-height:
            42px !important;
    }


    body.woocommerce-cart
    .continue-shopping
    .button {

        padding-left:
            34px !important;

        background-position:
            11px center !important;
    }


    /* -----------------------------------------------------
       TOTALS
       ----------------------------------------------------- */

    body.woocommerce-cart
    .cart-collaterals {

        margin-top:
            28px;
    }


    body.woocommerce-cart
    .cart_totals {

        padding:
            18px 16px 17px;

        border-radius:
            11px;
    }


    body.woocommerce-cart
    .cart_totals h2 {

        font-size:
            20px;
    }


    body.woocommerce-cart
    .cart_totals
    .shop_table th,

    body.woocommerce-cart
    .cart_totals
    .shop_table td {

        font-size:
            15px !important;
    }


    body.woocommerce-cart
    .cart_totals
    .order-total th,

    body.woocommerce-cart
    .cart_totals
    .order-total td {

        font-size:
            17px !important;
    }


    body.woocommerce-cart
    .woocommerce-shipping-destination {

        font-size:
            13px !important;

        line-height:
            1.6;
    }


    body.woocommerce-cart
    .wc-proceed-to-checkout
    .checkout-button {

        min-height:
            50px;

        font-size:
            16px !important;
    }

}

/* === QI CART V1.1 POLISH START === */


/*
 * One SVG only.
 * Hide any remaining Flatsome icon element.
 */




/*
 * Product title should not become visually cramped.
 */

body.woocommerce-cart
.product-name {

    min-width:
        0;
}


/*
 * Shipping text.
 */

body.woocommerce-cart
.cart_totals
.woocommerce-shipping-methods {

    color:
        var(--qi-text, #173B4A);
}


body.woocommerce-cart
.cart_totals
.woocommerce-shipping-methods label {

    font-weight:
        650;
}


/*
 * Mobile spacing between product and totals.
 */

@media (max-width: 849px) {

    body.woocommerce-cart
    .woocommerce-cart-form {

        margin-bottom:
            0;
    }


    body.woocommerce-cart
    .cart-collaterals {

        padding-top:
            0;
    }


    body.woocommerce-cart
    .product-name {

        padding-right:
            3px !important;
    }


    body.woocommerce-cart
    .product-name a {

        color:
            var(--qi-text, #173B4A) !important;

        font-weight:
            750 !important;
    }

}

/* === QI CART V1.1 POLISH END === */



/* === QI CART V1.2 FINAL START === */

@media (max-width: 849px) {

    /*
     * Real DOM:
     * .ux-quantity.quantity.buttons_added
     *
     * Give it enough width for:
     * minus + qty + plus
     */

    body.woocommerce-cart
    .cart_item {

        grid-template-columns:
            24px
            60px
            minmax(0,1fr)
            88px !important;
    }


    body.woocommerce-cart
    .cart_item
    .product-quantity {

        min-width:
            88px !important;

        width:
            88px !important;

        overflow:
            visible !important;
    }


    body.woocommerce-cart
    .ux-quantity.quantity.buttons_added {

        display:
            grid !important;

        grid-template-columns:
            26px 36px 26px !important;

        width:
            88px !important;

        min-width:
            88px !important;

        max-width:
            88px !important;

        height:
            36px !important;

        overflow:
            hidden !important;

        box-sizing:
            border-box;
    }


    body.woocommerce-cart
    .ux-quantity
    .ux-quantity__button {

        width:
            26px !important;

        min-width:
            26px !important;

        max-width:
            26px !important;

        height:
            34px !important;

        min-height:
            34px !important;

        margin:
            0 !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .ux-quantity
    input.qty {

        width:
            36px !important;

        min-width:
            36px !important;

        max-width:
            36px !important;

        height:
            34px !important;

        margin:
            0 !important;

        padding:
            0 !important;

        text-align:
            center !important;

        box-sizing:
            border-box !important;
    }


    /*
     * Keep product name usable after quantity column grows.
     */

    body.woocommerce-cart
    .product-name a {

        font-size:
            13.5px !important;

        line-height:
            1.38 !important;
    }

}


/* === QI CART V1.2 FINAL END === */

/* === QI CART MOBILE LAYOUT V3 START === */

@media (max-width: 849px) {

    /* =====================================================
       ONE GLOBAL MOBILE CART WIDTH
       ===================================================== */

    body.woocommerce-cart
    .checkout-page-title,

    body.woocommerce-cart
    .cart-wrapper.row {

        width:
            calc(100% - 28px) !important;

        max-width:
            none !important;

        margin-left:
            auto !important;

        margin-right:
            auto !important;

        box-sizing:
            border-box !important;
    }


    body.woocommerce-cart
    .checkout-page-title {

        margin-bottom:
            5px !important;
    }


    body.woocommerce-cart
    .cart-wrapper.row {

        padding:
            0 !important;

        margin-top:
            0 !important;
    }


    /* =====================================================
       REMOVE FLATSOME DOUBLE COLUMN PADDING
       ===================================================== */

    body.woocommerce-cart
    .cart-wrapper
    > .woocommerce-cart-form,

    body.woocommerce-cart
    .cart-wrapper
    > .cart-collaterals {

        flex:
            0 0 100% !important;

        flex-basis:
            100% !important;

        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        margin-left:
            0 !important;

        margin-right:
            0 !important;

        padding-left:
            0 !important;

        padding-right:
            0 !important;

        box-sizing:
            border-box !important;
    }


    /* =====================================================
       CART TABLE
       ===================================================== */

    body.woocommerce-cart
    .woocommerce-cart-form
    table.shop_table,

    body.woocommerce-cart
    .woocommerce-cart-form
    table.shop_table tbody {

        display:
            block !important;

        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        margin:
            0 !important;

        padding:
            0 !important;

        box-sizing:
            border-box !important;
    }


    /* =====================================================
       PRODUCT ROW
       ===================================================== */

    body.woocommerce-cart
    .woocommerce-cart-form
    tr.cart_item {

        display:
            grid !important;

        grid-template-columns:
            24px
            60px
            minmax(0,1fr)
            88px !important;

        grid-template-areas:
            "remove image name qty" !important;

        align-items:
            center !important;

        column-gap:
            8px !important;

        row-gap:
            0 !important;

        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        min-height:
            86px !important;

        margin:
            0 !important;

        padding:
            11px 0 !important;

        box-sizing:
            border-box !important;
    }


    body.woocommerce-cart
    .woocommerce-cart-form
    tr.cart_item > td {

        width:
            auto !important;

        max-width:
            none !important;

        min-width:
            0 !important;

        margin:
            0 !important;

        box-sizing:
            border-box !important;
    }


    /* =====================================================
       REMOVE
       ===================================================== */

    body.woocommerce-cart
    .cart_item
    .product-remove {

        grid-area:
            remove !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .product-remove
    a.remove {

        width:
            24px !important;

        height:
            24px !important;
    }


    /* =====================================================
       IMAGE
       ===================================================== */

    body.woocommerce-cart
    .cart_item
    .product-thumbnail {

        grid-area:
            image !important;

        display:
            block !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .product-thumbnail img {

        display:
            block;

        width:
            58px !important;

        height:
            58px !important;

        margin:
            0 !important;

        padding:
            3px;

        object-fit:
            contain;
    }


    /* =====================================================
       NAME / MOBILE PRICE
       ===================================================== */

    body.woocommerce-cart
    .cart_item
    .product-name {

        grid-area:
            name !important;

        min-width:
            0 !important;

        overflow:
            hidden;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .product-name a {

        display:
            -webkit-box;

        overflow:
            hidden;

        margin:
            0 !important;

        font-size:
            14px !important;

        font-weight:
            750 !important;

        line-height:
            1.4 !important;

        -webkit-line-clamp:
            2;

        -webkit-box-orient:
            vertical;

        overflow-wrap:
            anywhere;
    }


    body.woocommerce-cart
    .product-name
    .show-for-small {

        display:
            block !important;

        margin:
            4px 0 0 !important;

        color:
            var(--qi-muted, #6D8189) !important;

        font-size:
            13px !important;

        line-height:
            1.35 !important;
    }


    body.woocommerce-cart
    .product-name
    .show-for-small
    .amount {

        color:
            var(--qi-dark, #0D2F43) !important;

        font-weight:
            750 !important;
    }


    /* =====================================================
       QUANTITY
       ===================================================== */

    body.woocommerce-cart
    .cart_item
    .product-quantity {

        grid-area:
            qty !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            flex-end !important;

        width:
            88px !important;

        max-width:
            88px !important;

        min-width:
            0 !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .ux-quantity.quantity.buttons_added {

        display:
            grid !important;

        grid-template-columns:
            26px 36px 26px !important;

        width:
            88px !important;

        min-width:
            88px !important;

        max-width:
            88px !important;

        height:
            36px !important;

        overflow:
            hidden !important;
    }


    body.woocommerce-cart
    .ux-quantity
    .ux-quantity__button {

        width:
            26px !important;

        min-width:
            26px !important;

        max-width:
            26px !important;

        height:
            34px !important;

        min-height:
            34px !important;
    }


    body.woocommerce-cart
    .ux-quantity
    input.qty {

        width:
            36px !important;

        min-width:
            36px !important;

        max-width:
            36px !important;

        height:
            34px !important;

        padding:
            0 !important;

        text-align:
            center !important;

        font-size:
            16px !important;
    }


    body.woocommerce-cart
    .cart_item
    .product-price,

    body.woocommerce-cart
    .cart_item
    .product-subtotal {

        display:
            none !important;
    }


    /* =====================================================
       CART ACTIONS
       ===================================================== */

    body.woocommerce-cart
    .cart-actions {

        width:
            100% !important;

        margin:
            0 !important;

        padding:
            16px 0 0 !important;

        box-sizing:
            border-box !important;
    }


    /* =====================================================
       TOTALS
       ===================================================== */

    body.woocommerce-cart
    .cart-collaterals {

        margin-top:
            28px !important;
    }


    body.woocommerce-cart
    .cart_totals {

        width:
            100% !important;

        max-width:
            100% !important;

        margin:
            0 !important;

        box-sizing:
            border-box !important;
    }

}

/* === QI CART MOBILE LAYOUT V3 END === */

/* === QI CART AUTO UPDATE UI START === */


/* =========================================================
   REMOVE MANUAL UPDATE CART
   ========================================================= */

body.woocommerce-cart
button[name="update_cart"],

body.woocommerce-cart
input[name="update_cart"] {

    display:
        none !important;
}


/*
 * Only "continue shopping" remains in actions.
 */

body.woocommerce-cart
.cart-actions {

    display:
        flex !important;

    align-items:
        center;

    gap:
        8px;
}


body.woocommerce-cart
.continue-shopping {

    width:
        auto !important;
}


body.woocommerce-cart
.continue-shopping
.button {

    width:
        auto !important;
}


/* =========================================================
   AJAX UPDATE FEEDBACK
   ========================================================= */

body.woocommerce-cart
.cart-wrapper {

    transition:
        opacity .15s ease;
}


body.woocommerce-cart.qi-cart-auto-updating
.cart-wrapper {

    opacity:
        .58;
}


/*
 * Prevent repeated clicks during the short AJAX update.
 */

body.woocommerce-cart.qi-cart-auto-updating
.woocommerce-cart-form
.ux-quantity {

    pointer-events:
        none;
}


/*
 * Small loading indicator beside the cart heading.
 */

body.woocommerce-cart.qi-cart-auto-updating
.checkout-page-title::after {

    content:
        "";

    display:
        inline-block;

    width:
        15px;

    height:
        15px;

    margin-left:
        9px;

    vertical-align:
        -2px;

    border:
        2px solid
        rgba(15,150,147,.22);

    border-top-color:
        var(--qi-primary, #0F9693);

    border-radius:
        50%;

    animation:
        qi-cart-loading-spin
        .65s linear infinite;
}


@keyframes qi-cart-loading-spin {

    to {
        transform:
            rotate(360deg);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 849px) {

    body.woocommerce-cart
    .cart-actions {

        display:
            flex !important;

        justify-content:
            flex-start !important;

        width:
            100% !important;
    }


    body.woocommerce-cart
    .continue-shopping {

        width:
            auto !important;
    }


    body.woocommerce-cart
    .continue-shopping
    .button {

        width:
            auto !important;

        min-width:
            0 !important;
    }

}

/* === QI CART AUTO UPDATE UI END === */

/* === QI CART MOBILE TITLE GAP FINAL START === */

@media (max-width: 849px) {

    body.woocommerce-cart
    .page-wrapper {

        padding-top:
            0 !important;
    }


    body.woocommerce-cart
    .checkout-page-title {

        height:
            auto !important;

        min-height:
            0 !important;

        margin:
            8px auto 8px !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .checkout-page-title
    .page-title-inner,

    body.woocommerce-cart
    .checkout-breadcrumbs {

        height:
            auto !important;

        min-height:
            0 !important;

        margin:
            0 !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .cart-wrapper.row {

        margin-top:
            0 !important;

        padding-top:
            0 !important;
    }

}

/* === QI CART MOBILE TITLE GAP FINAL END === */

/* === QI CART CONTINUE SHOPPING V1.3 START === */


/* =========================================================
   DESKTOP
   Keep as a light secondary action.
   ========================================================= */

body.woocommerce-cart
.continue-shopping {

    margin:
        0 !important;

    padding:
        0 !important;
}


body.woocommerce-cart
.continue-shopping
.button-continue-shopping {

    display:
        inline-flex !important;

    align-items:
        center;

    justify-content:
        center;

    gap:
        7px;

    width:
        auto !important;

    min-height:
        40px;

    margin:
        0 !important;

    padding:
        0 15px !important;

    border:
        1px solid
        var(--qi-border, #D8E6E9) !important;

    border-radius:
        8px !important;

    background:
        #ffffff !important;

    color:
        var(--qi-text, #173B4A) !important;

    font-size:
        12px !important;

    font-weight:
        650 !important;

    line-height:
        1 !important;

    text-transform:
        none !important;

    box-shadow:
        none !important;
}


body.woocommerce-cart
.continue-shopping
.button-continue-shopping::before {

    content:
        "";

    display:
        block;

    flex:
        0 0 15px;

    width:
        15px;

    height:
        15px;

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B7D7B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m14 7-5 5 5 5'/%3E%3C/svg%3E");

    background-position:
        center;

    background-repeat:
        no-repeat;

    background-size:
        contain;
}


body.woocommerce-cart
.continue-shopping
.button-continue-shopping::after {

    content:
        none !important;

    display:
        none !important;
}


body.woocommerce-cart
.continue-shopping
.button-continue-shopping:hover {

    border-color:
        var(--qi-primary, #0F9693) !important;

    background:
        var(--qi-soft-teal, #EAF7F6) !important;

    color:
        var(--qi-primary-hover, #0B7D7B) !important;
}


/* =========================================================
   MOBILE
   Make it a text-style secondary navigation link.
   ========================================================= */

@media (max-width: 849px) {

    body.woocommerce-cart
    .cart-actions {

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            flex-start !important;

        width:
            100% !important;

        min-height:
            0 !important;

        margin:
            0 !important;

        padding:
            14px 0 0 !important;
    }


    body.woocommerce-cart
    .continue-shopping {

        width:
            auto !important;

        margin:
            0 !important;

        padding:
            0 !important;
    }


    body.woocommerce-cart
    .continue-shopping
    .button-continue-shopping {

        display:
            inline-flex !important;

        align-items:
            center !important;

        justify-content:
            flex-start !important;

        gap:
            5px;

        width:
            auto !important;

        min-width:
            0 !important;

        min-height:
            32px !important;

        margin:
            0 !important;

        padding:
            0 2px !important;

        border:
            0 !important;

        border-radius:
            0 !important;

        background:
            transparent !important;

        color:
            var(--qi-primary-hover, #0B7D7B) !important;

        font-size:
            13px !important;

        font-weight:
            700 !important;

        line-height:
            1.4 !important;

        box-shadow:
            none !important;
    }


    body.woocommerce-cart
    .continue-shopping
    .button-continue-shopping::before {

        flex-basis:
            14px;

        width:
            14px;

        height:
            14px;
    }


    body.woocommerce-cart
    .continue-shopping
    .button-continue-shopping:hover,

    body.woocommerce-cart
    .continue-shopping
    .button-continue-shopping:focus {

        background:
            transparent !important;

        color:
            var(--qi-primary, #0F9693) !important;
    }

}

/* === QI CART CONTINUE SHOPPING V1.3 END === */
