body { 
    background:#f5f5f5; 
    font-family: 'Poppins', sans-serif;
    font-size: 14px; 
    padding-top: 120px;
    padding-bottom: 60px;
}

html, body {
    height: 100%;
}

.page-wrapper {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.content-area {
    flex: 1;
    padding-bottom: 90px; /* ukuran footer */
}

.search-box { width:55%; }
.search-input { border-radius:0; }

.cart-header-title {
    font-size:20px;
    font-weight:600;
    margin-top:20px;
    margin-bottom:10px;
}

.store-row, .product-row, .voucher-row, .shipping-row {
    background:white;
    padding:15px;
    border-bottom:1px solid #efefef;
}

.product-img {
    width:80px;
    height:80px;
    object-fit:cover;
    border:1px solid #ddd;
}

.qty-box { width:40px; text-align:center; }

.footer-checkout {
    background:white;
    border-top:1px solid #ddd;
    padding:15px;
    position:sticky;
    bottom:0;
}

.btn-delete { color:#d9534f; cursor:pointer; }

/* ============================
   RESPONSIVE MOBILE VIEW
   (Mirip Shopee)
============================= */
@media (max-width: 576px) {

    .page-wrapper {
        margin-top: -80px;
    }

    .cart-header-title {
        font-size:18px;
        margin-top:15px;
    }

    .store-row {
        font-size:14px;
        padding:12px;
    }

    .product-img {
        width:65px;
        height:65px;
    }

    .product-row {
        padding:12px;
    }

    .product-row .fw-bold {
        font-size:14px;
    }

    .product-row .small {
        font-size:12px;
    }

    .qty-box {
        width:32px;
        font-size:12px;
    }

    .btn-outline-secondary.btn-sm {
        padding: 2px 6px;
        font-size: 12px;
    }

    .footer-checkout {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .footer-checkout button {
        width: 100%;
    }
}