/* =========================================================
   CART PAGE
========================================================= */

.cart-page-header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 25px;

}

.cart-page-header h1 {

    font-size: 24px;

    font-weight: 600;

    margin: 0;

}

.cart-page-header p {

    color: #888;

    font-size: 11px;

    margin: 5px 0 0;

}

.continue-shopping {

    color: #ff3d81;

    font-size: 11px;

    font-weight: 600;

}


/* =========================================================
   CART CARD
========================================================= */

.cart-card {

    background: #fff;

    border: 1px solid #eee;

    border-radius: 12px;

    overflow: hidden;

}

.cart-card-header {

    padding: 16px 18px;

    background: #fafafa;

    border-bottom: 1px solid #eee;

    display: flex;

    justify-content: space-between;

    font-size: 11px;

}

.cart-card-header span {

    color: #888;

}


/* =========================================================
   CART ITEM
========================================================= */

.cart-item {

    display: flex;

    gap: 18px;

    padding: 20px;

    border-bottom: 1px solid #eee;

}

.cart-item:last-child {

    border-bottom: none;

}

.cart-item-image {

    width: 110px;

    height: 130px;

    flex-shrink: 0;

    background: #f8f8f8;

    border-radius: 8px;

    overflow: hidden;

    display: flex;

    align-items: center;

    justify-content: center;

}

.cart-item-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

}

.cart-item-image i {

    font-size: 30px;

    color: #aaa;

}


/* =========================================================
   DETAILS
========================================================= */

.cart-item-details {

    flex: 1;

}

.cart-product-name {

    display: block;

    color: #222;

    font-size: 14px;

    font-weight: 600;

    margin-bottom: 8px;

}

.cart-product-name:hover {

    color: #ff3d81;

}

.cart-variant {

    color: #888;

    font-size: 10px;

    margin-bottom: 10px;

}

.cart-variant strong {

    color: #555;

}

.cart-variant span {

    margin: 0 6px;

}

.cart-item-price {

    font-size: 12px;

    font-weight: 600;

    margin-bottom: 15px;

}


/* =========================================================
   ACTIONS
========================================================= */

.cart-item-actions {

    display: flex;

    align-items: center;

    gap: 18px;

}

.cart-quantity-form {

    display: flex;

    align-items: center;

    height: 32px;

    border: 1px solid #ddd;

    border-radius: 6px;

    overflow: hidden;

}

.cart-quantity-form button {

    width: 32px;

    height: 100%;

    border: none;

    background: #f8f8f8;

    cursor: pointer;

}

.cart-quantity-form button:hover {

    color: #ff3d81;

    background: #fff1f6;

}

.cart-quantity-form span {

    width: 35px;

    text-align: center;

    font-size: 11px;

}

.remove-cart-item {

    color: #dc2626;

    font-size: 10px;

}

.remove-cart-item:hover {

    color: #b91c1c;

}

.cart-item-total {

    font-size: 14px;

    font-weight: 700;

    white-space: nowrap;

}


/* =========================================================
   SUMMARY
========================================================= */

.cart-summary {

    background: #fff;

    border: 1px solid #eee;

    border-radius: 12px;

    padding: 20px;

    position: sticky;

    top: 20px;

}

.cart-summary h3 {

    font-size: 15px;

    font-weight: 600;

    margin-bottom: 20px;

}

.summary-row {

    display: flex;

    justify-content: space-between;

    font-size: 11px;

    color: #555;

    margin-bottom: 14px;

}

.summary-total {

    display: flex;

    justify-content: space-between;

    align-items: center;

    font-size: 13px;

    margin-bottom: 20px;

}

.summary-total strong {

    font-size: 18px;

}

.checkout-button {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    width: 100%;

    height: 46px;

    border-radius: 7px;

    background: #ff3d81;

    color: #fff;

    font-size: 11px;

    font-weight: 600;

}

.checkout-button:hover {

    background: #e91e68;

    color: #fff;

}

.secure-checkout {

    text-align: center;

    color: #888;

    font-size: 9px;

    margin-top: 15px;

}

.secure-checkout i {

    color: #198754;

    margin-right: 4px;

}


/* =========================================================
   EMPTY CART
========================================================= */

.empty-cart {

    background: #fff;

    border: 1px solid #eee;

    border-radius: 12px;

    padding: 70px 20px;

    text-align: center;

}

.empty-cart-icon {

    width: 80px;

    height: 80px;

    border-radius: 50%;

    background: #fff1f6;

    color: #ff3d81;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0 auto 20px;

    font-size: 35px;

}

.empty-cart h3 {

    font-size: 18px;

}

.empty-cart p {

    color: #888;

    font-size: 11px;

    margin-bottom: 20px;

}

.btn-start-shopping {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 11px 20px;

    background: #ff3d81;

    color: #fff;

    border-radius: 7px;

    font-size: 11px;

    font-weight: 600;

}

.btn-start-shopping:hover {

    color: #fff;

    background: #e91e68;

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 576px) {

    .cart-page-header {

        flex-direction: column;

        align-items: flex-start;

        gap: 12px;

    }

    .cart-item {

        gap: 12px;

        padding: 15px;

    }

    .cart-item-image {

        width: 80px;

        height: 100px;

    }

    .cart-product-name {

        font-size: 12px;

    }

    .cart-item-total {

        display: none;

    }

    .cart-item-actions {

        flex-wrap: wrap;

        gap: 10px;

    }

}