/* ============================================
   RESPONSIVE CSS FOR BIGBAZARCHIC
   ============================================ */

/* Base responsive settings */
* {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
}

img {
    max-width: 100%;
    height: auto;
}

/* ============================================
   DESKTOP (min-width: 1100px) - Single line header
   ============================================ */
@media screen and (min-width: 1100px) {
    .searchBoxWholeBlock {
        display: flex !important;
        align-items: center !important;
    }
    
    .searchBoxWholeBlock .headerDROPDOWNDiv {
        display: inline-flex !important;
        align-items: center !important;
        flex-shrink: 0 !important;
        max-width: 180px !important;
    }
    
    .searchBoxWholeBlock .headerDROPDOWNDiv select {
        max-width: 150px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    
    .searchBoxWholeBlock .headerSearchDiv {
        display: inline-flex !important;
        align-items: center !important;
        flex: 1 !important;
        min-width: 200px !important;
    }
}

/* ============================================
   LARGE TABLETS & SMALL DESKTOPS (max-width: 1200px)
   ============================================ */
@media screen and (max-width: 1200px) {
    .container {
        max-width: 100%;
        padding: 0 15px;
    }
    
    .headerrow2 {
        width: 80%;
        margin-left: 10%;
    }
    
    .eachGroupItem ul li {
        width: 23%;
    }
    
    .eachItemBlock {
        width: 23% !important;
    }
}

/* ============================================
   TABLETS (max-width: 992px)
   ============================================ */
@media screen and (max-width: 992px) {
    /* General Font Scaling */
    body {
        font-size: 14px;
    }
    
    h1 { font-size: 24px !important; }
    h2 { font-size: 20px !important; }
    h3 { font-size: 18px !important; }
    h4 { font-size: 16px !important; }
    h5 { font-size: 14px !important; }
    h6 { font-size: 13px !important; }
    
    /* Header Menu - Tablet */
    .headerMenu {
        padding: 10px 15px !important;
    }
    
    .headerMenu > div {
        width: 100% !important;
    }
    
    /* Tablet: searchBoxWholeBlock is visible by default, styled normally */
    .searchBoxWholeBlock {
        width: 45% !important;
        float: left !important;
    }
    
    .headerDROPDOWNDiv .countryInHeader,
    .headerDROPDOWNDiv .groupInHeader,
    .headerDROPDOWNDiv .form-control {
        font-size: 12px !important;
        padding: 5px 8px !important;
        height: 32px !important;
        background: #fff !important;
        border-radius: 4px !important;
        border: 1px solid #ddd !important;
    }
    
    .headerSearchDiv input {
        font-size: 12px !important;
        height: 32px !important;
    }
    
    /* High resolution elements - adjust for tablet */
    .highResolution {
        display: block !important;
    }
    
    .logoHighRes {
        display: flex !important;
        align-items: center !important;
    }
    
    .logoHighRes p {
        font-size: 16px !important;
    }
    
    /* Login block */
    .loginBlock {
        width: auto !important;
        min-width: 100px !important;
    }
    
    .loginBlock .topMenuLink span {
        font-size: 11px !important;
    }
    
    /* Header */
    .headerMainDiv {
        height: auto;
        position: relative;
    }
    
    .headerrow1 {
        padding: 10px 2%;
    }
    
    .headercol1 {
        width: 20%;
    }
    
    .headercol2 {
        width: 50%;
    }
    
    .headercol3 {
        width: 30%;
    }
    
    .headercol3 ul li {
        width: 45%;
        margin: 0 2%;
        font-size: 13px;
    }
    
    .headerrow2 {
        width: 96%;
        margin-left: 2%;
    }
    
    .headerrow2 ul li {
        width: 16%;
        font-size: 12px;
    }
    
    /* Product Grid */
    .eachGroupItem ul li {
        width: 31%;
        margin: 1%;
    }
    
    .eachItemBlock {
        width: 31% !important;
        margin: 1% !important;
    }
    
    /* Item Detail Page - Tablet */
    .eachItemDetailsHeading {
        font-size: 18px !important;
    }
    
    .eachItemcostblock {
        font-size: 20px !important;
    }
    
    .eachItemoffercuttingblock {
        font-size: 14px !important;
    }
    
    .eachItemofferblock {
        font-size: 13px !important;
    }
    
    .btnAddToCart, .btnBuyNow {
        font-size: 13px !important;
        padding: 10px 15px !important;
    }
    
    .itemDescriptionDiv {
        font-size: 13px !important;
    }
    
    /* Cart Page */
    .cartMainPageBlock .col-lg-8,
    .cartMainPageBlock .col-lg-4 {
        width: 100%;
        padding: 0 15px;
    }
    
    .cartSummaryBlock {
        margin-top: 20px;
    }
    
    /* Overlay Menu */
    .overlayMenu {
        width: 90%;
        margin: 80px 5% 50px 5%;
    }
}

/* ============================================
   SMALL TABLETS & LARGE PHONES (max-width: 768px)
   ============================================ */
@media screen and (max-width: 768px) {
    /* Header */
    .headerMainDiv {
        height: auto;
        padding: 10px 0;
    }
    
    .headerrow1 {
        flex-wrap: wrap;
    }
    
    .headercol1 {
        width: 30%;
    }
    
    .headercol2 {
        width: 70%;
        margin-bottom: 10px;
    }
    
    .headercol3 {
        width: 100%;
        clear: both;
    }
    
    .headercol3 ul li {
        width: 30%;
        text-align: center;
    }
    
    .headerSearch {
        width: 95%;
        font-size: 14px;
    }
    
    .headerrow2 {
        display: none;
    }
    
    /* Top Header */
    .headerMenu {
        padding: 10px !important;
    }
    
    .headerMenu > div {
        flex-wrap: wrap !important;
    }
    
    /* Logo */
    .navbar-brand img {
        width: 35px !important;
        height: 35px !important;
    }
    
    /* Search */
    .searchContainer {
        width: 100% !important;
        margin: 10px 0 !important;
        order: 3;
    }
    
    .searchContainer input {
        width: 100% !important;
    }
    
    /* Navigation icons */
    .rightMenuIcons {
        width: auto !important;
    }
    
    /* Product Grid */
    .eachGroupItem ul li {
        width: 48%;
        margin: 1%;
    }
    
    .eachItemBlock {
        width: 48% !important;
        margin: 1% !important;
    }
    
    .itemMainImage img {
        max-height: 200px;
    }
    
    .eachItemBlockDetails {
        padding: 8px 5px !important;
    }
    
    /* Cart Page */
    .cartItem .row {
        flex-direction: column;
    }
    
    .cartItem .col-md-5,
    .cartItem .col-md-7 {
        width: 100%;
        max-width: 100%;
    }
    
    .cartItem .col-md-5 {
        margin-bottom: 15px;
    }
    
    .priceNCountContainer {
        flex-wrap: wrap !important;
    }
    
    .priceNCountContainer select {
        width: 80px !important;
    }
    
    /* Footer */
    footer .col-md-4,
    footer .col-lg-4 {
        width: 100%;
        margin-bottom: 20px;
        text-align: center;
    }
    
    /* Overlay Menu */
    .overlayMenu {
        width: 95%;
        margin: 60px 2.5% 30px 2.5%;
    }
    
    /* Item Detail Page */
    .mainDiv {
        width: 100% !important;
        padding: 0 10px !important;
    }
    
    .bigImageInDetailedPage {
        width: 100% !important;
        float: none !important;
        padding: 10px !important;
    }
    
    .bigImageInDetailedPage .singleImage {
        width: 100% !important;
    }
    
    .bigImageInDetailedPage .singleImage > a > div {
        height: 300px !important;
    }
    
    .bigImageInDetailedPage img {
        max-height: 280px !important;
    }
    
    .itemDetailsInDetailedPage {
        width: 100% !important;
        float: none !important;
        padding: 15px !important;
    }
    
    .itemImagesListInDetailedPage {
        width: 100% !important;
        margin-left: 0 !important;
    }
    
    .itemImagesListInDetailedPage ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .eachItemImageOfItem {
        width: 60px !important;
        margin: 5px !important;
    }
    
    .eachItemImageOfItem .image-thumb-container {
        width: 60px !important;
        height: 60px !important;
    }
    
    .eachItemDetailsHeading {
        font-size: 18px !important;
    }
    
    .eachItemcostblock {
        font-size: 20px !important;
    }
    
    .btnCartWholeBlock {
        width: 100% !important;
        padding: 10px 0 !important;
    }
    
    .btnCartWholeBlock > div {
        width: 100% !important;
    }
    
    .btnAddToCart, .btnBuyNow {
        width: 45% !important;
        margin: 5px 2% !important;
        padding: 10px 15px !important;
        font-size: 13px !important;
    }
    
    .btnMinus, .btnPlus {
        padding: 8px 15px !important;
    }
    
    .lblCount {
        padding: 0 15px !important;
    }
    
    .suppliersBlock {
        width: 100% !important;
        margin-left: 0 !important;
    }
    
    .variantMainBlock label {
        margin-bottom: 8px !important;
    }
    
    .specificationMainBLock,
    .featuresMainBlock {
        width: 100% !important;
        padding: 0 10px !important;
    }
    
    /* Checkout Page */
    .checkoutContainer .col-lg-8,
    .checkoutContainer .col-lg-4 {
        width: 100%;
    }
    
    /* Low Resolution Menu */
    .lowResolution {
        display: block !important;
    }
    
    .highResolution {
        display: none !important;
    }
    
    /* Hide duplicate button section in item details (the one inside itemDetailsInDetailedPage) */
    .itemDetailsInDetailedPage .btnCartWholeBlock.highResolution,
    .itemDetailsInDetailedPage .highResolution .btnCartWholeBlock,
    .itemDetailsInDetailedPage > .btnCartWholeBlock {
        display: none !important;
    }
}

/* ============================================
   MOBILE PHONES (max-width: 576px)
   ============================================ */
@media screen and (max-width: 576px) {
    /* General Font Scaling */
    body {
        font-size: 13px;
    }
    
    h1 { font-size: 20px !important; }
    h2 { font-size: 18px !important; }
    h3 { font-size: 16px !important; }
    h4 { font-size: 14px !important; }
    h5 { font-size: 13px !important; }
    h6 { font-size: 12px !important; }
    
    p, li, span, a, div {
        font-size: inherit;
    }
    
    .container {
        padding: 0 10px;
    }
    
    .container-fluid {
        padding: 0 10px !important;
    }
    
    /* Hide duplicate button section inside itemDetailsInDetailedPage - keep the fixed bottom bar */
    .itemDetailsInDetailedPage .btnCartWholeBlock:not(.fixedBtns) {
        display: none !important;
    }
    
    /* Ensure fixed bottom bar is visible */
    .fixedBtns.btnCartWholeBlock {
        display: flex !important;
    }
    
    /* Header */
    .headerMainDiv {
        padding: 5px 0;
    }
    
    /* Fix dropdown width on mobile */
    .headerDROPDOWNDiv {
        width: auto !important;
        background: transparent !important;
    }
    
    /* Compact dropdowns for mobile */
    .headerDROPDOWNDiv select,
    .groupInHeader,
    .countryInHeader {
        width: auto !important;
        background-color: #fff !important;
        border-radius: 4px !important;
        padding: 5px 8px !important;
        font-size: 12px !important;
        height: 32px !important;
        min-height: unset !important;
        border: 1px solid #ddd !important;
    }
    
    .headercol1 {
        width: 25%;
    }
    
    .headercol2 {
        width: 75%;
    }
    
    .headercol3 {
        display: none;
    }
    
    .headerSearch {
        font-size: 13px;
        height: 32px;
        line-height: 32px;
    }
    
    /* Top Header Mobile */
    .headerMenu {
        padding: 8px 10px !important;
    }
    
    .navbar-brand img {
        width: 30px !important;
        height: 30px !important;
    }
    
    /* Country Selector */
    .countrySelector {
        font-size: 12px !important;
    }
    
    /* Search Bar */
    .searchContainer {
        margin: 8px 0 !important;
    }
    
    .searchContainer input {
        font-size: 13px !important;
        padding: 8px 10px !important;
    }
    
    /* Product Grid - Single Column on mobile */
    /* Override Bootstrap columns for single column layout */
    .eachItemMainBlock,
    .eachItemHiddenBlock,
    .col-6.eachItemMainBlock,
    .col-sm-6.eachItemMainBlock,
    .itemsAllContainer > div[class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        margin-bottom: 10px !important;
    }
    
    .eachGroupItem ul li {
        width: 100% !important;
        margin: 8px 0 !important;
    }
    
    .eachItemBlock {
        width: 100% !important;
        margin: 0 !important;
        background: #fff;
        border-radius: 8px;
        box-shadow: 0 1px 4px rgba(0,0,0,0.08);
        overflow: hidden;
    }
    
    .eachItemBlock .itemMainImage {
        width: 100% !important;
        height: 180px !important;
        background-size: cover !important;
        background-position: center !important;
    }
    
    .eachItemBlock .itemMainImage img {
        width: 100% !important;
        height: 180px !important;
        object-fit: cover !important;
    }
    
    .eachItemBlock .eachItemBlockDetails {
        padding: 10px !important;
    }
    
    .itemMainImage img {
        max-height: 180px;
        width: 100%;
        object-fit: cover;
    }
    
    /* Product Card Details - Mobile */
    .eachItemBlockDetails h5,
    .eachItemBlockDetails .itemName,
    .eachItemHeading {
        font-size: 13px !important;
        line-height: 1.3 !important;
        margin-bottom: 5px !important;
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
    }
    
    .eachItemBlockDetails .price,
    .eachItemBlockDetails .eachItemcostblock {
        font-size: 14px !important;
        font-weight: 600 !important;
    }
    
    .eachItemBlockDetails .eachItemoffercuttingblock {
        font-size: 11px !important;
    }
    
    .eachItemBlockDetails .eachItemofferblock {
        font-size: 10px !important;
    }
    
    .eachItemBlockDetails .eachItemratingblock {
        font-size: 11px !important;
        padding: 2px 6px !important;
    }
    
    /* Add to cart button on listing */
    .btnAddToCartFromList {
        font-size: 12px !important;
        padding: 8px 12px !important;
    }
    
    /* Filter block - hide on mobile, show toggle */
    .filterBlock.highResolution {
        display: none !important;
    }
    
    .filterBlockHeadingInLowResolution {
        display: block !important;
    }
    
    /* Central items block - full width on mobile */
    .centralItemsMainBLock {
        width: 100% !important;
        margin-left: 0 !important;
        padding: 0 5px !important;
    }
    
    /* Breadcrumb */
    #breadcrumbNavigation {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }
    
    #breadcrumbNavigation span {
        font-size: 12px !important;
    }
    
    /* ============================================
       ITEM DETAIL PAGE - MOBILE
       ============================================ */
    .mainDiv {
        width: 100% !important;
        margin-top: 20px !important;
        padding: 0 !important;
    }
    
    .bigImageInDetailedPage {
        width: 100% !important;
        float: none !important;
        padding: 0 !important;
        margin-bottom: 15px;
    }
    
    .bigImageInDetailedPage .singleImage {
        width: 100% !important;
    }
    
    .bigImageInDetailedPage .singleImage > a > div {
        height: 250px !important;
        border-radius: 8px !important;
    }
    
    .bigImageInDetailedPage img {
        max-height: 230px !important;
        width: auto !important;
    }
    
    .itemImagesListInDetailedPage {
        width: 100% !important;
        margin: 10px 0 !important;
        padding: 0 5px !important;
    }
    
    .itemImagesListInDetailedPage ul {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .eachItemImageOfItem {
        width: 50px !important;
        margin: 3px !important;
    }
    
    .eachItemImageOfItem .image-thumb-container {
        width: 50px !important;
        height: 50px !important;
    }
    
    .itemDetailsInDetailedPage {
        width: 100% !important;
        float: none !important;
        padding: 10px !important;
    }
    
    .eachItemDetailsHeading {
        font-size: 14px !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
    }
    
    .eachItemDetailsHeading.font1 {
        font-size: 15px !important;
        font-weight: 600 !important;
    }
    
    .eachItemDetailsSubHead {
        font-size: 12px !important;
        margin-bottom: 8px !important;
    }
    
    .eachItemcostblock {
        font-size: 18px !important;
        font-weight: 700 !important;
    }
    
    .eachItemoffercuttingblock {
        font-size: 12px !important;
    }
    
    .eachItemofferblock {
        font-size: 11px !important;
    }
    
    /* Variant Selection */
    .variantMainBlock {
        width: 100% !important;
        margin: 10px 0 !important;
    }
    
    .colorVariantBlock,
    .sizeVariantBlock {
        padding: 6px 10px !important;
        margin: 3px !important;
        font-size: 11px !important;
    }
    
    /* Add to Cart Buttons */
    .btnCartWholeBlock {
        width: 100% !important;
        padding: 15px 0 !important;
        clear: both;
    }
    
    .btnCartWholeBlock > div {
        width: 100% !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }
    
    .btnMinus, .btnPlus {
        width: 36px !important;
        height: 36px !important;
        padding: 0 !important;
        font-size: 18px !important;
        line-height: 36px !important;
        text-align: center !important;
    }
    
    .lblCount {
        min-width: 30px !important;
        text-align: center !important;
        font-size: 16px !important;
        padding: 0 10px !important;
    }
    
    .txtCount {
        width: 40px !important;
    }
    
    .btnAddToCart {
        width: calc(50% - 10px) !important;
        margin: 10px 5px 5px 0 !important;
        padding: 12px 10px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
    }
    
    .btnBuyNow {
        width: calc(50% - 10px) !important;
        margin: 10px 0 5px 5px !important;
        padding: 12px 10px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
    }
    
    /* Fixed bottom buttons for mobile */
    .fixedBtns {
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        background: #fff !important;
        padding: 10px 15px !important;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1) !important;
        z-index: 1000 !important;
        display: flex !important;
        align-items: center !important;
    }
    
    .fixedBtns .btnAddToCart,
    .fixedBtns .btnBuyNow {
        flex: 1 !important;
        width: auto !important;
        margin: 0 5px !important;
        padding: 12px 8px !important;
        font-size: 13px !important;
    }
    
    /* Suppliers Block */
    .suppliersBlock {
        width: 100% !important;
        margin: 15px 0 !important;
        padding: 10px !important;
    }
    
    .suppliersBlockHeading {
        font-size: 14px !important;
    }
    
    .supplierBlock li {
        font-size: 13px !important;
    }
    
    /* Single Supplier */
    .singleSupplierBlock {
        font-size: 13px !important;
    }
    
    /* Item Description */
    .itemDescriptionDiv {
        font-size: 12px !important;
        line-height: 1.4 !important;
        margin-top: 12px !important;
    }
    
    /* Offers Block */
    .offerBlock {
        padding: 8px !important;
        font-size: 11px !important;
    }
    
    .offerListDetailedBlock h4 {
        font-size: 13px !important;
    }
    
    /* Specifications & Features */
    .specificationMainBLock,
    .featuresMainBlock {
        width: 100% !important;
        padding: 0 10px !important;
        margin-top: 15px !important;
    }
    
    .specificationListBLock,
    .featuresListBlock {
        width: 100% !important;
        margin: 0 !important;
    }
    
    .specificationListBLock .font1,
    .featuresListBlock .font1 {
        font-size: 14px !important;
    }
    
    .eachSpecBlock li {
        font-size: 11px !important;
        padding: 6px 5px !important;
    }
    
    .eachFeatureBlock li {
        font-size: 11px !important;
    }
    
    /* Add padding at bottom for fixed buttons */
    body.stretched {
        padding-bottom: 80px;
    }
    
    /* Cart Page */
    .cartMainPageBlock {
        padding: 10px !important;
    }
    
    .cartItem {
        padding: 10px !important;
    }
    
    .cartItem img {
        max-width: 100%;
        height: auto;
    }
    
    .cartItem h5 {
        font-size: 14px !important;
    }
    
    .deleteCartItem {
        font-size: 12px !important;
    }
    
    /* Cart Summary */
    .cartSummaryBlock .card {
        margin: 10px 0 !important;
    }
    
    .cartSummaryBlock h5 {
        font-size: 16px !important;
    }
    
    /* Empty Cart */
    .wish-list > div[style*="text-align:center"] {
        padding: 30px 15px !important;
    }
    
    .wish-list > div[style*="text-align:center"] i {
        font-size: 50px !important;
    }
    
    .wish-list > div[style*="text-align:center"] a {
        padding: 10px 20px !important;
        font-size: 14px !important;
    }
    
    /* Checkout */
    .checkoutForm input,
    .checkoutForm select,
    .checkoutForm textarea {
        font-size: 14px !important;
    }
    
    /* Footer */
    footer {
        padding: 20px 10px !important;
    }
    
    footer h5 {
        font-size: 16px !important;
    }
    
    footer ul li {
        font-size: 13px !important;
    }
    
    /* Buttons */
    .btn {
        padding: 10px 15px !important;
        font-size: 14px !important;
    }
    
    .btn-block {
        width: 100% !important;
    }
    
    /* Modal */
    .modal-dialog {
        margin: 10px !important;
        max-width: calc(100% - 20px) !important;
    }
    
    .modal-content {
        border-radius: 8px !important;
    }
    
    /* Tabs */
    .nav-tabs {
        flex-wrap: wrap;
    }
    
    .nav-tabs .nav-item {
        flex: 1 1 auto;
        text-align: center;
    }
    
    .nav-tabs .nav-link {
        padding: 8px 10px !important;
        font-size: 13px !important;
    }
    
    /* Tables */
    table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
    /* Forms */
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="tel"],
    input[type="number"],
    select,
    textarea {
        width: 100% !important;
        font-size: 16px !important; /* Prevents zoom on iOS */
    }
    
    /* Coupon Block */
    .couponBlock .couponCode {
        width: 55% !important;
    }
    
    .couponBlock .applyCoupon {
        padding: 8px 12px !important;
        font-size: 13px !important;
    }
}

/* ============================================
   EXTRA SMALL PHONES (max-width: 400px)
   ============================================ */
@media screen and (max-width: 400px) {
    /* Even smaller adjustments */
    .headerMenu {
        padding: 5px !important;
    }
    
    .navbar-brand img {
        width: 28px !important;
        height: 28px !important;
    }
    
    .eachItemBlockDetails {
        padding: 5px !important;
    }
    
    .eachItemBlockDetails h5 {
        font-size: 13px !important;
    }
    
    .cartItem .priceDiv {
        font-size: 14px !important;
    }
    
    /* Coupon */
    .couponBlock li {
        flex-direction: column !important;
        gap: 10px;
    }
    
    .couponBlock .couponCode {
        width: 100% !important;
    }
    
    .couponBlock .applyCoupon {
        width: 100% !important;
    }
}

/* ============================================
   LANDSCAPE ORIENTATION FIXES
   ============================================ */
@media screen and (max-height: 500px) and (orientation: landscape) {
    .headerMainDiv {
        position: relative;
    }
    
    .modal-dialog {
        margin: 5px auto !important;
    }
    
    .modal-body {
        max-height: 60vh;
        overflow-y: auto;
    }
}

/* ============================================
   HIGH DPI / RETINA DISPLAYS
   ============================================ */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .headerSearch {
        background-size: 20px;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */
@media print {
    .headerMainDiv,
    .headerMenu,
    footer,
    .couponBlock,
    .checkOutBtn {
        display: none !important;
    }
    
    .cartItem {
        page-break-inside: avoid;
    }
}

/* ============================================
   TOUCH DEVICE IMPROVEMENTS
   ============================================ */
@media (hover: none) and (pointer: coarse) {
    /* Larger touch targets */
    .btn,
    a.btn,
    button {
        min-height: 44px;
        min-width: 44px;
    }
    
    .deleteCartItem,
    .addToCartBtn {
        padding: 12px 15px !important;
    }
    
    select {
        min-height: 44px;
    }
    
    /* Remove hover effects on touch */
    .eachItemBlock:hover {
        transform: none;
        box-shadow: none;
    }
}

/* ============================================
   UTILITY CLASSES FOR RESPONSIVE
   ============================================ */
.hide-mobile {
    display: block;
}

.show-mobile {
    display: none;
}

@media screen and (max-width: 768px) {
    .hide-mobile {
        display: none !important;
    }
    
    .show-mobile {
        display: block !important;
    }
}

.hide-tablet {
    display: block;
}

.show-tablet {
    display: none;
}

@media screen and (max-width: 992px) {
    .hide-tablet {
        display: none !important;
    }
    
    .show-tablet {
        display: block !important;
    }
}
