.elementor-49 .elementor-element.elementor-element-1f541d2f{--display:flex;}/* Start custom CSS for woocommerce-cart, class: .elementor-element-31cdcaa *//* =====================================================
   CASPIAN SARMA - WOOCOMMERCE CART
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa.caspian-cart {
    --navy: #123047;
    --teal: #0EA5A8;
    --teal-dark: #087F82;
    --text: #263E47;
    --muted: #7A8C92;
    --soft: #F6FAFA;
    --border: #E3ECEE;
    --white: #FFFFFF;

    font-family: inherit;
}


/* =====================================================
   MAIN CART CONTAINER
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .e-cart {

    background: transparent !important;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .woocommerce-cart-form {

    background: var(--white);

    border: 1px solid var(--border);

    border-radius: 28px;

    overflow: hidden;

    box-shadow:
        0 18px 50px rgba(18,48,71,.06);

}


/* =====================================================
   TABLE / CART ITEMS
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa table.shop_table {

    border: 0 !important;

    border-collapse: collapse !important;

    margin: 0 !important;

    background: transparent !important;

}


/* حذف خطوط پیش فرض */

.elementor-49 .elementor-element.elementor-element-31cdcaa table.shop_table td,
.elementor-49 .elementor-element.elementor-element-31cdcaa table.shop_table th {

    border: 0 !important;

    border-bottom: 1px solid #EDF2F3 !important;

}


/* =====================================================
   PRODUCT ROW
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_item {

    transition:
        background .25s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_item:hover {

    background:
        #FBFEFE;
}


/* =====================================================
   PRODUCT IMAGE
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .product-thumbnail {

    width: 115px !important;

    padding: 22px !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .product-thumbnail img {

    width: 90px !important;

    height: 90px !important;

    object-fit: contain;

    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            #FBFDFD,
            #EFF8F8
        );

    padding: 8px;

    border: 1px solid var(--border);

    transition:
        transform .35s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_item:hover
.product-thumbnail img {

    transform:
        scale(1.04)
        translateY(-3px);
}


/* =====================================================
   PRODUCT NAME
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .product-name {

    padding: 20px !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .product-name a {

    color: var(--navy) !important;

    font-size: 15px !important;

    font-weight: 800 !important;

    line-height: 1.8 !important;

    text-decoration: none !important;

    transition:
        color .25s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .product-name a:hover {

    color: var(--teal) !important;
}


/* =====================================================
   PRODUCT PRICE
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .product-price {

    color: var(--navy) !important;

    font-size: 14px !important;

    font-weight: 800 !important;

}


/* =====================================================
   QUANTITY
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .quantity {

    display: inline-flex !important;

    align-items: center;

    border: 1px solid var(--border);

    border-radius: 13px;

    background: var(--soft);

    padding: 5px;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .quantity input.qty {

    width: 38px !important;

    height: 32px !important;

    border: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    color: var(--navy) !important;

    font-weight: 800 !important;

    box-shadow: none !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .quantity input.qty:focus {

    outline: none !important;

}


/* =====================================================
   REMOVE BUTTON
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa a.remove {

    width: 32px !important;

    height: 32px !important;

    line-height: 30px !important;

    border-radius: 10px !important;

    color: #A0AFB3 !important;

    font-size: 17px !important;

    text-decoration: none !important;

    transition:
        background .25s ease,
        color .25s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa a.remove:hover {

    background: #FFF0F0 !important;

    color: #D56F6F !important;

}


/* =====================================================
   SUBTOTAL
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .product-subtotal {

    color: var(--navy) !important;

    font-size: 15px !important;

    font-weight: 900 !important;

    padding-left: 25px !important;

}


/* =====================================================
   CART ACTIONS
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .actions {

    padding: 20px 22px !important;

    background: #fff !important;

    border: 0 !important;

}


/* Coupon input */

.elementor-49 .elementor-element.elementor-element-31cdcaa .coupon {

    display: flex;

    align-items: center;

    gap: 8px;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa #coupon_code {

    height: 45px !important;

    border: 1px solid var(--border) !important;

    border-radius: 12px !important;

    padding: 0 14px !important;

    background: #fff !important;

    color: var(--navy) !important;

    font-family: inherit;

    box-shadow: none !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa #coupon_code:focus {

    border-color:
        rgba(14,165,168,.55) !important;

    outline: none !important;

}


/* Coupon button */

.elementor-49 .elementor-element.elementor-element-31cdcaa .coupon button {

    height: 45px !important;

    border: 0 !important;

    border-radius: 12px !important;

    padding: 0 18px !important;

    background: var(--navy) !important;

    color: #fff !important;

    font-family: inherit;

    font-size: 11px !important;

    font-weight: 700 !important;

    transition:
        background .25s ease,
        transform .25s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .coupon button:hover {

    background: var(--teal) !important;

    transform: translateY(-1px);

}


/* Update cart */

.elementor-49 .elementor-element.elementor-element-31cdcaa .button[name="update_cart"] {

    height: 45px !important;

    padding: 0 18px !important;

    border: 1px solid var(--border) !important;

    border-radius: 12px !important;

    background: #fff !important;

    color: var(--navy) !important;

    font-family: inherit;

    font-size: 11px !important;

    font-weight: 700 !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .button[name="update_cart"]:hover {

    border-color: var(--teal) !important;

    color: var(--teal) !important;

}


/* =====================================================
   CART TOTALS
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals {

    margin-top: 25px !important;

    padding: 25px !important;

    background: var(--white);

    border: 1px solid var(--border);

    border-radius: 28px;

    box-shadow:
        0 18px 50px rgba(18,48,71,.07);
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals h2 {

    margin: 0 0 22px !important;

    color: var(--navy) !important;

    font-size: 24px !important;

    font-weight: 900 !important;
}


/* Total rows */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals table {

    border: 0 !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals th,
.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals td {

    border: 0 !important;

    border-bottom:
        1px solid #EDF2F3 !important;

    padding: 15px 0 !important;

    color: var(--muted) !important;

    font-size: 10px !important;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals .amount {

    color: var(--navy) !important;

    font-size: 12px !important;

    font-weight: 900 !important;
}


/* Grand total */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals .order-total th,
.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals .order-total td {

    border-bottom: 0 !important;

    padding-top: 22px !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals .order-total .amount {

    font-size: 24px !important;

    color: var(--navy) !important;
}


/* =====================================================
   CHECKOUT BUTTON
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .wc-proceed-to-checkout {

    padding: 0 !important;

    margin-top: 20px !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .checkout-button {

    position: relative;

    width: 100% !important;

    min-height: 55px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    padding: 0 18px !important;

    border: 0 !important;

    border-radius: 16px !important;

    background: var(--navy) !important;

    color: #fff !important;

    font-family: inherit !important;

    font-size: 12px !important;

    font-weight: 800 !important;

    text-decoration: none !important;

    transition:
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .checkout-button::after {

    content: "←";

    font-size: 18px;

    transition:
        transform .3s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .checkout-button:hover {

    background: var(--teal) !important;

    transform: translateY(-2px);

    box-shadow:
        0 12px 28px
        rgba(14,165,168,.22);
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .checkout-button:hover::after {

    transform:
        translateX(-4px);
}


/* =====================================================
   SHIPPING
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .shipping-calculator-button {

    color: var(--teal) !important;

    font-size: 10px !important;

    text-decoration: none !important;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .elementor-49 .elementor-element.elementor-element-31cdcaa .woocommerce-cart-form {

        border-radius: 22px;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa table.shop_table thead {

        display: none !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .cart_item {

        display: grid !important;

        grid-template-columns:
            85px minmax(0,1fr);

        gap: 12px;

        padding: 18px !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-thumbnail {

        width: 85px !important;

        padding: 0 !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-thumbnail img {

        width: 85px !important;

        height: 85px !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-name {

        padding: 0 !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-price,
    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-subtotal {

        padding: 5px 0 !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-quantity {

        grid-column:
            1 / -1;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .product-remove {

        grid-column:
            1 / -1;

        text-align: left;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .actions {

        display: flex !important;

        flex-direction: column;

        gap: 12px;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .coupon {

        width: 100%;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa #coupon_code {

        flex: 1;

        width: 100% !important;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals {

        padding: 20px !important;

        border-radius: 22px;

    }


    .elementor-49 .elementor-element.elementor-element-31cdcaa .cart_totals .order-total .amount {

        font-size: 21px !important;

    }

}




/* =====================================================
   EMPTY CART - CASPIAN SARMA
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart-empty.woocommerce-info,
.elementor-49 .elementor-element.elementor-element-31cdcaa .woocommerce-info.cart-empty {

    position: relative;

    width: 100%;

    box-sizing: border-box;

    margin: 0 !important;

    padding: 85px 30px 70px !important;

    background: #FFFFFF !important;

    border: 1px solid #E3ECEE !important;

    border-radius: 30px !important;

    color: #123047 !important;

    text-align: center !important;

    font-family: inherit !important;

    font-size: 0 !important;

    box-shadow:
        0 18px 50px rgba(18,48,71,.06);

    overflow: hidden;
}


/* حلقه تزئینی */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart-empty.woocommerce-info::before {

    content: "🛒";

    display: flex;

    align-items: center;

    justify-content: center;

    width: 88px;

    height: 88px;

    margin: 0 auto 25px;

    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            #EFFAFA,
            #E6F6F5
        );

    border: 1px solid #DDF1F0;

    font-size: 34px;

    line-height: 1;

    box-shadow:
        0 15px 30px rgba(14,165,168,.08);
}


/* متن اصلی سبد خالی */

.elementor-49 .elementor-element.elementor-element-31cdcaa .cart-empty.woocommerce-info::after {

    content:
        "سبد خرید شما خالی است"
        "\A"
        "هنوز محصولی به سبد خرید اضافه نکرده‌اید.";

    white-space: pre-line;

    display: block;

    color: #123047;

    font-family: inherit;

    font-size: 18px;

    font-weight: 800;

    line-height: 2;

}


/* فاصله و ظاهر متن دوم */





/* =====================================================
   EMPTY CART BUTTON
===================================================== */

.elementor-49 .elementor-element.elementor-element-31cdcaa .return-to-shop {

    margin: 30px 0 0 !important;

    text-align: center !important;

}


.elementor-49 .elementor-element.elementor-element-31cdcaa .return-to-shop a {

    display: inline-flex !important;

    align-items: center;

    justify-content: center;

    gap: 10px;

    min-width: 170px;

    height: 52px;

    padding: 0 22px;

    background: #123047 !important;

    color: #FFFFFF !important;

    border: 0 !important;

    border-radius: 15px !important;

    font-family: inherit !important;

    font-size: 11px !important;

    font-weight: 800 !important;

    text-decoration: none !important;

    transition:
        background .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .return-to-shop a::after {

    content: "←";

    font-size: 17px;

    transition:
        transform .3s ease;
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .return-to-shop a:hover {

    background: #0EA5A8 !important;

    transform: translateY(-2px);

    box-shadow:
        0 12px 28px
        rgba(14,165,168,.20);
}


.elementor-49 .elementor-element.elementor-element-31cdcaa .return-to-shop a:hover::after {

    transform:
        translateX(-4px);
}/* End custom CSS */