[data-extra-category][hidden], button[hidden] { display: none !important; }

/* Smooth Desktop Dropdown Hover Effect */
        .dropdown-menu {
            opacity: 0;
            visibility: hidden;
            transform: translateY(10px);
            transition: all 0.2s ease-in-out;
        }

        .group:hover .dropdown-menu {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        /* Sidebar Accordion Smooth Transition */
        .submenu {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-in-out;
        }

        .submenu.open {
            max-height: 300px;
        }

        /* flash sale */
        /* Slick Track padding override to remove left/right gaps */
        .vegetablesSlider .slick-list {
            margin: 0 -8px;
            /* Smooth spacing between product cards */
        }

        /* Keep short product rows at the left instead of Slick's auto-centred track. */
        .flashSaleSlider .slick-track,
        .category-product-slider .slick-track {
            margin-left: 0;
            margin-right: 0;
        }

        /* Custom Styling for Slick Arrows */
        .slick-prev,
        .slick-next {
            z-index: 10;
            width: 38px;
            height: 38px;
            background-color: #ffffff !important;
            border-radius: 9999px;
            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
            border: 1px solid #E5E7EB;
            display: flex !important;
            align-items: center;
            justify-content: center;
        }

        .slick-prev:hover,
        .slick-next:hover {
            background-color: #B80000 !important;
            border-color: #B80000;
        }

        .slick-prev:before,
        .slick-next:before {
            color: #111827 !important;
            font-size: 16px;
            opacity: 1;
        }

        .slick-prev:hover:before,
        .slick-next:hover:before {
            color: #ffffff !important;
        }

        .slick-prev {
            left: 8px;
        }

        .slick-next {
            right: 8px;
        }


        /* Swiper Custom Pagination Styles */
        .swiper-pagination-bullet {
            background-color: #cbd5e1;
            opacity: 1;
            width: 10px;
            height: 10px;
            transition: all 0.3s ease;
        }

        .swiper-pagination-bullet-active {
            background-color: #B80000 !important;
            width: 24px;
            border-radius: 6px;
        }

        /* Wave Pulse Animation for Floating Main Button */
        @keyframes pulse-ring {
            0% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(184, 0, 0, 0.7);
            }

            70% {
                transform: scale(1);
                box-shadow: 0 0 0 16px rgba(184, 0, 0, 0);
            }

            100% {
                transform: scale(0.95);
                box-shadow: 0 0 0 0 rgba(184, 0, 0, 0);
            }
        }

        .animate-pulse-ring {
            animation: pulse-ring 2s infinite;
        }
.storefront-added-popup { border:0; border-radius:24px; padding:32px; width:min(440px,calc(100% - 32px)); box-shadow:0 24px 80px #0003; text-align:center; color:#111; }
.storefront-added-popup::backdrop { background:#1118; backdrop-filter:blur(4px); }
.storefront-added-popup .popup-close { position:absolute; right:18px; top:12px; font-size:26px; color:#64748b; }
.popup-check { width:64px; height:64px; margin:0 auto 18px; display:grid; place-items:center; background:#fff1f1; color:#b80000; border-radius:50%; font-size:26px; }
.storefront-added-popup h2 { font-size:24px; font-weight:800; }
.storefront-added-popup p { color:#64748b; margin:8px 0 22px; font-size:14px; }
.popup-product { display:flex; gap:16px; align-items:center; text-align:left; background:#f8fafc; border:1px solid #e2e8f0; padding:12px; border-radius:16px; margin-bottom:22px; }
.popup-product img { width:64px; height:76px; object-fit:cover; border-radius:10px; }
.popup-checkout { display:block; background:#b80000; color:white; padding:14px; border-radius:12px; font-weight:700; }
.popup-checkout:hover { background:#940000; }
.popup-continue { padding:14px 12px 0; font-weight:600; font-size:14px; }
.product-suggestions { position:absolute; left:0; right:0; top:calc(100% + 8px); z-index:60; max-height:320px; overflow-y:auto; background:white; border:1px solid #e2e8f0; border-radius:12px; box-shadow:0 12px 32px #0002; padding:6px; }
.product-suggestions[hidden] { display:none; }
.product-suggestions a { display:block; padding:12px 14px; border-radius:8px; font-size:14px; color:#111; }
.product-suggestions a:hover,.product-suggestions a:focus { background:#fff1f1; color:#b80000; outline:2px solid #b80000; outline-offset:-2px; }
.product-suggestions p { padding:14px; font-size:14px; color:#64748b; }
.more-category-panel,
.more-subcategory-panel {
    width:208px; padding:5px; background:#fff; border:1px solid #e5e7eb;
    border-radius:10px; box-shadow:0 8px 24px rgba(15,23,42,.10);
    font-size:13px; line-height:1.45;
}
.more-category-panel { margin-top:7px; }
.more-subcategory-panel { position:absolute; right:100%; top:0; width:max-content; min-width:132px; max-width:176px; max-height:280px; padding:4px; overflow-y:auto; border-radius:8px; }
.more-category-panel > div { max-height:320px; scrollbar-width:thin; }
.more-category-row > .flex { border-radius:6px; transition:background .15s ease; }
.more-category-row > .flex > a,
.more-subcategory-panel > a { padding:9px 11px; border-radius:6px; overflow-wrap:anywhere; transition:background .15s ease,color .15s ease; }
.more-category-row > .flex > button { padding:9px; margin-right:2px; border-radius:5px; color:#94a3b8; }
.more-category-row > .flex > button i { font-size:9px; }
.more-category-row > .more-row-active,
.more-category-row > .flex:hover,
.more-subcategory-panel > a:hover,
.more-subcategory-panel > a:focus-visible { background:#fff2f2; color:#b80000; }
.more-category-row > .flex > a:hover { background:transparent; }
.more-subcategory-panel > a { padding:7px 10px; font-size:12px; line-height:1.4; font-weight:500; border-radius:5px; }
.more-category-row button[aria-expanded="true"] { color:#b80000; }
[data-more-menu] summary i { transition:transform .15s ease; font-size:10px; }
[data-more-menu][open] summary { color:#fca5a5; }
[data-more-menu][open] summary i { transform:rotate(180deg); }
.more-category-panel a:focus-visible,
.more-category-panel button:focus-visible { outline:2px solid #b80000; outline-offset:-2px; }
.more-subcategory-panel[hidden] { display:none; }
/* Match the product carousel's white circular controls and dark chevrons. */
.banner-slider .banner-arrow {
    width: 38px;
    height: 38px;
    margin-top: -19px;
    padding: 0;
    border: 1px solid #E5E7EB;
    border-radius: 50%;
    background: #ffffff;
    color: #111827;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
    cursor: pointer;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}
.banner-slider .banner-arrow::after { content: none; }
.banner-slider .banner-arrow i { font-size: 16px; }
.banner-slider .swiper-button-prev { left: 8px; }
.banner-slider .swiper-button-next { right: 8px; }
.banner-slider .banner-arrow:hover {
    background: #B80000;
    border-color: #B80000;
    color: #ffffff;
}
.banner-slider .banner-arrow:focus-visible {
    outline: 2px solid #B80000;
    outline-offset: 3px;
}
@media (max-width: 639px) {
    .banner-slider .banner-arrow { display: none; }
}
/* Keep category labels and their chevrons together at desktop widths. */
.desktop-category-nav > div { max-width: 1440px; padding-inline: 20px; }
.desktop-category-nav ul { gap: clamp(14px, 2vw, 30px); letter-spacing: .025em; }
.desktop-category-nav ul > li { flex: 0 0 auto; }
.desktop-category-nav ul > li > a,
.desktop-category-nav summary { display: inline-flex; white-space: nowrap; gap: 6px; font-size: 13px; }
.desktop-category-nav ul > li > a > i { flex: 0 0 auto; font-size: 9px; }
.catalog-card { display:flex; flex-direction:column; height:100%; min-width:0; padding:0; overflow:hidden; background:#fff; border:1px solid #e5e7eb; border-radius:10px; transition:box-shadow .2s ease; }
.catalog-card:hover { box-shadow:0 5px 18px #11111112; }
.catalog-card-image { position:relative; width:100%; aspect-ratio:3/4; overflow:hidden; background:#f1f5f9; }
.catalog-card-image > a { display:block; width:100%; height:100%; }
.catalog-card-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.catalog-card-discount { position:absolute; top:8px; left:8px; z-index:1; padding:2px 6px; border-radius:4px; background:#b80000; color:white; font-size:10px; line-height:1.4; font-weight:600; }
.catalog-card-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin:9px 10px 0; min-height:2.7em; font-size:13px; line-height:1.35; font-weight:750; color:#222; text-align:left; }
.catalog-card-title:hover { color:#b80000; }
.catalog-card-footer { display:flex; align-items:center; justify-content:space-between; gap:5px; margin-top:auto; padding:7px 10px 10px; }
.catalog-card-footer > div { min-width:0; }
.catalog-card-price { display:block; white-space:nowrap; font-variant-numeric:tabular-nums; color:#b80000; font-size:15px; line-height:1.25; font-weight:650; }
.catalog-card-footer del { display:block; font-size:10px; line-height:1.3; white-space:nowrap; color:#9ca3af; }
.catalog-card [data-catalog-card-add] { display:flex; align-items:center; justify-content:center; flex-shrink:0; width:32px; height:32px; border-radius:7px; background:#b80000; color:white; }
.catalog-card [data-catalog-card-add] i { font-size:12px; }
.catalog-card [data-catalog-card-add]:disabled { opacity:.4; cursor:not-allowed; }
.catalog-card [data-catalog-card-add]:hover { background:#940000; }
.flashSaleSlider .slick-track, .category-product-slider .slick-track { display:flex; }
.flashSaleSlider .slick-slide, .category-product-slider .slick-slide { height:auto; }
.flashSaleSlider .slick-slide > div, .category-product-slider .slick-slide > div { height:100%; }
@media (max-width:639px) {
    .home-product-panel { padding:12px 7px; border-radius:12px; }
    .flash-carousel-wrap { padding-inline:0; }
    .flashSaleSlider .slick-slide, .category-product-slider .slick-slide { padding-inline:4px; }
    .catalog-card { border-radius:8px; }
    .catalog-card-title { font-size:11px; line-height:1.35; margin:7px 7px 0; font-weight:750; }
    .catalog-card-footer { padding:5px 7px 7px; gap:3px; }
    .catalog-card-price { font-size:12px; }
    .catalog-card-footer del { font-size:9px; }
    .catalog-card [data-catalog-card-add] { width:27px; height:27px; border-radius:6px; }
    .catalog-card [data-catalog-card-add] i { font-size:10px; }
    .catalog-card-discount { top:6px; left:6px; font-size:9px; padding:2px 5px; }
    .home-product-panel > .text-center.mt-8 { margin-top:16px; }
    .home-product-panel > .text-center.mt-8 > a { font-size:11px; padding:11px 18px; }
    .flashSaleSlider .slick-arrow, .category-product-slider .slick-arrow { width:28px; height:28px; }
    #widgetToggleBtn { width:44px; height:44px; }
}
