@import '_content/AccountActivityDashboard/AccountActivityDashboard.ns0m2ejdmt.bundle.scp.css';
@import '_content/AccountFormValidation/AccountFormValidation.3opt4mc2ie.bundle.scp.css';
@import '_content/AdminMediaComponent/AdminMediaComponent.jb0pgwx07d.bundle.scp.css';
@import '_content/AnimatedSlider_SlicedImage/AnimatedSlider_SlicedImage.jbvrj4qey4.bundle.scp.css';
@import '_content/Bhogi.Social/Bhogi.Social.cga0aiyee7.bundle.scp.css';
@import '_content/BrandShowcase/BrandShowcase.lswbvc0m9n.bundle.scp.css';
@import '_content/BrandStoryPortfolio/BrandStoryPortfolio.rhhfabqw14.bundle.scp.css';
@import '_content/CardEffect/CardEffect.2dbpekt21p.bundle.scp.css';
@import '_content/CardSwiper/CardSwiper.425si3nxpm.bundle.scp.css';
@import '_content/CarouselShowcase/CarouselShowcase.m0hcws8d95.bundle.scp.css';
@import '_content/CategorySlider/CategorySlider.fq43ubfb4n.bundle.scp.css';
@import '_content/CollageArtGallery/CollageArtGallery.u75radj54n.bundle.scp.css';
@import '_content/CollectionSlider/CollectionSlider.onns9t2kdt.bundle.scp.css';
@import '_content/ComponentCmsAdmin/ComponentCmsAdmin.4y3zc6dshl.bundle.scp.css';
@import '_content/Container/Container.lokat8mc4x.bundle.scp.css';
@import '_content/CubeSlider/CubeSlider.f4gxcowvnt.bundle.scp.css';
@import '_content/CustomerRewardsDashboard/CustomerRewardsDashboard.5qq6yxx0er.bundle.scp.css';
@import '_content/FeatureSlider/FeatureSlider.qs8chlc8oq.bundle.scp.css';
@import '_content/FramedCircularGallery/FramedCircularGallery.242l2edzzp.bundle.scp.css';
@import '_content/Gallery/Gallery.msy358ke97.bundle.scp.css';
@import '_content/GsapCircularCarousel/GsapCircularCarousel.woo4zf2v1x.bundle.scp.css';
@import '_content/GuessTheProductGame/GuessTheProductGame.vqtwkeh2mn.bundle.scp.css';
@import '_content/HalloweenParallaxBanner/HalloweenParallaxBanner.3vjwwn09t0.bundle.scp.css';
@import '_content/HeroParallaxBanner/HeroParallaxBanner.vz2jg7vxif.bundle.scp.css';
@import '_content/MentorshipProgramLanding/MentorshipProgramLanding.k345iv5mjl.bundle.scp.css';
@import '_content/OctoberfestPromoLanding/OctoberfestPromoLanding.tb8v7mlx43.bundle.scp.css';
@import '_content/RetrobeatsCollectionLanding/RetrobeatsCollectionLanding.pxwcg45mma.bundle.scp.css';
@import '_content/RoyalFrameProV2/RoyalFrameProV2.spzrbgcm69.bundle.scp.css';
@import '_content/SalesInsightsDashboard/SalesInsightsDashboard.baw06caips.bundle.scp.css';
@import '_content/ShopbyCollection/ShopbyCollection.rtjah691om.bundle.scp.css';
@import '_content/ShopbyGrid9x9/ShopbyGrid9x9.exayod1bem.bundle.scp.css';
@import '_content/ShopbySingle/ShopbySingle.3n8x4o3zcg.bundle.scp.css';
@import '_content/ShoppingBar/ShoppingBar.nvdxbnwivb.bundle.scp.css';
@import '_content/SmoothSlider/SmoothSlider.1isb3b72h7.bundle.scp.css';
@import '_content/SnowLoginForm/SnowLoginForm.h0zq0nke19.bundle.scp.css';
@import '_content/SVGBANNERS/SVGBANNERS.uwx7mz5qs2.bundle.scp.css';
@import '_content/TeamSwiper/TeamSwiper.2i8po5alc0.bundle.scp.css';
@import '_content/TitleHeading/TitleHeading.nfnty32ffb.bundle.scp.css';
@import '_content/TopDiscounts/TopDiscounts.1z8yxs7hff.bundle.scp.css';
@import '_content/World/World.2xggdgxhqi.bundle.scp.css';

/* /Components/App.razor.rz.scp.css */
/* ============================================
   APP.RAZOR - Root Document Styles (Scoped)

   Note: This file exists for completeness.
   Most root-level styles should be in app.css
   since App.razor is the HTML document wrapper.
   ============================================ */

/* Smooth scrolling only on specific elements (not html/body to avoid Blazor scroll-restoration flash) */
.smooth-scroll[b-p92htv5f6r] {
    scroll-behavior: smooth;
}

/* Prevent horizontal overflow (use clip instead of hidden to avoid breaking position:sticky) */
html[b-p92htv5f6r], body[b-p92htv5f6r] {
    overflow-x: clip;
}

/* Ensure body takes full height */
body[b-p92htv5f6r] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
/* /Components/Catalog/CategoryLoadingProgress.razor.rz.scp.css */
.category-loading-boundary[b-d5qtq6pltg] {
    width: 100%;
    padding: 0.75rem 0;
    scroll-margin-top: 1rem;
}

.category-loading-panel[b-d5qtq6pltg] {
    width: 100%;
    min-height: 116px;
    padding: 1rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-primary, #0f766e) 18%, #d9e3e2);
    border-radius: 8px;
    background: color-mix(in srgb, var(--bhogi-surface, #fff) 96%, var(--bhogi-gold, #b7791f));
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
}

.category-loading-panel__header[b-d5qtq6pltg],
.category-loading-panel__content[b-d5qtq6pltg] {
    display: flex;
    align-items: center;
}

.category-loading-panel__header[b-d5qtq6pltg] {
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.8rem;
}

.category-loading-panel__eyebrow[b-d5qtq6pltg],
.category-loading-panel__percent[b-d5qtq6pltg],
.category-loading-panel__content p[b-d5qtq6pltg] {
    margin: 0;
    color: color-mix(in srgb, var(--bhogi-text, #1f2937) 62%, transparent);
    font-size: 0.76rem;
    font-weight: 700;
}

.category-loading-panel__eyebrow[b-d5qtq6pltg] {
    text-transform: uppercase;
}

.category-loading-panel__percent[b-d5qtq6pltg] {
    color: var(--bhogi-primary, #0f766e);
    font-variant-numeric: tabular-nums;
}

.category-loading-panel__content[b-d5qtq6pltg] {
    gap: 0.8rem;
}

.category-loading-panel__content h2[b-d5qtq6pltg] {
    margin: 0 0 0.2rem;
    color: var(--bhogi-text, #1f2937);
    font-size: 1rem;
    font-weight: 700;
}

.category-loading-panel__spinner[b-d5qtq6pltg] {
    width: 28px;
    height: 28px;
    flex: 0 0 auto;
    border: 3px solid color-mix(in srgb, var(--bhogi-primary, #0f766e) 16%, transparent);
    border-top-color: var(--bhogi-primary, #0f766e);
    border-right-color: var(--bhogi-gold, #b7791f);
    border-radius: 50%;
    animation: category-panel-spin-b-d5qtq6pltg 0.9s linear infinite;
}

.category-loading-panel__track[b-d5qtq6pltg] {
    overflow: hidden;
    height: 6px;
    margin-top: 0.9rem;
    border-radius: 6px;
    background: color-mix(in srgb, var(--bhogi-primary, #0f766e) 11%, #fff);
}

.category-loading-panel__fill[b-d5qtq6pltg] {
    display: block;
    height: 100%;
    min-width: 5%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bhogi-primary, #0f766e), var(--bhogi-gold, #b7791f));
    transition: width 0.35s ease;
}

@keyframes category-panel-spin-b-d5qtq6pltg {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    .category-loading-panel__spinner[b-d5qtq6pltg] {
        animation: none;
    }
}
/* /Components/Catalog/ProductCard.razor.rz.scp.css */
/* ============================================
   PRODUCT CARD - Bhogi Enterprise Premium
   Uniform sizing (matches Bhogi.Web artlist)
   Enhanced with Enterprise Design System
   ============================================ */

.product-card[b-ac2q2ajib0] {
    /* Layout variables matching Bhogi.Web artlist */
    --art-line-height: 1.25;
    --art-font-size: 0.875rem;
    --art-font-size-sm: 0.8125rem;
    --art-font-size-xs: 0.75rem;
    --art-font-size-lg: 0.875rem;

    position: relative;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface) 68%, var(--bhogi-surface-premium) 100%);
    height: 100%;
    padding: 0.75rem;
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-lg);
    font-size: var(--art-font-size);
    line-height: var(--art-line-height);
    box-shadow: var(--bhogi-shadow-sm);
    transition: box-shadow 0.25s var(--bhogi-ease),
                transform 0.25s var(--bhogi-ease),
                border-color 0.25s var(--bhogi-ease);
    /* Enterprise: Performance optimization */
    content-visibility: auto;
    contain-intrinsic-size: auto 360px;
    /* Critical: prevent card from overflowing grid column */
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;

    /* Align below-image content with the framed image padding */
    --product-card-content-pad: 0.5rem;
}

.product-card:hover[b-ac2q2ajib0] {
    box-shadow: var(--bhogi-shadow-lg);
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--bhogi-gold) 34%, var(--bhogi-border));
}

/* Enterprise: Focus state for accessibility */
.product-card:has(.product-link:focus-visible)[b-ac2q2ajib0] {
    outline: 2px solid var(--bhogi-primary);
    outline-offset: 2px;
    border-radius: var(--bhogi-radius-lg);
}

/* Enterprise: Cross-device touch targets */
@media (hover: none) and (pointer: coarse) {
    .product-card[b-ac2q2ajib0] {
        /* Don't inflate padding on mobile — compact layout handles it */
        min-height: 44px;
    }

    .product-card:active[b-ac2q2ajib0] {
        transform: scale(0.98);
        transition: transform 0.1s var(--bhogi-ease);
    }
}

.product-link[b-ac2q2ajib0] {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    height: 100%;
    min-width: 0; /* prevent flex child overflow */
}

/* Product Image */
.product-image-box[b-ac2q2ajib0] {
    position: relative;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin-bottom: 0.625rem;
    background: linear-gradient(180deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 6%, var(--bhogi-surface)) 100%);
    overflow: hidden;
    border-radius: var(--bhogi-radius);
    transition: background 0.2s var(--bhogi-ease), box-shadow 0.2s var(--bhogi-ease);
    will-change: background;
}

.product-card:hover .product-image-box[b-ac2q2ajib0] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface-raised)) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, var(--bhogi-surface)) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.product-image-surface[b-ac2q2ajib0] {
    position: relative;
    display: block;
    width: 100%;
    /* Square surface drives sizing; image fills it via object-fit */
    aspect-ratio: 1;
}

/* picture wrapper from <ResponsiveImage> */
.product-image-surface[b-ac2q2ajib0]  picture {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.product-img[b-ac2q2ajib0] {
    position: absolute;
    inset: 0;
    display: block;
    width: 100% !important;
    height: 100% !important;
    /* Server-side variants are already 1:1 with `contain`, so use contain here too
       to avoid double-cropping (which previously cut off the top on mobile). */
    object-fit: contain;
    object-position: center;
    transition: opacity 0.25s var(--bhogi-ease);
}

.product-img-primary[b-ac2q2ajib0] {
    opacity: 1;
}

.product-img-secondary[b-ac2q2ajib0] {
    opacity: 0;
}

.product-link:hover .product-img-secondary[b-ac2q2ajib0] {
    opacity: 1;
}

.product-link:hover .product-img-primary.has-secondary[b-ac2q2ajib0] {
    opacity: 0;
}

/* Enterprise: Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .product-card[b-ac2q2ajib0],
    .product-image-box[b-ac2q2ajib0],
    .product-img[b-ac2q2ajib0] {
        transition: none;
    }

    .product-card:hover[b-ac2q2ajib0] {
        transform: none;
    }
}

/* Image sizing is now driven by server-side per-device variants (see ResponsiveImage).
   Only the card layout needs breakpoint adjustments. */
@media (max-width: 768px) {
    .product-card[b-ac2q2ajib0] {
        content-visibility: visible;
        contain-intrinsic-size: auto;
        /* Mobile is single-column: don't stretch to a grid row height. */
        height: auto;
    }

    .product-body[b-ac2q2ajib0] {
        flex: 0 0 auto;
    }

    .product-image-box[b-ac2q2ajib0] {
        padding: 0;
    }
}

@media (max-width: 480px) {
    .product-card[b-ac2q2ajib0] {
        content-visibility: visible;
        contain-intrinsic-size: auto;
    }
}

/* Enterprise: Tablet optimizations (iPad, Surface) */
@media (min-width: 768px) and (max-width: 1024px) {
    .product-card[b-ac2q2ajib0] {
        padding: 0.875rem;
    }
}

/* Enterprise: High-DPI displays (Retina, 4K) */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .product-card[b-ac2q2ajib0] {
        border-width: 0.5px; /* Sharper on high-DPI */
    }
}

/* Badges */
.product-badges[b-ac2q2ajib0] {
    position: absolute;
    inset-block-start: 0.625rem;
    inset-inline-start: 0.625rem;
    display: flex;
    max-width: calc(100% - 1.25rem);
    flex-wrap: wrap;
    gap: 0.3rem;
    z-index: 10;
    /* Enterprise: Animation on entry */
    animation: slide-in-bottom-b-ac2q2ajib0 0.3s var(--bhogi-ease-out) backwards;
}

@keyframes slide-in-bottom-b-ac2q2ajib0 {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.badge[b-ac2q2ajib0] {
    margin: 0;
    padding: 0.35rem 0.55rem;
    border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
    border-radius: var(--bhogi-radius-full);
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.035em;
    line-height: 1;
    text-transform: uppercase;
    /* Enterprise: Shadow for depth */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.badge-offer[b-ac2q2ajib0] {
    background: var(--bhogi-maroon);
    color: var(--bhogi-surface);
}

/* Enterprise: Reduced motion - no animation */
@media (prefers-reduced-motion: reduce) {
    .product-badges[b-ac2q2ajib0] {
        animation: none;
    }
}

.badge.discount[b-ac2q2ajib0] {
    background: linear-gradient(135deg, var(--bhogi-maroon) 0%, var(--bhogi-maroon-deep) 100%);
    color: white;
}

.badge.deal[b-ac2q2ajib0] {
    background: linear-gradient(135deg, var(--bhogi-primary) 0%, var(--bhogi-success) 100%);
    color: white;
}

.badge.limited[b-ac2q2ajib0] {
    background: var(--bhogi-gradient-gold);
    color: var(--bhogi-text);
}

/* Product Body */
.product-body[b-ac2q2ajib0] {
    position: relative;
    padding: 0 var(--product-card-content-pad);
    display: flex;
    flex-direction: column;
    flex: 1;
}

.product-meta[b-ac2q2ajib0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.3rem;
}

.product-brand[b-ac2q2ajib0] {
    color: var(--bhogi-text-muted);
    text-transform: uppercase;
    font-size: var(--art-font-size-xs);
    font-weight: 600;
    letter-spacing: 0.05em;
    /* Fixed 1-line height (Bhogi.Web: art-brand min-height) */
    box-sizing: content-box;
    min-height: calc(var(--art-font-size-xs) * var(--art-line-height));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.product-status[b-ac2q2ajib0] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.45rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.product-status.in-stock[b-ac2q2ajib0] {
    color: var(--bhogi-success);
    background: color-mix(in srgb, var(--bhogi-success) 10%, transparent);
}

.product-status.out-of-stock[b-ac2q2ajib0] {
    color: var(--bhogi-danger);
    background: color-mix(in srgb, var(--bhogi-danger) 10%, transparent);
}

.product-title[b-ac2q2ajib0] {
    box-sizing: content-box;
    font-weight: 600;
    font-size: var(--art-font-size-lg);
    color: var(--bhogi-text);
    line-height: var(--art-line-height);
    margin: 0 0 0.3rem;
    /* Fixed 2-line height (Bhogi.Web: art-name-link height) */
    height: calc(var(--art-font-size-lg) * var(--art-line-height) * 2);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.2s ease;
}

.product-link:hover .product-title[b-ac2q2ajib0] {
    color: var(--bhogi-primary);
}

/* Enterprise: Focus state */
.product-link:focus-visible .product-title[b-ac2q2ajib0] {
    outline: 2px solid var(--bhogi-primary);
    outline-offset: 2px;
    border-radius: var(--bhogi-radius-sm);
}

.product-description[b-ac2q2ajib0] {
    color: var(--bhogi-text-muted);
    margin-bottom: 0.4rem;
    font-size: var(--art-font-size-sm);
    /* Fixed 2-line height (Bhogi.Web: art-description height) */
    height: calc(var(--art-font-size-sm) * var(--art-line-height) * 2);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Price Block */
.product-price-block[b-ac2q2ajib0] {
    position: relative;
    margin-top: auto;
    padding: 0.65rem 0.75rem 0.55rem;
    background: linear-gradient(180deg, color-mix(in srgb, var(--bhogi-surface) 88%, transparent) 0%, var(--bhogi-surface-premium) 100%);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius);
    /* Keep this compact; the content should size the block (single-row layout below). */
    min-height: 0;
}

.art-price[b-ac2q2ajib0] {
    display: flex;
 flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.6rem;
    flex-wrap: nowrap;
}

.art-price-offer .art-finalprice .price-current[b-ac2q2ajib0] {
    color: var(--bhogi-maroon);
}

.art-finalprice[b-ac2q2ajib0] {
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.price-from[b-ac2q2ajib0] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted);
    font-weight: 400;
}

.price-current[b-ac2q2ajib0] {
    font-weight: 700;
    font-size: 1.0625rem;
    color: var(--bhogi-primary-hover);
    white-space: nowrap;
    letter-spacing: -0.01em;
}

.price-call[b-ac2q2ajib0] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--bhogi-primary);
}

/* Compare prices (matching Bhogi.Web art-compareprice) */
.art-info-group[b-ac2q2ajib0] {
  display: inline-flex;
    flex-direction: row;
    align-items: baseline;
    justify-content: flex-end;
    gap: 0.6rem;
    flex: 1 1 auto;
}

.art-compareprice[b-ac2q2ajib0] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.art-compareprice-label[b-ac2q2ajib0] {
    font-size: 0.75rem;
    color: var(--bhogi-text-secondary);
    font-weight: 400;
}

.art-compareprice-value[b-ac2q2ajib0] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-muted);
    text-decoration: line-through;
    white-space: nowrap;
}

.price-savings[b-ac2q2ajib0] {
    display: inline-flex;
    width: fit-content;
    padding: 0.15rem 0.45rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--bhogi-success);
    background: color-mix(in srgb, var(--bhogi-success) 10%, transparent);
   white-space: nowrap;
}

/* Delivery time (matching Bhogi.Web art-delivery-info) */
.art-delivery-info[b-ac2q2ajib0] {
    margin-top: 0.35rem;
    margin-bottom: 0.25rem;
    /* Fixed 1-line height (Bhogi.Web: art-delivery-info min-height) */
    box-sizing: content-box;
    min-height: calc(var(--art-font-size-xs) * var(--art-line-height));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.delivery-time[b-ac2q2ajib0] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.75rem;
    font-weight: 500;
}

.delivery-time-status[b-ac2q2ajib0] {
    font-size: 0.5rem;
}

/* Badges (matching Bhogi.Web art-badges with badge-{style}) */
.badge-danger[b-ac2q2ajib0] {
    background: linear-gradient(135deg, var(--bhogi-danger), var(--bhogi-danger));
    color: white;
}

.badge-success[b-ac2q2ajib0] {
    background: linear-gradient(135deg, var(--bhogi-success), var(--bhogi-success));
    color: white;
}

.badge-warning[b-ac2q2ajib0] {
    background: linear-gradient(135deg, #f0c040, #ffc107);
    color: #212529;
}

.badge-info[b-ac2q2ajib0] {
    background: linear-gradient(135deg, #0dcaf0, #17a2b8);
    color: white;
}

.badge-secondary[b-ac2q2ajib0] {
    background: #6c757d;
    color: white;
}

/* Rating */
.product-rating[b-ac2q2ajib0] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 0.25rem;
    font-size: 0.8125rem;
}

/* ============================================
   Variant Info (Color Swatches + Options)
   Matching Bhogi.Web Product.List.Item.Variants
   Enterprise Premium Design
   ============================================ */

.art-variant-info[b-ac2q2ajib0] {
    padding: 0.375rem var(--product-card-content-pad) 0.25rem;
    background: linear-gradient(180deg, var(--bhogi-surface-raised) 0%, var(--bhogi-surface) 100%);
    border-top: 1px solid var(--bhogi-border-light);
    margin-top: 0.25rem;
    border-radius: 0 0 var(--bhogi-radius) var(--bhogi-radius);
}

.art-color-opts[b-ac2q2ajib0] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 0.25rem;
    align-items: center;
}

.art-color-opt[b-ac2q2ajib0] {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1px solid #fff;
    box-shadow: 
        inset 0 0 0 1px rgba(0, 0, 0, 0.1),
        0 1px 2px rgba(0, 0, 0, 0.06);
    cursor: pointer;
    transition: transform 0.2s var(--bhogi-ease), box-shadow 0.2s var(--bhogi-ease);
    text-decoration: none;
    flex-shrink: 0;
}

.art-color-opt:hover[b-ac2q2ajib0] {
    transform: scale(1.15);
    box-shadow: 
        inset 0 0 0 1px rgba(0, 0, 0, 0.15),
        0 2px 4px rgba(0, 0, 0, 0.1),
        0 0 0 2px var(--bhogi-primary);
    z-index: 1;
}

/* "+X more" colors badge */
.art-color-more[b-ac2q2ajib0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    border-radius: 12px;
    background: var(--bhogi-surface);
    border: 1px solid var(--bhogi-border);
    font-size: 0.625rem;
    font-weight: 700;
    color: var(--bhogi-text-secondary);
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s var(--bhogi-ease);
    flex-shrink: 0;
}

.art-color-more:hover[b-ac2q2ajib0] {
    background: var(--bhogi-primary-light);
    border-color: var(--bhogi-primary);
    color: var(--bhogi-primary);
    transform: scale(1.05);
}

.sr-only[b-ac2q2ajib0] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.art-more-opts[b-ac2q2ajib0] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    font-size: 0.625rem;
    color: var(--bhogi-text-muted);
    line-height: 1.4;
    padding-top: 0.1875rem;
    border-top: 1px dashed var(--bhogi-border-light);
}

.art-more-opts span[b-ac2q2ajib0] {
    flex-shrink: 0;
}

.art-more-opt-link[b-ac2q2ajib0] {
    color: var(--bhogi-primary);
    text-decoration: none;
    font-size: 0.625rem;
    font-weight: 500;
}

.art-more-opt-link:hover[b-ac2q2ajib0] {
    text-decoration: underline;
    color: var(--bhogi-primary-hover);
}

.art-more-opt-link .fwm[b-ac2q2ajib0] {
    font-weight: 600;
}

/* ============================================
   Mobile Optimizations - Color Swatches
   Compact design for mobile devices
   ============================================ */

@media (max-width: 575.98px) {
    .art-variant-info[b-ac2q2ajib0] {
        padding: 0.25rem 0.125rem 0.125rem;
        margin-top: 0.125rem;
    }

    .art-color-opts[b-ac2q2ajib0] {
        gap: 4px;
        margin-bottom: 0.125rem;
    }

    .art-color-opt[b-ac2q2ajib0] {
        width: 20px;
        height: 20px;
    }

    .art-color-opt:hover[b-ac2q2ajib0] {
        transform: scale(1.1);
    }

    .art-color-more[b-ac2q2ajib0] {
        min-width: 20px;
        height: 20px;
        padding: 0 4px;
        font-size: 0.5625rem;
        border-radius: 10px;
    }

    .art-more-opts[b-ac2q2ajib0] {
        font-size: 0.5rem;
        padding-top: 0.0625rem;
    }

    .art-more-opt-link[b-ac2q2ajib0] {
        font-size: 0.5rem;
    }
}

/* Small mobile - even more compact */
@media (max-width: 374.98px) {
    .art-color-opts[b-ac2q2ajib0] {
        gap: 3px;
    }

    .art-color-opt[b-ac2q2ajib0] {
        width: 18px;
        height: 18px;
    }

    .art-color-more[b-ac2q2ajib0] {
        min-width: 18px;
        height: 18px;
        padding: 0 3px;
        font-size: 0.5rem;
        border-radius: 9px;
    }
}

/* Tablet - balanced sizing */
@media (min-width: 576px) and (max-width: 991.98px) {
    .art-variant-info[b-ac2q2ajib0] {
        padding: 0.3125rem 0.25rem 0.25rem;
    }

    .art-color-opt[b-ac2q2ajib0] {
        width: 22px;
        height: 22px;
    }

    .art-color-more[b-ac2q2ajib0] {
        min-width: 22px;
        height: 22px;
        font-size: 0.5625rem;
        padding: 0 5px;
    }
}

/* ============================================
   Action Button Group
   ============================================ */

.art-btn-group[b-ac2q2ajib0] {
    display: flex;
    gap: 0.25rem;
    margin-top: 0.5rem;
    border-top: 1px solid var(--bhogi-border-light);
    padding-top: 0.5rem;
    padding-inline: var(--product-card-content-pad);
}

.art-btn[b-ac2q2ajib0] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    height: 2rem;
    min-width: 2rem;
    border: 1px solid transparent;
    border-radius: var(--bhogi-radius-sm);
    background: transparent;
    color: var(--bhogi-text-muted);
    font-size: 0.8125rem;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.15s var(--bhogi-ease);
}

.art-btn:hover[b-ac2q2ajib0] {
    background: var(--bhogi-surface-raised);
    color: var(--bhogi-text);
    border-color: var(--bhogi-border);
}

.art-btn:active[b-ac2q2ajib0] {
    transform: scale(0.95);
}

.art-btn:disabled[b-ac2q2ajib0] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Cart button */
.art-btn-cart[b-ac2q2ajib0] {
    flex: 1 1 auto;
    color: var(--bhogi-on-primary, var(--bhogi-surface));
    font-weight: 700;
    background: var(--bhogi-primary-hover);
    border-color: var(--bhogi-primary-hover);
}

.art-btn-cart:hover[b-ac2q2ajib0] {
    background: var(--bhogi-primary-active, var(--bhogi-primary-hover));
    color: var(--bhogi-on-primary, var(--bhogi-surface));
    border-color: var(--bhogi-primary-active, var(--bhogi-primary-hover));
}

.art-btn-cart.added[b-ac2q2ajib0] {
    background: var(--bhogi-success);
    color: #fff;
    border-color: var(--bhogi-success);
}

.art-btn-label[b-ac2q2ajib0] {
    font-size: 0.75rem;
    white-space: nowrap;
}

/* Wishlist button */
.art-btn-wishlist:hover[b-ac2q2ajib0] {
    color: var(--bhogi-danger);
    border-color: #fecaca;
    background: rgba(220, 38, 38, 0.04);
}

.art-btn-wishlist.active[b-ac2q2ajib0] {
    color: var(--bhogi-danger);
    background: rgba(220, 38, 38, 0.06);
}

.art-btn-wishlist.active:hover[b-ac2q2ajib0] {
    background: var(--bhogi-danger);
    color: #fff;
}

/* Compare button */
.art-btn-compare:hover[b-ac2q2ajib0] {
    color: var(--bhogi-primary);
    border-color: #bfdbfe;
    background: var(--bhogi-primary-light);
}

.art-btn-compare.active[b-ac2q2ajib0] {
    color: var(--bhogi-primary);
    background: var(--bhogi-primary-light);
}

.art-btn-compare.active:hover[b-ac2q2ajib0] {
    background: var(--bhogi-primary);
    color: #fff;
}

/* Details button */
.art-btn-detail[b-ac2q2ajib0] {
    color: var(--bhogi-text-muted);
}

.art-btn-detail:hover[b-ac2q2ajib0] {
    color: var(--bhogi-primary);
    border-color: #bfdbfe;
    background: var(--bhogi-primary-light);
}

/* Card notification toast */
.card-notification[b-ac2q2ajib0] {
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%);
    padding: 0.4rem 0.875rem;
    border-radius: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    z-index: 20;
    animation: notifSlideUp-b-ac2q2ajib0 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    pointer-events: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.card-notification.success[b-ac2q2ajib0] {
    background: linear-gradient(135deg, #198754, #20c997);
    color: #fff;
}

.card-notification.error[b-ac2q2ajib0] {
    background: linear-gradient(135deg, #dc3545, #e74c3c);
    color: #fff;
}

.card-notification.info[b-ac2q2ajib0] {
    background: linear-gradient(135deg, #0d6efd, #4b8bff);
    color: #fff;
}

@keyframes notifSlideUp-b-ac2q2ajib0 {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0) scale(1);
    }
}

/* Keep commerce actions visible on every input type. Purchase controls must not
   depend on hover, and an invisible row creates misleading empty card space. */
.art-btn-group[b-ac2q2ajib0] {
    opacity: 1;
    transform: none;
}

/* ── Mobile (≤767px): 2-col grid, always-visible action row, compact card ── */
@media (max-width: 767px) {
    .product-card[b-ac2q2ajib0] {
        padding: 0.5rem;
        border-radius: var(--bhogi-radius);
        box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
    }

    .product-link[b-ac2q2ajib0] {
        flex-direction: column;
        gap: 0;
    }

    .product-image-box[b-ac2q2ajib0] {
        width: 100%;
        padding: 0.25rem;
        margin-bottom: 0.25rem;
        border-radius: var(--bhogi-radius-sm);
    }

    .product-image-surface[b-ac2q2ajib0] {
        min-height: 0;
    }

    /* Let aspect-ratio drive the image box — no artificial height cap */
    .product-img[b-ac2q2ajib0] {
        max-height: none !important;
    }

    .product-body[b-ac2q2ajib0] {
        min-width: 0;
        padding: 0 0.25rem;
    }

    .product-meta[b-ac2q2ajib0] {
        gap: 0.25rem;
        margin-bottom: 0;
    }

    .product-brand[b-ac2q2ajib0] {
        font-size: 0.625rem;
        min-height: 0;     /* no reserved empty space */
    }

    .product-status[b-ac2q2ajib0] {
        padding: 0.1rem 0.25rem;
        font-size: 0.5625rem;
    }

    .product-title[b-ac2q2ajib0] {
        font-size: 0.9rem;
        line-height: 1.3;
        /* release fixed height — let 2-line clamp do the work */
        height: auto;
        max-height: calc(0.9rem * 1.3 * 2);
        margin: 0.1rem 0;
    }

    /* 1-line description, no fixed height reserve */
    .product-description[b-ac2q2ajib0] {
        height: auto;
        max-height: calc(0.78rem * var(--art-line-height) * 2);
        -webkit-line-clamp: 2;
        font-size: 0.78rem;
        margin-bottom: 0.25rem;
    }

    .art-delivery-info[b-ac2q2ajib0] {
        font-size: 0.5625rem;
        margin-top: 0.1rem;
        margin-bottom: 0;
        min-height: 0;     /* no reserved empty space */
    }

    .product-price-block[b-ac2q2ajib0] {
        padding: 0.3rem 0.4rem;
        border-radius: var(--bhogi-radius-sm);
        min-height: 0;
        margin-top: 0.25rem;
        /* clip anything that still tries to overflow */
        overflow: hidden;
    }

    /* On narrow 2-col cards let price wrap to 2 lines */
    .art-price[b-ac2q2ajib0] {
        flex-wrap: wrap;
        gap: 0.2rem;
        align-items: baseline;
    }

    .art-finalprice[b-ac2q2ajib0] {
        flex: 0 0 100%; /* price on its own line */
    }

    .art-info-group[b-ac2q2ajib0] {
        flex: 0 0 100%; /* lowest + save badge on next line */
        justify-content: flex-start;
        gap: 0.3rem;
        flex-wrap: wrap;
    }

    .art-compareprice[b-ac2q2ajib0] {
        gap: 0.15rem;
    }

    .art-compareprice-label[b-ac2q2ajib0] {
        display: none; /* hide "Lowest:" label — too wide on mobile */
    }

    .art-compareprice-value[b-ac2q2ajib0] {
        font-size: 0.625rem;
    }

    .price-savings[b-ac2q2ajib0] {
        font-size: 0.5625rem;
        padding: 0.1rem 0.25rem;
        white-space: nowrap;
    }

    .price-current[b-ac2q2ajib0] {
        font-size: 0.9375rem;
    }

    .price-call[b-ac2q2ajib0] {
        font-size: 0.875rem;
    }

    /* Always show action row on mobile regardless of hover capability */
    .art-btn-group[b-ac2q2ajib0] {
        opacity: 1 !important;
        transform: none !important;
        transition: none;
        display: flex;
        flex-wrap: nowrap;
        gap: 0.25rem;
        margin-top: 0.375rem;
        padding-top: 0.375rem;
        padding-inline: 0;
        /* Prevent overflow out of card */
        overflow: hidden;
        min-width: 0;
    }

    /* All buttons: equal-sized icons on mobile so they all fit */
    .art-btn[b-ac2q2ajib0] {
        flex: 1 1 0;
        height: 2.75rem;
        min-height: 44px;
        min-width: 0;
        padding: 0;
        font-size: 0.875rem;
    }

    /* Cart button: keep filled distinct look */
    .art-btn-cart[b-ac2q2ajib0] {
        flex: 1.6 1 0; /* slightly wider to be dominant CTA */
    }

    /* Hide text label on mobile — icon only so all 4 fit */
    .art-btn-label[b-ac2q2ajib0] {
        display: none;
    }

    /* Show all action buttons on mobile */
    .art-btn-compare[b-ac2q2ajib0],
    .art-btn-detail[b-ac2q2ajib0] {
        display: inline-flex;
    }

    .art-variant-info[b-ac2q2ajib0] {
        padding: 0.25rem 0.125rem;
    }

    .art-color-opt[b-ac2q2ajib0] {
        width: 16px;
        height: 16px;
    }
}

/* ── Very small phones (≤374px): even tighter ── */
@media (max-width: 374px) {
    .product-card[b-ac2q2ajib0] {
        padding: 0.375rem;
    }

    .product-title[b-ac2q2ajib0] {
        font-size: 0.75rem;
        height: calc(0.75rem * var(--art-line-height) * 2);
    }

    .price-current[b-ac2q2ajib0] {
        font-size: 0.875rem;
    }

    .art-btn[b-ac2q2ajib0] {
        height: 2.75rem;
        min-height: 44px;
        font-size: 0.8125rem;
    }

    /* On very tiny phones (Galaxy A series ~360px) reduce cart flex so all 4 still fit */
    .art-btn-cart[b-ac2q2ajib0] {
        flex: 1.4 1 0;
    }
}
/* /Components/Catalog/StorefrontProductGrid.razor.rz.scp.css */
.storefront-product-grid[b-hrnvpn4q60] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--commerce-grid-gap, var(--storefront-grid-gap));
    width: 100%;
}

.storefront-product-grid[b-hrnvpn4q60] >  * {
    min-width: 0;
    max-width: 100%;
}

@media (min-width: 768px) {
    .storefront-product-grid[b-hrnvpn4q60] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .storefront-product-grid[b-hrnvpn4q60] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 1600px) {
    .storefront-product-grid[b-hrnvpn4q60] {
        grid-template-columns: repeat(var(--commerce-grid-columns-wide, 4), minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .storefront-product-grid--rail[b-hrnvpn4q60] {
        grid-auto-flow: column;
        grid-auto-columns: min(82vw, 21.25rem);
        grid-template-columns: none;
        gap: 0.875rem;
        margin-inline: calc(var(--storefront-gutter) * -1);
        padding: 0.25rem var(--storefront-gutter) 0.875rem;
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-padding-inline: var(--storefront-gutter);
        scroll-snap-type: inline mandatory;
        scrollbar-width: thin;
    }

    .storefront-product-grid--rail[b-hrnvpn4q60] >  * {
        scroll-snap-align: start;
        scroll-snap-stop: normal;
    }
}

@media (max-width: 389.98px) {
    .storefront-product-grid--stack[b-hrnvpn4q60] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Catalog/StorefrontSectionHeader.razor.rz.scp.css */
.storefront-section-header[b-zh8eacjzth] {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--space-lg);
    margin-bottom: clamp(1rem, 2vw, 1.5rem);
    padding-bottom: 0.875rem;
    border-bottom: 1px solid var(--commerce-header-border, var(--bhogi-border));
}

.storefront-section-header[b-zh8eacjzth]::after {
    position: absolute;
    inset-inline-start: 0;
    bottom: -1px;
    width: clamp(3.5rem, 7vw, 5.5rem);
    height: 2px;
    border-radius: var(--bhogi-radius-full);
    background: var(--commerce-header-accent, linear-gradient(90deg, var(--bhogi-primary), var(--bhogi-gold)));
    content: "";
}

.storefront-section-copy[b-zh8eacjzth] {
    min-width: 0;
}

.storefront-section-kicker[b-zh8eacjzth] {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    margin-bottom: var(--space-sm);
    padding: 0.25rem 0.625rem;
    border-radius: var(--bhogi-radius-full);
    background: var(--commerce-kicker-bg, color-mix(in srgb, var(--bhogi-primary) 9%, transparent));
    color: var(--commerce-kicker-fg, var(--bhogi-primary));
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.storefront-section-title[b-zh8eacjzth] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin: 0;
    color: var(--commerce-title, var(--bhogi-text));
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(1.5rem, 2.5vw, 2.25rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.15;
    text-wrap: balance;
}

.storefront-section-icon[b-zh8eacjzth] {
    color: var(--commerce-icon, var(--bhogi-primary));
    font-size: 0.72em;
}

.storefront-section-subtitle[b-zh8eacjzth] {
    max-width: 42rem;
    margin: 0.5rem 0 0;
    color: var(--commerce-muted, var(--bhogi-text-muted));
    font-size: clamp(0.875rem, 1.2vw, 1rem);
    line-height: 1.55;
    text-wrap: pretty;
}

.storefront-section-link[b-zh8eacjzth] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    min-height: var(--storefront-touch-target);
    padding: 0.625rem 0.875rem;
    border: 1px solid var(--commerce-link-border, var(--bhogi-border));
    border-radius: var(--bhogi-radius-full);
    background: var(--commerce-link-bg, var(--bhogi-surface));
    color: var(--commerce-link-fg, var(--bhogi-primary));
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: none;
    transition: border-color var(--bhogi-transition-fast) var(--bhogi-ease),
                box-shadow var(--bhogi-transition-fast) var(--bhogi-ease),
                transform var(--bhogi-transition-fast) var(--bhogi-ease);
}

@media (hover: hover) and (pointer: fine) {
    .storefront-section-link:hover[b-zh8eacjzth] {
        border-color: var(--bhogi-primary);
        box-shadow: var(--bhogi-shadow-sm);
        transform: translateY(-1px);
    }
}

.storefront-section-link:focus-visible[b-zh8eacjzth] {
    outline: 3px solid color-mix(in srgb, var(--bhogi-primary) 40%, transparent);
    outline-offset: 3px;
}

@media (max-width: 575.98px) {
    .storefront-section-header[b-zh8eacjzth] {
        align-items: flex-start;
        gap: var(--space-sm);
    }

    .storefront-section-link[b-zh8eacjzth] {
        min-width: var(--storefront-touch-target);
        padding-inline: 0.75rem;
    }

    .storefront-section-link span[b-zh8eacjzth] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }
}

@media (prefers-reduced-motion: reduce) {
    .storefront-section-link[b-zh8eacjzth] {
        transition: none;
    }
}
/* /Components/Diagnostics/ThemeVariableTest.razor.rz.scp.css */
.theme-test[b-v5ezfgv2p5] {
    padding: 2rem;
    background: var(--bhogi-surface-raised);
    border: 2px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-lg);
    margin: 2rem 0;
}

.test-box[b-v5ezfgv2p5] {
    padding: 2rem;
    margin: 1rem 0;
    border-radius: var(--bhogi-radius-md);
    color: var(--bhogi-text);
    font-weight: 600;
    text-align: center;
}

.test-gold[b-v5ezfgv2p5] {
    background: var(--bhogi-gradient-gold);
    color: var(--bhogi-text);
}

.test-primary[b-v5ezfgv2p5] {
    background: var(--bhogi-primary);
    color: var(--bhogi-surface);
}

.test-values[b-v5ezfgv2p5] {
    margin-top: 1rem;
    padding: 1rem;
    background: color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
    border-radius: var(--bhogi-radius-md);
}

.test-values p[b-v5ezfgv2p5] {
    margin: 0.5rem 0;
    font-family: 'Courier New', monospace;
    font-size: 0.9rem;
}

button[b-v5ezfgv2p5] {
    margin-top: 1rem;
    padding: 0.75rem 1.5rem;
    background: var(--bhogi-gradient-primary);
    color: var(--bhogi-surface);
    border: none;
    border-radius: var(--bhogi-radius-md);
    font-weight: 600;
    cursor: pointer;
    transition: var(--bhogi-transition-base);
}

button:hover[b-v5ezfgv2p5] {
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-md);
}
/* /Components/Home/Bestsellers.razor.rz.scp.css */
.featured-section[b-ywmn9ul15u] {
    --commerce-header-border: var(--cmp-bestsellers-title-border, var(--bhogi-border));
    --commerce-header-accent: var(--cmp-bestsellers-title-accent, linear-gradient(90deg, var(--bhogi-primary), var(--bhogi-gold)));
    --commerce-title: var(--cmp-bestsellers-title, var(--bhogi-text));
    --commerce-muted: var(--cmp-bestsellers-muted, var(--bhogi-text-muted));
    --commerce-kicker-bg: var(--cmp-bestsellers-kicker-bg, linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 9%, transparent), color-mix(in srgb, var(--bhogi-gold) 14%, transparent)));
    --commerce-kicker-fg: var(--cmp-bestsellers-kicker-fg, var(--bhogi-primary));
    --commerce-link-fg: var(--cmp-bestsellers-primary, var(--bhogi-primary));

    width: 100%;
    padding-block: var(--storefront-section-block);
    overflow-x: clip;
    background: var(--cmp-bestsellers-bg, linear-gradient(180deg, color-mix(in srgb, var(--bhogi-primary) 4%, var(--bhogi-surface-raised)) 0%, var(--bhogi-surface) 62%, color-mix(in srgb, var(--bhogi-gold) 4%, var(--bhogi-surface)) 100%));
}

.storefront-section-content[b-ywmn9ul15u] {
    width: min(100%, var(--storefront-content-max));
    margin-inline: auto;
    padding-inline: var(--storefront-gutter);
}

.loading-state[b-ywmn9ul15u],
.empty-state[b-ywmn9ul15u] {
    display: grid;
    min-height: 10rem;
    place-items: center;
    padding: var(--space-xl);
    border: 1px solid var(--cmp-bestsellers-state-border, var(--bhogi-border-light));
    border-radius: var(--cmp-bestsellers-state-radius, var(--bhogi-radius-lg));
    background: var(--cmp-bestsellers-state-bg, var(--bhogi-surface));
    color: var(--cmp-bestsellers-muted, var(--bhogi-text-muted));
    text-align: center;
}

.loading-state i[b-ywmn9ul15u] {
    color: var(--cmp-bestsellers-primary, var(--bhogi-primary));
    font-size: 1.5rem;
}

.empty-state p[b-ywmn9ul15u] {
    margin: 0;
}
/* /Components/Home/CampaignBannerStrip.razor.rz.scp.css */
/* ============================================
   CAMPAIGN BANNER STRIP - Tenant-configurable festival strip
   Schedulable promo ribbon shown between the hero and the trust bar
   ============================================ */

.campaign-banner[b-16l3qru83f] {
    position: relative;
    z-index: 1;
    background: var(--cmp-campaign-banner-bg, linear-gradient(135deg, var(--cmp-campaign-banner-accent, var(--bhogi-gold)) 0%, var(--bhogi-primary-dark) 100%));
    overflow: hidden;
}

.campaign-banner[b-16l3qru83f]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 0%, color-mix(in srgb, #fff 22%, transparent) 50%, transparent 100%);
    background-size: 200% 100%;
    animation: campaignBannerShimmer-b-16l3qru83f 5s linear infinite;
    pointer-events: none;
}

.campaign-banner-inner[b-16l3qru83f] {
    position: relative;
    z-index: 1;
    max-width: var(--bhogi-container-max, 1280px);
    margin: 0 auto;
    padding: 0.75rem var(--bhogi-container-padding, 1.5rem);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.875rem;
    flex-wrap: wrap;
}

.campaign-banner-icon[b-16l3qru83f] {
    flex-shrink: 0;
    font-size: 1rem;
    color: var(--cmp-campaign-banner-icon-fg, #fff);
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
}

.campaign-banner-text[b-16l3qru83f] {
    display: flex;
    align-items: baseline;
    gap: 0.625rem;
    flex-wrap: wrap;
    text-align: center;
}

.campaign-banner-title[b-16l3qru83f] {
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: var(--cmp-campaign-banner-title, #fff);
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.22);
}

.campaign-banner-subtitle[b-16l3qru83f] {
    font-size: 0.8125rem;
    font-weight: 400;
    color: var(--cmp-campaign-banner-subtitle, rgba(255, 255, 255, 0.86));
}

.campaign-banner-cta[b-16l3qru83f] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: var(--cmp-campaign-banner-cta-fg, var(--bhogi-text));
    background: var(--cmp-campaign-banner-cta-bg, #fff);
    border-radius: var(--bhogi-radius-full, 9999px);
    text-decoration: none;
    transition: all 0.2s var(--bhogi-ease);
}

.campaign-banner-cta i[b-16l3qru83f] {
    font-size: 0.6875rem;
    transition: transform 0.2s var(--bhogi-ease);
}

.campaign-banner-cta:hover[b-16l3qru83f] {
    background: var(--cmp-campaign-banner-cta-hover-bg, color-mix(in srgb, #fff 88%, transparent));
}

.campaign-banner-cta:hover i[b-16l3qru83f] {
    transform: translateX(2px);
}

.campaign-banner-cta:focus-visible[b-16l3qru83f] {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

@keyframes campaignBannerShimmer-b-16l3qru83f {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Responsive */
@media (max-width: 1024px) {
    .campaign-banner-inner[b-16l3qru83f] {
        padding: 0.6875rem 1rem;
    }
}

@media (max-width: 640px) {
    .campaign-banner-inner[b-16l3qru83f] {
        gap: 0.5rem;
        padding: 0.625rem 0.875rem;
    }

    .campaign-banner-text[b-16l3qru83f] {
        flex-direction: column;
        gap: 0.125rem;
        text-align: center;
    }

    .campaign-banner-title[b-16l3qru83f] {
        font-size: 0.8125rem;
    }

    .campaign-banner-subtitle[b-16l3qru83f] {
        font-size: 0.75rem;
    }

    .campaign-banner-cta[b-16l3qru83f] {
        padding: 0.25rem 0.625rem;
        font-size: 0.6875rem;
    }
}

@media (max-width: 380px) {
    .campaign-banner-inner[b-16l3qru83f] {
        flex-direction: column;
        gap: 0.375rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .campaign-banner[b-16l3qru83f]::before {
        animation: none !important;
    }

    .campaign-banner-cta[b-16l3qru83f],
    .campaign-banner-cta i[b-16l3qru83f] {
        transition: none !important;
    }
}
/* /Components/Home/FeaturedProducts.razor.rz.scp.css */
.featured-section[b-4bsf33pfk1] {
    --commerce-header-border: var(--cmp-featured-products-title-border, var(--bhogi-border));
    --commerce-header-accent: var(--cmp-featured-products-title-accent, linear-gradient(90deg, var(--bhogi-primary), var(--bhogi-gold)));
    --commerce-title: var(--cmp-featured-products-title, var(--bhogi-text));
    --commerce-muted: var(--cmp-featured-products-muted, var(--bhogi-text-muted));
    --commerce-kicker-bg: color-mix(in srgb, var(--bhogi-gold) 12%, transparent);
    --commerce-kicker-fg: var(--bhogi-primary);

    width: 100%;
    padding-block: var(--storefront-section-block);
    overflow-x: clip;
    background: var(--cmp-featured-products-bg, linear-gradient(180deg, var(--bhogi-surface) 0%, color-mix(in srgb, var(--bhogi-gold) 4%, var(--bhogi-surface-raised)) 100%));
}

.storefront-section-content[b-4bsf33pfk1] {
    width: min(100%, var(--storefront-content-max));
    margin-inline: auto;
    padding-inline: var(--storefront-gutter);
}

.loading-state[b-4bsf33pfk1],
.empty-state[b-4bsf33pfk1] {
    display: grid;
    min-height: 10rem;
    place-items: center;
    padding: var(--space-xl);
    border: 1px solid var(--cmp-featured-products-state-border, var(--bhogi-border-light));
    border-radius: var(--cmp-featured-products-state-radius, var(--bhogi-radius-lg));
    background: var(--cmp-featured-products-state-bg, var(--bhogi-surface));
    color: var(--cmp-featured-products-muted, var(--bhogi-text-muted));
    text-align: center;
}

.loading-state i[b-4bsf33pfk1] {
    color: var(--cmp-featured-products-primary, var(--bhogi-primary));
    font-size: 1.5rem;
}

.empty-state p[b-4bsf33pfk1] {
    margin: 0;
}
/* /Components/Home/FeaturesBar.razor.rz.scp.css */
.features-bar-marquee[b-6u6i2t5ynq] {
    overflow: hidden;
    width: 100%;
    position: relative;
    z-index: 2;
    margin-top: -1.5rem;
    container-type: inline-size;
}

/* Two identical sets keep the loop continuous, including after a resize or Blazor render. */
.features-bar-track[b-6u6i2t5ynq] {
    display: flex;
    width: max-content;
    animation: features-bar-scroll-b-6u6i2t5ynq 22s linear infinite;
    will-change: transform;
}

.features-bar[b-6u6i2t5ynq] {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    min-width: 100cqw;
    gap: 0;
}

@keyframes features-bar-scroll-b-6u6i2t5ynq {
    to { transform: translateX(-50%); }
}

.feature-item[b-6u6i2t5ynq] {
    display: flex;
    flex: 1 0 240px;
    align-items: center;
    min-width: 0;
    gap: 0.875rem;
    padding: 1.25rem 1.5rem;
    background: var(--cmp-features-bar-item-bg, var(--bhogi-surface));
    border: 1px solid var(--cmp-features-bar-item-border, var(--bhogi-border-light));
    transition: background-color 0.2s var(--bhogi-ease, ease);
    position: relative;
}

.feature-item:first-child[b-6u6i2t5ynq] {
    border-radius: var(--bhogi-radius-lg, 14px) 0 0 var(--bhogi-radius-lg, 14px);
}

.feature-item:last-child[b-6u6i2t5ynq] {
    border-radius: 0 var(--bhogi-radius-lg, 14px) var(--bhogi-radius-lg, 14px) 0;
}

.feature-item:not(:last-child)[b-6u6i2t5ynq]::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background: var(--cmp-features-bar-divider, var(--bhogi-border));
}

.feature-item:hover[b-6u6i2t5ynq] {
    background: var(--cmp-features-bar-item-hover-bg, var(--bhogi-primary-light));
    z-index: 1;
}

.feature-icon[b-6u6i2t5ynq] {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cmp-features-bar-icon-bg, color-mix(in srgb, var(--bhogi-primary-dark) 10%, transparent));
    color: var(--cmp-features-bar-icon-fg, var(--bhogi-primary));
    font-size: 1.125rem;
    border-radius: var(--bhogi-radius, 8px);
    transition: background-color 0.2s ease, color 0.2s ease;
}

.feature-item:hover .feature-icon[b-6u6i2t5ynq] {
    background: var(--cmp-features-bar-icon-hover-bg, var(--bhogi-primary));
    color: var(--cmp-features-bar-icon-hover-fg, var(--bhogi-surface));
}

.feature-content[b-6u6i2t5ynq] {
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
}

.feature-title[b-6u6i2t5ynq] {
    margin: 0 0 0.125rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--cmp-features-bar-title, var(--bhogi-text));
    letter-spacing: 0.01em;
}

.feature-description[b-6u6i2t5ynq] {
    margin: 0;
    font-size: 0.75rem;
    color: var(--cmp-features-bar-muted, var(--bhogi-text-muted));
    line-height: 1.4;
}

@media (max-width: 1024px) {
    .features-bar-marquee[b-6u6i2t5ynq] { margin-top: 0; }
    .feature-item[b-6u6i2t5ynq] { border-radius: var(--bhogi-radius, 8px); }
    .feature-item:not(:last-child)[b-6u6i2t5ynq]::after { display: none; }
}

@media (max-width: 640px) {
    .feature-item[b-6u6i2t5ynq] {
        flex: 0 0 190px;
        padding: 0.625rem 0.875rem;
        gap: 0.625rem;
        border-radius: 14px;
    }
    .feature-icon[b-6u6i2t5ynq] { width: 34px; height: 34px; font-size: 0.9375rem; border-radius: 10px; }
    .feature-title[b-6u6i2t5ynq] { font-size: 0.75rem; font-weight: 700; }
    .feature-description[b-6u6i2t5ynq] { font-size: 0.6875rem; }
}

@media (max-width: 380px) {
    .feature-item[b-6u6i2t5ynq] { flex-basis: 180px; padding: 0.5rem 0.75rem; gap: 0.5rem; }
    .feature-icon[b-6u6i2t5ynq] { width: 30px; height: 30px; font-size: 0.875rem; border-radius: 9px; }
    .feature-title[b-6u6i2t5ynq] { font-size: 0.6875rem; }
    .feature-description[b-6u6i2t5ynq] { font-size: 0.625rem; }
}

@media (prefers-reduced-motion: reduce) {
    .features-bar-track[b-6u6i2t5ynq] { animation: none; transform: none; width: 100%; will-change: auto; }
    .features-bar[b-6u6i2t5ynq] { width: 100%; min-width: 0; flex-wrap: wrap; }
    .features-bar[aria-hidden="true"][b-6u6i2t5ynq] { display: none; }
    .feature-item[b-6u6i2t5ynq] { flex: 1 1 180px; }
}
/* /Components/Home/HeroBanner.razor.rz.scp.css */
/* ============================================
   HERO BANNER - Enterprise Premium
   Full-width hero slider with cinematic effects
   ============================================ */

.hero[b-aqym8yv343] {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    background: var(--cmp-hero-banner-bg, var(--bhogi-gradient-primary));
    border-radius: 0;
    box-shadow: none;
}

/* Slides */
.hero-slides[b-aqym8yv343] {
    position: relative;
    min-height: inherit;
}

.hero-slide[b-aqym8yv343] {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s var(--bhogi-ease), visibility 0.6s var(--bhogi-ease);
}

.hero-slide.active[b-aqym8yv343] {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    opacity: 1;
    visibility: visible;
}

.hero-background[b-aqym8yv343] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    transition: transform 5s ease-out;
}

.hero-slide.active .hero-background[b-aqym8yv343] {
    transform: scale(1);
}

.hero-background-video[b-aqym8yv343] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hero-overlay[b-aqym8yv343] {
    position: absolute;
    inset: 0;
    background: var(--cmp-hero-banner-overlay, linear-gradient(to right, color-mix(in srgb, var(--bhogi-text) 90%, transparent) 0%, color-mix(in srgb, var(--bhogi-primary) 55%, transparent) 45%, color-mix(in srgb, var(--bhogi-text) 14%, transparent) 100%));
}

/* Content */
.hero-content[b-aqym8yv343] {
    position: relative;
    z-index: 2;
    max-width: 580px;
    padding: 4rem 1rem;
    overflow-wrap: anywhere;
}

.hero-slide.active .hero-content[b-aqym8yv343] {
    animation: heroFadeInUp-b-aqym8yv343 0.7s var(--bhogi-ease-spring);
}

@keyframes heroFadeInUp-b-aqym8yv343 {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-badge[b-aqym8yv343] {
    display: inline-flex;
    align-items: center;
    padding: 0.3125rem 0.875rem;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--cmp-hero-banner-badge-fg, var(--bhogi-text));
    background: var(--cmp-hero-banner-badge-bg, var(--bhogi-gradient-gold));
    border-radius: var(--bhogi-radius-sm);
    margin-bottom: 1.25rem;
    box-shadow: var(--cmp-hero-banner-badge-shadow, var(--bhogi-shadow-gold));
}

.hero-title[b-aqym8yv343] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 3.25rem;
    font-weight: 700;
    line-height: 1.1;
    color: var(--cmp-hero-banner-title, #fff);
    margin-bottom: 1rem;
    letter-spacing: -0.02em;
    text-shadow: 0 2px 18px rgba(0, 0, 0, 0.32);
}

.hero-subtitle[b-aqym8yv343] {
    font-size: 1rem;
    line-height: 1.7;
    color: var(--cmp-hero-banner-subtitle, rgba(255, 255, 255, 0.88));
    margin-bottom: 2rem;
    max-width: 440px;
    font-weight: 400;
    text-shadow: 0 1px 12px rgba(0, 0, 0, 0.28);
}

.hero-actions[b-aqym8yv343] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.hero-actions .btn-accent[b-aqym8yv343] {
    color: var(--cmp-hero-banner-cta-fg, var(--bhogi-text));
    background: var(--cmp-hero-banner-cta-bg, var(--bhogi-gradient-gold));
    border-color: var(--cmp-hero-banner-cta-bg, var(--bhogi-gold));
    font-weight: 700;
    text-shadow: none;
    box-shadow: var(--cmp-hero-banner-cta-shadow, var(--bhogi-shadow-gold, 0 8px 24px rgba(0, 0, 0, 0.22)));
    transition: transform 200ms var(--bhogi-ease-out, ease-out), box-shadow 200ms var(--bhogi-ease-out, ease-out), background 200ms ease, border-color 200ms ease, color 200ms ease;
}

.hero-actions .btn-accent:hover[b-aqym8yv343],
.hero-actions .btn-accent:focus-visible[b-aqym8yv343] {
    color: var(--cmp-hero-banner-cta-hover-fg, var(--bhogi-text));
    background: var(--cmp-hero-banner-cta-hover-bg, var(--bhogi-gold-hover, var(--bhogi-gold)));
    border-color: var(--cmp-hero-banner-cta-hover-bg, var(--bhogi-gold-hover, var(--bhogi-gold)));
    transform: translateY(-2px);
}

.hero-dot:focus-visible[b-aqym8yv343],
.hero-arrow:focus-visible[b-aqym8yv343],
.hero-actions .btn:focus-visible[b-aqym8yv343] {
    outline: 3px solid #fff;
    outline-offset: 3px;
}

/* Navigation Dots */
.hero-dots[b-aqym8yv343] {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 0.5rem;
    z-index: 10;
}

.hero-dot[b-aqym8yv343] {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
    background-color: var(--cmp-hero-banner-dot-bg, color-mix(in srgb, var(--bhogi-surface) 30%, transparent));
    border: none;
    transition: all 0.3s var(--bhogi-ease);
    cursor: pointer;
    padding: 0;
}

.hero-dot:hover[b-aqym8yv343] {
    background-color: var(--cmp-hero-banner-dot-hover-bg, color-mix(in srgb, var(--bhogi-surface) 55%, transparent));
}

.hero-dot.active[b-aqym8yv343] {
    background: var(--cmp-hero-banner-dot-active-bg, var(--bhogi-gradient-gold));
    width: 28px;
    box-shadow: var(--cmp-hero-banner-dot-active-shadow, var(--bhogi-shadow-gold));
}

/* Arrow Navigation */
.hero-arrow[b-aqym8yv343] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--cmp-hero-banner-arrow-bg, color-mix(in srgb, var(--bhogi-platinum-100) 8%, transparent));
    color: var(--cmp-hero-banner-arrow-fg, color-mix(in srgb, var(--bhogi-surface) 70%, transparent));
    border: 1px solid var(--cmp-hero-banner-arrow-border, color-mix(in srgb, var(--bhogi-surface) 12%, transparent));
    border-radius: 50%;
    backdrop-filter: blur(8px);
    transition: all 0.2s var(--bhogi-ease);
    z-index: 10;
    opacity: 0;
    cursor: pointer;
    font-size: 0.75rem;
}

.hero:hover .hero-arrow[b-aqym8yv343] {
    opacity: 1;
}

.hero-arrow:hover[b-aqym8yv343] {
    background: var(--cmp-hero-banner-arrow-hover-bg, linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold) 24%, transparent) 0%, color-mix(in srgb, var(--bhogi-primary) 22%, transparent) 100%));
    color: var(--cmp-hero-banner-arrow-hover-fg, var(--bhogi-surface));
    border-color: var(--cmp-hero-banner-arrow-hover-border, color-mix(in srgb, var(--bhogi-gold) 26%, transparent));
}

.hero-arrow-prev[b-aqym8yv343] {
    left: 1.5rem;
}

.hero-arrow-next[b-aqym8yv343] {
    right: 1.5rem;
}

/* Decorative Elements */
.hero-decoration[b-aqym8yv343] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.decoration-circle[b-aqym8yv343] {
    position: absolute;
    border-radius: 50%;
    background: var(--cmp-hero-banner-decoration-1, radial-gradient(circle, color-mix(in srgb, var(--bhogi-primary) 16%, transparent) 0%, transparent 70%));
}

.decoration-circle-1[b-aqym8yv343] {
    width: 600px;
    height: 600px;
    top: -200px;
    right: -100px;
}

.decoration-circle-2[b-aqym8yv343] {
    width: 400px;
    height: 400px;
    bottom: -150px;
    left: -100px;
    background: var(--cmp-hero-banner-decoration-2, radial-gradient(circle, color-mix(in srgb, var(--bhogi-gold) 14%, transparent) 0%, transparent 70%));
}

/* Responsive */
@media (max-width: 1024px) {
    .hero[b-aqym8yv343] {
        min-height: 480px;
    }

    .hero-title[b-aqym8yv343] {
        font-size: 2.75rem;
    }

    .hero-content[b-aqym8yv343] {
        padding-block: 3.5rem;
    }
}

@media (max-width: 768px) {
    .hero[b-aqym8yv343] {
        min-height: 380px;
        border-radius: 0;
    }

    .hero-overlay[b-aqym8yv343] {
        background: var(--cmp-hero-banner-overlay-mobile, linear-gradient(to bottom, color-mix(in srgb, var(--bhogi-primary) 24%, transparent) 0%, color-mix(in srgb, var(--bhogi-text) 88%, transparent) 100%));
    }

    .hero-content[b-aqym8yv343] {
        padding: 3rem 1rem;
        text-align: center;
        margin: 0 auto;
    }

    .hero-title[b-aqym8yv343] {
        font-size: 2rem;
    }

    .hero-subtitle[b-aqym8yv343] {
        font-size: 0.9375rem;
        margin-inline: auto;
    }

    .hero-actions[b-aqym8yv343] {
        justify-content: center;
    }

    .hero-arrow[b-aqym8yv343] {
        display: none;
    }
}

@media (max-width: 480px) {
    .hero[b-aqym8yv343] {
        min-height: 360px;
        border-radius: 0;
    }

    .hero-content[b-aqym8yv343] {
        padding-block: 2.75rem;
    }

    .hero-title[b-aqym8yv343] {
        font-size: 1.625rem;
    }

    .hero-actions[b-aqym8yv343] {
        flex-direction: column;
        align-items: center;
    }

    .hero-actions .btn[b-aqym8yv343] {
        width: 100%;
        max-width: 280px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-slide[b-aqym8yv343],
    .hero-background[b-aqym8yv343],
    .hero-content[b-aqym8yv343],
    .hero-dot[b-aqym8yv343],
    .hero-arrow[b-aqym8yv343] {
        animation: none !important;
        transition: none !important;
    }
}
/* /Components/Home/HomeCmsZone.razor.rz.scp.css */
/* ── HomeCmsZone skeleton loader ── */
.cms-zone-skeleton[b-paxyji1ndm] {
    padding: 2rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 1400px;
    margin: 0 auto;
}

.cms-zone-skeleton__bar[b-paxyji1ndm] {
    height: 1.5rem;
    border-radius: 6px;
    background: linear-gradient(
        90deg,
        color-mix(in srgb, currentColor 8%, transparent) 0%,
        color-mix(in srgb, currentColor 16%, transparent) 50%,
        color-mix(in srgb, currentColor 8%, transparent) 100%
    );
    background-size: 200% 100%;
    animation: cms-skeleton-shimmer-b-paxyji1ndm 1.4s ease-in-out infinite;
    width: 100%;
}

.cms-zone-skeleton__bar--short[b-paxyji1ndm] {
    width: 60%;
    height: 1rem;
}

@keyframes cms-skeleton-shimmer-b-paxyji1ndm {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ============================================
   SECTION / TITLE / SUBTITLE
   Mirrors HomeSurface.razor.css so instances rendered through this
   generic zone component (category/product pages) get identical
   heading/subheading styling to the home page.
   ============================================ */
.image-showcase-section[b-paxyji1ndm] {
    padding: 0 var(--bhogi-container-padding, 1rem);
    margin: 0;
    /* Positioning context for the per-section theme-customize icon (Part 4 of the
       per-component theme editor) — offset-free, so it changes nothing about normal layout. */
    position: relative;
}

/* ── Per-section "customize colors" icon + editor panel anchor ── */
.cms-theme-toggle-wrap[b-paxyji1ndm] {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 40;
}

.cms-theme-toggle-btn[b-paxyji1ndm] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-surface, #fff) 88%, transparent);
    color: var(--bhogi-primary, #2563eb);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 9999px;
    cursor: pointer;
    font-size: 0.85rem;
    opacity: 0.55;
    box-shadow: 0 2px 10px rgba(0,0,0,0.12);
    transition: opacity 160ms ease, transform 160ms ease;
}
.cms-theme-toggle-wrap:hover .cms-theme-toggle-btn[b-paxyji1ndm],
.cms-theme-toggle-btn:focus-visible[b-paxyji1ndm] {
    opacity: 1;
    transform: scale(1.06);
}

@media (min-width: 768px) {
    .image-showcase-section[b-paxyji1ndm] {
        padding: 0 var(--bhogi-container-padding-md, 1.5rem);
    }
}

@media (min-width: 1200px) {
    .image-showcase-section[b-paxyji1ndm] {
        padding: 0 var(--bhogi-container-padding-lg, 2rem);
    }
}

.image-showcase-section--spacious[b-paxyji1ndm] {
    padding-top: 0;
    padding-bottom: 0;
}

.image-showcase-title[b-paxyji1ndm] {
    text-align: center;
    margin: 0 auto;
    margin-top: var(--space-md);
    padding: 0 1rem;
    margin-bottom: 0.75rem;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(1.65rem, 3.25vw, 2.25rem);
    font-weight: 700;
    color: var(--bhogi-text);
    letter-spacing: -0.02em;
    line-height: 1.15;
    max-width: 800px;
}

@media (min-width: 768px) {
    .image-showcase-title[b-paxyji1ndm] {
        margin-top: var(--space-lg);
        margin-bottom: 1rem;
    }
}

@media (min-width: 1200px) {
    .image-showcase-title[b-paxyji1ndm] {
        margin-bottom: 1.25rem;
    }
}

.image-showcase-title--underline[b-paxyji1ndm] {
    position: relative;
    padding-bottom: 0.65rem;
}

.image-showcase-title--underline[b-paxyji1ndm]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 56px;
    height: 3px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.55;
}

.image-showcase-title--align-left.image-showcase-title--underline[b-paxyji1ndm]::after {
    left: 0;
    transform: none;
}

.image-showcase-title--align-right.image-showcase-title--underline[b-paxyji1ndm]::after {
    left: auto;
    right: 0;
    transform: none;
}

.image-showcase-title--accent-bar[b-paxyji1ndm] {
    position: relative;
    padding-left: 1.1rem;
}

.image-showcase-title--accent-bar[b-paxyji1ndm]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.15em;
    bottom: 0.15em;
    width: 4px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.7;
}

.image-showcase-title--align-center.image-showcase-title--accent-bar[b-paxyji1ndm] {
    padding-left: 0;
    padding-top: 1.1rem;
}

.image-showcase-title--align-center.image-showcase-title--accent-bar[b-paxyji1ndm]::before {
    left: 50%;
    top: 0;
    bottom: auto;
    transform: translateX(-50%);
    width: 40px;
    height: 4px;
}

.image-showcase-title--divider[b-paxyji1ndm] {
    padding-bottom: 0.85rem;
    border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent);
}

.image-showcase-title--align-left[b-paxyji1ndm] {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
}

.image-showcase-title--align-right[b-paxyji1ndm] {
    text-align: right;
    margin-left: auto;
    margin-right: 0;
}

.image-showcase-subtitle[b-paxyji1ndm] {
    text-align: center;
    margin: 0 auto;
    margin-top: -0.35rem;
    margin-bottom: 1rem;
    padding: 0 1rem;
    font-size: clamp(0.95rem, 1.5vw, 1.1rem);
    line-height: 1.5;
    max-width: 640px;
    opacity: 0.85;
}

.image-showcase-subtitle--align-left[b-paxyji1ndm] {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
}

.image-showcase-subtitle--align-right[b-paxyji1ndm] {
    text-align: right;
    margin-left: auto;
    margin-right: 0;
}

@media (min-width: 768px) {
    .image-showcase-subtitle[b-paxyji1ndm] {
        margin-bottom: 1.25rem;
    }
}

.component-container[b-paxyji1ndm] {
    width: 100%;
    max-width: var(--bhogi-container-max, 1280px);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

/* Keep components rendered on category/product CMS zones aligned with the
   same edge contract as the home page. Vertical component padding remains
   untouched; only duplicated outer horizontal insets are removed. */
.component-container[b-paxyji1ndm] >  * {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
}

.component-container[b-paxyji1ndm]  .background-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-inline: var(--bhogi-page-gutter, 2px) !important;
    box-sizing: border-box;
}

.component-container[b-paxyji1ndm]  .carousel-showcase,
.component-container[b-paxyji1ndm]  .carousel-container,
.component-container[b-paxyji1ndm]  .collection-slider-container,
.component-container[b-paxyji1ndm]  .category-slider-container,
.component-container[b-paxyji1ndm]  .brand-showcase,
.component-container[b-paxyji1ndm]  .shopby-collection,
.component-container[b-paxyji1ndm]  .shopby-single,
.component-container[b-paxyji1ndm]  .shopby-grid9x9,
.component-container[b-paxyji1ndm]  .cube-slider-container-section,
.component-container[b-paxyji1ndm]  .icon-marquee,
.component-container[b-paxyji1ndm]  .feature-slider,
.component-container[b-paxyji1ndm]  .feature-marquee,
.component-container[b-paxyji1ndm]  .home,
.component-container[b-paxyji1ndm]  .cmasonry,
.component-container[b-paxyji1ndm]  .gallery-wall,
.component-container[b-paxyji1ndm]  .carousel-container-margins,
.component-container[b-paxyji1ndm]  [data-framed-circular-gallery] .framed-gallery,
.component-container[b-paxyji1ndm]  .framed-gallery,
.component-container[b-paxyji1ndm]  .card-effect-container,
.component-container[b-paxyji1ndm]  .topdiscounts-slider-container,
.component-container[b-paxyji1ndm]  .world-container,
.component-container[b-paxyji1ndm]  .royal-frame-theme {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}

/* Product card stacks and cubes own their dimensions and centering. */
.component-container[b-paxyji1ndm]  .swiper:not(.card-effect-product-swiper):not(.cube-swiper) {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
}
/* /Components/Home/HomeLoadingProgress.razor.rz.scp.css */
.home-loading-boundary[b-3bnvc4cvro] {
    width: 100%;
    padding: 0.5rem 0 1rem;
    scroll-margin-top: 1rem;
}

.home-loading-panel[b-3bnvc4cvro] {
    position: relative;
    overflow: hidden;
    width: 100%;
    min-height: 136px;
    padding: 1rem 1rem 1.1rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-primary, #0f766e) 18%, #d9e3e2);
    border-radius: 8px;
    background: color-mix(in srgb, var(--bhogi-surface, #fff) 96%, var(--bhogi-gold, #b7791f));
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
}

.home-loading-panel__header[b-3bnvc4cvro],
.home-loading-panel__content[b-3bnvc4cvro] {
    display: flex;
    align-items: center;
}

.home-loading-panel__header[b-3bnvc4cvro] {
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.85rem;
}

.home-loading-panel__eyebrow[b-3bnvc4cvro],
.home-loading-panel__percent[b-3bnvc4cvro],
.home-loading-panel__content p[b-3bnvc4cvro] {
    margin: 0;
    color: color-mix(in srgb, var(--bhogi-text, #1f2937) 62%, transparent);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0;
}

.home-loading-panel__eyebrow[b-3bnvc4cvro] {
    text-transform: uppercase;
}

.home-loading-panel__percent[b-3bnvc4cvro] {
    color: var(--bhogi-primary, #0f766e);
    font-variant-numeric: tabular-nums;
}

.home-loading-panel__content[b-3bnvc4cvro] {
    gap: 0.8rem;
}

.home-loading-panel__content h2[b-3bnvc4cvro] {
    margin: 0 0 0.2rem;
    color: var(--bhogi-text, #1f2937);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.25;
}

.home-loading-panel__spinner[b-3bnvc4cvro] {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    border: 3px solid color-mix(in srgb, var(--bhogi-primary, #0f766e) 16%, transparent);
    border-top-color: var(--bhogi-primary, #0f766e);
    border-right-color: var(--bhogi-gold, #b7791f);
    border-radius: 50%;
    animation: home-panel-spin-b-3bnvc4cvro 0.9s linear infinite;
}

.home-loading-panel__track[b-3bnvc4cvro] {
    position: relative;
    overflow: hidden;
    height: 7px;
    margin-top: 1rem;
    border-radius: 7px;
    background: color-mix(in srgb, var(--bhogi-primary, #0f766e) 11%, #fff);
}

.home-loading-panel__fill[b-3bnvc4cvro] {
    position: absolute;
    inset: 0 auto 0 0;
    min-width: 5%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--bhogi-primary, #0f766e), var(--bhogi-gold, #b7791f));
    transition: width 0.45s ease;
}

.home-loading-panel__glint[b-3bnvc4cvro] {
    position: absolute;
    inset: 0;
    width: 34%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.68), transparent);
    animation: home-panel-glint-b-3bnvc4cvro 1.6s ease-in-out infinite;
}

@keyframes home-panel-spin-b-3bnvc4cvro {
    to { transform: rotate(360deg); }
}

@keyframes home-panel-glint-b-3bnvc4cvro {
    from { transform: translateX(-120%); }
    to { transform: translateX(320%); }
}

@media (min-width: 768px) {
    .home-loading-panel[b-3bnvc4cvro] {
        min-height: 148px;
        padding: 1.15rem 1.25rem 1.25rem;
    }

    .home-loading-panel__content h2[b-3bnvc4cvro] {
        font-size: 1.1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-loading-panel__spinner[b-3bnvc4cvro],
    .home-loading-panel__glint[b-3bnvc4cvro] {
        animation: none;
    }
}
/* /Components/Home/HomeSurface.razor.rz.scp.css */
/* ============================================
   HOME PAGE - Bhogi Enterprise Premium Theme
   NOTE: This file was relocated here from
   Bhogi.Public/Components/Pages/Home.razor.css.
   Home.razor's entire markup is just <HomeSurface />
   with no literal HTML elements of its own, so Blazor's
   CSS isolation could never scope these rules to anything -
   every selector below targets elements that are actually
   written inside HomeSurface.razor's own template.
   ============================================ */

/* CSS Custom Properties for consistent sizing are defined globally in
   app.css's :root block — a :root rule inside an isolated .razor.css file
   can never match <html> (Blazor's scope attribute is only ever added to
   elements this component itself renders), so it would silently do nothing. */

.page[b-wgfw3d6h2x] {
    position: relative;
    /* Removed z-index: 1 — it created a stacking context on the home page that
       competed with the header's mega-menu (z-index: 1030) causing compositing
       layer conflicts and flicker when hovering over the mega-menu. */
    background:
        radial-gradient(ellipse at 10% 0%, color-mix(in srgb, var(--bhogi-primary) 4%, transparent) 0%, transparent 50%),
        radial-gradient(ellipse at 90% 100%, color-mix(in srgb, var(--bhogi-gold) 3%, transparent) 0%, transparent 50%),
        var(--bhogi-surface, #FFFEF8);
}

.home-page[b-wgfw3d6h2x] {
    overflow-anchor: none;
}

/* Homepage-wide theme control. It persists on the page root, while individual
   component overrides remain more specific and therefore continue to win. */
.home-page-theme-toggle-wrap[b-wgfw3d6h2x] {
    position: absolute;
    top: 8px;
    right: max(2px, env(safe-area-inset-right));
    z-index: 70;
}

.home-page-theme-toggle-btn[b-wgfw3d6h2x] {
    width: 40px;
    height: 40px;
    opacity: 0.9;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.2);
}

.home-page-theme-toggle-btn:hover[b-wgfw3d6h2x],
.home-page-theme-toggle-btn:focus-visible[b-wgfw3d6h2x] {
    opacity: 1;
}

.page-body[b-wgfw3d6h2x] {
    max-width: var(--bhogi-container-max);
    margin: 0 auto;
    padding: 0 var(--bhogi-container-padding);
    /* Use flexbox with gap for consistent vertical spacing */
    display: flex;
    flex-direction: column;
    gap: var(--section-gap);
}

@media (min-width: 576px) {
    .page-body[b-wgfw3d6h2x] {
        padding: 0 var(--bhogi-container-padding-md);
    }
}

@media (min-width: 768px) {
    .page-body[b-wgfw3d6h2x] {
        gap: var(--section-gap-md);
    }
}

@media (min-width: 992px) {
    .page-body[b-wgfw3d6h2x] {
        padding: 0 var(--bhogi-container-padding-lg);
    }
}

@media (min-width: 1200px) {
    .page-body[b-wgfw3d6h2x] {
        padding: 0 2.5rem;
        gap: var(--section-gap-lg);
    }
}

/* First block: no top margin on title */
.page-body[b-wgfw3d6h2x] >  .block:first-child .block-title {
    padding-top: 0;
}

/* ============================================
   SECTION LAYOUT - Consistent Vertical Rhythm
   ============================================ */
.image-showcase-section[b-wgfw3d6h2x] {
    /* No vertical padding - gap handles spacing between sections */
    padding: 0 var(--bhogi-container-padding);
    margin: 0;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    /* Positioning context for the per-section theme-customize icon (Part 4 of the
       per-component theme editor) — offset-free, so it changes nothing about normal layout. */
    position: relative;
}

/* ── Per-section "customize colors" icon + editor panel anchor ── */
.cms-theme-toggle-wrap[b-wgfw3d6h2x] {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 40;
}

.cms-theme-toggle-btn[b-wgfw3d6h2x] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-surface, #fff) 88%, transparent);
    color: var(--bhogi-primary, #2563eb);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 9999px;
    cursor: pointer;
    font-size: 0.85rem;
    opacity: 0.55;
    box-shadow: 0 2px 10px rgba(0,0,0,0.12);
    transition: opacity 160ms ease, transform 160ms ease;
}
.cms-theme-toggle-wrap:hover .cms-theme-toggle-btn[b-wgfw3d6h2x],
.cms-theme-toggle-btn:focus-visible[b-wgfw3d6h2x] {
    opacity: 1;
    transform: scale(1.06);
}

/* CMS components are independently authored and can be swapped in any order.
   Keep every instance inside the page column, including its carousel viewport,
   without constraining Swiper's internal track (which must remain wider to slide). */
.component-container[b-wgfw3d6h2x] {
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

@supports (overflow: clip) {
    .image-showcase-section[b-wgfw3d6h2x],
    .component-container[b-wgfw3d6h2x] {
        overflow: clip;
    }
}

.component-container[b-wgfw3d6h2x] >  * {
    min-width: 0;
    max-width: 100%;
}

.component-container[b-wgfw3d6h2x]  .swiper,
.component-container[b-wgfw3d6h2x]  .swiper-container,
.component-container[b-wgfw3d6h2x]  .swiper-viewport {
    min-width: 0;
    max-width: 100%;
}

.component-container[b-wgfw3d6h2x]  img,
.component-container[b-wgfw3d6h2x]  svg,
.component-container[b-wgfw3d6h2x]  video,
.component-container[b-wgfw3d6h2x]  canvas {
    max-inline-size: 100%;
}

/* Decorative transforms must stay within their assigned CMS section. This
   prevents neighbouring components from painting over one another when an
   image is unusually tall/wide or a carousel applies an active-slide scale. */
.component-container[b-wgfw3d6h2x]  .swiper-slide,
.component-container[b-wgfw3d6h2x]  [class*="image-frame"],
.component-container[b-wgfw3d6h2x]  [class*="card"] {
    min-width: 0;
}

@media (hover: none), (max-width: 767px) {
    /* Never override .swiper-slide transforms here. Swiper effects (especially
       CubeSlider) own inline 3D transforms; forcing transform:none on hover makes
       a face snap flat whenever pointer hit-testing briefly lands on it. */
    .component-container[b-wgfw3d6h2x]  [class*="item-wrapper"]:hover,
    .component-container[b-wgfw3d6h2x]  [class*="grid-cell"]:hover,
    .component-container[b-wgfw3d6h2x]  [class*="image-wrapper"]:hover {
        transform: none !important;
    }
}

@media (min-width: 768px) {
    .image-showcase-section[b-wgfw3d6h2x] {
        padding: 0 var(--bhogi-container-padding-md);
    }
}

@media (min-width: 1200px) {
    .image-showcase-section[b-wgfw3d6h2x] {
        padding: 0 var(--bhogi-container-padding-lg);
    }
}

/* Spacious variant - adds internal padding for visual breathing room */
.image-showcase-section--spacious[b-wgfw3d6h2x] {
    padding-top: 0;
    padding-bottom: 0;
}

/* Compact variant - minimal internal spacing */
.image-showcase-section--compact[b-wgfw3d6h2x] {
    padding-top: 0;
    padding-bottom: 0;
}

/* ============================================
   SECTION BACKGROUNDS
   Single unified background - no alternating
   All sections share the same clean white background
   ============================================ */

/* Remove all background variations - keep everything unified */
.image-showcase-section--soft[b-wgfw3d6h2x],
.image-showcase-section--midnight[b-wgfw3d6h2x],
.image-showcase-section--midnight-solid[b-wgfw3d6h2x],
.image-showcase-section--aurora[b-wgfw3d6h2x],
.image-showcase-section--platinum[b-wgfw3d6h2x],
.image-showcase-section--sunrise[b-wgfw3d6h2x],
.image-showcase-section--cosmos[b-wgfw3d6h2x] {
    background: transparent;
}

/* ============================================
   SECTION TITLES
   ============================================ */
.image-showcase-title[b-wgfw3d6h2x] {
    text-align: center;
    margin: 0 auto;
    margin-top: var(--space-md);
    padding: 0 1rem;
    margin-bottom: 0.75rem;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(1.65rem, 3.25vw, 2.25rem);
    font-weight: 700;
    color: var(--bhogi-text);
    letter-spacing: -0.02em;
    line-height: 1.15;
    max-width: 800px;
}

@media (max-width: 767px) {
    .page-body[b-wgfw3d6h2x] {
        gap: 1.5rem;
    }

    .image-showcase-section[b-wgfw3d6h2x] {
        padding-inline: 0;
    }

    .component-container[b-wgfw3d6h2x]  [class*="swiper-button"],
    .component-container[b-wgfw3d6h2x]  [class*="swiper-pagination"] {
        max-inline-size: calc(100% - 1rem);
    }

    .image-showcase-title[b-wgfw3d6h2x] {
        margin-top: 0;
        margin-bottom: 0.625rem;
        font-size: clamp(1.5rem, 6vw, 1.85rem) !important;
        line-height: 1.2;
        letter-spacing: -0.015em !important;
        text-transform: none !important;
    }

    .image-showcase-subtitle[b-wgfw3d6h2x] {
        margin-bottom: 0.875rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .home-section-reveal[b-wgfw3d6h2x] {
        animation: none !important;
        transition: none !important;
    }
}

.home-page[b-wgfw3d6h2x]  .swiper.is-static-carousel .swiper-pagination,
.home-page[b-wgfw3d6h2x]  .swiper-pagination-bullet:only-child {
    display: none !important;
}

.home-page[b-wgfw3d6h2x]  .swiper:focus-visible {
    outline: 3px solid var(--bhogi-gold);
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .home-page[b-wgfw3d6h2x]  .swiper-wrapper,
    .home-page[b-wgfw3d6h2x]  .swiper-slide {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
    }
}

@media (min-width: 768px) {
    .image-showcase-title[b-wgfw3d6h2x] {
        margin-top: var(--space-lg);
        margin-bottom: 1rem;
    }
}

@media (min-width: 1200px) {
    .image-showcase-title[b-wgfw3d6h2x] {
        margin-bottom: 1.25rem;
    }
}

/* Ensure consistent spacing between sections without pushing the title away from its component */
.image-showcase-section--spacious[b-wgfw3d6h2x] {
    padding-top: 0;
    padding-bottom: 0;
}

@media (min-width: 768px) {
    .image-showcase-section--spacious[b-wgfw3d6h2x] {
        padding-bottom: 0;
    }
}

@media (min-width: 1200px) {
    .image-showcase-section--spacious[b-wgfw3d6h2x] {
        padding-bottom: 0;
    }
}

.image-showcase-title--light[b-wgfw3d6h2x] {
    color: var(--bhogi-surface);
    text-shadow: 0 2px 8px color-mix(in srgb, var(--bhogi-text) 35%, transparent);
}

/* ============================================
   HEADING DISPLAY-STYLE PRESETS (Component CMS)
   Inline style="" from HeadingStyleResolver already sets font/color/weight/
   align; these classes only add the decorative treatment per preset.
   "plain" (default) intentionally adds nothing, matching pre-feature look.
   ============================================ */
.image-showcase-title--underline[b-wgfw3d6h2x] {
    position: relative;
    padding-bottom: 0.65rem;
}

.image-showcase-title--underline[b-wgfw3d6h2x]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 56px;
    height: 3px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.55;
}

.image-showcase-title--align-left.image-showcase-title--underline[b-wgfw3d6h2x]::after {
    left: 0;
    transform: none;
}

.image-showcase-title--align-right.image-showcase-title--underline[b-wgfw3d6h2x]::after {
    left: auto;
    right: 0;
    transform: none;
}

.image-showcase-title--accent-bar[b-wgfw3d6h2x] {
    position: relative;
    padding-left: 1.1rem;
}

.image-showcase-title--accent-bar[b-wgfw3d6h2x]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.15em;
    bottom: 0.15em;
    width: 4px;
    border-radius: 2px;
    background: currentColor;
    opacity: 0.7;
}

.image-showcase-title--align-center.image-showcase-title--accent-bar[b-wgfw3d6h2x] {
    padding-left: 0;
    padding-top: 1.1rem;
}

.image-showcase-title--align-center.image-showcase-title--accent-bar[b-wgfw3d6h2x]::before {
    left: 50%;
    top: 0;
    bottom: auto;
    transform: translateX(-50%);
    width: 40px;
    height: 4px;
}

.image-showcase-title--divider[b-wgfw3d6h2x] {
    padding-bottom: 0.85rem;
    border-bottom: 1px solid color-mix(in srgb, currentColor 20%, transparent);
}

.image-showcase-title--align-left[b-wgfw3d6h2x] {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
}

.image-showcase-title--align-right[b-wgfw3d6h2x] {
    text-align: right;
    margin-left: auto;
    margin-right: 0;
}

.image-showcase-subtitle[b-wgfw3d6h2x] {
    text-align: center;
    margin: 0 auto;
    margin-top: -0.35rem;
    margin-bottom: 1rem;
    padding: 0 1rem;
    font-size: clamp(0.95rem, 1.5vw, 1.1rem);
    line-height: 1.5;
    max-width: 640px;
    opacity: 0.85;
}

.image-showcase-subtitle--align-left[b-wgfw3d6h2x] {
    text-align: left;
    margin-left: 0;
    margin-right: auto;
}

.image-showcase-subtitle--align-right[b-wgfw3d6h2x] {
    text-align: right;
    margin-left: auto;
    margin-right: 0;
}

@media (min-width: 768px) {
    .image-showcase-subtitle[b-wgfw3d6h2x] {
        margin-bottom: 1.25rem;
    }
}

/* ============================================
   UNIFIED COMPONENT CONTAINER
   This is the single source of truth for width
   ============================================ */
.component-container[b-wgfw3d6h2x] {
    width: 100%;
    max-width: var(--bhogi-container-max);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

/* Full-width variant for colored sections */
.component-container--full[b-wgfw3d6h2x] {
    max-width: 100%;
}

/* ============================================
   FORCE ALL CHILD COMPONENTS TO 100% WIDTH
   Override component's internal max-width/margin
   ============================================ */
.component-container > *[b-wgfw3d6h2x] {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Component edge contract: the page owns the 2px viewport gutter. Component
   shells may keep vertical breathing room, but must not add another horizontal
   inset around the actual showcase content. */
.component-container[b-wgfw3d6h2x]  .background-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-inline: var(--bhogi-page-gutter, 2px) !important;
    box-sizing: border-box;
}

/* Inner containers should be full width with no margin */
.component-container[b-wgfw3d6h2x]  .carousel-showcase,
.component-container[b-wgfw3d6h2x]  .carousel-container,
.component-container[b-wgfw3d6h2x]  .collection-slider-container,
.component-container[b-wgfw3d6h2x]  .category-slider-container,
.component-container[b-wgfw3d6h2x]  .brand-showcase,
.component-container[b-wgfw3d6h2x]  .shopby-collection,
.component-container[b-wgfw3d6h2x]  .shopby-single,
.component-container[b-wgfw3d6h2x]  .shopby-grid9x9,
.component-container[b-wgfw3d6h2x]  .cube-slider-container-section,
.component-container[b-wgfw3d6h2x]  .icon-marquee,
.component-container[b-wgfw3d6h2x]  .feature-slider,
.component-container[b-wgfw3d6h2x]  .feature-marquee,
.component-container[b-wgfw3d6h2x]  .home,
.component-container[b-wgfw3d6h2x]  .cmasonry,
.component-container[b-wgfw3d6h2x]  .gallery-wall,
.component-container[b-wgfw3d6h2x]  .carousel-container-margins,
.component-container[b-wgfw3d6h2x]  [data-framed-circular-gallery] .framed-gallery,
.component-container[b-wgfw3d6h2x]  .framed-gallery,
.component-container[b-wgfw3d6h2x]  .card-effect-container,
.component-container[b-wgfw3d6h2x]  .topdiscounts-slider-container,
.component-container[b-wgfw3d6h2x]  .world-container,
.component-container[b-wgfw3d6h2x]  .royal-frame-theme {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-inline: 0 !important;
}

/* Swiper containers may need bottom padding for pagination dots */
/* Product card stacks and cubes own their dimensions and centering. */
.component-container[b-wgfw3d6h2x]  .swiper:not(.card-effect-product-swiper):not(.cube-swiper) {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
    padding-inline: 0 !important;
}

/* For full-bleed sections, remove component backgrounds */
.component-container--full[b-wgfw3d6h2x]  .background-box {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* ============================================
   SPECIAL LAYOUTS
   ============================================ */
.image-showcase-center[b-wgfw3d6h2x] {
    display: flex;
    justify-content: center;
}

/* ============================================
   ENSURE COMPONENT HEADINGS ALIGN
   ============================================ */
.component-container[b-wgfw3d6h2x]  .bwe-title-center,
.component-container[b-wgfw3d6h2x]  .centered-heading,
.component-container[b-wgfw3d6h2x]  .collection-heading {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
}

/* ============================================
   GALLERY (Shop the Look) - show full category image
   Override .cm-img cover -> contain so subcategory images
   are never cropped. The empty letterbox area is filled
   with a blurred copy of the SAME image (via the --img
   CSS var the Gallery component sets on .image-frame),
   so the background always matches the image's palette.
   ============================================ */
.component-container[b-wgfw3d6h2x]  .cm-tile {
    /* Neutral fallback if --img is missing */
    background: linear-gradient(180deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 6%, var(--bhogi-surface)) 100%);
    /* Drop the heavy 4px gold border + inner glow from the shared Gallery component
       so the image can occupy the full tile area. Keep a refined 1px outline + soft shadow. */
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 30%, transparent) !important;
    box-shadow:
        0 4px 14px rgba(0, 0, 0, 0.12),
        0 12px 32px rgba(0, 0, 0, 0.08) !important;
    padding: 0 !important;
}

.component-container[b-wgfw3d6h2x]  .cm-tile .image-frame {
    position: absolute;
    inset: 0;
    padding: 0; /* maximize foreground image size - no inner padding */
    box-sizing: border-box;
    overflow: hidden;
    /* Blurred image fill - same image, scaled & soft, picks up the
       exact colors/mood so any remaining letterbox area never looks empty. */
    background-image: var(--img);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}



/* Subtle overlay to soften the blurred backdrop and improve foreground contrast */
.component-container[b-wgfw3d6h2x]  .cm-tile .image-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
        rgba(255, 255, 255, 0.04) 0%,
        rgba(0, 0, 0, 0.08) 100%);
    z-index: 1;
    pointer-events: none;
}

.component-container[b-wgfw3d6h2x]  .cm-img {
    position: relative;
    z-index: 2; /* above blurred backdrop + overlay */
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    /* No padding - let the image fill the tile edge-to-edge while preserving aspect.
       Any remaining empty area (from aspect mismatch) is covered by the blurred backdrop. */
    padding: 0 !important;
    box-sizing: border-box;
    filter: none !important;
    /* Slight scale-up so the image visually dominates the tile.
       Combined with contain, the image still shows fully but pushes into corners. */
    transform: scale(1.0);
}



/* ============================================
   SECTION REVEAL ANIMATION
   ============================================ */
.home-section-reveal[b-wgfw3d6h2x] {
    animation: none;
    content-visibility: visible;
    contain-intrinsic-size: auto;
}
/* /Components/Home/RecentlyViewedProducts.razor.rz.scp.css */
.recently-viewed-section[b-tjdzcvmizd] {
    --commerce-header-border: var(--cmp-recently-viewed-title-border, var(--bhogi-border));
    --commerce-header-accent: var(--cmp-recently-viewed-title-accent, linear-gradient(90deg, var(--bhogi-primary), var(--bhogi-gold)));
    --commerce-title: var(--cmp-recently-viewed-title, var(--bhogi-text));
    --commerce-muted: var(--cmp-recently-viewed-muted, var(--bhogi-text-muted));
    --commerce-icon: var(--cmp-recently-viewed-primary, var(--bhogi-primary));
    --commerce-link-fg: var(--cmp-recently-viewed-link, var(--bhogi-primary));

    width: 100%;
    padding-block: var(--storefront-section-block);
    overflow-x: clip;
    background: var(--cmp-recently-viewed-bg, linear-gradient(180deg, var(--bhogi-surface), var(--bhogi-surface-raised)));
}

.storefront-section-content[b-tjdzcvmizd] {
    width: min(100%, var(--storefront-content-max));
    margin-inline: auto;
    padding-inline: var(--storefront-gutter);
}

.recently-viewed-loading[b-tjdzcvmizd] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
    min-height: 16rem;
    color: var(--bhogi-text-muted);
}

.recently-viewed-empty[b-tjdzcvmizd] {
    display: grid;
    justify-items: center;
    max-width: 42rem;
    margin: 1rem auto 0;
    padding: clamp(2.5rem, 7vw, 4.5rem) clamp(1.25rem, 5vw, 3rem);
    text-align: center;
    border: 1px solid var(--bhogi-border);
    border-radius: 1.25rem;
    background: linear-gradient(145deg, var(--bhogi-surface), var(--bhogi-surface-raised));
}

.recently-viewed-empty__icon[b-tjdzcvmizd] {
    display: grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1rem;
    border-radius: 50%;
    color: var(--bhogi-primary);
    background: color-mix(in srgb, var(--bhogi-primary) 11%, transparent);
    font-size: 1.45rem;
}

.recently-viewed-empty__eyebrow[b-tjdzcvmizd] {
    margin: 0 0 .4rem;
    color: var(--bhogi-primary);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.recently-viewed-empty h2[b-tjdzcvmizd] {
    margin: 0 0 .65rem;
    color: var(--bhogi-text);
    font-size: clamp(1.5rem, 5vw, 2rem);
}

.recently-viewed-empty > p:not(.recently-viewed-empty__eyebrow)[b-tjdzcvmizd] {
    max-width: 33rem;
    margin: 0;
    color: var(--bhogi-text-muted);
    line-height: 1.65;
}

.recently-viewed-empty__actions[b-tjdzcvmizd] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .75rem;
    margin-top: 1.5rem;
}

@media (max-width: 479.98px) {
    .recently-viewed-empty__actions[b-tjdzcvmizd],
    .recently-viewed-empty__actions .btn[b-tjdzcvmizd] {
        width: 100%;
    }
}
/* /Components/Home/SignupPopup.razor.rz.scp.css */
/* ============================================
   SIGNUP POPUP - Home page email-capture ("10% off")
   ============================================ */

.signup-popup-backdrop[b-ovwbfxcuby] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    background: color-mix(in srgb, var(--bhogi-text) 55%, transparent);
    backdrop-filter: blur(3px);
    animation: signupPopupFadeIn-b-ovwbfxcuby 0.35s var(--bhogi-ease);
}

.signup-popup-card[b-ovwbfxcuby] {
    position: relative;
    width: 100%;
    max-width: 420px;
    padding: 2.5rem 2rem 2rem;
    text-align: center;
    background: var(--cmp-signup-popup-bg, var(--bhogi-surface));
    border-radius: var(--bhogi-radius-lg, 16px);
    box-shadow: 0 24px 60px -12px color-mix(in srgb, var(--bhogi-text) 35%, transparent);
    animation: signupPopupRiseIn-b-ovwbfxcuby 0.4s var(--bhogi-ease-spring, var(--bhogi-ease));
}

.signup-popup-close[b-ovwbfxcuby] {
    position: absolute;
    top: 0.875rem;
    right: 0.875rem;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: var(--cmp-signup-popup-close-fg, var(--bhogi-text));
    opacity: 0.55;
    cursor: pointer;
    transition: all 0.2s var(--bhogi-ease);
    font-size: 0.9375rem;
}

.signup-popup-close:hover[b-ovwbfxcuby] {
    opacity: 1;
    background: color-mix(in srgb, var(--bhogi-text) 8%, transparent);
}

.signup-popup-close:focus-visible[b-ovwbfxcuby] {
    outline: 2px solid var(--bhogi-primary);
    outline-offset: 2px;
    opacity: 1;
}

.signup-popup-icon[b-ovwbfxcuby] {
    width: 56px;
    height: 56px;
    margin: 0 auto 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.375rem;
    color: var(--cmp-signup-popup-icon-fg, var(--bhogi-primary));
    background: var(--cmp-signup-popup-icon-bg, color-mix(in srgb, var(--bhogi-primary) 10%, transparent));
    border-radius: 50%;
}

.signup-popup-icon--success[b-ovwbfxcuby] {
    color: var(--cmp-signup-popup-success-fg, #1c8a4f);
    background: var(--cmp-signup-popup-success-bg, color-mix(in srgb, #1c8a4f 12%, transparent));
}

.signup-popup-title[b-ovwbfxcuby] {
    margin: 0 0 0.5rem;
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--cmp-signup-popup-title, var(--bhogi-text));
    text-wrap: balance;
}

.signup-popup-subtitle[b-ovwbfxcuby] {
    margin: 0 0 1.5rem;
    font-size: 0.9375rem;
    line-height: 1.6;
    color: var(--cmp-signup-popup-subtitle, color-mix(in srgb, var(--bhogi-text) 68%, transparent));
}

.signup-popup-subtitle strong[b-ovwbfxcuby] {
    color: var(--bhogi-primary);
    letter-spacing: 0.02em;
}

.signup-popup-form[b-ovwbfxcuby] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    margin-bottom: 0.75rem;
}

.signup-popup-input[b-ovwbfxcuby] {
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    color: var(--bhogi-text);
    background: var(--cmp-signup-popup-input-bg, color-mix(in srgb, var(--bhogi-text) 4%, transparent));
    border: 1px solid var(--cmp-signup-popup-input-border, var(--bhogi-border));
    border-radius: var(--bhogi-radius, 10px);
    transition: border-color 0.2s var(--bhogi-ease);
    box-sizing: border-box;
}

.signup-popup-input:focus-visible[b-ovwbfxcuby] {
    outline: none;
    border-color: var(--bhogi-primary);
}

.signup-popup-input:disabled[b-ovwbfxcuby] {
    opacity: 0.6;
}

.signup-popup-submit[b-ovwbfxcuby] {
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--cmp-signup-popup-cta-fg, var(--bhogi-text));
    background: var(--cmp-signup-popup-cta-bg, var(--bhogi-gradient-gold, #ffca44));
    border: none;
    border-radius: var(--bhogi-radius, 10px);
    cursor: pointer;
    transition: filter 0.2s var(--bhogi-ease), transform 0.2s var(--bhogi-ease);
}

.signup-popup-submit:hover:not(:disabled)[b-ovwbfxcuby] {
    filter: brightness(1.05);
    transform: translateY(-1px);
}

.signup-popup-submit:disabled[b-ovwbfxcuby] {
    opacity: 0.55;
    cursor: not-allowed;
}

.signup-popup-submit--done[b-ovwbfxcuby] {
    margin-top: 0.25rem;
}

.signup-popup-error[b-ovwbfxcuby] {
    margin: 0 0 0.75rem;
    font-size: 0.8125rem;
    color: var(--cmp-signup-popup-error, #c0392b);
}

.signup-popup-finePrint[b-ovwbfxcuby] {
    margin: 0;
    font-size: 0.75rem;
    color: var(--cmp-signup-popup-fineprint, color-mix(in srgb, var(--bhogi-text) 50%, transparent));
}

@keyframes signupPopupFadeIn-b-ovwbfxcuby {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes signupPopupRiseIn-b-ovwbfxcuby {
    from {
        opacity: 0;
        transform: translateY(16px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (max-width: 480px) {
    .signup-popup-card[b-ovwbfxcuby] {
        padding: 2.25rem 1.5rem 1.75rem;
    }

    .signup-popup-title[b-ovwbfxcuby] {
        font-size: 1.3125rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .signup-popup-backdrop[b-ovwbfxcuby],
    .signup-popup-card[b-ovwbfxcuby] {
        animation: none !important;
    }

    .signup-popup-submit:hover:not(:disabled)[b-ovwbfxcuby] {
        transform: none;
    }
}
/* /Components/Home/_to_delete/CampaignBanner.razor.rz.scp.css */
/* Deleted — superseded by CampaignBannerStrip.razor.css. Safe to remove alongside the
   _to_delete folder. */
/* /Components/Layout/Footer.razor.rz.scp.css */
/* ============================================================
   FOOTER — Enterprise Premium Design with Smooth & Subtle Luxury
   Architecture: Accent strip → Social bar → Body grid → Bottom
   ============================================================ */

/* ── 0. Design Tokens ── */

.footer[b-rtqv9eggvr] {
    --f-bg: #232426;
    --f-bg-subtle: #2E2F31;
    --f-surface: #2E2F31;
    --f-surface-hover: #44474A;
    --f-border: #44474A;
    --f-color: #F4F4F6;
    --f-color-muted: #A0A0A0;
    --f-heading: #F4F4F6;
    --f-link: #F4F4F6;
    --f-link-hover: #A3B18A;
    --f-accent: #A3B18A;
    --f-accent-glow: #D9E4DD;
    --f-gold: #A3B18A;
    --f-maroon: #6B705C;
    --f-radius: 1rem;
    --f-radius-pill: 9999px;
    --f-ease: cubic-bezier(.4,0,.2,1);
    --f-ease-spring: cubic-bezier(.16,1,.3,1);
    --f-bottom-bg: #2E2F31;
    --f-bottom-color: #A0A0A0;

    background: var(--f-bg);
    color: var(--f-color);
    position: relative;
    overflow: hidden;
    /* Smooth 2px gold border at top (40% transparency) */
    border-top: 2px solid color-mix(in srgb, var(--bhogi-gold) 40%, transparent);
    /* Refined 3-layer shadows */
    box-shadow: 
        inset 0 2px 0 color-mix(in srgb, var(--bhogi-gold) 6%, transparent),
        0 -4px 12px color-mix(in srgb, var(--bhogi-text) 15%, transparent),
        0 -2px 6px color-mix(in srgb, var(--bhogi-text) 10%, transparent);

    /* Entrance */
    opacity: 0;
    transform: translateY(12px);
    transition: opacity .4s var(--f-ease), transform .4s var(--f-ease);
}

.footer--visible[b-rtqv9eggvr] {
    opacity: 1;
    transform: translateY(0);
}

/* Ambient glow (decorative) */
.footer[b-rtqv9eggvr]::before {
    content: '';
    position: absolute;
    top: -180px;
    left: 50%;
    translate: -50% 0;
    width: 500px;
    height: 300px;
    background: radial-gradient(ellipse, var(--f-accent-glow) 0%, transparent 70%);
    pointer-events: none;
    opacity: .32;
}

.footer[b-rtqv9eggvr]::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold) 5%, transparent) 0%, transparent 38%, color-mix(in srgb, var(--bhogi-maroon) 6%, transparent) 100%);
    pointer-events: none;
}

/* ── Container ── */
.footer-container[b-rtqv9eggvr] {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: var(--bhogi-page-gutter, 2px);
}

/* ── Screen-reader only ── */
.sr-only[b-rtqv9eggvr] {
    position: absolute;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* Responsive helpers */
.show-mobile[b-rtqv9eggvr]  { display: none !important; }
.hide-mobile[b-rtqv9eggvr]  { display: inline !important; }

/* ============================================================
   1. ACCENT STRIP  — thin animated gradient bar at top (Enhanced)
   ============================================================ */
.footer-accent-strip[b-rtqv9eggvr] {
    height: 4px;
    background: linear-gradient(90deg,
        var(--bhogi-primary-hover) 0%,
        var(--bhogi-primary) 28%,
        var(--bhogi-gold) 52%,
        var(--bhogi-maroon) 74%,
        var(--bhogi-primary-hover) 100%);
    background-size: 200% 100%;
    animation: accentShimmer-b-rtqv9eggvr 6s linear infinite;
    /* Subtle shadow for depth */
    box-shadow: 
        0 0 8px rgba(255, 215, 0, 0.15),
        0 2px 6px rgba(0, 0, 0, 0.2);
}

@keyframes accentShimmer-b-rtqv9eggvr {
    to { background-position: 200% 0; }
}

/* ============================================================
   2. SOCIAL BAR
   ============================================================ */
.footer-social[b-rtqv9eggvr] {
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--f-border);
}

.social-row[b-rtqv9eggvr] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .625rem;
}

/* Each social circle */
.social-link[b-rtqv9eggvr] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px; height: 44px;
    border-radius: 50%;
    font-size: 1.05rem;
    color: var(--f-color-muted);
    background: var(--f-surface);
    text-decoration: none;
    transition: color .3s var(--f-ease), transform .35s var(--f-ease-spring), background .3s var(--f-ease);
    z-index: 0;
}

/* Ring (expanding border on hover) */
.social-link__ring[b-rtqv9eggvr] {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 1.5px solid transparent;
    transition: border-color .3s var(--f-ease), transform .35s var(--f-ease-spring);
    pointer-events: none;
}

.social-link:hover[b-rtqv9eggvr],
.social-link:focus-visible[b-rtqv9eggvr] {
    color: #fff;
    transform: translateY(-4px) scale(1.08);
    /* Gold border at 60% during hover */
    border-color: color-mix(in srgb, var(--bhogi-gold) 60%, transparent);
    /* Enhanced 4-layer glow (max 18px) */
    box-shadow: 
        inset 0 0 10px rgba(255, 215, 0, 0.08),
        0 0 12px rgba(255, 215, 0, 0.12),
        0 6px 16px rgba(0, 0, 0, 0.2),
        0 10px 20px rgba(0, 0, 0, 0.15);
}

.social-link:hover .social-link__ring[b-rtqv9eggvr] {
    border-color: color-mix(in srgb, var(--bhogi-surface) 15%, transparent);
    transform: scale(1.08);
}

/* Brand palette */
.social--facebook-f:hover[b-rtqv9eggvr]   { background: #1877f2; box-shadow: 0 6px 24px rgba(24,119,242,.35); }
.social--x-twitter:hover[b-rtqv9eggvr]    { background: #14171a; box-shadow: 0 6px 24px rgba(0,0,0,.4); }
.social--instagram:hover[b-rtqv9eggvr]    { background: linear-gradient(135deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888); box-shadow: 0 6px 24px rgba(225,48,108,.35); }
.social--tiktok:hover[b-rtqv9eggvr]       { background: #010101; box-shadow: 0 6px 24px rgba(0,0,0,.4); }
.social--youtube:hover[b-rtqv9eggvr]      { background: #ff0000; box-shadow: 0 6px 24px rgba(255,0,0,.3); }
.social--vimeo:hover[b-rtqv9eggvr]        { background: #1ab7ea; box-shadow: 0 6px 24px rgba(26,183,234,.3); }
.social--pinterest-p:hover[b-rtqv9eggvr]  { background: #e60023; box-shadow: 0 6px 24px rgba(230,0,35,.3); }
.social--snapchat:hover[b-rtqv9eggvr]     { background: #fffc00; color: #000; box-shadow: 0 6px 24px rgba(255,252,0,.25); }
.social--flickr:hover[b-rtqv9eggvr]       { background: #0063dc; box-shadow: 0 6px 24px rgba(0,99,220,.3); }
.social--linkedin:hover[b-rtqv9eggvr]     { background: #0a66c2; box-shadow: 0 6px 24px rgba(10,102,194,.35); }
.social--xing:hover[b-rtqv9eggvr]         { background: #006567; box-shadow: 0 6px 24px rgba(0,101,103,.3); }
.social--tumblr:hover[b-rtqv9eggvr]       { background: #35465c; box-shadow: 0 6px 24px rgba(53,70,92,.3); }
.social--behance:hover[b-rtqv9eggvr]      { background: #1769ff; box-shadow: 0 6px 24px rgba(23,105,255,.35); }

/* ============================================================
   3. MAIN BODY — 4-column grid
   ============================================================ */
.footer-body[b-rtqv9eggvr] {
    padding: 3rem 0 2.5rem;
    position: relative;
    z-index: 1;
}

.footer-grid[b-rtqv9eggvr] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;
}

/* Column stagger entrance */
.footer-col[b-rtqv9eggvr] {
    min-width: 0;
    opacity: 0;
    transform: translateY(16px);
    animation: colIn-b-rtqv9eggvr .45s var(--f-ease) forwards;
    animation-delay: calc(.08s * var(--col-i, 0) + .15s);
}

.footer--visible .footer-col[b-rtqv9eggvr] {
    /* Animation only runs once footer is visible */
}

@keyframes colIn-b-rtqv9eggvr {
    to { opacity: 1; transform: translateY(0); }
}

/* ── Column heading ── */
.col-heading-shell[b-rtqv9eggvr] {
    margin: 0;
}

.col-heading[b-rtqv9eggvr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    font-size: .8rem;
    font-weight: 700;
    color: var(--f-heading);
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 0 0 1.25rem;
    padding: 0;
    background: none;
    border: none;
    width: 100%;
    cursor: default;
    position: relative;
}

/* Decorative underline accent for headings */
.col-heading[b-rtqv9eggvr]::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 28px;
    height: 2px;
    background: var(--f-accent);
    border-radius: 1px;
    transition: width .3s var(--f-ease);
}

.footer-col:hover .col-heading[b-rtqv9eggvr]::after {
    width: 48px;
}

/* Toggle chevron (mobile only by default) */
.chevron-icon[b-rtqv9eggvr] {
    width: 16px; height: 16px;
    flex-shrink: 0;
    transition: transform .25s var(--f-ease);
    display: none;
}

.col-heading.is-collapsed .chevron-icon[b-rtqv9eggvr] {
    transform: rotate(-90deg);
}

/* ── Collapsible panel ── */
.col-panel[b-rtqv9eggvr] {
    overflow: hidden;
    max-height: 0;
    transition: max-height .35s var(--f-ease);
}

.col-panel.is-open[b-rtqv9eggvr] {
    max-height: 600px;
}

/* ── Link List ── */
.link-list[b-rtqv9eggvr] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.link-item[b-rtqv9eggvr] {
    opacity: 0;
    animation: linkFade-b-rtqv9eggvr .3s var(--f-ease) forwards;
    animation-delay: calc(.04s * var(--li-i, 0) + .25s);
}

@keyframes linkFade-b-rtqv9eggvr {
    to { opacity: 1; }
}

.link-item + .link-item[b-rtqv9eggvr] {
    margin-top: .625rem;
}


.footer-link[b-rtqv9eggvr] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    font-size: .95rem;
    line-height: 1.5;
    color: #F4F4F6 !important;
    text-decoration: none;
    transition: color .2s var(--f-ease), gap .25s var(--f-ease);
}


.footer-link:hover[b-rtqv9eggvr],
.footer-link:focus-visible[b-rtqv9eggvr] {
    color: #A3B18A !important;
    gap: .5rem;
}

.link-arrow[b-rtqv9eggvr] {
    display: inline-flex;
    flex-shrink: 0;
    width: 14px; height: 14px;
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity .2s var(--f-ease), transform .2s var(--f-ease);
}

.link-arrow svg[b-rtqv9eggvr] {
    width: 100%; height: 100%;
}

.footer-link:hover .link-arrow[b-rtqv9eggvr],
.footer-link:focus-visible .link-arrow[b-rtqv9eggvr] {
    opacity: .6;
    transform: translateX(0);
}

/* ============================================================
   4. NEWSLETTER CARD
   ============================================================ */
.newsletter-card[b-rtqv9eggvr] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--bhogi-platinum-100) 6%, transparent) 0%, color-mix(in srgb, var(--bhogi-platinum-100) 3%, transparent) 100%);
    border: 1px solid var(--f-border);
    border-radius: var(--f-radius);
    padding: 1.25rem;
    transition: border-color .3s var(--f-ease), box-shadow .3s var(--f-ease), transform .3s var(--f-ease);
}

.newsletter-card:hover[b-rtqv9eggvr] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 24%, transparent);
    box-shadow: var(--bhogi-shadow-md);
    transform: translateY(-2px);
}

.newsletter-tagline[b-rtqv9eggvr] {
    font-size: .8125rem;
    color: var(--f-color-muted);
    margin: 0 0 1rem;
    line-height: 1.5;
}

/* Input wrapper */
.nl-input-wrap[b-rtqv9eggvr] {
    display: flex;
    align-items: center;
    background: color-mix(in srgb, var(--bhogi-surface) 4%, transparent);
    border: 1px solid var(--f-border);
    border-radius: var(--f-radius-pill);
    overflow: hidden;
    transition: border-color .25s var(--f-ease), box-shadow .25s var(--f-ease);
}

.nl-input-wrap.is-focused[b-rtqv9eggvr] {
    border-color: var(--f-accent);
    box-shadow: 0 0 0 3px var(--f-accent-glow);
}

.nl-icon[b-rtqv9eggvr] {
    padding-left: .875rem;
    color: var(--f-color-muted);
    font-size: .85rem;
    flex-shrink: 0;
}

.nl-input[b-rtqv9eggvr] {
    flex: 1;
    min-width: 0;
    padding: .5rem .625rem;
    font-size: .8125rem;
    color: var(--bhogi-platinum-100);
    background: transparent;
    border: none;
    outline: none;
    font-family: inherit;
}

.nl-input[b-rtqv9eggvr]::placeholder {
    color: var(--f-color-muted);
}

.nl-submit[b-rtqv9eggvr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px; height: 36px;
    margin: 2px;
    font-size: .8rem;
    color: var(--bhogi-text);
    background: var(--bhogi-gradient-gold);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    flex-shrink: 0;
    transition: background .2s var(--f-ease), transform .2s var(--f-ease-spring), box-shadow .2s var(--f-ease);
}

.nl-submit:hover:not(:disabled)[b-rtqv9eggvr] {
    background: linear-gradient(135deg, var(--bhogi-gold-hover) 0%, var(--bhogi-gold) 45%, var(--bhogi-gold-deep) 100%);
    transform: scale(1.04);
    box-shadow: var(--bhogi-shadow-gold);
}

.nl-submit:disabled[b-rtqv9eggvr] {
    opacity: .3;
    cursor: not-allowed;
}

.nl-hint[b-rtqv9eggvr] {
    min-height: 1.1rem;
    margin: .35rem .25rem 0;
    color: var(--f-color-muted);
    font-size: .68rem;
    line-height: 1.4;
}

.nl-input[aria-invalid="true"][b-rtqv9eggvr] {
    color: #fecaca;
}

.nl-input-wrap:has(.nl-input[aria-invalid="true"])[b-rtqv9eggvr] {
    border-color: #f87171;
}

/* Radio options */
.nl-options[b-rtqv9eggvr] {
    display: flex;
    gap: 1rem;
    border: none;
    padding: 0;
    margin: .75rem 0 0;
}

.nl-radio[b-rtqv9eggvr] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    font-size: .75rem;
    color: var(--f-color-muted);
    cursor: pointer;
    transition: color .2s var(--f-ease);
}

.nl-radio:hover[b-rtqv9eggvr] {
    color: var(--f-color);
}

.nl-radio input[type="radio"][b-rtqv9eggvr] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.nl-radio__dot[b-rtqv9eggvr] {
    position: relative;
    width: 16px; height: 16px;
    border: 1.5px solid var(--f-color-muted);
    border-radius: 50%;
    flex-shrink: 0;
    transition: border-color .2s var(--f-ease);
}

.nl-radio__dot[b-rtqv9eggvr]::after {
    content: '';
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: var(--f-accent);
    transform: scale(0);
    transition: transform .2s var(--f-ease-spring);
}

.nl-radio input[type="radio"]:checked ~ .nl-radio__dot[b-rtqv9eggvr] {
    border-color: var(--f-accent);
}

.nl-radio input[type="radio"]:focus-visible ~ .nl-radio__dot[b-rtqv9eggvr] {
    outline: 3px solid var(--f-accent-glow);
    outline-offset: 3px;
}

.nl-radio input[type="radio"]:checked ~ .nl-radio__dot[b-rtqv9eggvr]::after {
    transform: scale(1);
}

/* Toast alert */
.nl-toast[b-rtqv9eggvr] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .8125rem;
    padding: .5rem .75rem;
    border-radius: var(--f-radius);
    margin-top: .75rem;
    animation: toastIn-b-rtqv9eggvr .35s var(--f-ease-spring);
}

@keyframes toastIn-b-rtqv9eggvr {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.nl-toast--ok[b-rtqv9eggvr] {
    background: color-mix(in srgb, var(--bhogi-success) 12%, transparent);
    color: var(--bhogi-success-light);
    border: 1px solid color-mix(in srgb, var(--bhogi-success) 24%, transparent);
}

.nl-toast--err[b-rtqv9eggvr] {
    background: color-mix(in srgb, var(--bhogi-maroon) 14%, transparent);
    color: var(--bhogi-maroon-light);
    border: 1px solid color-mix(in srgb, var(--bhogi-maroon) 28%, transparent);
}

/* ============================================================
   5. FOOTER BOTTOM BAR
   ============================================================ */

.footer-bottom[b-rtqv9eggvr] {
    background: #2E2F31;
    position: relative;
    z-index: 1;
}


.bottom-inner[b-rtqv9eggvr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .75rem;
    padding: 1rem 0;
    font-size: .95rem;
    color: #A0A0A0 !important;
}

.bottom-legal[b-rtqv9eggvr] {
    color: var(--f-bottom-color);
}

.bottom-legal[b-rtqv9eggvr]  a {
    color: var(--f-link);
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, var(--bhogi-text-muted) 30%, transparent);
    text-underline-offset: 2px;
    transition: color .2s var(--f-ease), text-decoration-color .2s var(--f-ease);
}

.bottom-legal[b-rtqv9eggvr]  a:hover {
    color: var(--f-link-hover);
    text-decoration-color: var(--f-link-hover);
}

.bottom-copy[b-rtqv9eggvr] {
    color: var(--f-bottom-color);
}

.bottom-contact[b-rtqv9eggvr] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .25rem .75rem;
    margin: 0;
    color: var(--f-bottom-color);
    font-style: normal;
}

.bottom-contact__item[b-rtqv9eggvr] {
    color: inherit;
    text-decoration: none;
}

a.bottom-contact__item:hover[b-rtqv9eggvr],
a.bottom-contact__item:focus-visible[b-rtqv9eggvr] {
    text-decoration: underline;
}

/* Back-to-top button */
.back-to-top[b-rtqv9eggvr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px; height: 34px;
    border-radius: 50%;
    border: 1px solid var(--f-border);
    background: var(--f-surface);
    color: var(--f-color-muted);
    cursor: pointer;
    flex-shrink: 0;
    transition: all .25s var(--f-ease);
}

.back-to-top svg[b-rtqv9eggvr] {
    width: 16px; height: 16px;
}

.back-to-top:hover[b-rtqv9eggvr],
.back-to-top:focus-visible[b-rtqv9eggvr] {
    color: var(--bhogi-text);
    background: var(--bhogi-gradient-gold);
    border-color: var(--bhogi-gold);
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-gold);
}

/* ============================================================
   6. RESPONSIVE
   ============================================================ */

/* ── Tablet ── */
@media (max-width: 991px) {
    .footer-grid[b-rtqv9eggvr] {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    .footer-col--newsletter[b-rtqv9eggvr] {
        grid-column: span 2;
    }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .footer-grid[b-rtqv9eggvr] {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .footer-col--newsletter[b-rtqv9eggvr] {
        grid-column: span 1;
        margin-top: 1rem;
    }

    .footer-body[b-rtqv9eggvr] {
        padding: 1.5rem 0 1rem;
    }

    .show-mobile[b-rtqv9eggvr]  { display: inline !important; }
    .hide-mobile[b-rtqv9eggvr]  { display: none !important; }

    /* Headings become togglers */
    .col-heading[b-rtqv9eggvr] {
        cursor: pointer;
        pointer-events: auto;
        padding: .875rem 0;
        margin-bottom: 0;
        border-bottom: 1px solid var(--f-border);
        font-size: .8125rem;
    }

    .col-heading[b-rtqv9eggvr]::after {
        display: none;
    }

    .chevron-icon[b-rtqv9eggvr] {
        display: block;
    }

    .col-panel.is-open[b-rtqv9eggvr] {
        padding-top: .5rem;
        padding-bottom: .5rem;
    }

    /* Bottom */
    .bottom-inner[b-rtqv9eggvr] {
        flex-direction: column;
        text-align: center;
    }

    .back-to-top[b-rtqv9eggvr] {
        margin-top: .25rem;
    }
}

/* ── Wide desktop ── */
@media (min-width: 768px) {
    .col-heading[b-rtqv9eggvr] {
        pointer-events: none;
    }

    .col-heading--toggle[b-rtqv9eggvr] {
        pointer-events: none;
        cursor: default;
    }

    .footer-nav > .col-panel[b-rtqv9eggvr] {
        max-height: none;
        overflow: visible;
    }
}

/* ============================================================
   7. DARK-MODE OVERRIDES
   ============================================================ */
[data-theme="dark"] .footer[b-rtqv9eggvr] {
    --f-bg:           linear-gradient(180deg, var(--bhogi-surface) 0%, color-mix(in srgb, var(--bhogi-surface) 92%, var(--bhogi-text)) 100%);
    --f-bg-subtle:    color-mix(in srgb, var(--bhogi-surface) 1.5%, transparent);
    --f-border:       color-mix(in srgb, var(--bhogi-platinum-100) 8%, transparent);
    --f-surface:      color-mix(in srgb, var(--bhogi-surface) 3%, transparent);
    --f-bottom-bg:    color-mix(in srgb, var(--bhogi-text) 38%, transparent);
}

/* ============================================================
   8. REDUCED MOTION
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
    .footer[b-rtqv9eggvr],
    .footer-col[b-rtqv9eggvr],
    .link-item[b-rtqv9eggvr] {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }

    .footer-accent-strip[b-rtqv9eggvr] {
        animation: none;
    }
}

/* ============================================================
   9. ENTERPRISE CROSS-DEVICE OPTIMIZATIONS
   Tablet, iPad, Large Screen & Touch Support
   ============================================================ */

/* Small Tablets & Large Phones (576px - 767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .footer-container[b-rtqv9eggvr] {
        padding-inline: var(--bhogi-page-gutter, 2px);
    }

    .social-list[b-rtqv9eggvr] {
        gap: 0.75rem;
    }

    .social-link[b-rtqv9eggvr] {
        width: 44px;
        height: 44px;
        font-size: 1.125rem;
    }

    .body-inner[b-rtqv9eggvr] {
        gap: 2rem;
    }

    .footer-col[b-rtqv9eggvr] {
        padding-bottom: 1.5rem;
    }
}

/* Tablets (768px - 1024px) */
@media (min-width: 768px) and (max-width: 1024px) {
    .footer-container[b-rtqv9eggvr] {
        max-width: 100%;
        padding-inline: var(--bhogi-page-gutter, 2px);
    }

    .social-heading[b-rtqv9eggvr] {
        font-size: 0.875rem;
    }

    .social-list[b-rtqv9eggvr] {
        gap: 0.875rem;
    }

    .social-link[b-rtqv9eggvr] {
        width: 46px;
        height: 46px;
        font-size: 1.25rem;
    }

    .body-inner[b-rtqv9eggvr] {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 2.5rem;
    }

    .footer-col[b-rtqv9eggvr] {
        margin-bottom: 0;
    }

    .col-heading[b-rtqv9eggvr] {
        font-size: 0.9375rem;
    }

    .link-item[b-rtqv9eggvr] {
        font-size: 0.875rem;
        padding: 0.5rem 0;
    }

    .newsletter-form[b-rtqv9eggvr] {
        max-width: 400px;
    }
}

/* Large Tablets & iPad Pro (1024px - 1366px) */
@media (min-width: 1024px) and (max-width: 1366px) {
    .footer-container[b-rtqv9eggvr] {
        max-width: none;
    }

    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: repeat(4, 1fr);
        gap: 3rem;
    }

    .social-inner[b-rtqv9eggvr] {
        padding: 2.5rem 0;
    }

    .social-link[b-rtqv9eggvr] {
        width: 48px;
        height: 48px;
    }
}

/* Ultra-Wide & 4K Displays (>= 1920px) */
@media (min-width: 1920px) {
    .footer-container[b-rtqv9eggvr] {
        max-width: none;
        padding-inline: var(--bhogi-page-gutter, 2px);
    }

    .social-inner[b-rtqv9eggvr] {
        padding: 3rem 0;
    }

    .social-heading[b-rtqv9eggvr] {
        font-size: 1rem;
    }

    .social-list[b-rtqv9eggvr] {
        gap: 1.25rem;
    }

    .social-link[b-rtqv9eggvr] {
        width: 54px;
        height: 54px;
        font-size: 1.5rem;
    }

    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: 2fr repeat(3, 1fr);
        gap: 4rem;
        padding: 4rem 0;
    }

    .col-heading[b-rtqv9eggvr] {
        font-size: 1.0625rem;
        margin-bottom: 1.5rem;
    }

    .link-item[b-rtqv9eggvr] {
        font-size: 1rem;
        padding: 0.625rem 0;
    }

    .newsletter-input[b-rtqv9eggvr] {
        font-size: 1rem;
        padding: 1rem 1.25rem;
    }

    .newsletter-btn[b-rtqv9eggvr] {
        font-size: 1rem;
        padding: 1rem 2rem;
    }

    .bottom-inner[b-rtqv9eggvr] {
        padding: 2rem 0;
        font-size: 0.9375rem;
    }
}

/* Landscape Orientation - Tablets */
@media (min-width: 768px) and (max-width: 1366px) and (orientation: landscape) {
    .social-inner[b-rtqv9eggvr] {
        padding: 1.5rem 0;
    }

    .body-inner[b-rtqv9eggvr] {
        padding: 2.5rem 0;
    }

    .footer-col[b-rtqv9eggvr] {
        padding-bottom: 1rem;
    }

    /* Compact footer in landscape */
    .col-heading[b-rtqv9eggvr] {
        margin-bottom: 0.875rem;
    }

    .link-item[b-rtqv9eggvr] {
        padding: 0.375rem 0;
    }
}

/* Touch-enabled Large Screens */
@media (min-width: 1024px) and (hover: none) {
    /* Larger touch targets for touch-enabled devices */
    .social-link[b-rtqv9eggvr] {
        width: 52px;
        height: 52px;
    }

    .link-item[b-rtqv9eggvr] {
        padding: 0.75rem 0;
        min-height: 44px;
        display: flex;
        align-items: center;
    }

    .newsletter-btn[b-rtqv9eggvr] {
        min-height: 52px;
        padding: 0.875rem 2rem;
    }

    .back-to-top[b-rtqv9eggvr] {
        min-width: 52px;
        min-height: 52px;
        padding: 0.875rem 1.25rem;
    }
}

/* High DPI / Retina Displays */
@media (-webkit-min-device-pixel-ratio: 2),
       (min-resolution: 192dpi) {
    .footer-accent-strip[b-rtqv9eggvr] {
        height: 2px;
    }

    .social-link[b-rtqv9eggvr] {
        border-width: 1px;
    }

    .link-item[b-rtqv9eggvr]::before {
        width: 4px;
        height: 1px;
    }
}

/* iPad Mini & Small Tablets Specific */
@media (min-width: 768px) and (max-width: 820px) {
    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    .newsletter-form[b-rtqv9eggvr] {
        max-width: 100%;
    }
}

/* iPad Pro Portrait (1024 x 1366) */
@media (min-width: 1024px) and (max-width: 1100px) and (orientation: portrait) {
    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem;
    }

    .footer-col:first-child[b-rtqv9eggvr] {
        grid-column: 1 / -1;
    }
}

/* Foldable & Dual-Screen Devices */
@media (min-width: 540px) and (max-width: 720px) and (min-height: 720px) {
    .body-inner[b-rtqv9eggvr] {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }

    .footer-col[b-rtqv9eggvr] {
        width: 100%;
    }
}

/* Samsung Fold & Similar (Unfolded) */
@media (min-width: 1768px) and (max-width: 2200px) and (orientation: portrait) {
    .footer-container[b-rtqv9eggvr] {
        max-width: none;
    }

    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: repeat(3, 1fr);
        gap: 3.5rem;
    }
}

/* Surface Pro & Similar High-Resolution Tablets */
@media (min-width: 1200px) and (max-width: 1400px) and (min-height: 1500px) {
    .social-link[b-rtqv9eggvr] {
        width: 50px;
        height: 50px;
    }

    .body-inner[b-rtqv9eggvr] {
        grid-template-columns: repeat(4, 1fr);
        gap: 2.5rem;
    }
}

/* ============================================================
   10. ENHANCED INTERACTION STATES
   Multi-device Input Support
   ============================================================ */

/* Hover Devices (Mouse/Trackpad) */
@media (hover: hover) and (pointer: fine) {
    .social-link:hover[b-rtqv9eggvr] {
        transform: translateY(-4px) scale(1.05);
        box-shadow: 0 8px 24px rgba(13, 107, 90, 0.3);
    }

    .link-item:hover[b-rtqv9eggvr] {
        transform: translateX(4px);
    }

    .back-to-top:hover[b-rtqv9eggvr] {
        transform: translateY(-2px);
    }
}

/* Touch Devices - Enhanced Feedback */
@media (hover: none) and (pointer: coarse) {
    .social-link:active[b-rtqv9eggvr] {
        transform: scale(0.92);
        transition: transform 0.1s ease;
    }

    .link-item:active[b-rtqv9eggvr] {
        background: var(--f-surface-hover);
        padding-left: 0.5rem;
        margin-left: -0.5rem;
        border-radius: var(--f-radius);
    }

    .newsletter-btn:active[b-rtqv9eggvr] {
        transform: scale(0.97);
    }

    .back-to-top:active[b-rtqv9eggvr] {
        transform: scale(0.95);
    }

    /* Remove hover-dependent effects */
    .social-link[b-rtqv9eggvr]::before,
    .link-item[b-rtqv9eggvr]::before {
        display: none;
    }
}

/* Stylus Input - Fine Touch */
@media (pointer: fine) and (hover: none) {
    .social-link[b-rtqv9eggvr],
    .link-item[b-rtqv9eggvr],
    .newsletter-btn[b-rtqv9eggvr] {
        transition: all 0.15s var(--f-ease);
    }
}

/* ============================================================
   11. ACCESSIBILITY ENHANCEMENTS
   ============================================================ */

/* High Contrast Mode */
@media (prefers-contrast: high) {
    .footer[b-rtqv9eggvr] {
        border-top: 3px solid currentColor;
    }

    .footer-accent-strip[b-rtqv9eggvr] {
        background: currentColor;
    }

    .social-link[b-rtqv9eggvr] {
        border: 2px solid currentColor;
    }

    .link-item[b-rtqv9eggvr] {
        text-decoration: underline;
    }

    .newsletter-input[b-rtqv9eggvr],
    .newsletter-btn[b-rtqv9eggvr] {
        border: 2px solid currentColor;
    }
}

/* Focus Visible - Enhanced for All Devices */
.social-link:focus-visible[b-rtqv9eggvr],
.link-item:focus-visible[b-rtqv9eggvr],
.newsletter-input:focus-visible[b-rtqv9eggvr],
.newsletter-btn:focus-visible[b-rtqv9eggvr],
.back-to-top:focus-visible[b-rtqv9eggvr] {
    outline: 3px solid var(--f-accent);
    outline-offset: 4px;
    z-index: 10;
}

/* Keyboard Navigation Improvements */
.footer-col:focus-within .col-heading[b-rtqv9eggvr] {
    color: var(--f-heading);
}

.footer-col:focus-within .link-item[b-rtqv9eggvr] {
    opacity: 1;
}

/* ============================================================
   12. PERFORMANCE OPTIMIZATIONS
   ============================================ */

/* Hardware Acceleration */
.social-link[b-rtqv9eggvr],
.link-item[b-rtqv9eggvr],
.newsletter-btn[b-rtqv9eggvr],
.back-to-top[b-rtqv9eggvr] {
    transform: translateZ(0);
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Content Visibility for Faster Rendering */
.footer-col[b-rtqv9eggvr] {
    content-visibility: auto;
    contain-intrinsic-size: 0 300px;
}

/* Safe Area Insets for Notch Devices */
@supports (padding: max(0px)) {
    .footer-container[b-rtqv9eggvr] {
        padding-left: max(var(--bhogi-page-gutter, 2px), env(safe-area-inset-left));
        padding-right: max(var(--bhogi-page-gutter, 2px), env(safe-area-inset-right));
    }

    .bottom-inner[b-rtqv9eggvr] {
        padding-bottom: max(1.5rem, env(safe-area-inset-bottom));
    }
}

/* ============================================================
   13. MOBILE COMMERCE FOOTER
   Compact, accordion-first layout for phones and small screens
   ============================================================ */

@media (max-width: 767px) {
    .footer[b-rtqv9eggvr] {
        overflow: clip;
        border-top-width: 1px;
    }

    .footer[b-rtqv9eggvr]::before {
        top: -120px;
        width: min(100vw, 420px);
        height: 220px;
        opacity: .18;
    }

    .footer-accent-strip[b-rtqv9eggvr] {
        height: 2px;
    }

    .footer-container[b-rtqv9eggvr] {
        width: 100%;
        padding-inline: max(2px, env(safe-area-inset-left));
    }

    .footer-social[b-rtqv9eggvr] {
        padding: .75rem 0;
    }

    .social-row[b-rtqv9eggvr] {
        flex-wrap: nowrap;
        gap: .5rem;
        overflow-x: auto;
        scrollbar-width: none;
        padding-inline: .25rem;
    }

    .social-row[b-rtqv9eggvr]::-webkit-scrollbar {
        display: none;
    }

    .social-link[b-rtqv9eggvr] {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }

    .footer-body[b-rtqv9eggvr] {
        padding: .5rem 0 .25rem;
    }

    .footer-grid[b-rtqv9eggvr] {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .footer-col[b-rtqv9eggvr] {
        width: 100%;
        padding: 0;
        margin: 0;
        content-visibility: visible;
        contain-intrinsic-size: none;
    }

    .footer-col--newsletter[b-rtqv9eggvr] {
        order: -1;
        margin: 0 0 .375rem;
    }

    .footer-nav[b-rtqv9eggvr] {
        border-bottom: 1px solid var(--f-border);
    }

    .col-heading-shell[b-rtqv9eggvr] {
        margin: 0;
    }

    .col-heading[b-rtqv9eggvr] {
        min-height: 48px;
        margin: 0;
        padding: .75rem .875rem;
        border: 0;
        font-size: .8125rem;
        letter-spacing: .07em;
        cursor: pointer;
        pointer-events: auto;
        touch-action: manipulation;
    }

    .col-heading[b-rtqv9eggvr]::after {
        display: none;
    }

    .chevron-icon[b-rtqv9eggvr] {
        display: block;
        width: 18px;
        height: 18px;
    }

    .col-panel[b-rtqv9eggvr] {
        padding: 0 .875rem;
        max-height: 0;
        opacity: 0;
        transition: max-height .3s var(--f-ease), opacity .2s var(--f-ease), padding .3s var(--f-ease);
    }

    .col-panel.is-open[b-rtqv9eggvr] {
        max-height: 460px;
        padding: .25rem .875rem .75rem;
        opacity: 1;
    }

    .link-list[b-rtqv9eggvr] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .125rem .75rem;
    }

    .link-item[b-rtqv9eggvr],
    .link-item + .link-item[b-rtqv9eggvr] {
        margin: 0;
    }

    .footer-link[b-rtqv9eggvr] {
        display: flex;
        min-height: 40px;
        width: 100%;
        padding: .375rem 0;
        gap: .25rem;
        font-size: .8125rem;
        line-height: 1.25;
    }

    .link-arrow[b-rtqv9eggvr] {
        display: none;
    }

    .newsletter-card[b-rtqv9eggvr] {
        margin: 0;
        padding: .875rem;
        border-radius: .875rem;
        background: linear-gradient(135deg,
            color-mix(in srgb, var(--bhogi-platinum-100) 8%, transparent),
            color-mix(in srgb, var(--bhogi-gold) 5%, transparent));
    }

    .newsletter-card:hover[b-rtqv9eggvr] {
        transform: none;
    }

    .newsletter-card .col-heading[b-rtqv9eggvr] {
        min-height: 36px;
        padding: 0 0 .5rem;
        border-bottom: 1px solid var(--f-border);
    }

    .newsletter-card .col-panel[b-rtqv9eggvr],
    .newsletter-card .col-panel.is-open[b-rtqv9eggvr] {
        padding: .625rem 0 0;
        opacity: 1;
    }

    .newsletter-tagline[b-rtqv9eggvr] {
        margin-bottom: .625rem;
        font-size: .75rem;
    }

    .nl-input-wrap[b-rtqv9eggvr] {
        min-height: 44px;
    }

    .nl-input[b-rtqv9eggvr] {
        padding-block: .625rem;
        font-size: .8125rem;
    }

    .nl-submit[b-rtqv9eggvr] {
        width: 38px;
        height: 38px;
    }

    .nl-options[b-rtqv9eggvr] {
        margin-top: .5rem;
        gap: .875rem;
    }

    .footer-bottom[b-rtqv9eggvr] {
        border-top: 1px solid var(--f-border);
    }

    .bottom-inner[b-rtqv9eggvr] {
        position: relative;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 42px;
        gap: .25rem .625rem;
        padding: .75rem .625rem max(.75rem, env(safe-area-inset-bottom));
        text-align: left;
        font-size: .75rem;
        line-height: 1.4;
    }

    .bottom-legal[b-rtqv9eggvr],
    .bottom-contact[b-rtqv9eggvr],
    .bottom-copy[b-rtqv9eggvr] {
        grid-column: 1;
        min-width: 0;
    }

    .back-to-top[b-rtqv9eggvr] {
        grid-column: 2;
        grid-row: 1 / span 2;
        align-self: center;
        width: 40px;
        height: 40px;
        margin: 0;
    }
}

@media (max-width: 359px) {
    .link-list[b-rtqv9eggvr] {
        grid-template-columns: 1fr;
    }

    .social-link[b-rtqv9eggvr] {
        width: 38px;
        height: 38px;
    }
}

/* ============================================================
   14. PRINT STYLES
   ============================================ */

@media print {
    .footer-accent-strip[b-rtqv9eggvr],
    .social-bar[b-rtqv9eggvr],
    .newsletter-form[b-rtqv9eggvr],
    .back-to-top[b-rtqv9eggvr] {
        display: none !important;
    }

    .footer[b-rtqv9eggvr] {
        background: transparent;
        color: #000;
    }

    .link-item[b-rtqv9eggvr] {
        color: #000;
    }

    .bottom-inner[b-rtqv9eggvr] {
        border-top: 1px solid #000;
    }
}
/* /Components/Layout/Header.razor.rz.scp.css */
/* Header.razor.css - shared wrapper/breakpoint/chrome styles only. Visual design for any given
   template lives in that template's own scoped .razor.css under HeaderTemplates/Templates/* -
   this file never grows per-template rules, by design (see Header.razor's own header comment). */

/* Semantic header aliases connect every template to the complete palette supplied by
   HeaderThemeVariables, including scoped overrides from the header colour editor.

   NOTE: these live on .header-root, not :root. Blazor CSS isolation rewrites a scoped file's
   ":root" selector into ":root[b-xxxxxxxxxx]" - but <html> never receives that scope attribute,
   so a :root rule in a *.razor.css file silently matches nothing and every var() consumer below
   falls back to unset/transparent. .header-root DOES receive the scope attribute (it's rendered
   by this component), and CSS custom properties inherit down through all descendant DOM nodes
   regardless of each nested child component's own distinct scope attribute - so this is both the
   fix and the more correct scope for "header-only" tokens anyway. */
.header-root[b-299hkxlb6z] {
    --header-background: var(--bhogi-header-background, var(--cmp-header-bg, var(--bhogi-surface, #ffffff)));
    --header-text-color: var(--bhogi-header-text, var(--cmp-header-text, var(--bhogi-text, #15211d)));
    --header-icon-color: var(--bhogi-header-icon, var(--cmp-header-icon-color, var(--header-text-color)));
    --header-accent: var(--cmp-header-accent, var(--bhogi-gold));
    --header-muted: var(--cmp-header-muted, var(--bhogi-text-secondary));
    --header-nav-background: var(--cmp-header-nav-bg, var(--header-background));
    --header-nav-text: var(--cmp-header-nav-text, var(--header-text-color));
    --header-link-hover: var(--cmp-header-link-hover, var(--header-text-color));
    --header-nav-hover-background: var(--cmp-header-nav-hover-bg, var(--bhogi-surface-raised));
    --header-dropdown-background: var(--cmp-header-dropdown-bg, var(--header-background));
    --header-dropdown-text: var(--cmp-header-dropdown-text, var(--header-text-color));
    --header-search-background: var(--cmp-header-search-bg, var(--header-background));
    --header-search-text: var(--cmp-header-search-text, var(--header-text-color));
    --header-search-muted: var(--cmp-header-search-muted, var(--header-muted));
    --header-search-border: var(--cmp-header-search-border, var(--header-border));
    --header-search-focus-border: var(--cmp-header-search-border-focus, var(--header-link-hover));
    --header-search-focus-background: var(--cmp-header-search-bg-focus, var(--header-background));
    /* Bumped 88px -> 96px as part of the premium/editorial-jewelry polish pass (Tanishq/
       Bluestone/Cartier-style: generous whitespace over dense marketplace cramming). Only the
       5 Desktop templates consume this var directly (min-height: var(--header-height)) - Tablet
       uses --header-height-tablet below and Mobile templates use their own fixed, already
       carefully-tuned row heights (Mobile Layout01 in particular went through several rounds of
       live QA on exact px values), so this one token change can't disturb either of those. */
    --header-height: var(--bhogi-header-height, 82px);
    /* Same idea, one step down for Tablet's tighter viewport band (577-991px) - was a magic
       "64px" repeated in all 3 Tablet templates; centralized here and bumped modestly for the
       same generous-whitespace goal. */
    --header-height-tablet: var(--bhogi-header-height-tablet, 68px);
    --header-border: var(--bhogi-header-border, var(--cmp-header-border, var(--bhogi-border, #e6e6e6)));

    position: relative;
    transition: opacity 0.2s ease;
    isolation: isolate;
}

/* The actual sticky anchor for every template (desktop/tablet/mobile all also carry their
   own is-sticky -> position:sticky rule, but that alone doesn't work: their sticky wrapper
   -.hd0N/.ht0N/.hm01- sits inside .header-shell-* -> .header-root, and those two wrapper divs
   exist ONLY to hold the header, so their own box (the "containing block" a sticky element is
   allowed to travel within) is barely taller than the header itself - CSS lets a sticky element
   stay pinned only within its containing block's bounds, so with ~0px of extra room the header
   unstuck and scrolled away almost as soon as it engaged, on every breakpoint. .header-root,
   though, is a DIRECT child of MainLayout's .site-wrapper, which also contains <main> (the
   entire rest of the page) as a sibling - that gives a properly tall containing block, so
   putting the actual position:sticky here is what makes the header stay pinned for the full
   scroll instead of just the first ~100px. */
.header-root.is-sticky[b-299hkxlb6z] {
    position: sticky;
    top: 0;
    z-index: 1020;
}

/* Mirrors the legacy header's header-sticky-loading/header-loading: until categories + badge
   counts have loaded once, the whole header is faded and inert rather than clickable-but-wrong. */
.header-root.is-loading[b-299hkxlb6z] {
    opacity: 0.6;
    pointer-events: none;
}

/* Scroll elevation: once BhogiHeader.initScroll's JS interop (see header-interop.js and
   OnScrollChanged below) toggles is-scrolled on, lift the pinned header off the page content
   sliding underneath it with a soft shadow - the same cue every major storefront (Amazon,
   Flipkart, Myntra, Nykaa, Zara) applies once you scroll past the top, so a sticky header
   doesn't just look "stuck to the page" with no visual separation. Lives here (not a
   per-template file) because it targets .header-root itself, which EVERY template shares
   regardless of which Desktop/Tablet/Mobile layout is configured - see this file's own header
   comment on why cross-template rules belong here. Uses --header-text-color (not raw
   --bhogi-text) so a seller's header-specific text-color override still produces a
   correctly-tinted shadow instead of a color the rest of their theme didn't choose. */
.header-root.is-scrolled[b-299hkxlb6z] {
    --header-background: var(--cmp-header-bg-scrolled, var(--cmp-header-bg, var(--bhogi-surface)));
    box-shadow: var(--cmp-header-shadow);
    transition: opacity 0.2s ease, box-shadow 0.25s ease;
}

@media (prefers-reduced-motion: reduce) {
    .header-root.is-scrolled[b-299hkxlb6z] {
        transition: opacity 0.2s ease;
    }
}

/* Only one of these three is ever visible per viewport - each still renders just the ONE
   template the seller configured, so this never means "render every layout, hide two". */
.header-shell-desktop[b-299hkxlb6z],
.header-shell-tablet[b-299hkxlb6z],
.header-shell-mobile[b-299hkxlb6z] {
    display: none;
}

@media (min-width: 992px) {
    .header-shell-desktop[b-299hkxlb6z] {
        display: block;
    }
}

@media (min-width: 577px) and (max-width: 991px) {
    .header-shell-tablet[b-299hkxlb6z] {
        display: block;
    }
}

@media (max-width: 576px) {
    .header-shell-mobile[b-299hkxlb6z] {
        display: block;
    }
}

/* Visitor color-theming toggle (SiteChromeThemeStore / ComponentThemeEditor) - unchanged
   feature, now positioned relative to whichever shell is actually visible instead of one
   specific legacy wrapper. */
.cte-chrome-toggle-wrap[b-299hkxlb6z] {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 1060;
}

.cte-chrome-toggle-btn[b-299hkxlb6z] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--header-border);
    background: color-mix(in srgb, var(--header-background) 85%, var(--header-text-color) 15%);
    color: var(--header-icon-color);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
}

.cte-chrome-toggle-btn:hover[b-299hkxlb6z] {
    background: color-mix(in srgb, var(--header-text-color) 12%, transparent);
}

/* On phone-width headers the action icon row runs right up to the edge, so the full-size
   toggle collides with whichever icon is last (usually cart). Shrink and tuck it into the
   true corner instead - still reachable, just out of the icons' way. */
@media (max-width: 991px) {
    .cte-chrome-toggle-wrap[b-299hkxlb6z] {
        display: none;
    }
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout01.razor.rz.scp.css */
.hd01[b-jmyea6ssch] {
    background: var(--header-background);
    color: var(--header-text-color);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd01.is-transparent[b-jmyea6ssch] {
    background: transparent;
    border-color: transparent;
}

.hd01-main[b-jmyea6ssch] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    min-height: var(--header-height);
    padding: 0.6rem 1.25rem;
}

/* max-width was 560px - on a typical laptop-width viewport (~1300-1500px content width)
   the search box hit that cap well before using the space actually available between the logo
   and the action icons, leaving a large empty gap in the middle of the header. Raised it so the
   box actually uses most of that space; still capped (not max-width:none) so it doesn't stretch
   to something absurd on an ultra-wide monitor. */
.hd01-search[b-jmyea6ssch] {
    flex: 1 1 auto;
    max-width: 900px;
}

/* .hd01-actions' margin-left:auto rule now lives in app.css's "HEADER COMPONENTS - GLOBAL
   OVERRIDES" section, not here - <HeaderActionIcons> renders its own root element, so it
   carries HeaderActionIcons' Blazor CSS-isolation scope attribute rather than this file's; a
   rule here compiled with THIS file's scope attribute and silently never matched it (the
   action icons still ended up flush right only because nothing else in the flex row was
   fighting it, not because this rule worked). See app.css for the real rule. */

.hd01-nav-strip[b-jmyea6ssch] {
    border-top: 1px solid var(--header-border);
    border-bottom: 1px solid color-mix(in srgb, var(--header-border) 70%, transparent);
    background: var(--header-nav-background);
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout02.razor.rz.scp.css */
.hd02[b-wpuirwa9sc] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd02-main[b-wpuirwa9sc] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    min-height: var(--header-height);
    padding: 0.55rem 1.25rem;
}

/* min-width:0 lets this grid column actually shrink below its content's natural width -
   without it, a grid item's default automatic minimum size is its min-content size, and
   HeaderNavigation's nav links are flex-nowrap/white-space:nowrap (app.css's "HEADER NAVIGATION
   - GLOBAL STYLES" section, !important) so they never wrap - meaning the nav's min-content
   width is the FULL width of every item end to end. With 5 items (Category/Style/Occasion/
   Collection/Gift Cards) that's wide enough to be borderline against the centered logo column
   even before any styling changes; the generous-whitespace polish pass (more gap/padding on
   .hd02-main) ate just enough of the remaining width to tip it from "borderline" to visibly
   overlapping the logo on a real ~1300-1500px viewport - confirmed live. overflow-x:auto (with
   the scrollbar hidden below) is the actual fix: once the column can shrink, the nav scrolls
   internally instead of spilling into the logo, at any viewport width, and every nav item stays
   reachable rather than being silently clipped. */
.hd02-nav[b-wpuirwa9sc] {
    /* width:100% is the actual fix, not min-width:0 alone: with justify-self:start (no
       stretch), a non-overflowing grid item sizes itself by fit-content against the track,
       but this item's overflow-x:auto already makes its own automatic minimum size 0 for THAT
       track-sizing computation - it does not, by itself, force the item's OWN box down to the
       track's width for a non-stretched item, so it still rendered near its max-content width
       (~838px measured live) instead of clamping to the ~608px grid track, still overlapping
       the centered logo column. Forcing width:100% makes it explicitly fill its grid area
       (same effect as justify-self:stretch would, without changing how its own content aligns
       inside that box), so min-width:0 + overflow-x:auto can then do their actual job:
       constrain the box to exactly the track's width and let genuinely oversized content
       scroll inside it. Confirmed via getBoundingClientRect() before this fix that the box was
       838px wide against a 608px track - this targets that gap directly. */
    justify-self: start;
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* With 5 items and only ~600px of track on a typical laptop-width viewport, 1-2 trailing
       nav items (e.g. "Gift Cards") end up scrolled out of view with nothing telling the visitor
       they're there - the fix above stops them from overlapping the logo, but silently hiding
       reachable content is its own small UX gap. A static edge fade is the standard, cheap
       affordance for "this scrolls, there's more" (seen on tab strips/chip rows across most
       polished apps) without needing a JS scroll listener to track scroll position - it stays
       accurate at the default (unscrolled) position, which is what most visitors will see. */
    mask-image: linear-gradient(to right, black calc(100% - 28px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, black calc(100% - 28px), transparent 100%);
}

.hd02-nav[b-wpuirwa9sc]::-webkit-scrollbar {
    display: none;
}

.hd02-logo[b-wpuirwa9sc] {
    justify-self: center;
}

.hd02-right[b-wpuirwa9sc] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout03.razor.rz.scp.css */
.hd03[b-xpvcnsp51l] {
    background: var(--header-background);
    color: var(--header-text-color);
    text-align: center;
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd03-top[b-xpvcnsp51l] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    min-height: var(--header-height);
    padding: 0.55rem 1.25rem;
}

.hd03-spacer[b-xpvcnsp51l] {
    justify-self: start;
}

.hd03-logo[b-xpvcnsp51l] {
    justify-self: center;
}

.hd03-actions[b-xpvcnsp51l] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.hd03-nav-strip[b-xpvcnsp51l] {
    border-top: 1px solid var(--header-border);
    border-bottom: 1px solid color-mix(in srgb, var(--header-border) 70%, transparent);
    background: var(--header-nav-background);
}

.hd03-nav-wrap[b-xpvcnsp51l] {
    display: flex;
    justify-content: center;
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout04.razor.rz.scp.css */
.hd04[b-21uagaixjy] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd04-main[b-21uagaixjy] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    min-height: var(--header-height);
    padding: 0.55rem 1.25rem;
}

.hd04-nav[b-21uagaixjy] {
    margin-left: auto;
}

.hd04-actions[b-21uagaixjy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout05.razor.rz.scp.css */
.hd05[b-7krg4cy8a3] {
    background: var(--header-background);
    color: var(--header-text-color);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd05-main[b-7krg4cy8a3] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    min-height: var(--header-height);
    padding: 0.6rem 1.25rem;
}

.hd05-search[b-7krg4cy8a3] {
    flex: 1 1 auto;
    max-width: 780px;
}

.hd05-search[b-7krg4cy8a3]  .search-box {
    min-height: 46px;
    border-radius: 999px;
    background: var(--header-search-background);
}

.hd05-category-strip[b-7krg4cy8a3] {
    background: var(--header-nav-background);
    border-top: 1px solid var(--header-border);
    border-bottom: 1px solid var(--header-border);
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout06.razor.rz.scp.css */
.hd06[b-g28f2s730r] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hd06-main[b-g28f2s730r] {
    display: flex;
    align-items: center;
    gap: 1.15rem;
    min-height: var(--header-height);
    padding: 0.55rem 1.25rem;
}

.hd06-brand[b-g28f2s730r] {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    flex: 0 0 auto;
    min-width: 0;
}

/* flex (not grid), so a fixed flex-basis + shrink + min-width:0 reliably caps this item's
   rendered width - unlike a CSS Grid item with justify-self:start, where max-width alone isn't
   enough to stop the box growing past its track (see HeaderDesktopLayout02.razor.css's own
   detailed writeup of that pitfall). .header-nav's global !important flex-wrap:nowrap
   (app.css) means this nav's natural content width can exceed the space left after the search
   bar - overflow-x:auto plus the trailing fade-mask lets a seller with many top categories
   scroll to the rest instead of the row overlapping or the header overflowing horizontally. */
.hd06-nav[b-g28f2s730r] {
    flex: 0 1 380px;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    mask-image: linear-gradient(to right, black calc(100% - 24px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, black calc(100% - 24px), transparent 100%);
}

.hd06-nav[b-g28f2s730r]::-webkit-scrollbar {
    display: none;
}

.hd06-search[b-g28f2s730r] {
    flex: 1 1 auto;
    min-width: 0;
}

/* Ajio's own search bar reads as a large, fully-rounded pill rather than the app's default
   slightly-rounded rectangle. SearchBox is a separate component, so ::deep is needed to reach
   its root .search-box element from this template's own scoped stylesheet. */
.hd06-search[b-g28f2s730r]  .search-box {
    border-radius: 9999px;
    min-height: 46px;
    background: var(--header-search-background);
}

.hd06-nav[b-g28f2s730r]  .nav-link {
    font-size: 0.7rem !important;
    padding-inline: 0.65rem !important;
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout07.razor.rz.scp.css */
.hd07[b-5l7pzaob2b] {
    background: var(--header-background);
    color: var(--header-text-color);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - see HeaderDesktopLayout01.razor.css's comment for the full
   explanation (identical reasoning applies to every template in this folder). */

.hd07-main[b-5l7pzaob2b] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    min-height: var(--header-height);
    padding: 0.55rem 1.25rem;
}

.hd07-search[b-5l7pzaob2b] {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 720px;
}

/* .hd07-search has a max-width, so on wide viewports it stops growing before it reaches
   .hd07-actions - this is what actually pushes the actions flush to the header's right edge
   instead of leaving dead space between the search bar and the icons (own scoped div/class,
   no cross-component CSS-isolation gap to work around here). */
.hd07-actions[b-5l7pzaob2b] {
    margin-left: auto;
    display: flex;
    align-items: center;
}

.hd07-category-strip[b-5l7pzaob2b] {
    border-top: 1px solid var(--header-border);
    border-bottom: 1px solid var(--header-border);
    padding: 0.55rem 0;
    background: color-mix(in srgb, var(--bhogi-primary, #40c4b4) 4%, var(--header-background));
}

.hd07-search[b-5l7pzaob2b]  .search-box {
    min-height: 46px;
    border-radius: 999px;
}
/* /Components/Layout/HeaderTemplates/Desktop/HeaderDesktopLayout08.razor.rz.scp.css */
.hd08[b-rkh2ri7ay3] {
    background: var(--header-background);
    color: var(--header-text-color);
}

/* A thin decorative accent line only - no fabricated "locale/shipping" utility-bar text here,
   since this app has no real store-locator/multi-currency data to put in one truthfully.
   Purely a color cue (uses the existing gold token, never a hardcoded hex) echoing the warm
   accent bar premium ethnic-wear sites use above their main row. */
.hd08-accent[b-rkh2ri7ay3] {
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--bhogi-gold, #c8960c) 15%, var(--bhogi-gold, #c8960c) 85%, transparent);
}

.hd08-main[b-rkh2ri7ay3] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    min-height: var(--header-height);
    padding: 0.65rem 1.5rem;
}

/* width:100% (not just max-width) + min-width:0 + overflow-x:auto + trailing fade-mask is the
   exact pattern proven on Desktop Layout02's .hd02-nav: a CSS Grid item with justify-self:start
   sizes its own box via fit-content(track) against its min/max-content, so max-width alone does
   NOT reliably cap a grid item's rendered width the way it does for a flex item - width:100%
   (resolved against the grid track) is what actually clamps it. See
   HeaderDesktopLayout02.razor.css for the full writeup of why this is necessary here. */
.hd08-nav[b-rkh2ri7ay3] {
    justify-self: start;
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    mask-image: linear-gradient(to right, black calc(100% - 28px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, black calc(100% - 28px), transparent 100%);
}

.hd08-nav[b-rkh2ri7ay3]::-webkit-scrollbar {
    display: none;
}

/* Wider letter-spacing on this template's nav links specifically, for the "premium boutique"
   typographic cue - app.css's global .header-nav .nav-link rule already sets a base
   letter-spacing without !important on that particular property, but !important here keeps
   this override reliable regardless of the two stylesheets' relative load order. HeaderNavigation
   is a separate component, so ::deep is required to reach its .nav-link markup. */
.hd08-nav[b-rkh2ri7ay3]  .nav-link {
    letter-spacing: 0.075em !important;
    padding-inline: 0.65rem !important;
}

.hd08-logo[b-rkh2ri7ay3] {
    justify-self: center;
}

.hd08-right[b-rkh2ri7ay3] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.hd08-search[b-rkh2ri7ay3] {
    width: 220px;
}

.hd08-search[b-rkh2ri7ay3]  .search-box {
    min-height: 44px;
    border-radius: 999px;
    border-color: color-mix(in srgb, var(--bhogi-gold, #c8960c) 38%, var(--header-border)) !important;
}

@media (min-width: 1200px) {
    .hd08-search[b-rkh2ri7ay3] {
        width: 280px;
    }
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderAccount.razor.rz.scp.css */
.header-el-account[b-1gvlakvx3a] {
    position: relative;
    display: inline-flex;
}

.header-el-account-trigger[b-1gvlakvx3a] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: none;
    background: transparent;
    color: color-mix(in srgb, var(--header-text-color, #15211d) 72%, var(--header-icon-color, #40c4b4) 28%);
    cursor: pointer;
    text-decoration: none;
    padding: 0;
}

.header-el-account.stacked .header-el-account-trigger[b-1gvlakvx3a] {
    flex-direction: column;
    gap: 0.2rem;
}

.header-el-account-trigger .header-el-badge-icon-wrap[b-1gvlakvx3a] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--bhogi-radius-md, 8px);
    font-size: 1.1rem;
    transition: background-color 0.15s ease;
}

.header-el-account-trigger:hover .header-el-badge-icon-wrap[b-1gvlakvx3a],
.header-el-account-trigger:focus-visible .header-el-badge-icon-wrap[b-1gvlakvx3a] {
    background: color-mix(in srgb, var(--header-icon-color) 10%, transparent);
}

/* Same phone-width compacting as HeaderBadgeIcon.razor.css (Compare/Wishlist/Cart) - this
   component renders its own copy of .header-el-badge-icon-wrap rather than reusing that file's
   rule (cross-component Blazor CSS isolation - see this file's sibling components), so the
   override has to be duplicated here too to keep Account visually consistent with the other
   mobile action-row icons. */
@media (max-width: 576px) {
    .header-el-account-trigger .header-el-badge-icon-wrap[b-1gvlakvx3a] {
        width: 44px;
        height: 44px;
        font-size: 1rem;
    }
}

/* header-elements.css caps every .header-icon-btn at 36px wide on phones - correct for an
   icon-only button, but HeaderActionIcons forces this one into Stacked mode once the visitor
   is signed in (so the actual account name shows here, the same way it already did on
   desktop - see HeaderActionIcons.razor), and a name obviously doesn't fit in 36px. This
   selector is more specific than that global rule (two of this component's own classes vs.
   its one), so it wins without needing !important; the label itself gets a matching cap with
   an ellipsis so a long email prefix doesn't blow out the whole action row. */
@media (max-width: 576px) {
    .header-el-account.stacked .header-el-account-trigger[b-1gvlakvx3a] {
        min-width: 44px;
        max-width: 72px;
    }

    .header-el-account.stacked .header-el-badge-label[b-1gvlakvx3a] {
        max-width: 68px;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    /* Keep the signed-in name inside the compact action row, below the visible icon. */
    .header-el-account.stacked button.header-el-account-trigger .header-el-badge-label[b-1gvlakvx3a] {
        margin-top: -8px;
    }
}

.header-el-account-overlay[b-1gvlakvx3a] {
    position: fixed;
    inset: 0;
    z-index: 1040;
    background: transparent;
}

.header-el-account-dropdown[b-1gvlakvx3a] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 1050;
    min-width: 220px;
    background: var(--header-dropdown-background);
    border: 1px solid var(--header-border);
    border-radius: var(--bhogi-radius-md, 10px);
    box-shadow: 0 12px 30px color-mix(in srgb, var(--bhogi-text, #000) 16%, transparent);
    padding: 0.4rem 0;
}

.header-el-account.stacked .header-el-account-dropdown[b-1gvlakvx3a] {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}

.header-el-account-dropdown .dropdown-header[b-1gvlakvx3a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--header-dropdown-text);
    overflow-wrap: anywhere;
}

.header-el-account-dropdown .dropdown-divider[b-1gvlakvx3a] {
    height: 1px;
    margin: 0.3rem 0;
    background: var(--header-border);
}

.header-el-account-dropdown .dropdown-item[b-1gvlakvx3a] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    padding: 0.55rem 1rem;
    border: none;
    background: transparent;
    color: var(--header-dropdown-text);
    font-size: 0.88rem;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.header-el-account-dropdown .dropdown-item:hover[b-1gvlakvx3a] {
    background: var(--header-nav-hover-background);
}

.header-el-account-dropdown .dropdown-item i[b-1gvlakvx3a] {
    width: 1.1em;
    text-align: center;
    opacity: 0.8;
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderActionIcons.razor.rz.scp.css */
.header-el-action-icons[b-a9lf9y2wbf] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderBadgeIcon.razor.rz.scp.css */
.header-el-badge-icon[b-c4pzrhfcng] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    color: color-mix(in srgb, var(--header-text-color, #15211d) 72%, var(--header-icon-color, #40c4b4) 28%);
    text-decoration: none;
    position: relative;
}

.header-el-badge-icon.stacked[b-c4pzrhfcng] {
    flex-direction: column;
    gap: 0.2rem;
}

.header-el-badge-icon-wrap[b-c4pzrhfcng] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--bhogi-radius-md, 8px);
    font-size: 1.1rem;
    transition: background-color 0.15s ease;
}

.header-el-badge-icon:hover .header-el-badge-icon-wrap[b-c4pzrhfcng],
.header-el-badge-icon:focus-visible .header-el-badge-icon-wrap[b-c4pzrhfcng] {
    background: color-mix(in srgb, var(--header-icon-color) 10%, transparent);
}

/* Slightly smaller touch target on phones, matching the flat/compact treatment
   header-elements.css gives .header-icon-btn at the same breakpoint. */
@media (max-width: 576px) {
    .header-el-badge-icon-wrap[b-c4pzrhfcng] {
        width: 44px;
        height: 44px;
        font-size: 1rem;
    }
}

/* .header-el-badge-count's positioning/color and .header-el-badge-label's typography are now
   owned by the global (non-Blazor-scoped) wwwroot/css/header-elements.css - see the comment atop
   HeaderBadgeIcon.razor for why. Redefining them here would fight that file: this component's
   compiled selectors carry a Blazor scope attribute, which out-specificities a plain global
   class selector regardless of stylesheet order, so a local rule here would silently win over
   (and diverge from) the shared cart-accent/compare/wishlist styling that file provides. */
/* /Components/Layout/HeaderTemplates/Elements/HeaderCategoryImageStrip.razor.rz.scp.css */
.header-el-category-strip[b-w3j7azkt5f] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.header-el-category-strip[b-w3j7azkt5f]::-webkit-scrollbar {
    display: none;
}

.header-el-category-strip-item[b-w3j7azkt5f] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    text-decoration: none;
    flex: 0 0 auto;
    width: 76px;
}

.header-el-category-strip-thumb[b-w3j7azkt5f] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
    background: color-mix(in srgb, var(--header-text-color) 6%, transparent);
    border: 2px solid color-mix(in srgb, var(--bhogi-gold, #c8960c) 32%, var(--header-border));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.header-el-category-strip-item:hover .header-el-category-strip-thumb[b-w3j7azkt5f] {
    border-color: var(--bhogi-gold, #c8960c);
    transform: translateY(-2px);
}

.header-el-category-strip-thumb img[b-w3j7azkt5f] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.header-el-category-strip-initial[b-w3j7azkt5f] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--header-text-color);
}

.header-el-category-strip-label[b-w3j7azkt5f] {
    font-size: 0.75rem;
    font-weight: 600;
    color: color-mix(in srgb, var(--header-text-color) 86%, transparent);
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

@media (max-width: 991px) {
    .header-el-category-strip[b-w3j7azkt5f] { gap: 0.75rem; }
    .header-el-category-strip-item[b-w3j7azkt5f] { width: 68px; }
    .header-el-category-strip-thumb[b-w3j7azkt5f] { width: 52px; height: 52px; }
    .header-el-category-strip-label[b-w3j7azkt5f] { font-size: 0.6875rem; }
}

.header-el-category-strip-skeleton[b-w3j7azkt5f] {
    flex: 0 0 auto;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--header-text-color) 10%, transparent);
    animation: header-el-category-strip-pulse-b-w3j7azkt5f 1.4s ease-in-out infinite;
}

@keyframes header-el-category-strip-pulse-b-w3j7azkt5f {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .header-el-category-strip-item:hover .header-el-category-strip-thumb[b-w3j7azkt5f] {
        transform: none;
    }
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderHamburger.razor.rz.scp.css */
/* Gold-tinted pill chrome, same family as the other action icons (search toggle, cart,
   wishlist, compare) but with a visibly stronger tint/border than theirs - kept short of
   "competing with the logo" territory (an earlier pass used a bold solid-fill CTA and that DID
   outweigh the logo - see the git history on this file) but strong enough to read as a
   deliberately styled button rather than an unstyled one. The original subtle version (6%/45%
   tints, matching the icon row exactly) turned out to be too close to invisible against a
   white header background on an actual phone screen - correct in devtools, but read as "plain"
   in practice. This component is only ever rendered here (unlike HeaderCart/HeaderCompare/etc,
   which are shared across several separate Blazor components), so a normal scoped rule is fine
   - no cross-component CSS-isolation problem to work around. */
.header-el-hamburger[b-kudoi9gcsc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    border: 1px solid var(--cmp-header-icon-border, color-mix(in srgb, var(--bhogi-gold, #c8960c) 60%, transparent));
    border-radius: 12px;
    background: var(--cmp-header-icon-bg, color-mix(in srgb, var(--bhogi-gold, #c8960c) 12%, var(--bhogi-surface-raised, #fff)));
    color: color-mix(in srgb, var(--header-text-color, #15211d) 72%, var(--header-icon-color, #40c4b4) 28%);
    font-size: 1.05rem;
    cursor: pointer;
    box-shadow: none;
    transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.header-el-hamburger:hover[b-kudoi9gcsc],
.header-el-hamburger:focus-visible[b-kudoi9gcsc] {
    color: var(--bhogi-primary, #40C4B4);
    border-color: color-mix(in srgb, var(--bhogi-gold, #c8960c) 65%, transparent);
    outline: none;
}

.header-el-hamburger:active[b-kudoi9gcsc] {
    transform: scale(0.95);
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderLogo.razor.rz.scp.css */
.header-el-logo[b-te3fe7kpvd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 1 auto;
    min-width: 0;
    max-width: 100%;
    line-height: 0;
    background: var(--cmp-header-logo-bg, var(--header-background));
    border: 0;
    border-radius: var(--bhogi-radius-sm, 4px);
    transition: background 160ms ease;
    vertical-align: middle;
}

.header-el-logo:hover[b-te3fe7kpvd],
.header-el-logo:focus-visible[b-te3fe7kpvd] {
    background: var(--cmp-header-logo-hover-bg, var(--header-background));
}

.header-el-logo-image[b-te3fe7kpvd] {
    display: block;
    height: var(--header-logo-height);
    width: auto;
    max-width: min(100%, var(--header-logo-width));
    object-fit: contain;
}

svg.header-el-logo-image[b-te3fe7kpvd] {
    width: calc(var(--header-logo-height) * 422 / 190);
}

@media (max-width: 991px) {
    .header-el-logo[b-te3fe7kpvd] {
        min-height: 44px;
    }
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderMegaMenuPanel.razor.rz.scp.css */
.mega-menu-wrapper[b-56hi6djbdg] {
    background: var(--header-dropdown-background);
    color: var(--header-dropdown-text);
    border-top: 1px solid var(--header-border);
    box-shadow: 0 16px 32px color-mix(in srgb, var(--bhogi-text) 12%, transparent);
    padding: 1.75rem 0;
}

.mega-menu-content[b-56hi6djbdg] {
    display: grid;
    grid-template-columns: 1.1fr 1.4fr 1fr;
    gap: 2rem;
}

.featured-banner[b-56hi6djbdg] {
    position: relative;
    border-radius: var(--bhogi-radius-lg, 14px);
    overflow: hidden;
    height: 100%;
    min-height: 220px;
    background: var(--bhogi-gradient-primary, var(--bhogi-primary));
}

.featured-image[b-56hi6djbdg] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-placeholder[b-56hi6djbdg] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    color: color-mix(in srgb, var(--bhogi-surface) 60%, transparent);
}

.featured-overlay[b-56hi6djbdg] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 0.4rem;
    padding: 1.25rem;
    background: linear-gradient(180deg, transparent 30%, rgba(0, 0, 0, 0.65) 100%);
    color: #fff;
}

.featured-title[b-56hi6djbdg] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.35rem;
    margin: 0;
}

.featured-description[b-56hi6djbdg] {
    font-size: 0.85rem;
    margin: 0;
    opacity: 0.9;
}

.featured-cta[b-56hi6djbdg] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: var(--bhogi-gold, #ffca44);
    text-decoration: none;
    font-weight: 600;
    font-size: 0.85rem;
}

.categories-header[b-56hi6djbdg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.categories-title[b-56hi6djbdg] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--header-dropdown-text);
    margin: 0;
}

.categories-badge[b-56hi6djbdg] {
    font-size: 0.75rem;
    color: var(--header-muted);
}

.categories-grid[b-56hi6djbdg] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
}

.category-card[b-56hi6djbdg] {
    min-height: 56px;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.7rem;
    border-radius: var(--bhogi-radius-md, 10px);
    text-decoration: none;
    color: var(--header-dropdown-text);
    background: color-mix(in srgb, var(--header-dropdown-text) 4%, transparent);
    transition: background-color 0.15s ease;
}

.category-card:hover[b-56hi6djbdg] {
    background: color-mix(in srgb, var(--bhogi-primary, #40C4B4) 12%, transparent);
}

.category-icon[b-56hi6djbdg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--bhogi-primary, #40C4B4) 15%, transparent);
    flex-shrink: 0;
}

.category-info[b-56hi6djbdg] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.category-name[b-56hi6djbdg] {
    font-size: 0.85rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.category-count[b-56hi6djbdg] {
    font-size: 0.7rem;
    color: var(--header-muted);
}

.category-arrow[b-56hi6djbdg] {
    margin-left: auto;
    opacity: 0.4;
    font-size: 0.75rem;
}

.mega-promo[b-56hi6djbdg] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.promo-card[b-56hi6djbdg] {
    text-decoration: none;
    padding: 1rem;
    border-radius: var(--bhogi-radius-lg, 14px);
    cursor: pointer;
    color: #fff;
}

.promo-primary[b-56hi6djbdg] {
    background: var(--bhogi-gradient-gold, linear-gradient(135deg, #ffca44, #c8960c));
    color: var(--bhogi-text, #15211d);
}

.promo-secondary[b-56hi6djbdg] {
    background: var(--bhogi-gradient-primary, var(--bhogi-primary));
}

.promo-icon[b-56hi6djbdg] {
    font-size: 1.1rem;
    margin-bottom: 0.4rem;
}

.promo-title[b-56hi6djbdg] {
    font-size: 0.95rem;
    margin: 0 0 0.2rem;
}

.promo-text[b-56hi6djbdg] {
    font-size: 0.78rem;
    margin: 0 0 0.5rem;
    opacity: 0.9;
}

.promo-link[b-56hi6djbdg] {
    font-size: 0.8rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.promo-view-all[b-56hi6djbdg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.7rem 0.9rem;
    border-radius: var(--bhogi-radius-md, 10px);
    border: 1px solid var(--header-border);
    color: var(--header-dropdown-text);
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
}

.promo-view-all i:last-child[b-56hi6djbdg] {
    margin-left: auto;
}

@media (max-width: 1200px) {
    .mega-menu-content[b-56hi6djbdg] {
        grid-template-columns: 1fr 1.3fr;
    }

    .mega-promo[b-56hi6djbdg] {
        display: none;
    }
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderNavigation.razor.rz.scp.css */
.header-el-nav[b-cnivmvfjxh] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.header-el-nav-skeleton[b-cnivmvfjxh] {
    display: flex;
    gap: 1.5rem;
}

.header-el-nav-skeleton-item[b-cnivmvfjxh] {
    width: 70px;
    height: 14px;
    border-radius: 4px;
    background: color-mix(in srgb, var(--header-text-color) 10%, transparent);
    animation: header-el-nav-pulse-b-cnivmvfjxh 1.4s ease-in-out infinite;
}

@keyframes header-el-nav-pulse-b-cnivmvfjxh {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}

.header-el-nav-item[b-cnivmvfjxh] {
    position: relative;
    display: flex;
    align-items: stretch;
}

.header-el-nav-link[b-cnivmvfjxh] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.9rem 0.85rem;
    color: var(--header-nav-text);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 600;
    white-space: nowrap;
}

.header-el-nav-arrow[b-cnivmvfjxh] {
    font-size: 0.65rem;
    opacity: 0.6;
}

.header-el-nav-toggle[b-cnivmvfjxh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    padding: 0 0.5rem;
    border: 0;
    background: transparent;
    color: var(--header-nav-text);
    cursor: pointer;
}

.header-el-nav-toggle:focus-visible[b-cnivmvfjxh] {
    outline: 2px solid var(--header-text-color);
    outline-offset: -2px;
}

.header-el-nav-item[data-menu-open] .header-el-nav-arrow[b-cnivmvfjxh] {
    transform: rotate(180deg);
}

.header-el-mega-menu[b-cnivmvfjxh] {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(8px);
    width: max(720px, 60vw);
    max-width: 960px;
    max-height: var(--header-menu-available-height, calc(100dvh - 220px));
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.15s ease, transform 0.15s ease;
    z-index: 1030;
}

/* The first couple of nav items sit close to the header's left edge. Centering a ~720-960px
   panel on their own (narrow) trigger pushes its left edge past x=0 and off-screen - so those
   items anchor flush-left against their trigger instead of centering, which keeps the whole
   panel on-screen. Later items sit far enough right that centering never clips, so they keep
   the centered behavior (visually matches "look at destination, not the source"). */
.header-el-nav-item.has-megamenu:nth-child(-n+2) .header-el-mega-menu[b-cnivmvfjxh] {
    left: 0;
    transform: translateY(8px);
}

.header-el-nav-item.has-megamenu[data-menu-open] .header-el-mega-menu[b-cnivmvfjxh] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.header-el-nav-item.has-megamenu:nth-child(-n+2)[data-menu-open] .header-el-mega-menu[b-cnivmvfjxh] {
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .header-el-mega-menu[b-cnivmvfjxh] { transition: none; }
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderSearchToggle.razor.rz.scp.css */
.header-el-search-toggle[b-d0pewr8vzc] {
    position: relative;
    display: inline-flex;
}

/* Same theme-aware gold-tinted pill chrome as the other action icons (header-icon-btn, in the
   global wwwroot/css/header-elements.css), just sized for an icon-only circular button instead
   of the icon+label column shape - a shared class there would also force header-icon-btn's
   min-width (meant for the wider icon+label buttons), squeezing this one out of shape. This
   component only ever renders here, so - unlike header-icon-btn - a normal scoped rule is fine,
   no cross-component CSS-isolation problem to work around. */
.header-el-search-toggle-btn[b-d0pewr8vzc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    border: 1px solid var(--cmp-header-icon-border, color-mix(in srgb, var(--bhogi-gold, #c8960c) 45%, transparent));
    background: var(--cmp-header-icon-bg, color-mix(in srgb, var(--bhogi-gold, #c8960c) 6%, var(--bhogi-surface-raised, #fff)));
    color: var(--header-icon-color);
    font-size: 1.05rem;
    cursor: pointer;
    border-radius: 12px;
    box-shadow: none;
    transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.header-el-search-toggle-btn:hover[b-d0pewr8vzc],
.header-el-search-toggle-btn:focus-visible[b-d0pewr8vzc] {
    color: var(--header-link-hover);
    border-color: color-mix(in srgb, var(--bhogi-gold, #c8960c) 65%, transparent);
    outline: none;
}

.header-el-search-toggle-panel[b-d0pewr8vzc] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 1050;
    width: min(360px, 90vw);
    background: var(--header-background);
    border: 1px solid var(--header-border);
    border-radius: var(--bhogi-radius-md, 10px);
    box-shadow: 0 12px 30px color-mix(in srgb, var(--bhogi-text) 16%, transparent);
    padding: 0.6rem;
}

.header-el-search-toggle-panel.full-width[b-d0pewr8vzc] {
    position: static;
    width: 100%;
    box-shadow: none;
    border: none;
    padding: 0.5rem 0 0;
}
/* /Components/Layout/HeaderTemplates/Elements/HeaderUtilityBar.razor.rz.scp.css */
.header-el-utility-bar[b-w6kxbwr338] {
    background: color-mix(in srgb, var(--header-text-color) 4%, var(--header-background));
    border-bottom: 1px solid var(--header-border);
}

.header-el-utility-bar-row[b-w6kxbwr338] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0.25rem 1.25rem;
}

/* Inverted tone - the Max-Fashion-style dark utility strip, derived entirely from the header's
   own semantic tokens (swap which one is background vs. text) instead of a hardcoded dark hex,
   so it stays correct under any seller theme, light or already-dark. */
.header-el-utility-bar.is-inverted[b-w6kxbwr338] {
    background: color-mix(in srgb, var(--header-text-color) 92%, var(--header-background) 8%);
    border-bottom-color: transparent;
}

/* app.css's "HEADER COMPONENTS - GLOBAL OVERRIDES" section forces every .header-icon-btn into
   the same icon-over-label column layout with !important (by design - see that section's own
   comments), so this only touches what's left open: background/border/shadow/sizing. Uses
   ::deep because HeaderAccount is a different component from this one and carries its own
   Blazor CSS-isolation scope - the same cross-component gap header-elements.css documents. */
.header-el-utility-bar-account[b-w6kxbwr338]  .header-icon-btn {
    min-width: auto;
    max-width: none;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

.header-el-utility-bar-account[b-w6kxbwr338]  .icon-label {
    text-transform: none;
    font-weight: 600;
    letter-spacing: normal;
    font-size: 0.75rem;
}

.header-el-utility-bar.is-inverted .header-el-utility-bar-account[b-w6kxbwr338]  .header-icon-btn,
.header-el-utility-bar.is-inverted .header-el-utility-bar-account[b-w6kxbwr338]  .icon-label {
    color: var(--header-background);
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout01.razor.rz.scp.css */
.hm01[b-hb0ds940bw] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* No position:sticky here (this template used to have one, scoped to just this row - removed
   during cleanup). The actual pinning happens one level up, at .header-root.is-sticky in
   Header.razor.css: its containing block is .site-wrapper, which is tall enough to hold a
   sticky element for the full page scroll, whereas .hm01's own containing block only ever
   wraps the header, giving a sticky rule here nowhere to go after the first ~100px (see that
   file's comment for the full explanation). Once .header-root is pinned to the viewport, this
   row and .hm01-actions-row below it just need normal in-flow layout - no position of their
   own - to sit correctly inside it. */
.hm01-row[b-hb0ds940bw] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.5rem;
    min-height: 48px;
    padding: 2px 0.75rem;
    background: var(--header-background);
}

.hm01-logo[b-hb0ds940bw] {
    justify-self: start;
    min-width: 0;
}

/* Layout 01 renders its search button directly, so the shared HeaderSearchToggle scoped
   stylesheet cannot reach it. Keep the direct button at the same accessible touch size. */
.header-el-search-toggle-btn[b-hb0ds940bw] {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid var(--cmp-header-icon-border, color-mix(in srgb, var(--bhogi-gold, #c8960c) 45%, transparent));
    border-radius: 12px;
    background: var(--cmp-header-icon-bg, color-mix(in srgb, var(--bhogi-gold, #c8960c) 6%, var(--header-background)));
    color: var(--header-text-color);
}

/* Secondary row, wrapping the shared <HeaderActionIcons> (compare/wishlist/cart/account, in
   the seller-configured order - same component every other template uses, so this row doesn't
   hand-roll its own copy of that ordering/visibility logic). Not sticky by design; see
   .header-root.is-sticky in Header.razor.css. Kept slim (icon-only chrome lives in
   header-elements.css) - this is a lightweight utility strip, not a second toolbar.

   The actual "spread icons across the full width" rule lives in app.css's "HEADER COMPONENTS -
   GLOBAL OVERRIDES" section as `.hm01-actions`, not here: <HeaderActionIcons> is rendered by
   its OWN component, so its root div carries HeaderActionIcons' Blazor CSS-isolation scope
   attribute, not this file's - a rule written here targeting it (even via the hm01-actions
   CssClass we pass in) would compile with the wrong scope attribute and silently never match.
   This file only owns the outer .hm01-actions-row wrapper, which is why only slim/collapse
   concerns for THAT element are handled here. */
.hm01-actions-row[b-hb0ds940bw] {
    padding: 0 0.75rem;
    border-top: 1px solid var(--header-border);
    max-height: 45px;
    transition: max-height 0.25s ease, opacity 0.2s ease, padding 0.25s ease, border-color 0.2s ease;
}


/* Modern app pattern: once the page is scrolled past the threshold (same is-scrolled signal
   Header.razor's existing BhogiHeader.initScroll JS interop already drives - see header-root
   in Header.razor), collapse this secondary row entirely so only the compact top bar
   (hamburger/logo/search) stays on screen while scrolling, the way most storefront apps do.
   It reappears once the user scrolls back near the top (same hysteresis thresholds the
   scroll interop already uses). .header-root is a different component's element, but Blazor's
   CSS-isolation only appends this file's scope attribute to .hm01-actions-row (the element this
   file actually owns), so the plain ancestor class match still works.

   overflow:hidden is scoped to ONLY this collapsed state, not the base .hm01-actions-row rule
   above. This row hosts <HeaderActionIcons>, whose Account entry (once signed in) opens an
   absolutely-positioned dropdown menu (.header-el-account-dropdown) far taller than this slim
   row - confirmed live via getBoundingClientRect() on the deployed site: the dropdown painted at
   ~278px tall against a ~48-88px row. With overflow:hidden on the EXPANDED row, that dropdown
   opened in the DOM (display:block, _open=true) but was entirely clipped to zero visible height -
   exactly why tapping Account on mobile looked broken while the identical desktop dropdown (same
   component, no clipping ancestor) worked fine. Here, in the collapsed state, the row's own
   height is animating to 0 anyway, so clipping is correct and wanted. */
.header-root.is-scrolled .hm01-actions-row[b-hb0ds940bw] {
    max-height: 0;
    opacity: 0;
    padding-top: 0;
    padding-bottom: 0;
    border-top-color: transparent;
    overflow: hidden;
    pointer-events: none;
}

/* Search takeover - replaces the top row only (same grid cell/row, so its height never
   jumps) with a full-width input + close button while search is open. */
.hm01-search-row[b-hb0ds940bw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    grid-column: 1 / -1;
}

.hm01-search-row-box[b-hb0ds940bw] {
    flex: 1 1 auto;
    min-width: 0;
}

.hm01-search-close[b-hb0ds940bw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    border: none;
    background: transparent;
    color: var(--header-icon-color);
    font-size: 1.2rem;
    cursor: pointer;
    border-radius: var(--bhogi-radius-md, 8px);
}

.hm01-search-close:hover[b-hb0ds940bw],
.hm01-search-close:focus-visible[b-hb0ds940bw] {
    background: color-mix(in srgb, var(--header-icon-color) 10%, transparent);
    outline: none;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout02.razor.rz.scp.css */
.hm02[b-wi47cj2mx6] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hm02-row[b-wi47cj2mx6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 54px;
    padding: 0.45rem 0.85rem 0.2rem;
}

.hm02-right[b-wi47cj2mx6] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.hm02-search-row[b-wi47cj2mx6] {
    padding: 0 0.85rem 0.55rem;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout03.razor.rz.scp.css */
.hm03[b-w9jsremap7] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hm03-row[b-w9jsremap7] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.5rem;
    min-height: 54px;
    padding: 0.45rem 0.85rem 0.2rem;
}

.hm03-logo[b-w9jsremap7] {
    justify-self: center;
    min-width: 0;
}

.hm03-search-row[b-w9jsremap7] {
    padding: 0 0.85rem 0.55rem;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout04.razor.rz.scp.css */
.hm04[b-eiw6joismx] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hm04-row[b-eiw6joismx] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 54px;
    padding: 0.45rem 0.75rem;
}

.hm04-right[b-eiw6joismx] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout05.razor.rz.scp.css */
.hm05[b-hwj2gdsb7m] {
    background: var(--header-background);
    color: var(--header-text-color);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.hm05-row[b-hwj2gdsb7m] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 50px;
    padding: 0.4rem 0.75rem;
}

.hm05-right[b-hwj2gdsb7m] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout06.razor.rz.scp.css */
.hm06[b-y4cckakpxd] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid color-mix(in srgb, var(--bhogi-primary, #40c4b4) 25%, var(--header-border));
}

.hm06-row[b-y4cckakpxd] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.4rem;
    min-height: 60px;
    padding: 0.45rem 0.75rem;
}

.hm06-logo[b-y4cckakpxd] {
    justify-self: center;
}

.hm06-right[b-y4cckakpxd] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout07.razor.rz.scp.css */
.hm07[b-w4pbp2or15] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

.hm07-row[b-w4pbp2or15] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 54px;
    padding: 0.45rem 0.75rem;
}

.hm07-right[b-w4pbp2or15] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.hm07-search-row[b-w4pbp2or15] {
    padding: 0 0.75rem 0.5rem;
}

.hm07-category-strip[b-w4pbp2or15] {
    padding: 0.35rem 0.75rem 0.65rem;
    border-top: 1px solid color-mix(in srgb, var(--header-border) 65%, transparent);
    background: var(--header-nav-background);
}

.hm07-search-row[b-w4pbp2or15]  .search-box { border-radius: 999px; }
/* /Components/Layout/HeaderTemplates/Mobile/HeaderMobileLayout08.razor.rz.scp.css */
.hm08[b-25ahmmb921] {
    background: var(--header-background);
    color: var(--header-text-color);
}

.hm08-accent[b-25ahmmb921] {
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--bhogi-gold, #c8960c) 15%, var(--bhogi-gold, #c8960c) 85%, transparent);
}

.hm08-row[b-25ahmmb921] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.4rem;
    min-height: 62px;
    padding: 0.5rem 0.75rem;
}

.hm08[b-25ahmmb921] {
    border-bottom: 1px solid color-mix(in srgb, var(--bhogi-gold, #c8960c) 32%, var(--header-border));
}

.hm08-logo[b-25ahmmb921] {
    justify-self: center;
}

.hm08-right[b-25ahmmb921] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout01.razor.rz.scp.css */
.ht01[b-7idmos0j04] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.ht01-row[b-7idmos0j04] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.5rem;
    min-height: var(--header-height-tablet);
    padding: 0.65rem 1.25rem;
}

.ht01-logo[b-7idmos0j04] {
    justify-self: start;
}

.ht01-right[b-7idmos0j04] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout02.razor.rz.scp.css */
.ht02[b-wkezzu7dbz] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.ht02-row[b-wkezzu7dbz] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    min-height: var(--header-height-tablet);
    padding: 0.65rem 1.25rem;
}

.ht02-search[b-wkezzu7dbz] {
    flex: 1 1 auto;
    min-width: 0;
}

.ht02-right[b-wkezzu7dbz] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-left: auto;
}
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout03.razor.rz.scp.css */
.ht03[b-2t2p0nrhll] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

/* Sticky positioning for this template is handled at the .header-root.is-sticky level
   in Header.razor.css, not here - a rule here would sit inside two wrapper divs
   (.header-shell-* -> .header-root) that only ever contain the header, giving it no
   room to stay pinned past the first ~100px of scroll. See Header.razor.css's comment
   on .header-root.is-sticky for the full explanation. */

.ht03-top[b-2t2p0nrhll] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    min-height: var(--header-height-tablet);
    padding: 0.7rem 1.25rem 0.35rem;
}

.ht03-logo[b-2t2p0nrhll] {
    margin-right: auto;
}

.ht03-right[b-2t2p0nrhll] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.ht03-search-row[b-2t2p0nrhll] {
    padding: 0 1.25rem 0.75rem;
}
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout04.razor.rz.scp.css */
.ht04[b-d6utp2gaae] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

.ht04-search[b-d6utp2gaae]  .search-box {
    border-radius: 999px;
    background: var(--header-search-background);
}

.ht04-row[b-d6utp2gaae] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-height: var(--header-height-tablet);
    padding: 0.5rem 1.25rem;
}

.ht04-logo[b-d6utp2gaae] {
    flex: 0 0 auto;
}

.ht04-search[b-d6utp2gaae] {
    flex: 1 1 auto;
    min-width: 0;
}
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout05.razor.rz.scp.css */
.ht05[b-efqfwvjuz1] {
    background: var(--header-background);
    color: var(--header-text-color);
    border-bottom: 1px solid var(--header-border);
}

.ht05-top[b-efqfwvjuz1] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-height: var(--header-height-tablet);
    padding: 0.5rem 1.25rem;
}

.ht05-logo[b-efqfwvjuz1] {
    flex: 0 0 auto;
}

.ht05-actions[b-efqfwvjuz1] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.ht05-search-row[b-efqfwvjuz1] {
    padding: 0 1.25rem 0.6rem;
}

.ht05-category-strip[b-efqfwvjuz1] {
    padding: 0.25rem 1.25rem 0.65rem;
    border-top: 1px solid color-mix(in srgb, var(--header-border) 65%, transparent);
    background: var(--header-nav-background);
}

.ht05-search-row[b-efqfwvjuz1]  .search-box { border-radius: 999px; }
/* /Components/Layout/HeaderTemplates/Tablet/HeaderTabletLayout06.razor.rz.scp.css */
.ht06[b-eul0d3m8aj] {
    background: var(--header-background);
    color: var(--header-text-color);
}

.ht06-accent[b-eul0d3m8aj] {
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--bhogi-gold, #c8960c) 15%, var(--bhogi-gold, #c8960c) 85%, transparent);
}

.ht06-row[b-eul0d3m8aj] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.85rem;
    min-height: var(--header-height-tablet);
    padding: 0.55rem 1.25rem;
}

.ht06[b-eul0d3m8aj] {
    border-bottom: 1px solid color-mix(in srgb, var(--bhogi-gold, #c8960c) 30%, var(--header-border));
}

.ht06-logo[b-eul0d3m8aj] {
    justify-self: center;
}

.ht06-right[b-eul0d3m8aj] {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ============================================
   MAIN LAYOUT - Bhogi Enterprise Premium
   ============================================ */

/* Page Structure */
html[b-bcly1q5qxv] {
    width: 100%;
    height: 100%;
}

.site-wrapper[b-bcly1q5qxv] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%;
    min-width: 0;
    background: var(--bhogi-surface-raised);
}

.main-content[b-bcly1q5qxv] {
    flex: 1;
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
}

/* Page Main */
.page-main[b-bcly1q5qxv] {
    position: relative;
    z-index: 1;
    background: var(--bhogi-surface);
    min-height: 100vh;
}

/* Content Wrapper */
.content-wrapper[b-bcly1q5qxv] {
    min-height: 300px;
    min-width: 0;
    overflow-x: clip;
}

/* Content Area */
.content[b-bcly1q5qxv] {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

/* Container */
.container[b-bcly1q5qxv] {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: var(--bhogi-page-gutter, 2px);
}

@media (min-width: 576px) {
    .container[b-bcly1q5qxv] {
        padding-inline: var(--bhogi-page-gutter, 2px);
    }
}

/* Theme Picker Container - Fixed position */
.theme-picker-container[b-bcly1q5qxv] {
    position: fixed;
    bottom: 1.5rem;
    right: 1.5rem;
    z-index: 1050;
}

@media (max-width: 640px) {
    .theme-picker-container[b-bcly1q5qxv] {
        left: max(1rem, env(safe-area-inset-left));
        right: auto;
        bottom: max(1rem, env(safe-area-inset-bottom));
    }

    .theme-picker-container:has(.theme-picker.open)[b-bcly1q5qxv] {
        z-index: 1060;
    }
}

/* Toast Container */
#toast-container[b-bcly1q5qxv] {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    pointer-events: none;
}

#toast-container > *[b-bcly1q5qxv] {
    pointer-events: auto;
}

/* Error UI - Matching Bhogi.Web alert styles */
#blazor-error-ui[b-bcly1q5qxv] {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 1rem;
    background: linear-gradient(135deg, #dc3545, #c82333);
    color: #fff;
    text-align: center;
    z-index: 1100;
    font-size: 0.875rem;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.2);
}

#blazor-error-ui .reload[b-bcly1q5qxv] {
    color: #fff;
    text-decoration: underline;
    margin-left: 0.5rem;
}

#blazor-error-ui .dismiss[b-bcly1q5qxv] {
    cursor: pointer;
    margin-left: 1rem;
    opacity: 0.8;
    transition: opacity 0.15s ease;
}

#blazor-error-ui .dismiss:hover[b-bcly1q5qxv] {
    opacity: 1;
}

/* Scroll to Top Button - Matching Bhogi.Web #scroll-top */
.scroll-top[b-bcly1q5qxv] {
    position: fixed;
    z-index: 1040;
    bottom: 1rem;
    right: 1rem;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--cmp-scrolltop-bg, #fff);
    color: var(--cmp-scrolltop-fg, #212529);
    text-decoration: none;
    opacity: 0;
    transform: scale(0.7);
    transition-property: transform, opacity;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
    pointer-events: none;
    box-shadow: var(--cmp-scrolltop-shadow, 0 2px 8px rgba(0, 0, 0, 0.15));
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
}

.scroll-top.visible[b-bcly1q5qxv] {
    transform: scale(1);
    pointer-events: initial;
    opacity: var(--cmp-scrolltop-visible-opacity, 0.7);
}

.scroll-top:hover[b-bcly1q5qxv] {
    opacity: 1;
}

@media (min-width: 768px) {
    .scroll-top.visible[b-bcly1q5qxv] {
        opacity: var(--cmp-scrolltop-visible-opacity-desktop, 1);
    }
}
/* /Components/Layout/MobileNav.razor.rz.scp.css */
/* ============================================
   MOBILE NAV - World-Class Enterprise Design
   ============================================ */

.mobile-nav[b-4uahday22b] {
    --mnav-surface: var(--cmp-mobile-nav-surface, var(--bhogi-surface));
    --mnav-surface-raised: var(--cmp-mobile-nav-surface-raised, var(--bhogi-surface-raised));
    --mnav-surface-premium: var(--cmp-mobile-nav-surface-premium, var(--bhogi-surface-premium));
    --mnav-border: var(--cmp-mobile-nav-border, var(--bhogi-border));
    --mnav-text: var(--cmp-mobile-nav-text, var(--bhogi-text));
    --mnav-text-secondary: var(--cmp-mobile-nav-text-secondary, var(--bhogi-text-secondary));
    --mnav-text-muted: var(--cmp-mobile-nav-text-muted, var(--bhogi-text-muted));
    --mnav-primary: var(--cmp-mobile-nav-primary, var(--bhogi-primary));
    --mnav-primary-hover: var(--cmp-mobile-nav-primary-hover, var(--bhogi-primary-hover));
    --mnav-gold: var(--cmp-mobile-nav-gold, var(--bhogi-gold));
    --mnav-gold-soft: var(--cmp-mobile-nav-gold-soft, var(--bhogi-gold-soft));
    --mnav-maroon: var(--cmp-mobile-nav-maroon, var(--bhogi-maroon));
}

/* Overlay with blur */
.mobile-nav-overlay[b-4uahday22b] {
    position: fixed;
    inset: 0;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.8) 100%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 2000;
    backdrop-filter: blur(8px);
}

.mobile-nav-overlay.active[b-4uahday22b] {
    opacity: 1;
    visibility: visible;
}

/* Drawer with glass morphism */
.mobile-nav[b-4uahday22b] {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 360px;
    max-width: 88vw;
    background: linear-gradient(135deg, var(--mnav-surface) 0%, var(--mnav-surface-premium) 100%);
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 2001;
    display: flex;
    flex-direction: column;
    box-shadow: var(--bhogi-shadow-lg), 0 0 0 1px color-mix(in srgb, var(--mnav-border) 70%, transparent);
    overflow: hidden;
}

.mobile-nav.active[b-4uahday22b] {
    transform: translateX(0);
}

/* ============================================
   HEADER
   ============================================ */

.mobile-nav-header[b-4uahday22b] {
    background: var(--cmp-mobile-nav-header-bg, var(--bhogi-primary-dark));
    color: var(--cmp-mobile-nav-header-text, var(--mnav-text));
    padding: 0;
    position: relative;
    overflow: hidden;
}

.mobile-nav-header[b-4uahday22b]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
    border-radius: 50%;
}

.mobile-nav-header > .header-content[b-4uahday22b] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    position: relative;
    z-index: 1;
}

.mobile-nav-logo[b-4uahday22b] {
    --cmp-header-logo-color: var(--mnav-primary);
    --cmp-header-logo-accent: var(--mnav-gold);
    --cmp-header-logo-bg: var(--mnav-surface);
    --cmp-header-logo-hover-bg: var(--mnav-surface-raised);
    --cmp-header-logo-border: var(--mnav-border);
    --cmp-header-logo-hover-border: var(--mnav-primary);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    text-decoration: none;
}

.mobile-nav-close[b-4uahday22b] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--bhogi-radius-sm);
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: inherit;
    font-size: 1.25rem;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}

.mobile-nav-close:hover[b-4uahday22b] {
    background: rgba(255, 255, 255, 0.25);
    transform: rotate(90deg) scale(1.05);
}

/* ============================================
   TABS
   ============================================ */

.mobile-nav-tabs[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0;
    background: var(--mnav-surface);
    border-bottom: 2px solid var(--mnav-border);
    position: sticky;
    top: 0;
    z-index: 10;
}

.tab-btn[b-4uahday22b] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: transparent;
    border: none;
    color: var(--mnav-text-muted);
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.tab-btn[b-4uahday22b]::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--mnav-primary) 0%, var(--mnav-gold) 100%);
    transform: scaleX(0);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tab-btn:hover[b-4uahday22b] {
    color: var(--mnav-primary);
    background: color-mix(in srgb, var(--mnav-primary) 5%, transparent);
}

.tab-btn.active[b-4uahday22b] {
    color: var(--mnav-primary);
    background: color-mix(in srgb, var(--bhogi-primary) 8%, var(--mnav-surface));
}

.tab-btn.active[b-4uahday22b]::after {
    transform: scaleX(1);
}

.tab-btn i[b-4uahday22b] {
    font-size: 1.125rem;
}

.tab-btn span[b-4uahday22b] {
    letter-spacing: -0.01em;
}

/* Tab Content */
.mobile-nav-tab-content[b-4uahday22b] {
    flex: 1;
    display: flex;
    overflow: hidden;
}

.tab-pane[b-4uahday22b] {
    flex: 1;
    display: none;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--mnav-primary) 25%, transparent) transparent;
}

.tab-pane[b-4uahday22b]::-webkit-scrollbar {
    width: 6px;
}

.tab-pane[b-4uahday22b]::-webkit-scrollbar-track {
    background: transparent;
}

.tab-pane[b-4uahday22b]::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--mnav-primary) 25%, transparent);
    border-radius: 3px;
}

.tab-pane[b-4uahday22b]::-webkit-scrollbar-thumb:hover {
    background: color-mix(in srgb, var(--mnav-primary) 35%, transparent);
}

.tab-pane.active[b-4uahday22b] {
    display: flex;
    animation: fadeIn-b-4uahday22b 0.3s ease;
}

@keyframes fadeIn-b-4uahday22b {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================================
   USER SECTION
   ============================================ */

.mobile-nav-user[b-4uahday22b] {
    padding: 1.5rem;
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--mnav-gold) 16%, transparent) 100%);
    border-bottom: 1px solid color-mix(in srgb, var(--mnav-primary) 12%, transparent);
}

.user-avatar[b-4uahday22b] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-gradient-primary);
    border-radius: var(--bhogi-radius-lg);
    font-size: 1.75rem;
    color: #ffffff;
    margin-bottom: 1rem;
    box-shadow: var(--bhogi-shadow-sm);
}

.user-info[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.user-greeting[b-4uahday22b] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--mnav-primary-hover);
    letter-spacing: -0.02em;
}

.user-actions[b-4uahday22b] {
    display: flex;
    gap: 0.75rem;
}

.user-btn[b-4uahday22b] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: var(--bhogi-radius-sm);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid transparent;
}

.user-btn.primary[b-4uahday22b] {
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    box-shadow: var(--bhogi-shadow-sm);
}

.user-btn.primary:hover[b-4uahday22b] {
    background: linear-gradient(135deg, var(--mnav-primary-hover) 0%, var(--mnav-primary) 100%);
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-md);
}

.user-btn.secondary[b-4uahday22b] {
    background: var(--mnav-surface);
    color: var(--mnav-primary);
    border-color: var(--mnav-primary);
}

.user-btn.secondary:hover[b-4uahday22b] {
    background: var(--mnav-primary);
    color: #ffffff;
    transform: translateY(-2px);
}

.user-btn i[b-4uahday22b] {
    font-size: 0.875rem;
}

/* ============================================
   SEARCH BAR
   ============================================ */

.mobile-search[b-4uahday22b] {
    padding: 1rem 1.5rem;
    background: var(--mnav-surface);
    border-bottom: 1px solid var(--mnav-border);
}

.search-box[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--mnav-surface-raised);
    border: 2px solid var(--mnav-border);
    border-radius: var(--bhogi-radius-sm);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.search-box:focus-within[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
    box-shadow: var(--bhogi-focus-ring);
}

.search-box i[b-4uahday22b] {
    color: var(--mnav-text-muted);
    font-size: 1rem;
}

.search-input[b-4uahday22b] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.9375rem;
    color: var(--mnav-text);
    outline: none;
}

.search-input[b-4uahday22b]::placeholder {
    color: var(--mnav-text-muted);
}

/* ============================================
   NAVIGATION CONTENT
   ============================================ */

.mobile-nav-content[b-4uahday22b] {
    padding: 1rem 0 1rem 0;
}

/* ============================================
   SECTIONS
   ============================================ */

.nav-section[b-4uahday22b] {
    padding: 0 1.5rem 1.5rem 1.5rem;
    border-bottom: 1px solid var(--mnav-border);
}

.section-title[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--mnav-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--bhogi-border-light);
}

.section-title i[b-4uahday22b] {
    color: var(--mnav-primary);
    font-size: 0.9375rem;
}

/* ============================================
   QUICK ACTION CARDS
   ============================================ */

.nav-grid[b-4uahday22b] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.nav-card[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
    padding: 1rem;
    border-radius: var(--bhogi-radius-sm);
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    border: 2px solid transparent;
}

.nav-card[b-4uahday22b]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(255, 255, 255, 0.4) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-card:hover[b-4uahday22b]::before {
    opacity: 1;
}

.nav-card.emerald[b-4uahday22b] {
    background: color-mix(in srgb, var(--bhogi-primary) 8%, var(--mnav-surface));
    border-color: color-mix(in srgb, var(--mnav-primary) 25%, var(--mnav-border));
}

.nav-card.gold[b-4uahday22b] {
    background: var(--mnav-gold-soft);
    border-color: color-mix(in srgb, var(--mnav-gold) 45%, var(--mnav-border));
}

.nav-card.purple[b-4uahday22b] {
    background: color-mix(in srgb, var(--bhogi-primary) 5%, var(--mnav-surface));
    border-color: color-mix(in srgb, var(--mnav-maroon) 35%, var(--mnav-border));
}

.nav-card.blue[b-4uahday22b] {
    background: var(--mnav-surface-raised);
    border-color: color-mix(in srgb, var(--mnav-primary) 18%, var(--mnav-border));
}

.nav-card:hover[b-4uahday22b] {
    transform: translateY(-4px);
    box-shadow: var(--bhogi-shadow-md);
}

.card-icon[b-4uahday22b] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: var(--mnav-surface);
    backdrop-filter: blur(10px);
    font-size: 1.25rem;
    position: relative;
    z-index: 1;
}

.nav-card.emerald .card-icon[b-4uahday22b] {
    color: var(--mnav-primary);
}

.nav-card.gold .card-icon[b-4uahday22b] {
    color: var(--mnav-gold);
}

.nav-card.purple .card-icon[b-4uahday22b] {
    color: var(--mnav-maroon);
}

.nav-card.blue .card-icon[b-4uahday22b] {
    color: var(--mnav-primary);
}

.card-content[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
    position: relative;
    z-index: 1;
}

.card-label[b-4uahday22b] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.nav-card.emerald .card-label[b-4uahday22b] {
    color: var(--mnav-primary-hover);
}

.nav-card.gold .card-label[b-4uahday22b] {
    color: var(--mnav-gold);
}

.nav-card.purple .card-label[b-4uahday22b] {
    color: var(--mnav-maroon);
}

.nav-card.blue .card-label[b-4uahday22b] {
    color: var(--mnav-primary-hover);
}

.card-title[b-4uahday22b] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--mnav-text);
}

/* ============================================
   CATEGORY ACCORDION
   ============================================ */

.category-accordion[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.accordion-item[b-4uahday22b] {
    border-radius: var(--bhogi-radius-sm);
    background: var(--mnav-surface-raised);
    border: 1px solid var(--mnav-border);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-item.expanded[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
    box-shadow: var(--bhogi-shadow-sm);
}

.accordion-header[b-4uahday22b] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-header:hover[b-4uahday22b] {
    background: color-mix(in srgb, var(--mnav-primary) 5%, transparent);
}

.accordion-item.expanded .accordion-header[b-4uahday22b] {
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--mnav-gold) 14%, transparent) 100%);
}

.accordion-header .header-content[b-4uahday22b] {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    flex: 1;
}

.accordion-header .header-content i[b-4uahday22b] {
    color: var(--mnav-primary);
    font-size: 1rem;
}

.accordion-header .header-content span[b-4uahday22b] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--mnav-text);
}

.item-count[b-4uahday22b] {
    margin-left: auto;
    padding: 0.1875rem 0.5rem;
    background: color-mix(in srgb, var(--mnav-primary) 10%, transparent);
    color: var(--mnav-primary);
    font-size: 0.6875rem;
    font-weight: 700;
    border-radius: var(--bhogi-radius-xs);
}

.accordion-icon[b-4uahday22b] {
    color: var(--mnav-text-muted);
    font-size: 0.75rem;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-item.expanded .accordion-icon[b-4uahday22b] {
    transform: rotate(180deg);
    color: var(--mnav-primary);
}

.accordion-body[b-4uahday22b] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.accordion-item.expanded .accordion-body[b-4uahday22b] {
    max-height: 500px;
    padding: 0 0.5rem 0.75rem 0.5rem;
}

.subcategory-link[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    text-decoration: none;
    border-radius: var(--bhogi-radius-xs);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    margin-bottom: 0.25rem;
}

.subcategory-link:hover[b-4uahday22b] {
    background: color-mix(in srgb, var(--mnav-primary) 8%, transparent);
    padding-left: 1.25rem;
}

.subcategory-link i:first-child[b-4uahday22b] {
    color: var(--mnav-primary);
    font-size: 0.625rem;
}

.subcategory-link span:first-of-type[b-4uahday22b] {
    flex: 1;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--mnav-text-secondary);
}

.subcategory-link .count[b-4uahday22b] {
    font-size: 0.75rem;
    color: var(--mnav-text-muted);
}

.loading-state[b-4uahday22b] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 2rem;
    color: var(--mnav-text-muted);
    font-size: 0.875rem;
}

.loading-state i[b-4uahday22b] {
    color: var(--mnav-primary);
    font-size: 1.25rem;
}

/* ============================================
   NAV LINKS
   ============================================ */

.nav-links[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.nav-link[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    text-decoration: none;
    border-radius: var(--bhogi-radius-sm);
    background: var(--mnav-surface-raised);
    border: 1px solid var(--mnav-border);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-link:hover[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
    transform: translateX(4px);
    box-shadow: var(--bhogi-shadow-sm);
}

.nav-link i:first-child[b-4uahday22b] {
    width: 20px;
    text-align: center;
    color: var(--mnav-primary);
    font-size: 1rem;
}

/* Fixed-width icons for better alignment */
.nav-link .fa-fw[b-4uahday22b] {
    width: 20px;
    text-align: center;
}

.nav-link span[b-4uahday22b] {
    flex: 1;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--mnav-text-secondary);
}

.nav-link .arrow[b-4uahday22b] {
    color: var(--bhogi-border-strong);
    font-size: 0.625rem;
    opacity: 0;
    transform: translateX(-6px);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-link:hover .arrow[b-4uahday22b] {
    opacity: 1;
    transform: translateX(0);
    color: var(--mnav-primary);
}

/* Count Badge for Cart/Wishlist - Enterprise Design */
.nav-count-badge[b-4uahday22b] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: var(--bhogi-radius-pill, 9999px);
    box-shadow: var(--bhogi-shadow-sm);
    animation: badgeFadeIn-b-4uahday22b 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes badgeFadeIn-b-4uahday22b {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Nav divider for separating menu sections */
.nav-divider[b-4uahday22b] {
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, var(--mnav-border) 50%, transparent 100%);
    margin: 0.5rem 0;
}

/* ============================================
   FOOTER
   ============================================ */

.mobile-nav-footer[b-4uahday22b] {
    padding: 1.5rem;
    background: linear-gradient(135deg, var(--mnav-surface-premium) 0%, var(--bhogi-platinum-100) 100%);
    border-top: 1px solid var(--mnav-border);
}

.footer-contact[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--mnav-surface);
    border-radius: var(--bhogi-radius-sm);
    margin-bottom: 1rem;
    box-shadow: var(--bhogi-shadow-sm);
}

.footer-contact i[b-4uahday22b] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-gradient-primary);
    border-radius: var(--bhogi-radius-sm);
    color: #ffffff;
    font-size: 1rem;
}

.footer-contact > div[b-4uahday22b] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.contact-label[b-4uahday22b] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--mnav-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.contact-number[b-4uahday22b] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--mnav-primary);
    text-decoration: none;
}

.contact-number:hover[b-4uahday22b] {
    text-decoration: underline;
}

.footer-social[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.social-label[b-4uahday22b] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--mnav-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.social-icons[b-4uahday22b] {
    display: flex;
    gap: 0.75rem;
}

.social-icons a[b-4uahday22b] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mnav-surface);
    border: 2px solid var(--mnav-border);
    border-radius: var(--bhogi-radius-sm);
    color: var(--mnav-text-muted);
    text-decoration: none;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.social-icons a:hover[b-4uahday22b] {
    background: var(--bhogi-gradient-primary);
    border-color: var(--mnav-primary);
    color: #ffffff;
    transform: translateY(-3px);
    box-shadow: var(--bhogi-shadow-md);
}

.footer-version[b-4uahday22b] {
    margin-top: 1rem;
    text-align: center;
    font-size: 0.75rem;
    color: var(--mnav-text-muted);
}

/* ============================================
   DARK MODE
   ============================================ */

[data-theme="dark"] .mobile-nav[b-4uahday22b] {
    background: linear-gradient(135deg, var(--mnav-surface) 0%, var(--mnav-surface-premium) 100%);
}

[data-theme="dark"] .mobile-nav-user[b-4uahday22b] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--mnav-primary) 20%, transparent) 0%, color-mix(in srgb, var(--mnav-gold) 10%, transparent) 100%);
    border-bottom-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .user-greeting[b-4uahday22b] {
    color: var(--mnav-text);
}

[data-theme="dark"] .mobile-search[b-4uahday22b] {
    background: var(--mnav-surface-premium);
    border-bottom-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .search-box[b-4uahday22b] {
    background: color-mix(in srgb, var(--mnav-surface) 85%, var(--mnav-surface-premium));
    border-color: var(--mnav-border);
}

[data-theme="dark"] .search-box:focus-within[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
}

[data-theme="dark"] .search-input[b-4uahday22b] {
    color: var(--mnav-text);
}

[data-theme="dark"] .nav-section[b-4uahday22b] {
    border-bottom-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .section-title[b-4uahday22b] {
    color: var(--mnav-text-secondary);
    border-bottom-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .accordion-item[b-4uahday22b] {
    background: var(--mnav-surface-premium);
    border-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .accordion-item.expanded[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
}

[data-theme="dark"] .accordion-header .header-content span[b-4uahday22b],
[data-theme="dark"] .card-title[b-4uahday22b],
[data-theme="dark"] .nav-link span[b-4uahday22b] {
    color: var(--mnav-text);
}

[data-theme="dark"] .nav-link[b-4uahday22b] {
    background: var(--mnav-surface-premium);
    border-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .nav-link:hover[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: var(--mnav-primary);
}

[data-theme="dark"] .mobile-nav-footer[b-4uahday22b] {
    background: linear-gradient(135deg, var(--mnav-surface-premium) 0%, color-mix(in srgb, var(--mnav-surface) 88%, black) 100%);
    border-top-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .footer-contact[b-4uahday22b] {
    background: var(--mnav-surface);
}

[data-theme="dark"] .social-icons a[b-4uahday22b] {
    background: var(--mnav-surface);
    border-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
    color: var(--mnav-text-muted);
}

[data-theme="dark"] .social-icons a:hover[b-4uahday22b] {
    background: var(--bhogi-gradient-gold);
    border-color: var(--mnav-gold);
    color: #15211d;
}

/* ============================================
   LOGGED-IN USER STATE
   ============================================ */

.mobile-nav-user.logged-in[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--mnav-primary) 8%, transparent) 0%, color-mix(in srgb, var(--mnav-gold) 10%, transparent) 100%);
    border-bottom: 1px solid color-mix(in srgb, var(--mnav-primary) 15%, transparent);
}

.mobile-nav-user.logged-in .user-avatar[b-4uahday22b] {
    width: 64px;
    height: 64px;
    background: var(--bhogi-gradient-primary);
    box-shadow: var(--bhogi-shadow-md);
}

.mobile-nav-user.logged-in .user-avatar i[b-4uahday22b] {
    font-size: 2.5rem;
    color: #ffffff;
}

.mobile-nav-user.logged-in .user-info[b-4uahday22b] {
    flex-direction: column;
    gap: 0.25rem;
    align-items: flex-start;
}

.mobile-nav-user.logged-in .user-greeting[b-4uahday22b] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--mnav-text-secondary);
    letter-spacing: 0.02em;
}

.user-name[b-4uahday22b] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--mnav-primary);
    letter-spacing: -0.01em;
    text-transform: capitalize;
}

/* ============================================
   LOGOUT BUTTON
   ============================================ */

.logout-btn[b-4uahday22b] {
    width: calc(100% - 2rem);
    margin: 0 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    background: linear-gradient(135deg, var(--mnav-maroon) 0%, color-mix(in srgb, var(--mnav-maroon) 78%, white) 100%);
    color: #ffffff;
    border: none;
    border-radius: var(--bhogi-radius-sm);
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 8px 20px rgba(139, 0, 0, 0.2);
}

.logout-btn:hover[b-4uahday22b] {
    background: linear-gradient(135deg, var(--bhogi-maroon-deep) 0%, var(--mnav-maroon) 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(139, 0, 0, 0.25);
}

.logout-btn:active[b-4uahday22b] {
    transform: translateY(0);
    box-shadow: 0 6px 12px rgba(139, 0, 0, 0.22);
}

.logout-btn i[b-4uahday22b] {
    font-size: 1rem;
}

/* ============================================
   CUSTOMER SERVICE CARD
   ============================================ */

.customer-service-card[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--mnav-primary) 5%, transparent) 0%, color-mix(in srgb, var(--mnav-gold) 8%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--mnav-primary) 15%, transparent);
    border-radius: var(--bhogi-radius-sm);
    margin-bottom: 1rem;
}

.service-icon[b-4uahday22b] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-gradient-primary);
    border-radius: var(--bhogi-radius-sm);
    flex-shrink: 0;
    box-shadow: var(--bhogi-shadow-sm);
}

.service-icon i[b-4uahday22b] {
    color: #ffffff;
    font-size: 1.25rem;
}

.service-info[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.service-label[b-4uahday22b] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--mnav-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.service-number[b-4uahday22b] {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--mnav-primary);
    text-decoration: none;
    transition: all 0.2s ease;
}

.service-number:hover[b-4uahday22b] {
    color: var(--mnav-primary-hover);
    text-decoration: underline;
}

/* ============================================
   SOCIAL LINKS (Account Tab)
   ============================================ */

.social-links[b-4uahday22b] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.social-link[b-4uahday22b] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    text-decoration: none;
    border-radius: var(--bhogi-radius-sm);
    background: var(--mnav-surface-raised);
    border: 1px solid var(--mnav-border);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.social-link i[b-4uahday22b] {
    width: 20px;
    text-align: center;
    font-size: 1rem;
}

.social-link span[b-4uahday22b] {
    flex: 1;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--mnav-text-secondary);
}

.social-link.facebook[b-4uahday22b] {
    border-color: #1877f2;
}

.social-link.facebook:hover[b-4uahday22b] {
    background: #1877f2;
    border-color: #1877f2;
}

.social-link.facebook i[b-4uahday22b] {
    color: #1877f2;
}

.social-link.facebook:hover i[b-4uahday22b],
.social-link.facebook:hover span[b-4uahday22b] {
    color: #ffffff;
}

.social-link.instagram[b-4uahday22b] {
    border-color: #e4405f;
}

.social-link.instagram:hover[b-4uahday22b] {
    background: linear-gradient(135deg, #f09433 0%, #e4405f 50%, #c13584 100%);
    border-color: #e4405f;
}

.social-link.instagram i[b-4uahday22b] {
    color: #e4405f;
}

.social-link.instagram:hover i[b-4uahday22b],
.social-link.instagram:hover span[b-4uahday22b] {
    color: #ffffff;
}

.social-link.twitter[b-4uahday22b] {
    border-color: #1da1f2;
}

.social-link.twitter:hover[b-4uahday22b] {
    background: #000000;
    border-color: #000000;
}

.social-link.twitter i[b-4uahday22b] {
    color: #000000;
}

.social-link.twitter:hover i[b-4uahday22b],
.social-link.twitter:hover span[b-4uahday22b] {
    color: #ffffff;
}

.social-link.youtube[b-4uahday22b] {
    border-color: #ff0000;
}

.social-link.youtube:hover[b-4uahday22b] {
    background: #ff0000;
    border-color: #ff0000;
}

.social-link.youtube i[b-4uahday22b] {
    color: #ff0000;
}

.social-link.youtube:hover i[b-4uahday22b],
.social-link.youtube:hover span[b-4uahday22b] {
    color: #ffffff;
}

/* ============================================
   DARK MODE - ACCOUNT TAB ADDITIONS
   ============================================ */

[data-theme="dark"] .mobile-nav-user.logged-in[b-4uahday22b] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--mnav-primary) 14%, transparent) 0%, color-mix(in srgb, var(--mnav-gold) 8%, transparent) 100%);
    border-bottom-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .user-name[b-4uahday22b] {
    color: var(--mnav-text);
}

[data-theme="dark"] .logout-btn[b-4uahday22b] {
    background: linear-gradient(135deg, var(--bhogi-maroon-deep) 0%, var(--mnav-maroon) 100%);
}

[data-theme="dark"] .logout-btn:hover[b-4uahday22b] {
    background: linear-gradient(135deg, #5d0000 0%, var(--bhogi-maroon-deep) 100%);
}

[data-theme="dark"] .customer-service-card[b-4uahday22b] {
    background: color-mix(in srgb, var(--mnav-primary) 10%, transparent);
    border-color: color-mix(in srgb, var(--mnav-primary) 18%, transparent);
}

[data-theme="dark"] .service-number[b-4uahday22b] {
    color: var(--mnav-text);
}

[data-theme="dark"] .social-link[b-4uahday22b] {
    background: var(--mnav-surface-premium);
    border-color: color-mix(in srgb, var(--mnav-border) 70%, transparent);
}

[data-theme="dark"] .social-link span[b-4uahday22b] {
    color: var(--mnav-text-secondary);
}

/* ── Per-section "customize colors" trigger + editor panel anchor (header-area sibling of the
   home-page per-component theme editor's .cms-theme-toggle-wrap). Unlike Header/TopBar, this
   sits inline in the drawer's own header next to the close button rather than floating over
   content, since the drawer is only ever visible while already open. position:relative here is
   what ComponentThemeEditor's .cte-panel (position:absolute, anchored to its nearest positioned
   ancestor) drops down from. ── */
.cte-chrome-toggle-wrap--mobilenav[b-4uahday22b] {
    position: relative;
    display: inline-flex;
}

.mobile-nav-theme-btn[b-4uahday22b] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--bhogi-radius-sm);
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: inherit;
    font-size: 1.05rem;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-nav-theme-btn:hover[b-4uahday22b],
.mobile-nav-theme-btn:focus-visible[b-4uahday22b] {
    background: rgba(255, 255, 255, 0.24);
}

/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-3w8kum5mrr],
.components-reconnect-repeated-attempt-visible[b-3w8kum5mrr],
.components-reconnect-failed-visible[b-3w8kum5mrr],
.components-pause-visible[b-3w8kum5mrr],
.components-resume-failed-visible[b-3w8kum5mrr],
.components-rejoining-animation[b-3w8kum5mrr] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-rejected .components-reconnect-first-attempt-visible[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-rejected .components-rejoining-animation[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-retrying[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-failed[b-3w8kum5mrr],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-3w8kum5mrr] {
    display: block;
}


#components-reconnect-modal[b-3w8kum5mrr] {
    /* Bhogi branding — the framework ships this component with generic blue/white defaults via
       these same --cmp-reconnect-modal-* hooks; mapping them onto the storefront's own theme
       tokens (set at runtime by ThemeService, see ThemeProvider.razor) keeps this dialog from
       reading as unbranded framework boilerplate if a customer ever sees it mid-demo. --btn-bg/
       -hover/-active deliberately use the solid --bhogi-gold steps (not --bhogi-gradient-gold):
       the button applies them via background-color, which can't render a gradient value. */
    --cmp-reconnect-modal-bg: var(--bhogi-surface, white);
    --cmp-reconnect-modal-radius: var(--bhogi-radius-lg, 0.5rem);
    --cmp-reconnect-modal-shadow: 0 12px 32px rgba(20, 14, 4, 0.22);
    --cmp-reconnect-modal-backdrop: rgba(20, 14, 4, 0.45);
    --cmp-reconnect-modal-btn-bg: var(--bhogi-gold, #6b9ed2);
    --cmp-reconnect-modal-btn-fg: var(--bhogi-text, white);
    --cmp-reconnect-modal-btn-radius: var(--bhogi-radius-sm, 4px);
    --cmp-reconnect-modal-btn-hover-bg: var(--bhogi-gold-hover, #3b6ea2);
    --cmp-reconnect-modal-btn-active-bg: var(--bhogi-gold-deep, #6b9ed2);
    --cmp-reconnect-modal-accent: var(--bhogi-gold, #0087ff);
    color: var(--bhogi-text, inherit);

    background-color: var(--cmp-reconnect-modal-bg, white);
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: var(--cmp-reconnect-modal-radius, 0.5rem);
    box-shadow: var(--cmp-reconnect-modal-shadow, 0 3px 6px 2px rgba(0, 0, 0, 0.3));
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-3w8kum5mrr 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-3w8kum5mrr 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-3w8kum5mrr 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-3w8kum5mrr]::backdrop {
    background-color: var(--cmp-reconnect-modal-backdrop, rgba(0, 0, 0, 0.4));
    animation: components-reconnect-modal-fadeInOpacity-b-3w8kum5mrr 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-3w8kum5mrr {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-3w8kum5mrr {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-3w8kum5mrr {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-3w8kum5mrr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-3w8kum5mrr] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-3w8kum5mrr] {
    border: 0;
    background-color: var(--cmp-reconnect-modal-btn-bg, #6b9ed2);
    color: var(--cmp-reconnect-modal-btn-fg, white);
    padding: 4px 24px;
    border-radius: var(--cmp-reconnect-modal-btn-radius, 4px);
}

    #components-reconnect-modal button:hover[b-3w8kum5mrr] {
        background-color: var(--cmp-reconnect-modal-btn-hover-bg, #3b6ea2);
    }

    #components-reconnect-modal button:active[b-3w8kum5mrr] {
        background-color: var(--cmp-reconnect-modal-btn-active-bg, var(--cmp-reconnect-modal-btn-bg, #6b9ed2));
    }

.components-rejoining-animation[b-3w8kum5mrr] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-3w8kum5mrr] {
        position: absolute;
        border: 3px solid var(--cmp-reconnect-modal-accent, #0087ff);
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-3w8kum5mrr 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-3w8kum5mrr] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-3w8kum5mrr {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/SearchBox.razor.rz.scp.css */
/* ============================================
   INSTANT SEARCH BOX - Following Bhogi.Web pattern
   ============================================ */

.instasearch-form-wrapper[b-bsk8r9vy1o] {
    flex: 1;
    width: 100%;
    max-width: none;
    position: relative;
}

.instasearch-form[b-bsk8r9vy1o] {
    position: relative;
    width: 100%;
}

/* Search Box Container */
.search-box[b-bsk8r9vy1o] {
    display: flex;
    align-items: center;
    width: 100%;
    background: var(--cmp-searchbox-bg, var(--bhogi-surface-raised));
    border: 1.5px solid var(--cmp-searchbox-border, var(--bhogi-border));
    border-radius: var(--cmp-searchbox-radius, var(--bhogi-radius-lg));
    overflow: hidden;
    transition: all 0.2s var(--bhogi-ease);
    position: relative;
}

.search-box:focus-within[b-bsk8r9vy1o] {
    border-color: var(--cmp-searchbox-focus-border, var(--bhogi-primary));
    background: var(--cmp-searchbox-focus-bg, var(--bhogi-surface));
    box-shadow: var(--cmp-searchbox-focus-shadow, 0 0 0 3px var(--bhogi-primary-glow));
}

/* Search Icon */
.search-icon[b-bsk8r9vy1o] {
    padding-left: 1rem;
    color: var(--cmp-searchbox-icon-fg, var(--bhogi-text-muted));
    font-size: 0.875rem;
    transition: color 0.2s;
    flex-shrink: 0;
}

.search-box:focus-within .search-icon[b-bsk8r9vy1o] {
    color: var(--cmp-searchbox-icon-focus-fg, var(--bhogi-primary));
}

/* Search Input */
.search-input[b-bsk8r9vy1o] {
    flex: 1;
    padding: 0.6875rem 0.75rem;
    font-size: 0.875rem;
    color: var(--cmp-searchbox-text, var(--bhogi-text));
    background: transparent;
    border: none;
    outline: none;
    font-weight: 400;
    font-family: inherit;
    min-width: 0;
}

.search-input[b-bsk8r9vy1o]::placeholder {
    color: var(--cmp-searchbox-muted, var(--bhogi-text-muted));
    font-weight: 400;
}

/* Addon Container */
.instasearch-addon[b-bsk8r9vy1o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-right: 0.5rem;
}

/* Clear Button */
.search-clear[b-bsk8r9vy1o],
.instasearch-clear[b-bsk8r9vy1o] {
    padding: 0.375rem 0.625rem;
    color: var(--cmp-searchbox-clear-fg, var(--bhogi-text-muted));
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.15s ease;
    border-radius: var(--bhogi-radius-sm);
    font-size: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-clear:hover[b-bsk8r9vy1o],
.instasearch-clear:hover[b-bsk8r9vy1o] {
    color: var(--cmp-searchbox-clear-hover-fg, var(--bhogi-text));
}

/* Loading Spinner */
.instasearch-progress[b-bsk8r9vy1o] {
    display: none;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    color: var(--cmp-searchbox-progress-fg, var(--bhogi-primary));
    font-size: 0.875rem;
}

.instasearch-progress.active[b-bsk8r9vy1o] {
    display: flex;
}

/* Instant Search Dropdown */
.instasearch-drop[b-bsk8r9vy1o] {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    background: var(--cmp-searchbox-dropdown-bg, var(--bhogi-surface));
    border: 1px solid var(--cmp-searchbox-dropdown-border, var(--bhogi-border));
    border-radius: var(--cmp-searchbox-dropdown-radius, var(--bhogi-radius-lg));
    box-shadow: var(--cmp-searchbox-dropdown-shadow, var(--bhogi-shadow-lg));
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: all 0.2s var(--bhogi-ease);
    z-index: 1000;
    max-height: 70vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    pointer-events: none;
}

/* Show dropdown when it has the open class */
.instasearch-drop.open[b-bsk8r9vy1o] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

/* Also show when form has open class (for better compatibility) */
.instasearch-form.open .instasearch-drop[b-bsk8r9vy1o] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.instasearch-drop-body[b-bsk8r9vy1o] {
    overflow-y: auto;
    max-height: 60vh;
    scrollbar-width: thin;
    scrollbar-color: var(--cmp-searchbox-scrollbar-thumb, var(--bhogi-border)) transparent;
}

.instasearch-drop-body[b-bsk8r9vy1o]::-webkit-scrollbar {
    width: 6px;
}

.instasearch-drop-body[b-bsk8r9vy1o]::-webkit-scrollbar-thumb {
    background: var(--cmp-searchbox-scrollbar-thumb, var(--bhogi-border));
    border-radius: 3px;
}

.instasearch-drop-body[b-bsk8r9vy1o]::-webkit-scrollbar-track {
    background: transparent;
}

/* Search Results */
.instasearch-results[b-bsk8r9vy1o] {
    display: flex;
    flex-direction: column;
    padding: 0.5rem;
}

/* Search Result Item */
.instasearch-item[b-bsk8r9vy1o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    text-decoration: none;
    color: var(--cmp-searchbox-item-fg, var(--bhogi-text));
    border-radius: var(--cmp-searchbox-item-radius, var(--bhogi-radius));
    transition: all 0.15s var(--bhogi-ease);
}

.instasearch-item:hover[b-bsk8r9vy1o] {
    background: var(--cmp-searchbox-item-hover-bg, var(--bhogi-primary-light));
    transform: translateX(4px);
}

.item-thumb[b-bsk8r9vy1o] {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    border-radius: var(--cmp-searchbox-item-radius, var(--bhogi-radius));
    overflow: hidden;
    background: var(--cmp-searchbox-item-thumb-bg, var(--bhogi-surface-raised));
    display: flex;
    align-items: center;
    justify-content: center;
}

.item-thumb img[b-bsk8r9vy1o] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.item-labels[b-bsk8r9vy1o] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.item-primary[b-bsk8r9vy1o] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--cmp-searchbox-item-fg, var(--bhogi-text));
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-primary strong[b-bsk8r9vy1o] {
    color: var(--cmp-searchbox-primary, var(--bhogi-primary));
    font-weight: 600;
}

.item-secondary[b-bsk8r9vy1o] {
    font-size: 0.75rem;
    color: var(--cmp-searchbox-muted, var(--bhogi-text-muted));
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.item-price[b-bsk8r9vy1o] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--cmp-searchbox-primary, var(--bhogi-primary));
    margin-top: 0.125rem;
}

/* Footer - View All Link */
.instasearch-footer[b-bsk8r9vy1o] {
    padding: 0.75rem;
    border-top: 1px solid var(--cmp-searchbox-footer-border, var(--bhogi-border));
    background: var(--cmp-searchbox-footer-bg, var(--bhogi-surface-raised));
}

.view-all-link[b-bsk8r9vy1o] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--cmp-searchbox-viewall-fg, var(--bhogi-primary));
    text-decoration: none;
    border-radius: var(--cmp-searchbox-item-radius, var(--bhogi-radius));
    transition: all 0.2s var(--bhogi-ease);
}

.view-all-link:hover[b-bsk8r9vy1o] {
    background: var(--cmp-searchbox-viewall-hover-bg, var(--bhogi-primary));
    color: var(--cmp-searchbox-viewall-hover-fg, #fff);
    transform: translateX(4px);
}

.view-all-link i[b-bsk8r9vy1o] {
    font-size: 0.75rem;
    transition: transform 0.2s var(--bhogi-ease);
}

.view-all-link:hover i[b-bsk8r9vy1o] {
    transform: translateX(3px);
}

/* Empty State */
.instasearch-empty[b-bsk8r9vy1o] {
    padding: 2rem 1rem;
    text-align: center;
    color: var(--cmp-searchbox-muted, var(--bhogi-text-muted));
}

.instasearch-empty i[b-bsk8r9vy1o] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
    opacity: 0.4;
}

.instasearch-empty p[b-bsk8r9vy1o] {
    font-size: 0.875rem;
    margin: 0;
}

/* Screen Reader Only */
.sr-only[b-bsk8r9vy1o] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 1024px) {
    .instasearch-form-wrapper[b-bsk8r9vy1o] {
        max-width: 400px;
    }
}

@media (max-width: 768px) {
    .instasearch-form-wrapper[b-bsk8r9vy1o] {
        flex: 1;
        max-width: none;
    }

    .search-box[b-bsk8r9vy1o] {
        border-width: 1px;
        min-height: 44px;
    }

    .search-icon[b-bsk8r9vy1o] {
        padding-left: 0.625rem;
        font-size: 0.75rem;
    }

    .search-input[b-bsk8r9vy1o] {
        padding: 0.5rem;
        font-size: 0.75rem;
        min-height: 42px;
    }

    .search-input[b-bsk8r9vy1o]::placeholder {
        font-size: 0.75rem;
    }

    /* Make dropdown full width on mobile */
    .instasearch-drop[b-bsk8r9vy1o] {
        left: -0.5rem;
        right: -0.5rem;
        max-height: 60vh;
    }

    .item-thumb[b-bsk8r9vy1o] {
        width: 40px;
        height: 40px;
    }

    .item-primary[b-bsk8r9vy1o] {
        font-size: 0.8125rem;
    }

    .item-secondary[b-bsk8r9vy1o] {
        font-size: 0.6875rem;
    }

    .item-price[b-bsk8r9vy1o] {
        font-size: 0.75rem;
    }
}

@media (max-width: 640px) {
    .search-icon[b-bsk8r9vy1o] {
        padding-left: 0.5rem;
        font-size: 0.7rem;
    }

    .search-input[b-bsk8r9vy1o] {
        padding: 0.55rem 0.5rem;
        font-size: 0.75rem;
    }

    .search-input[b-bsk8r9vy1o]::placeholder {
        font-size: 0.7rem;
    }

    .search-clear[b-bsk8r9vy1o],
    .instasearch-clear[b-bsk8r9vy1o] {
        padding: 0.25rem 0.4rem;
        font-size: 0.65rem;
    }

    .instasearch-progress[b-bsk8r9vy1o] {
        width: 16px;
        height: 16px;
        font-size: 0.75rem;
    }

    /* Compact dropdown on small mobile */
    .instasearch-drop[b-bsk8r9vy1o] {
        left: -1rem;
        right: -1rem;
    }

    .instasearch-item[b-bsk8r9vy1o] {
        padding: 0.5rem;
        gap: 0.5rem;
    }

    .item-thumb[b-bsk8r9vy1o] {
        width: 36px;
        height: 36px;
    }

    .item-primary[b-bsk8r9vy1o] {
        font-size: 0.75rem;
    }

    .item-secondary[b-bsk8r9vy1o] {
        font-size: 0.625rem;
        -webkit-line-clamp: 1;
    }

    .item-price[b-bsk8r9vy1o] {
        font-size: 0.6875rem;
    }
}

/* ============================================
   DARK MODE
   ============================================ */

[data-theme="dark"] .instasearch-drop[b-bsk8r9vy1o] {
    background: var(--header-dropdown-background, var(--bhogi-surface-raised));
    border-color: var(--header-border, var(--bhogi-border));
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .instasearch-item:hover[b-bsk8r9vy1o] {
    background: var(--header-nav-hover-background, var(--bhogi-primary-glow));
}

[data-theme="dark"] .item-thumb[b-bsk8r9vy1o] {
    background: var(--header-search-background, var(--bhogi-surface-raised));
}

[data-theme="dark"] .instasearch-footer[b-bsk8r9vy1o] {
    background: var(--header-search-background, var(--bhogi-surface-raised));
    border-color: var(--header-border, var(--bhogi-border));
}
/* /Components/Layout/TopBar.razor.rz.scp.css */
/* ============================================
   TOPBAR - Enterprise Menubar (Bhogi.Web parity)
   ============================================ */

/* ---- Announcement Bar ---- */
.announcement-bar[b-qbykqu9stw] {
    background: var(--cmp-topbar-announcement-bg, var(--bhogi-gradient-primary));
    color: var(--cmp-topbar-announcement-fg, color-mix(in srgb, var(--bhogi-surface) 92%, transparent));
    font-family: inherit;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    overflow: hidden;
    position: relative;
    padding: 0.5rem 0;
    line-height: 1.6;
    /* Refined 3-layer shadows with gentle gold glow */
    box-shadow: 
        inset 0 0 8px var(--cmp-topbar-accent-glow-weak, rgba(255, 215, 0, 0.04)),
        0 2px 4px rgba(0, 0, 0, 0.1),
        0 0 12px var(--cmp-topbar-accent-glow, rgba(255, 215, 0, 0.06));
}

.announcement-track[b-qbykqu9stw] {
    display: flex;
    width: max-content;
}

.announcement-content[b-qbykqu9stw] {
    display: flex;
    align-items: center;
    gap: 1.75rem;
    animation: announcementScroll-b-qbykqu9stw 30s linear infinite;
    white-space: nowrap;
}

.announcement-item[b-qbykqu9stw] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.announcement-item i[b-qbykqu9stw] {
    color: var(--cmp-topbar-accent, color-mix(in srgb, var(--bhogi-gold) 80%, transparent));
    font-size: 0.6875rem;
}

.announcement-item strong[b-qbykqu9stw] {
    color: var(--cmp-topbar-accent-strong, var(--bhogi-gold));
    font-weight: 700;
}

.announcement-separator[b-qbykqu9stw] {
    color: var(--cmp-topbar-accent-soft, color-mix(in srgb, var(--bhogi-gold) 30%, transparent));
    font-size: 0.5rem;
    vertical-align: middle;
}

@keyframes announcementScroll-b-qbykqu9stw {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.announcement-bar:hover .announcement-content[b-qbykqu9stw] {
    animation-play-state: paused;
}

/* ============================================
   MENUBAR SECTION (matches Bhogi.Web Flex theme)
   ============================================ */

.menubar-section[b-qbykqu9stw] {
    position: relative;
    z-index: 1040;
}

.menubar-section.menubar-inverse[b-qbykqu9stw] {
    background: var(--cmp-topbar-menubar-bg, var(--bhogi-text));
    /* Smooth 1px gold border (25% transparency) */
    border-bottom: 1px solid var(--cmp-topbar-menubar-border, color-mix(in srgb, var(--bhogi-gold) 25%, color-mix(in srgb, var(--bhogi-primary) 15%, transparent)));
    /* Refined shadow with gentle gold glow */
    box-shadow: 
        inset 0 0 6px var(--cmp-topbar-accent-glow-weaker, rgba(255, 215, 0, 0.03)),
        0 2px 4px rgba(0, 0, 0, 0.08);
}

.menubar-container[b-qbykqu9stw] {
    max-width: 100%;
    padding-inline: 1rem;
}

.menubar[b-qbykqu9stw] {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0;
    min-height: 2.25rem;
    position: relative;
}

/* ============================================
   LOADING STATE - Prevent interaction during initialization
   ============================================ */
.menubar-loading[b-qbykqu9stw] {
    position: relative;
}

.menubar-loading-overlay[b-qbykqu9stw] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-text) 30%, transparent);
    backdrop-filter: blur(2px);
    z-index: 10;
    pointer-events: none;
}

.menubar-loading-overlay i[b-qbykqu9stw] {
    color: color-mix(in srgb, var(--bhogi-surface) 80%, transparent);
    font-size: 1rem;
    animation: menubarSpinner-b-qbykqu9stw 1s linear infinite;
}

@keyframes menubarSpinner-b-qbykqu9stw {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* ---- Groups ---- */
.menubar-group[b-qbykqu9stw] {
    display: flex;
    align-items: center;
    margin-inline-start: 0;
    gap: 0;
}

.menubar-group.ms-0[b-qbykqu9stw] {
    margin-inline-start: 0;
}

.menubar-group.ms-auto[b-qbykqu9stw] {
    margin-inline-start: auto;
}

/* Subtle pipe separator between right-side groups */
#menubar-my-account[b-qbykqu9stw] {
    position: relative;
    padding-inline-start: 0.125rem;
}

#menubar-my-account[b-qbykqu9stw]::before {
    content: "";
    display: block;
    width: 1px;
    height: 0.75rem;
    background: color-mix(in srgb, var(--bhogi-surface) 15%, transparent);
    margin-inline-end: 0.125rem;
    flex-shrink: 0;
}

.menubar-group--special[b-qbykqu9stw] {
    position: relative;
    padding-inline-start: 0.125rem;
}

.menubar-group--special[b-qbykqu9stw]::before {
    content: "";
    display: block;
    width: 1px;
    height: 0.75rem;
    background: color-mix(in srgb, var(--bhogi-surface) 15%, transparent);
    margin-inline-end: 0.125rem;
    flex-shrink: 0;
}

/* ---- Menubar Links (matches Bhogi.Web .menubar-link) ---- */
.menubar-link[b-qbykqu9stw] {
    position: relative;
    display: inline-flex;
    align-items: center;
    column-gap: 0.4em;
    font-family: inherit;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1;
    padding: 0.5625rem 0.75rem;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: var(--bhogi-radius-sm);
    background: none;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.22s var(--bhogi-ease-spring);
}

.menubar-link > .menubar-icon[b-qbykqu9stw] {
    font-size: 0.8125rem;
    line-height: 1;
}

/* ---- Inverse menubar colors - Enterprise Premium ---- */
.menubar-inverse .menubar-link[b-qbykqu9stw] {
    color: var(--cmp-topbar-link-fg, color-mix(in srgb, var(--bhogi-surface) 75%, transparent));
    position: relative;
}

.menubar-inverse .menubar-link[b-qbykqu9stw]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: var(--cmp-topbar-link-hover-sheen, linear-gradient(135deg, color-mix(in srgb, var(--bhogi-surface) 12%, transparent) 0%, color-mix(in srgb, var(--bhogi-surface) 6%, transparent) 50%, color-mix(in srgb, var(--bhogi-gold) 8%, transparent) 100%));
    opacity: 0;
    transition: opacity 0.25s var(--bhogi-ease-spring);
    border-radius: var(--bhogi-radius-sm);
}

.menubar-inverse .menubar-link:hover[b-qbykqu9stw]::before {
    opacity: 1;
}

.menubar-inverse .menubar-link:hover[b-qbykqu9stw] {
    background-color: color-mix(in srgb, var(--bhogi-surface) 12%, transparent);
    color: var(--bhogi-surface);
    /* Smooth 4-layer hover glow (max 18px) */
    box-shadow: 
        inset 0 0 6px color-mix(in srgb, var(--bhogi-gold) 5%, transparent),
        0 0 12px color-mix(in srgb, var(--bhogi-gold) 10%, transparent),
        0 0 18px color-mix(in srgb, var(--bhogi-gold) 6%, transparent),
        0 2px 6px color-mix(in srgb, var(--bhogi-text) 15%, transparent);
    transform: translateY(-1px);
    letter-spacing: 0.06em;
    /* Gold border accent (35% transparency) */
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 35%, transparent);
}

.menubar-inverse .menubar-link:active[b-qbykqu9stw] {
    background-color: color-mix(in srgb, var(--bhogi-surface) 18%, transparent);
    color: var(--bhogi-surface);
    transform: translateY(0);
    box-shadow: 0 1px 3px color-mix(in srgb, var(--bhogi-text) 10%, transparent);
}

/* Special admin group link */
.menubar-group--special .menubar-link[b-qbykqu9stw] {
    font-weight: 700;
}

.menubar-inverse .menubar-group--special .menubar-link[b-qbykqu9stw] {
    color: color-mix(in srgb, var(--bhogi-surface) 92%, transparent);
    background: color-mix(in srgb, var(--bhogi-surface) 8%, transparent);
}

.menubar-inverse .menubar-group--special .menubar-link:hover[b-qbykqu9stw] {
    color: var(--bhogi-surface);
    background: color-mix(in srgb, var(--bhogi-surface) 15%, transparent);
}

/* ============================================
   CUSTOMER SUPPORT & SOCIAL LINKS
   ============================================ */

/* Support Hotline - Premium Styling */
.menubar-link--support[b-qbykqu9stw] {
    color: color-mix(in srgb, var(--bhogi-surface) 88%, transparent) !important;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold) 10%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 25%, transparent);
    padding: 0.5rem 0.875rem !important;
    box-shadow: 0 0 0 0 var(--bhogi-gold-glow);
    transition: all 0.3s var(--bhogi-ease-spring);
}

.menubar-link--support:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold) 18%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 15%, transparent) 100%) !important;
    border-color: color-mix(in srgb, var(--bhogi-gold) 60%, transparent);
    color: var(--bhogi-gold) !important;
    /* Smooth 5-layer hover glow (max 20px) */
    box-shadow: 
        inset 0 0 8px rgba(255, 215, 0, 0.08),
        0 0 12px rgba(255, 215, 0, 0.15),
        0 0 20px rgba(255, 215, 0, 0.1),
        0 2px 8px rgba(0, 0, 0, 0.15),
        0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.menubar-link--support .menubar-icon[b-qbykqu9stw] {
    color: var(--bhogi-accent);
    animation: phonePulse-b-qbykqu9stw 2s ease-in-out infinite;
}

/* WhatsApp support link — same pill treatment as the hotline above, tinted with WhatsApp's own
   brand green (#25D366) instead of gold so the two are easy to tell apart at a glance. */
.menubar-link--whatsapp[b-qbykqu9stw] {
    color: color-mix(in srgb, var(--bhogi-surface) 88%, transparent) !important;
    background: linear-gradient(135deg, color-mix(in srgb, #25d366 16%, transparent) 0%, color-mix(in srgb, #25d366 12%, transparent) 100%);
    border: 1px solid color-mix(in srgb, #25d366 35%, transparent);
    padding: 0.5rem 0.875rem !important;
    transition: all 0.3s var(--bhogi-ease-spring);
}

.menubar-link--whatsapp:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, color-mix(in srgb, #25d366 26%, transparent) 0%, color-mix(in srgb, #25d366 22%, transparent) 100%) !important;
    border-color: color-mix(in srgb, #25d366 65%, transparent);
    color: #25d366 !important;
    transform: translateY(-2px);
}

.menubar-link--whatsapp .menubar-icon[b-qbykqu9stw] {
    color: #25d366;
}

@keyframes phonePulse-b-qbykqu9stw {
    0%, 100% { transform: scale(1) rotate(0deg); }
    50% { transform: scale(1.1) rotate(15deg); }
}

/* Social Links Container */
.social-links[b-qbykqu9stw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-left: 0.625rem;
    padding-left: 0.625rem;
    border-left: 1px solid color-mix(in srgb, var(--bhogi-surface) 10%, transparent);
}

/* Individual Social Link */
.social-link[b-qbykqu9stw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.125rem;
    height: 2.125rem;
    color: color-mix(in srgb, var(--bhogi-surface) 65%, transparent);
    background: color-mix(in srgb, var(--bhogi-surface) 6%, transparent);
    /* Smooth 1px gold border (20% transparency) */
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 20%, color-mix(in srgb, var(--bhogi-surface) 10%, transparent));
    border-radius: var(--bhogi-radius-sm);
    text-decoration: none;
    transition: all 0.28s var(--bhogi-ease-spring);
    position: relative;
    overflow: hidden;
    /* Refined 3-layer shadows */
    box-shadow: 
        inset 0 1px 0 rgba(255, 255, 255, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.08),
        0 0 6px rgba(255, 215, 0, 0.04);
}

.social-link[b-qbykqu9stw]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-surface) 15%, transparent), color-mix(in srgb, var(--bhogi-surface) 5%, transparent));
    opacity: 0;
    transition: opacity 0.25s ease;
}

.social-link:hover[b-qbykqu9stw]::before {
    opacity: 1;
}

.social-link:hover[b-qbykqu9stw] {
    color: var(--bhogi-surface);
    background: color-mix(in srgb, var(--bhogi-surface) 14%, transparent);
    /* Gold border at 40% during hover */
    border-color: color-mix(in srgb, var(--bhogi-gold) 40%, color-mix(in srgb, var(--bhogi-surface) 25%, transparent));
    transform: translateY(-3px) scale(1.08);
    /* Smooth 4-layer hover glow (max 16px) */
    box-shadow: 
        inset 0 1px 0 rgba(255, 255, 255, 0.2),
        0 0 12px rgba(255, 215, 0, 0.12),
        0 0 16px rgba(255, 215, 0, 0.08),
        0 6px 12px rgba(0, 0, 0, 0.2);
}

.social-link:active[b-qbykqu9stw] {
    transform: translateY(-1px) scale(1.04);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
}

.social-link i[b-qbykqu9stw] {
    font-size: 0.9375rem;
    position: relative;
    z-index: 1;
    transition: transform 0.28s var(--bhogi-ease-spring);
}

.social-link:hover i[b-qbykqu9stw] {
    transform: scale(1.2) rotate(8deg);
    animation: iconRipple-b-qbykqu9stw 0.6s ease-out;
}

@keyframes iconRipple-b-qbykqu9stw {
    0% { transform: scale(1.2) rotate(8deg); }
    50% { transform: scale(1.3) rotate(-5deg); }
    100% { transform: scale(1.2) rotate(8deg); }
}

/* Individual platform colors on hover */
.social-link:hover[b-qbykqu9stw] {
    color: var(--bhogi-surface);
}

.social-link[href*="facebook"]:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, #1877f2 0%, #0e5fc5 100%);
    border-color: #1877f2;
    box-shadow: 0 6px 12px rgba(24, 119, 242, 0.4), 0 0 0 3px rgba(24, 119, 242, 0.15);
}

.social-link[href*="twitter"]:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, #000000 0%, #2b2b2b 100%);
    border-color: #444;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.5), 0 0 0 3px rgba(0, 0, 0, 0.2);
}

.social-link[href*="instagram"]:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, #e4405f 0%, #c13584 50%, #833ab4 100%);
    border-color: #e4405f;
    box-shadow: 0 6px 12px rgba(228, 64, 95, 0.4), 0 0 0 3px rgba(228, 64, 95, 0.15);
}

.social-link[href*="linkedin"]:hover[b-qbykqu9stw] {
    background: linear-gradient(135deg, #0077b5 0%, #005e94 100%);
    border-color: #0077b5;
    box-shadow: 0 6px 12px rgba(0, 119, 181, 0.4), 0 0 0 3px rgba(0, 119, 181, 0.15);
}


/* ---- Caret ---- */
.menubar-caret[b-qbykqu9stw] {
    font-size: 0.5rem;
    opacity: 0.5;
    transition: transform 0.2s ease, opacity 0.2s ease;
    margin-inline-start: 0.1em;
    line-height: 1;
}

.menubar-link:hover .menubar-caret[b-qbykqu9stw] {
    opacity: 0.85;
}

/* ---- Abbreviation (matches Bhogi.Web) ---- */
.abbreviation[b-qbykqu9stw] {
    text-transform: uppercase;
}

/* ---- Dropdown containers ---- */
.currency-selector[b-qbykqu9stw],
.service-dropdown[b-qbykqu9stw],
.account-dropdown[b-qbykqu9stw] {
    position: relative;
}

/* ============================================
   DROPDOWN MENUS (Scoped to menubar-section to avoid Header conflicts)
   ============================================ */

.menubar-section .dropdown-menu[b-qbykqu9stw] {
    display: none;
    position: absolute;
    top: calc(100% - 2px);
    left: 0;
    z-index: 1050;
    min-width: 240px;
    padding: 0.625rem;
    padding-top: 0.75rem;
    background: var(--cmp-topbar-dropdown-bg, var(--bhogi-surface));
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid color-mix(in srgb, var(--bhogi-primary) 15%, transparent);
    border-top: 3px solid var(--bhogi-primary);
    border-radius: var(--bhogi-radius-sm) var(--bhogi-radius-sm) var(--bhogi-radius-md) var(--bhogi-radius-md);
    box-shadow: 0 16px 56px color-mix(in srgb, var(--bhogi-text) 18%, transparent), 
                0 6px 16px color-mix(in srgb, var(--bhogi-primary) 12%, transparent),
                0 0 0 1px color-mix(in srgb, var(--bhogi-primary) 4%, transparent);
    animation: topbarDropdownSlide-b-qbykqu9stw 0.3s var(--bhogi-ease-spring);
}

.menubar-section .dropdown-menu.show[b-qbykqu9stw] {
    display: block;
}

.menubar-section .dropdown-menu-end[b-qbykqu9stw] {
    left: auto;
    right: 0;
}

@keyframes topbarDropdownSlide-b-qbykqu9stw {
    0% { 
        opacity: 0; 
        transform: translateY(-12px) scale(0.94);
    }
    60% {
        transform: translateY(2px) scale(1.01);
    }
    100% { 
        opacity: 1; 
        transform: translateY(0) scale(1);
    }
}

/* ---- Dropdown Items - Enterprise Premium ---- */
.menubar-section .dropdown-item[b-qbykqu9stw] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.625rem 0.875rem;
    margin-bottom: 0.125rem;
    text-align: left;
    background: none;
    border: none;
    color: var(--bhogi-text);
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.4;
    cursor: pointer;
    text-decoration: none !important;
    white-space: nowrap;
    border-radius: 0.5rem;
    transition: all 0.2s var(--bhogi-ease);
    position: relative;
}

.menubar-section .dropdown-item[b-qbykqu9stw]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    height: 0;
    background: linear-gradient(180deg, var(--bhogi-primary), var(--bhogi-accent));
    border-radius: 0 2px 2px 0;
    transition: height 0.2s var(--bhogi-ease);
}

.menubar-section .dropdown-item:hover[b-qbykqu9stw]::before,
.menubar-section .dropdown-item:focus[b-qbykqu9stw]::before {
    height: 70%;
}

.menubar-section .dropdown-item:hover[b-qbykqu9stw],
.menubar-section .dropdown-item:focus[b-qbykqu9stw] {
    background: linear-gradient(90deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-primary) 4%, transparent) 100%);
    color: var(--bhogi-primary);
    transform: translateX(4px);
    box-shadow: 0 3px 8px color-mix(in srgb, var(--bhogi-primary) 12%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--bhogi-primary) 8%, transparent);
}

.menubar-section .dropdown-item.active[b-qbykqu9stw] {
    background: linear-gradient(90deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-primary) 8%, transparent) 100%);
    font-weight: 700;
    color: var(--bhogi-primary);
    box-shadow: 0 2px 6px color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}

.menubar-section .dropdown-item.disabled[b-qbykqu9stw] {
    opacity: 0.4;
    pointer-events: none;
}

.menubar-section .dropdown-item i[b-qbykqu9stw] {
    color: var(--cmp-topbar-dropdown-muted, var(--bhogi-text-secondary));
    font-size: 0.875rem;
    flex-shrink: 0;
    width: 1.25rem;
    text-align: center;
    transition: all 0.25s var(--bhogi-ease-spring);
}

.menubar-section .dropdown-item:hover i[b-qbykqu9stw],
.menubar-section .dropdown-item:focus i[b-qbykqu9stw] {
    color: var(--cmp-topbar-link-hover-fg, var(--bhogi-primary));
    transform: scale(1.15) rotate(5deg);
}

.menubar-section .dropdown-divider[b-qbykqu9stw] {
    height: 0;
    margin: 0.25rem 0.75rem;
    overflow: hidden;
    border-top: 1px solid var(--bhogi-border-light);
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 991.98px) {
    .menubar-section[b-qbykqu9stw] {
        display: none;
    }
}

@media (max-width: 768px) {
    .announcement-bar[b-qbykqu9stw] {
        font-size: 0.625rem;
    }
}

/* ── Per-section "customize colors" icon + editor panel anchor — see Header.razor.css's
   matching block for the full explanation (duplicated per CSS-isolation, not shared). ── */
.cte-chrome-toggle-wrap[b-qbykqu9stw] {
    position: absolute;
    top: 6px;
    right: 6px;
    z-index: 1041;
}

.cte-chrome-toggle-btn[b-qbykqu9stw] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-surface, #fff) 15%, transparent);
    color: var(--bhogi-surface, #fff);
    border: 1px solid color-mix(in srgb, var(--bhogi-surface, #fff) 25%, transparent);
    border-radius: 9999px;
    cursor: pointer;
    font-size: 0.7rem;
    opacity: 0.55;
    transition: opacity 160ms ease, transform 160ms ease;
}

.cte-chrome-toggle-wrap:hover .cte-chrome-toggle-btn[b-qbykqu9stw],
.cte-chrome-toggle-btn:focus-visible[b-qbykqu9stw] {
    opacity: 1;
    transform: scale(1.06);
}
/* /Components/Pages/AboutUs.razor.rz.scp.css */
.about-page[b-7p85lga6qh] {
    --about-surface: var(--bhogi-surface-premium);
    --about-border: var(--bhogi-border-light);
    --about-text: var(--bhogi-text);
    --about-muted: var(--bhogi-text-muted);
    --about-accent: var(--bhogi-primary);
    min-height: 60vh;
    overflow: clip;
    color: var(--about-text);
    background: var(--bhogi-surface);
}

.about-container[b-7p85lga6qh] { width: min(1180px, calc(100% - 3rem)); margin-inline: auto; }
.about-breadcrumb[b-7p85lga6qh] { border-bottom: 1px solid var(--about-border); background: var(--about-surface); }
.about-breadcrumb ol[b-7p85lga6qh] { display: flex; gap: .55rem; margin: 0; padding: .9rem 0; list-style: none; color: var(--about-muted); font-size: .8125rem; }
.about-breadcrumb li + li[b-7p85lga6qh]::before { content: '/'; margin-right: .55rem; opacity: .45; }
.about-breadcrumb a[b-7p85lga6qh] { color: inherit; text-decoration: none; }
.about-breadcrumb a:hover[b-7p85lga6qh] { color: var(--about-accent); }

.about-hero[b-7p85lga6qh] {
    padding: clamp(3.5rem, 8vw, 7rem) 0;
    background:
        radial-gradient(circle at 10% 15%, color-mix(in srgb, var(--about-accent) 11%, transparent), transparent 26%),
        radial-gradient(circle at 88% 18%, color-mix(in srgb, var(--bhogi-gold) 20%, transparent), transparent 29%),
        linear-gradient(135deg, color-mix(in srgb, var(--about-accent) 5%, var(--bhogi-surface)), var(--bhogi-surface));
}

.about-hero-layout[b-7p85lga6qh] { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); align-items: center; gap: clamp(2.5rem, 7vw, 6rem); }
.about-eyebrow[b-7p85lga6qh] { display: block; margin-bottom: .75rem; color: var(--about-accent); font-size: .75rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.about-hero h1[b-7p85lga6qh] { max-width: 720px; margin: 0 0 1.1rem; font-family: var(--bhogi-font-display, inherit); font-size: clamp(2.5rem, 5.8vw, 4.8rem); font-weight: 700; line-height: 1.02; letter-spacing: -.045em; }
.about-hero-copy > p[b-7p85lga6qh] { max-width: 650px; margin: 0 0 1.75rem; color: var(--about-muted); font-size: clamp(1rem, 2vw, 1.125rem); line-height: 1.7; }

.about-actions[b-7p85lga6qh],
.about-cta-actions[b-7p85lga6qh] { display: flex; gap: .75rem; }
.about-actions a[b-7p85lga6qh],
.about-cta-actions a[b-7p85lga6qh] { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 3.1rem; padding: .75rem 1.25rem; border-radius: var(--bhogi-radius-lg); font-size: .875rem; font-weight: 700; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.about-primary[b-7p85lga6qh] { color: #fff; background: var(--bhogi-gradient-primary); box-shadow: var(--bhogi-shadow-md); }
.about-primary:hover[b-7p85lga6qh] { color: #fff; transform: translateY(-2px); box-shadow: var(--bhogi-shadow-lg); }
.about-secondary[b-7p85lga6qh] { border: 1px solid color-mix(in srgb, var(--about-accent) 34%, var(--about-border)); color: var(--about-accent); background: var(--about-surface); }
.about-secondary:hover[b-7p85lga6qh] { color: var(--about-accent); transform: translateY(-2px); box-shadow: var(--bhogi-shadow-sm); }

.about-hero-art[b-7p85lga6qh] { position: relative; min-height: 390px; }
.about-logo-orbit[b-7p85lga6qh] { position: absolute; inset: 0 0 3rem; display: grid; place-items: center; }
.about-logo-card[b-7p85lga6qh] { z-index: 2; display: grid; place-items: center; width: min(260px, 68%); aspect-ratio: 1; padding: 2.5rem; border: 1px solid color-mix(in srgb, var(--bhogi-gold) 34%, var(--about-border)); border-radius: 50%; background: color-mix(in srgb, var(--about-surface) 95%, transparent); box-shadow: var(--bhogi-shadow-lg); }
.about-logo-card img[b-7p85lga6qh] { width: 100%; height: auto; }
.about-orbit[b-7p85lga6qh] { position: absolute; border: 1px solid color-mix(in srgb, var(--about-accent) 20%, transparent); border-radius: 50%; }
.about-orbit-one[b-7p85lga6qh] { width: 82%; aspect-ratio: 1; }
.about-orbit-two[b-7p85lga6qh] { width: 100%; aspect-ratio: 1; border-style: dashed; opacity: .55; }
.about-gem[b-7p85lga6qh] { position: absolute; z-index: 3; display: grid; place-items: center; width: 2.75rem; height: 2.75rem; border: 1px solid color-mix(in srgb, var(--bhogi-gold) 38%, var(--about-border)); border-radius: 50%; color: var(--about-accent); background: var(--about-surface); box-shadow: var(--bhogi-shadow-md); }
.about-gem-one[b-7p85lga6qh] { top: 5%; right: 16%; }
.about-gem-two[b-7p85lga6qh] { bottom: 10%; left: 8%; }
.about-gem-three[b-7p85lga6qh] { right: 3%; bottom: 18%; }
.about-art-caption[b-7p85lga6qh] { position: absolute; z-index: 4; right: 0; bottom: 0; left: 12%; padding: 1rem 1.2rem; border: 1px solid var(--about-border); border-radius: var(--bhogi-radius-lg); background: var(--about-surface); box-shadow: var(--bhogi-shadow-md); }
.about-art-caption span[b-7p85lga6qh],
.about-art-caption strong[b-7p85lga6qh] { display: block; }
.about-art-caption span[b-7p85lga6qh] { margin-bottom: .2rem; color: var(--about-muted); font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.about-art-caption strong[b-7p85lga6qh] { font-size: .86rem; }

.about-story[b-7p85lga6qh] { padding: clamp(3rem, 7vw, 5rem) 0; border-block: 1px solid var(--about-border); background: color-mix(in srgb, var(--about-accent) 3%, var(--about-surface)); }
.about-story-layout[b-7p85lga6qh] { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(2rem, 7vw, 6rem); }
.about-story h2[b-7p85lga6qh] { margin: 0; font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
.about-story-body[b-7p85lga6qh] { color: var(--about-muted); line-height: 1.75; }

.about-values[b-7p85lga6qh] { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.about-section-heading[b-7p85lga6qh] { max-width: 720px; margin-bottom: 2rem; }
.about-section-heading h2[b-7p85lga6qh],
.about-journey h2[b-7p85lga6qh],
.about-principles h2[b-7p85lga6qh],
.about-cta h2[b-7p85lga6qh] { margin: 0 0 .75rem; font-size: clamp(1.8rem, 3.8vw, 2.75rem); letter-spacing: -.03em; }
.about-section-heading > p[b-7p85lga6qh],
.about-journey header > p[b-7p85lga6qh],
.about-principles-card > p[b-7p85lga6qh] { margin: 0; color: var(--about-muted); line-height: 1.7; }

.about-value-grid[b-7p85lga6qh] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.about-value-grid article[b-7p85lga6qh] { position: relative; padding: 1.6rem; border: 1px solid var(--about-border); border-radius: var(--bhogi-radius-lg); background: var(--about-surface); box-shadow: var(--bhogi-shadow-sm); }
.about-value-icon[b-7p85lga6qh] { display: grid; place-items: center; width: 3rem; height: 3rem; margin-bottom: 1.35rem; border-radius: .9rem; color: var(--about-accent); background: color-mix(in srgb, var(--about-accent) 10%, var(--about-surface)); }
.about-value-number[b-7p85lga6qh] { position: absolute; top: 1.5rem; right: 1.5rem; color: color-mix(in srgb, var(--bhogi-gold) 55%, var(--about-muted)); font-family: var(--bhogi-font-display, inherit); font-size: 1.3rem; opacity: .65; }
.about-value-grid h3[b-7p85lga6qh] { margin: 0 0 .55rem; font-size: 1rem; }
.about-value-grid p[b-7p85lga6qh] { margin: 0; color: var(--about-muted); font-size: .82rem; line-height: 1.65; }

.about-journey[b-7p85lga6qh] { padding: clamp(3.5rem, 8vw, 6rem) 0; border-block: 1px solid var(--about-border); background: color-mix(in srgb, var(--about-accent) 3%, var(--about-surface)); }
.about-journey-layout[b-7p85lga6qh] { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); align-items: start; gap: clamp(2rem, 7vw, 6rem); }
.about-journey-steps[b-7p85lga6qh] { display: grid; gap: .8rem; margin: 0; padding: 0; list-style: none; }
.about-journey-steps li[b-7p85lga6qh] { display: grid; grid-template-columns: auto 1fr; gap: 1rem; padding: 1.25rem; border: 1px solid var(--about-border); border-radius: var(--bhogi-radius-lg); background: var(--about-surface); box-shadow: var(--bhogi-shadow-sm); }
.about-journey-steps li > span[b-7p85lga6qh] { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: 50%; color: var(--about-accent); background: color-mix(in srgb, var(--about-accent) 10%, var(--about-surface)); }
.about-journey-steps strong[b-7p85lga6qh] { display: block; margin-bottom: .25rem; font-size: .92rem; }
.about-journey-steps p[b-7p85lga6qh] { margin: 0; color: var(--about-muted); font-size: .8rem; line-height: 1.55; }

.about-principles[b-7p85lga6qh] { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.about-principles-layout[b-7p85lga6qh] { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(2rem, 8vw, 7rem); }
.about-principles-card[b-7p85lga6qh] { padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid color-mix(in srgb, var(--bhogi-gold) 30%, var(--about-border)); border-radius: 1.5rem; background: var(--about-surface); box-shadow: var(--bhogi-shadow-md); }
.about-principles ul[b-7p85lga6qh] { display: grid; gap: 1.15rem; margin: 0; padding: 0; list-style: none; }
.about-principles li[b-7p85lga6qh] { display: grid; grid-template-columns: auto 1fr; gap: .9rem; }
.about-principles li > i[b-7p85lga6qh] { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; color: #fff; background: var(--about-accent); font-size: .65rem; }
.about-principles strong[b-7p85lga6qh],
.about-principles small[b-7p85lga6qh] { display: block; }
.about-principles strong[b-7p85lga6qh] { margin-bottom: .2rem; font-size: .9rem; }
.about-principles small[b-7p85lga6qh] { color: var(--about-muted); font-size: .78rem; line-height: 1.5; }

.about-cta[b-7p85lga6qh] { padding: 0 0 clamp(3.5rem, 8vw, 6rem); }
.about-cta-card[b-7p85lga6qh] { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2rem; padding: clamp(1.6rem, 5vw, 3rem); border: 1px solid color-mix(in srgb, var(--bhogi-gold) 34%, var(--about-border)); border-radius: 1.5rem; background: linear-gradient(135deg, color-mix(in srgb, var(--about-accent) 8%, var(--about-surface)), var(--about-surface)); box-shadow: var(--bhogi-shadow-md); }
.about-cta p[b-7p85lga6qh] { margin: 0; color: var(--about-muted); }

.about-page a:focus-visible[b-7p85lga6qh] { outline: 3px solid color-mix(in srgb, var(--about-accent) 28%, transparent); outline-offset: 3px; }

@media (max-width: 820px) {
    .about-hero-layout[b-7p85lga6qh],
    .about-story-layout[b-7p85lga6qh],
    .about-journey-layout[b-7p85lga6qh],
    .about-principles-layout[b-7p85lga6qh] { grid-template-columns: 1fr; }
    .about-hero-art[b-7p85lga6qh] { min-height: 360px; max-width: 500px; width: 100%; margin-inline: auto; }
    .about-value-grid[b-7p85lga6qh] { grid-template-columns: 1fr; }
    .about-cta-card[b-7p85lga6qh] { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
    .about-container[b-7p85lga6qh] { width: min(100% - 2rem, 1180px); }
    .about-hero[b-7p85lga6qh] { padding: 3rem 0; }
    .about-hero h1[b-7p85lga6qh] { font-size: 2.55rem; }
    .about-actions[b-7p85lga6qh],
    .about-cta-actions[b-7p85lga6qh] { flex-direction: column; }
    .about-actions a[b-7p85lga6qh],
    .about-cta-actions a[b-7p85lga6qh] { width: calc(100% - 4rem); }
    .about-hero-art[b-7p85lga6qh] { min-height: 300px; }
    .about-logo-card[b-7p85lga6qh] { width: 62%; padding: 1.7rem; }
    .about-gem[b-7p85lga6qh] { width: 2.35rem; height: 2.35rem; font-size: .8rem; }
    .about-art-caption[b-7p85lga6qh] { left: 4%; }
    .about-cta-card[b-7p85lga6qh] { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .about-actions a[b-7p85lga6qh],
    .about-cta-actions a[b-7p85lga6qh] { transition: none; }
}
/* /Components/Pages/BestsellersPage.razor.rz.scp.css */
/* ============================================================
   BESTSELLERS PAGE — Enterprise Premium Product Grid
   ============================================================ */

.newproducts-page[b-cpqayvmr0v] {
    --np-bg: var(--cmp-bestsellers-page-bg, #ffffff);
    --np-surface: var(--cmp-bestsellers-page-surface, #f8fafc);
    --np-border: var(--cmp-bestsellers-page-border, #e2e8f0);
    --np-text: var(--cmp-bestsellers-page-text, #334155);
    --np-text-muted: var(--cmp-bestsellers-page-text-muted, #64748b);
    --np-heading: var(--cmp-bestsellers-page-heading, #0f172a);
    --np-accent: var(--cmp-bestsellers-page-accent, #3b82f6);
    --np-accent-soft: var(--cmp-bestsellers-page-accent-soft, rgba(59,130,246,.08));
    --np-sale: var(--cmp-bestsellers-page-sale, #ef4444);
    --np-new: var(--cmp-bestsellers-page-new, #8b5cf6);
    --np-radius: var(--cmp-bestsellers-page-radius, 0.75rem);
    --np-ease: cubic-bezier(.4,0,.2,1);
    --np-kicker-bg: var(--cmp-bestsellers-page-kicker-bg, #fef3c7);
    --np-kicker-fg: var(--cmp-bestsellers-page-kicker-fg, #b45309);
    --np-icon-accent: var(--cmp-bestsellers-page-icon-accent, #f59e0b);
    --np-badge-bestseller: var(--cmp-bestsellers-page-badge-bestseller, #f59e0b);
    --np-badge-trending: var(--cmp-bestsellers-page-badge-trending, #8b5cf6);
    --np-star: var(--cmp-bestsellers-page-star, #f59e0b);
    --np-skeleton-base: var(--cmp-bestsellers-page-skeleton-base, #f1f5f9);
    --np-skeleton-shine: var(--cmp-bestsellers-page-skeleton-shine, #e2e8f0);
    --np-btn-hover: var(--cmp-bestsellers-page-btn-hover, #2563eb);

    min-height: 60vh;
    background: var(--np-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-cpqayvmr0v] {
    background: var(--np-surface);
    border-bottom: 1px solid var(--np-border);
    padding: 0.875rem 0;
}

.crumbs[b-cpqayvmr0v] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--np-text-muted);
}

.crumbs li + li[b-cpqayvmr0v]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-cpqayvmr0v] {
    color: var(--np-text-muted);
    text-decoration: none;
    transition: color .2s var(--np-ease);
}
.crumbs a:hover[b-cpqayvmr0v] { color: var(--np-accent); }
.crumbs .active[b-cpqayvmr0v] { color: var(--np-heading); font-weight: 600; }

/* ── Container ── */
.np-container[b-cpqayvmr0v] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ── */
.np-header[b-cpqayvmr0v] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    margin: 1.25rem 0 1.75rem;
    background: linear-gradient(180deg, rgba(255, 251, 235, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid rgba(245, 158, 11, 0.12);
    border-radius: 1.25rem;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
    animation: np-fadeIn-b-cpqayvmr0v .4s var(--np-ease) both;
}

.np-kicker[b-cpqayvmr0v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.75rem;
    margin-bottom: 0.875rem;
    border-radius: 999px;
    background: var(--np-kicker-bg);
    color: var(--np-kicker-fg);
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.np-title[b-cpqayvmr0v] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.np-title i[b-cpqayvmr0v] {
    color: var(--np-icon-accent);
    font-size: 1.5rem;
}

.np-subtitle[b-cpqayvmr0v] {
    font-size: 1.0625rem;
    color: var(--np-text-muted);
    margin: 0;
    line-height: 1.6;
}

.np-highlights[b-cpqayvmr0v] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.np-highlight[b-cpqayvmr0v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: var(--np-heading);
    font-size: 0.75rem;
    font-weight: 700;
}

@keyframes np-fadeIn-b-cpqayvmr0v {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Product Grid ── */
.np-grid[b-cpqayvmr0v] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: np-fadeIn-b-cpqayvmr0v .5s var(--np-ease) .1s both;
}

/* ── Product Card ── */
.np-card[b-cpqayvmr0v] {
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--np-bg);
    border: 1px solid var(--np-border);
    border-radius: var(--np-radius);
    text-decoration: none;
    color: var(--np-text);
    overflow: hidden;
    transition: border-color .25s var(--np-ease), box-shadow .25s var(--np-ease), transform .2s var(--np-ease);
}

.np-card:hover[b-cpqayvmr0v] {
    border-color: var(--np-accent);
    box-shadow: 0 6px 24px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

/* Badges */
.np-badge[b-cpqayvmr0v] {
    position: absolute;
    top: 0.75rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    z-index: 1;
}

.np-badge-new[b-cpqayvmr0v] {
    right: 0.75rem;
    background: var(--np-new);
    color: #fff;
}

.np-badge-sale[b-cpqayvmr0v] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
}

.np-badge-bestseller[b-cpqayvmr0v] {
    right: 0.75rem;
    background: var(--np-badge-bestseller);
    color: #fff;
}

.np-badge-trending[b-cpqayvmr0v] {
    right: 0.75rem;
    background: var(--np-badge-trending);
    color: #fff;
}

.np-badge-discount[b-cpqayvmr0v] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
    font-weight: 800;
}

/* Rating Stars */
.np-card-rating[b-cpqayvmr0v] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    color: var(--np-star);
}

.np-card-rating .rating-count[b-cpqayvmr0v] {
    color: var(--np-text-muted);
    font-size: 0.6875rem;
    margin-left: 0.125rem;
}

.np-price-from[b-cpqayvmr0v] {
    font-size: 0.75rem;
    color: var(--np-text-muted);
    font-weight: 500;
}

/* Card Image */
.np-card-img[b-cpqayvmr0v] {
    width: 100%;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: var(--np-surface);
}

.np-card-img img[b-cpqayvmr0v] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--np-ease);
}

.np-card:hover .np-card-img img[b-cpqayvmr0v] {
    transform: scale(1.05);
}

/* Card Body */
.np-card-body[b-cpqayvmr0v] {
    padding: 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.np-card-name[b-cpqayvmr0v] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.np-card-price[b-cpqayvmr0v] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-top: auto;
}

.np-price-current[b-cpqayvmr0v] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--np-heading);
}

.np-price-old[b-cpqayvmr0v] {
    font-size: 0.8125rem;
    color: var(--np-text-muted);
    text-decoration: line-through;
}

/* ── Skeleton ── */
.np-skeleton[b-cpqayvmr0v] {
    pointer-events: none;
}

.np-skeleton .sk-img[b-cpqayvmr0v] {
    width: 100%;
    aspect-ratio: 1;
    background: var(--np-surface);
}

.np-skeleton .sk-name[b-cpqayvmr0v] {
    height: 1rem;
    width: 75%;
    margin: 1rem 1rem 0.5rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-price[b-cpqayvmr0v] {
    height: 0.875rem;
    width: 35%;
    margin: 0 1rem 1rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-name[b-cpqayvmr0v],
.np-skeleton .sk-price[b-cpqayvmr0v] {
    background: linear-gradient(90deg, var(--np-skeleton-base) 25%, var(--np-skeleton-shine) 50%, var(--np-skeleton-base) 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-cpqayvmr0v 1.5s ease infinite;
}

@keyframes sk-shimmer-b-cpqayvmr0v {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty ── */
.np-empty[b-cpqayvmr0v] {
    text-align: center;
    padding: 4rem 2rem;
}

.np-empty i[b-cpqayvmr0v] {
    font-size: 3rem;
    color: var(--np-border);
    margin-bottom: 1rem;
    display: block;
}

.np-empty h2[b-cpqayvmr0v] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
}

.np-empty p[b-cpqayvmr0v] {
    font-size: 0.9375rem;
    color: var(--np-text-muted);
    margin: 0 0 1.5rem;
}

.np-btn[b-cpqayvmr0v] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--np-accent);
    border-radius: var(--np-radius);
    text-decoration: none;
    transition: background .2s var(--np-ease), transform .15s var(--np-ease);
}

.np-btn:hover[b-cpqayvmr0v] {
    background: var(--np-btn-hover);
    transform: translateY(-1px);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .np-container[b-cpqayvmr0v] { padding: 0 1rem; }
    .np-header[b-cpqayvmr0v] { padding: 1.5rem 1rem 1.25rem; margin: 1rem 0 1.25rem; border-radius: 1rem; }
    .np-title[b-cpqayvmr0v] { font-size: 1.5rem; }
    .np-grid[b-cpqayvmr0v] { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.75rem; }
    .np-card-body[b-cpqayvmr0v] { padding: 0.75rem; }
    .np-highlights[b-cpqayvmr0v] { gap: 0.4rem; }
    .np-highlight[b-cpqayvmr0v] { font-size: 0.6875rem; padding: 0.35rem 0.625rem; }
}

@media (prefers-reduced-motion: reduce) {
    .np-header[b-cpqayvmr0v], .np-grid[b-cpqayvmr0v] { animation: none; }
    .np-skeleton .sk-name[b-cpqayvmr0v], .np-skeleton .sk-price[b-cpqayvmr0v] { animation: none; }
}

/* ============================================
   ARTLIST GRID SYSTEM - 4 Column Responsive Layout
   ============================================ */
.artlist[b-cpqayvmr0v] {
    --artlist-gap: 1.25rem;
}

.artlist-grid[b-cpqayvmr0v] {
    display: grid;
    gap: var(--artlist-gap);
}

.artlist-4-cols[b-cpqayvmr0v] {
    grid-template-columns: repeat(4, 1fr);
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
    .artlist-4-cols[b-cpqayvmr0v] {
        grid-template-columns: repeat(2, 1fr);
        --artlist-gap: 0.625rem;
    }
}

/* Tablet: 3 columns */
@media (min-width: 768px) and (max-width: 1199px) {
    .artlist-4-cols[b-cpqayvmr0v] {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Desktop: 4 columns (default) */
@media (min-width: 1200px) {
    .artlist-4-cols[b-cpqayvmr0v] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Components/Pages/Cart.razor.rz.scp.css */
/* ============================================
   Cart Page — Clean Responsive Design
   ============================================ */

.cart-page[b-3a87195q9t] {
    padding-bottom: 2rem;
    background: var(--bhogi-surface, #ffffff);
}

/* ---- Page title ---- */
.cart-page .page-title[b-3a87195q9t] {
    font-family: 'Playfair Display', serif;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 2rem;
    color: var(--bhogi-text, #0f172a);
    letter-spacing: -0.02em;
}

/* ---- Loading / Empty states ---- */
.cart-page .loading-state[b-3a87195q9t],
.cart-page .empty-cart[b-3a87195q9t] {
    text-align: center;
    padding: 5rem 2rem;
}

.cart-page .empty-cart i[b-3a87195q9t] {
    font-size: 3.5rem;
    color: var(--bhogi-border, #e2e8f0);
    margin-bottom: 1.5rem;
}

.cart-page .empty-cart h2[b-3a87195q9t] {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
    color: var(--bhogi-text, #0f172a);
}

.cart-page .empty-cart p[b-3a87195q9t] {
    color: var(--bhogi-text-secondary, #475569);
    margin-bottom: 2rem;
}

/* ---- Two-column layout: items | summary ---- */
.cart-content[b-3a87195q9t] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 360px);
    gap: clamp(1rem, 2vw, 1.5rem);
    align-items: start;
}

@media (max-width: 1199px) {
    .cart-content[b-3a87195q9t] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .cart-summary[b-3a87195q9t] {
        position: static;
    }
}

.cart-items[b-3a87195q9t] {
    min-width: 0;
}

/* ============================================
   CART ITEMS — flex-based rows (no table)
   ============================================ */

/* 5-column grid: [image+name] [price] [qty] [total] [actions] */
.cart-header[b-3a87195q9t],
.cart-item[b-3a87195q9t] {
    display: grid;
    grid-template-columns: 1fr 100px 160px 110px 88px;
    align-items: center;
    gap: 0 1rem;
    padding: 0.875rem 1rem;
}

.cart-header[b-3a87195q9t] {
    border-bottom: 2px solid var(--bhogi-border, #e2e8f0);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--bhogi-text-secondary, #475569);
}

/* map header columns to grid areas */
.ch-product[b-3a87195q9t]  { grid-column: 1 / 3; }
.ch-price[b-3a87195q9t]    { grid-column: 3; text-align: right; }
.ch-qty[b-3a87195q9t]      { grid-column: 4; text-align: center; }
.ch-total[b-3a87195q9t]    { grid-column: 5; text-align: right; }
.ch-actions[b-3a87195q9t]  { grid-column: 6; }

.cart-item[b-3a87195q9t] {
    border-bottom: 1px solid var(--bhogi-border-light, #f1f5f9);
    transition: background 0.15s ease;
}

@media (hover: hover) {
    .cart-item:hover[b-3a87195q9t] {
        background: color-mix(in srgb, var(--bhogi-primary) 3%, transparent);
    }
}

/* ---- Image ---- */
.ci-image[b-3a87195q9t] {
    grid-column: 1;
    width: 80px;
    height: 80px;
    flex-shrink: 0;
    border-radius: 0.625rem;
    overflow: hidden;
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    background: var(--bhogi-surface-raised, #f8fafc);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem;
}

.ci-image img[b-3a87195q9t] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* ---- Product details ---- */
.ci-details[b-3a87195q9t] {
    grid-column: 2;
    padding-left: 0.875rem;
    min-width: 0;
}

/* image + details share the first column via subgrid-like trick */
.cart-item[b-3a87195q9t] {
    grid-template-columns: 80px 1fr 100px 160px 110px 88px;
}

.cart-header[b-3a87195q9t] {
    grid-template-columns: 80px 1fr 100px 160px 110px 88px;
}

.ci-name[b-3a87195q9t] {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--bhogi-text, #0f172a);
    text-decoration: none;
    line-height: 1.35;
    transition: color 0.2s ease;
}

.ci-name:hover[b-3a87195q9t] { color: var(--bhogi-primary, #2563eb); }

.ci-sku[b-3a87195q9t] {
    display: block;
    font-size: 0.6875rem;
    color: var(--bhogi-text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-top: 0.25rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ---- Price / Qty / Total ---- */
.ci-label[b-3a87195q9t] { display: none; } /* hidden on desktop, shown on mobile */

.ci-price[b-3a87195q9t]  { text-align: right; }
.ci-qty[b-3a87195q9t]    { text-align: center; display: flex; justify-content: center; }
.ci-total[b-3a87195q9t]  { text-align: right; }

.ci-value[b-3a87195q9t] {
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    font-size: 0.9375rem;
}

.ci-total-value[b-3a87195q9t] {
    font-size: 1rem;
    color: var(--bhogi-primary, #2563eb);
}

/* ---- Quantity selector ---- */
.quantity-selector[b-3a87195q9t] {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: 0.5rem;
    overflow: hidden;
    transition: border-color 0.2s ease;
}

.quantity-selector:focus-within[b-3a87195q9t] {
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 3px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.1));
}

.quantity-selector .qty-btn[b-3a87195q9t] {
    width: 34px;
    height: 36px;
    border: none;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    color: var(--bhogi-text-secondary, #475569);
    transition: all 0.15s ease;
}

.quantity-selector .qty-btn:hover[b-3a87195q9t] {
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
}

.quantity-selector input[b-3a87195q9t] {
    width: 44px;
    height: 36px;
    border: none;
    text-align: center;
    font-weight: 700;
    font-size: 0.875rem;
    -moz-appearance: textfield;
    background: transparent;
}

.quantity-selector input[b-3a87195q9t]::-webkit-outer-spin-button,
.quantity-selector input[b-3a87195q9t]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* ---- Action buttons ---- */
.ci-actions[b-3a87195q9t] {
    display: flex;
    gap: 0.375rem;
    justify-content: flex-end;
    align-items: center;
}

.action-icon-btn[b-3a87195q9t] {
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid transparent;
    background: transparent;
    border-radius: 0.5rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9375rem;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.action-icon-btn.wishlist-btn[b-3a87195q9t] {
    color: var(--bhogi-text-muted, #94a3b8);
}

.action-icon-btn.wishlist-btn:hover[b-3a87195q9t] {
    background: #fef3f2;
    border-color: #fecdd3;
    color: #f43f5e;
}

.action-icon-btn.remove-btn[b-3a87195q9t] {
    color: var(--bhogi-text-muted, #94a3b8);
}

.action-icon-btn.remove-btn:hover[b-3a87195q9t] {
    background: #fef2f2;
    border-color: #fecaca;
    color: var(--bhogi-danger, #dc2626);
}

/* ---- Cart actions bar ---- */
.cart-actions[b-3a87195q9t] {
    display: flex;
    gap: 1rem;
    margin-top: 1.5rem;
}

/* ============================================
   CART SUMMARY SIDEBAR
   ============================================ */
.cart-summary[b-3a87195q9t] {
    background: var(--bhogi-surface, #fff);
    border-radius: 1rem;
    padding: 1.75rem;
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    position: sticky;
    top: 6rem;
}

.cart-summary h2[b-3a87195q9t] {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
    padding-bottom: 0.875rem;
    border-bottom: 2px solid var(--bhogi-border-light, #f1f5f9);
    color: var(--bhogi-text, #0f172a);
}

/* ---- Coupon ---- */
.coupon-box[b-3a87195q9t] {
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    border-radius: 0.625rem;
    padding: 0.875rem;
    margin-bottom: 1.25rem;
    background: var(--bhogi-surface-raised, #f8fafc);
}

.coupon-input-group[b-3a87195q9t] {
    display: flex;
    gap: 0.5rem;
}

.coupon-input[b-3a87195q9t] {
    flex: 1;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: 0.5rem;
    font-size: 0.875rem;
    transition: border-color 0.2s ease;
}

.coupon-input:focus[b-3a87195q9t] {
    outline: none;
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 3px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.1));
}

.coupon-message[b-3a87195q9t] {
    margin-top: 0.625rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.coupon-message.success[b-3a87195q9t] {
    background: color-mix(in srgb, var(--bhogi-success) 10%, transparent);
    color: var(--bhogi-success);
    border: 1px solid color-mix(in srgb, var(--bhogi-success) 20%, transparent);
}

.coupon-message.warning[b-3a87195q9t] {
    background: color-mix(in srgb, var(--bhogi-gold) 18%, transparent);
    color: var(--bhogi-gold-dark);
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 34%, transparent);
}

/* ---- Summary rows ---- */
.summary-row[b-3a87195q9t] {
    display: flex;
    justify-content: space-between;
    padding: 0.625rem 0;
    font-size: 0.9375rem;
    color: var(--bhogi-text-secondary, #475569);
}

.summary-row.total[b-3a87195q9t] {
    font-size: 1.125rem;
    font-weight: 800;
    border-top: 2px solid var(--bhogi-border, #e2e8f0);
    margin-top: 0.75rem;
    padding-top: 1rem;
    color: var(--bhogi-text, #0f172a);
}

/* ---- Checkout button ---- */
.btn-checkout[b-3a87195q9t] {
    width: 100%;
    padding: 0.9rem 1rem;
    font-size: 0.9375rem;
    font-weight: 700;
    margin-top: 1.25rem;
    background: var(--bhogi-gradient-gold);
    color: #15211d;
    border: none;
    border-radius: 0.75rem;
    cursor: pointer;
    transition: all 0.2s ease;
    letter-spacing: 0.01em;
}

.btn-checkout:hover[b-3a87195q9t] {
    box-shadow: var(--bhogi-shadow-gold, 0 10px 24px rgba(218, 165, 32, 0.18));
    filter: brightness(1.04);
}

/* ---- Payment icons ---- */
.payment-methods[b-3a87195q9t] {
    text-align: center;
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--bhogi-border-light);
}

.payment-methods span[b-3a87195q9t] {
    display: block;
    font-size: 0.7rem;
    color: var(--bhogi-text-muted);
    margin-bottom: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
}

.payment-icons[b-3a87195q9t] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    font-size: 1.75rem;
    color: var(--bhogi-text-muted);
}

.payment-icons i:hover[b-3a87195q9t] { color: var(--bhogi-primary); }

.mobile-cart-checkout[b-3a87195q9t] {
    display: none;
}

/* ============================================
   MOBILE — stack each cart-item as a card
   ============================================ */
@media (max-width: 900px) {

    .cart-page[b-3a87195q9t] {
        padding-bottom: calc(6rem + env(safe-area-inset-bottom));
    }

    .cart-page .page-title[b-3a87195q9t] {
        font-size: clamp(1.5rem, 6vw, 1.85rem);
        margin-bottom: 0.875rem;
    }

    .cart-content[b-3a87195q9t] {
        gap: 0.875rem;
    }

    .cart-header[b-3a87195q9t] { display: none; }

    .cart-item[b-3a87195q9t] {
        display: grid;
        grid-template-columns: 76px minmax(0, 1fr) auto;
        grid-template-areas:
            "image details actions"
            "price qty total";
        gap: 0.625rem 0.75rem;
        padding: 0.75rem;
        margin-bottom: 0.625rem;
        border: 1px solid var(--bhogi-border-light, #f1f5f9);
        border-radius: 0.875rem;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
        background: var(--bhogi-surface, #fff);
    }

    .ci-image[b-3a87195q9t] {
        grid-area: image;
        grid-column: auto;
        width: 76px;
        height: 76px;
        align-self: start;
    }

    .ci-details[b-3a87195q9t] {
        grid-area: details;
        grid-column: auto;
        align-self: start;
        padding: 0;
        min-width: 0;
    }

    .ci-name[b-3a87195q9t] {
        font-size: 0.9rem;
        line-height: 1.25;
    }

    .ci-price[b-3a87195q9t],
    .ci-qty[b-3a87195q9t],
    .ci-total[b-3a87195q9t] {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 0.25rem;
        min-width: 0;
        padding-top: 0.625rem;
        border-top: 1px solid var(--bhogi-border-light, #f1f5f9);
    }

    .ci-price[b-3a87195q9t] {
        grid-area: price;
        align-items: flex-start;
        text-align: left;
    }

    .ci-total[b-3a87195q9t] {
        grid-area: total;
        align-items: flex-end;
        text-align: right;
    }

    .ci-qty[b-3a87195q9t] {
        grid-area: qty;
        align-items: center;
        text-align: center;
    }

    .ci-label[b-3a87195q9t] {
        display: block;
        font-size: 0.65rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: var(--bhogi-text-secondary, #475569);
    }

    .ci-value[b-3a87195q9t] {
        font-size: 0.875rem;
    }

    .ci-total-value[b-3a87195q9t] {
        font-size: 1rem;
        font-weight: 800;
    }

    .ci-actions[b-3a87195q9t] {
        grid-area: actions;
        justify-content: flex-end;
        align-self: start;
        padding: 0;
        margin: 0;
        border: 0;
        width: auto;
    }

    .action-icon-btn[b-3a87195q9t] {
        width: 36px;
        height: 36px;
        border-radius: 0.625rem;
        font-size: 0.9375rem;
    }

    .action-icon-btn.wishlist-btn[b-3a87195q9t] {
        background: #fef3f2;
        border-color: #fecdd3;
        color: #f43f5e;
    }

    .action-icon-btn.remove-btn[b-3a87195q9t] {
        background: #fef2f2;
        border-color: #fecaca;
        color: var(--bhogi-danger, #dc2626);
    }

    .cart-actions[b-3a87195q9t] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0.5rem;
        margin-top: 0.5rem;
    }

    .cart-actions .btn[b-3a87195q9t] {
        width: 100%;
        justify-content: center;
        display: flex;
        align-items: center;
        gap: 0.375rem;
        min-height: 42px;
        padding-inline: 0.5rem;
        font-size: 0.8rem;
        white-space: nowrap;
    }

    .cart-summary[b-3a87195q9t] {
        position: static;
        padding: 0.875rem;
        margin-top: 0;
        border-radius: 0.875rem;
    }

    .cart-summary h2[b-3a87195q9t] {
        font-size: 1.125rem;
        margin-bottom: 0.75rem;
        padding-bottom: 0.625rem;
    }

    .coupon-box[b-3a87195q9t] {
        padding: 0.625rem;
        margin-bottom: 0.75rem;
    }

    .coupon-input[b-3a87195q9t] {
        min-width: 0;
    }

    .summary-row[b-3a87195q9t] {
        padding: 0.45rem 0;
        font-size: 0.875rem;
    }

    .summary-row.total[b-3a87195q9t] {
        margin-top: 0.375rem;
        padding-top: 0.75rem;
    }

    .btn-checkout[b-3a87195q9t] {
        padding: 0.75rem;
        margin-top: 0.875rem;
        font-size: 0.9375rem;
    }

    .payment-methods[b-3a87195q9t] {
        margin-top: 0.875rem;
        padding-top: 0.75rem;
    }

    .mobile-cart-checkout[b-3a87195q9t] {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1850;
        display: grid;
        grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
        align-items: center;
        gap: 0.75rem;
        padding: 0.625rem max(0.75rem, env(safe-area-inset-right)) calc(0.625rem + env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left));
        border-top: 1px solid var(--bhogi-border, #e2e8f0);
        background: color-mix(in srgb, var(--bhogi-surface, #fff) 96%, transparent);
        box-shadow: 0 -10px 30px rgba(15, 23, 42, 0.14);
        -webkit-backdrop-filter: blur(14px);
        backdrop-filter: blur(14px);
    }

    .mobile-cart-total[b-3a87195q9t] {
        display: flex;
        flex-direction: column;
        min-width: 0;
    }

    .mobile-cart-total span[b-3a87195q9t] {
        color: var(--bhogi-text-muted, #64748b);
        font-size: 0.6875rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.06em;
    }

    .mobile-cart-total strong[b-3a87195q9t] {
        color: var(--bhogi-text, #0f172a);
        font-size: 1.125rem;
        line-height: 1.25;
        white-space: nowrap;
    }

    .mobile-cart-checkout-btn[b-3a87195q9t] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        min-width: 0;
        min-height: 46px;
        padding: 0.75rem 1rem;
        border: 0;
        border-radius: 0.75rem;
        background: linear-gradient(135deg, var(--bhogi-text, #15211d) 0%, var(--bhogi-primary, #0f7a66) 100%);
        color: #fff;
        font-size: 0.9375rem;
        font-weight: 800;
        cursor: pointer;
        box-shadow: 0 8px 20px color-mix(in srgb, var(--bhogi-primary, #0f7a66) 22%, transparent);
    }
}

@media (max-width: 380px) {
    .cart-item[b-3a87195q9t] {
        grid-template-columns: 68px minmax(0, 1fr) auto;
        gap: 0.5rem 0.625rem;
        padding: 0.625rem;
    }

    .ci-image[b-3a87195q9t] {
        width: 68px;
        height: 68px;
    }

    .quantity-selector .qty-btn[b-3a87195q9t] {
        width: 32px;
    }

    .quantity-selector input[b-3a87195q9t] {
        width: 38px;
    }

    .action-icon-btn[b-3a87195q9t] {
        width: 34px;
        height: 34px;
    }
}
/* /Components/Pages/CategoryPage.razor.rz.scp.css */
/* ============================================
   CATEGORY PAGE - Matching Bhogi.Web's
   CategoryTemplate.ProductsInGridOrLines
   ============================================ */

.category-page[b-zm7y3whigj] {
    min-height: 100vh;
    background: var(--cmp-category-page-bg, var(--bhogi-surface-raised, #f8fafc));
}

/* Container */
.container[b-zm7y3whigj] {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ========================================
   LOADING STATE
   ======================================== */
.loading-state[b-zm7y3whigj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 6rem 2rem;
    color: var(--cmp-category-page-muted, #6c757d);
}

.loading-spinner[b-zm7y3whigj] {
    width: 40px;
    height: 40px;
    border: 3px solid var(--cmp-category-page-spinner-border, var(--bhogi-border, #e2e8f0));
    border-top-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    border-radius: 50%;
    animation: spin-b-zm7y3whigj 0.8s linear infinite;
    margin-bottom: 1rem;
}

@keyframes spin-b-zm7y3whigj {
    to { transform: rotate(360deg); }
}

/* ========================================
   BREADCRUMB - Matching Bhogi.Web
   ======================================== */
.breadcrumb-nav[b-zm7y3whigj] {
    background: var(--cmp-category-page-strip-bg, var(--bhogi-surface, #fff));
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--cmp-category-page-strip-border, var(--bhogi-border, #e2e8f0));
}

.breadcrumb[b-zm7y3whigj] {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
}

.breadcrumb-item[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    font-size: 0.8125rem;
    color: var(--cmp-category-page-muted, #6c757d);
}

.breadcrumb-item a[b-zm7y3whigj] {
    color: var(--cmp-category-page-muted, #6c757d);
    text-decoration: none;
    transition: color 0.2s;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.breadcrumb-item a:hover[b-zm7y3whigj] {
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
}

.breadcrumb-item:not(:last-child)[b-zm7y3whigj]::after {
    content: '/';
    margin: 0 0.5rem;
    color: #adb5bd;
    font-size: 0.8125rem;
}

.breadcrumb-item.active[b-zm7y3whigj] {
    color: var(--cmp-category-page-text, #495057);
    font-weight: 500;
}

/* ========================================
   PAGE TITLE (Matching Bhogi.Web page-title)
   ======================================== */
.page-title-section[b-zm7y3whigj] {
    background: var(--cmp-category-page-strip-bg, var(--bhogi-surface, #fff));
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--cmp-category-page-strip-border, var(--bhogi-border, #e2e8f0));
}

.page-title-row[b-zm7y3whigj] {
    display: flex;
    align-items: baseline;
    gap: 1rem;
    flex-wrap: wrap;
}

.page-title[b-zm7y3whigj] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
    margin: 0;
    line-height: 1.3;
}

.hit-count[b-zm7y3whigj] {
    font-size: 0.875rem;
    color: var(--cmp-category-page-muted, #6c757d);
    font-weight: 400;
    white-space: nowrap;
}

/* ========================================
   CATEGORY DESCRIPTION (collapsible)
   ======================================== */
.category-description-section[b-zm7y3whigj] {
    background: var(--cmp-category-page-strip-bg, var(--bhogi-surface, #fff));
    border-bottom: 1px solid var(--cmp-category-page-strip-border, var(--bhogi-border, #e2e8f0));
    padding: 1rem 0;
}

.category-description[b-zm7y3whigj] {
    position: relative;
}

.category-description.collapsed .description-content[b-zm7y3whigj] {
    max-height: 4.5em;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to bottom, #000 60%, transparent 100%);
    mask-image: linear-gradient(to bottom, #000 60%, transparent 100%);
}

.category-description.expanded .description-content[b-zm7y3whigj] {
    max-height: none;
}

.description-content[b-zm7y3whigj] {
    font-size: 0.875rem;
    color: var(--cmp-category-page-muted, #6c757d);
    line-height: 1.7;
    transition: max-height 0.3s ease;
}

.description-toggle[b-zm7y3whigj] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: none;
    border: none;
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    padding: 0.5rem 0 0;
    transition: color 0.2s;
}

.description-toggle:hover[b-zm7y3whigj] {
    color: var(--cmp-category-page-primary-hover, var(--bhogi-primary-hover, #1d4ed8));
}

.description-toggle i[b-zm7y3whigj] {
    font-size: 0.625rem;
    transition: transform 0.3s ease;
}

.description-toggle i.rotated[b-zm7y3whigj] {
    transform: rotate(180deg);
}

/* ========================================
   SUBCATEGORIES - artlist-4-cols boxed
   (Matching Bhogi.Web artlist-boxed)
   ======================================== */
.subcategories-section[b-zm7y3whigj] {
    padding: 2rem 0;
    background: var(--cmp-category-page-surface, var(--bhogi-surface, #fff));
    border-bottom: 1px solid var(--cmp-category-page-strip-border, var(--bhogi-border, #e2e8f0));
}

/* ========================================
   ARTLIST SYSTEM (mirroring Bhogi.Web)
   ======================================== */
.artlist[b-zm7y3whigj] {
    --artlist-gap: 1.25rem;
}

.artlist-grid[b-zm7y3whigj] {
    display: grid;
    gap: var(--artlist-gap);
}

.artlist-4-cols[b-zm7y3whigj] {
    grid-template-columns: repeat(4, 1fr);
}

/* Boxed subcategory cards */
.art-boxed[b-zm7y3whigj] {
    background: var(--cmp-category-page-card-bg, var(--bhogi-surface, #fff));
    border: 1px solid var(--cmp-category-page-card-border, var(--bhogi-border, #e2e8f0));
    border-radius: var(--bhogi-radius, 0.5rem);
    overflow: hidden;
    transition: all 0.2s var(--bhogi-ease, ease);
    text-align: center;
}

.art-boxed:hover[b-zm7y3whigj] {
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    box-shadow: var(--bhogi-shadow-sm, 0 2px 8px rgba(0,0,0,0.04));
}

.art-picture-block[b-zm7y3whigj] {
    display: block;
    position: relative;
    overflow: hidden;
}

.art-boxed .art-picture-block[b-zm7y3whigj] {
    aspect-ratio: 3/4;
    background: #f8f9fa;
}

.art-boxed .art-picture-block img[b-zm7y3whigj] {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.art-boxed:hover .art-picture-block img[b-zm7y3whigj] {
    transform: scale(1.04);
}

.art-no-picture[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #d1d5db;
    font-size: 2rem;
    background: #f8f9fa;
}

.art-data-block[b-zm7y3whigj] {
    padding: 0.875rem 1rem;
}

.art-boxed .art-name[b-zm7y3whigj] {
    display: block;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--cmp-category-page-card-title, var(--bhogi-text, #0f172a));
    text-decoration: none;
    transition: color 0.2s;
}

.art-boxed .art-name:hover[b-zm7y3whigj] {
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
}

.art-count[b-zm7y3whigj] {
    font-size: 0.8125rem;
    color: var(--cmp-category-page-muted, #6c757d);
    margin-left: 0.25rem;
}

/* ========================================
   FEATURED PRODUCTS
   ======================================== */
.featured-products-section[b-zm7y3whigj] {
    padding: 2rem 0;
    background: var(--cmp-category-page-surface, var(--bhogi-surface, #fff));
    border-bottom: 1px solid var(--cmp-category-page-strip-border, var(--bhogi-border, #e2e8f0));
}

.section-header[b-zm7y3whigj] {
    margin-bottom: 1.5rem;
}

.section-title[b-zm7y3whigj] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--cmp-category-page-section-title, var(--bhogi-text, #0f172a));
    margin: 0;
}

/* ========================================
   PRODUCTS SECTION
   ======================================== */
.products-section[b-zm7y3whigj] {
    padding: 2rem 0;
}

.category-section-reveal[b-zm7y3whigj] {
    animation: none;
}

/* Toolbar (matching Bhogi.Web Product.List toolbar) */
.artlist-toolbar[b-zm7y3whigj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 0.625rem 1rem;
    background: var(--cmp-category-page-toolbar-bg, var(--bhogi-surface, #fff));
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    border: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
}

.toolbar-left[b-zm7y3whigj] {
    display: flex;
    align-items: center;
}

.artlist-resultcount[b-zm7y3whigj] {
    font-size: 0.8125rem;
    color: var(--cmp-category-page-muted, #6c757d);
    font-weight: 500;
}

.toolbar-right[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.artlist-sorter[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.artlist-sorter label[b-zm7y3whigj] {
    font-size: 0.8125rem;
    color: var(--cmp-category-page-muted, #6c757d);
    font-weight: 500;
    white-space: nowrap;
}

.artlist-sorter select[b-zm7y3whigj] {
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 1px solid var(--cmp-category-page-control-border, #ced4da);
    border-radius: var(--bhogi-radius-xs, 0.375rem);
    font-size: 0.8125rem;
    background: var(--cmp-category-page-control-bg, #fff);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.375rem center;
    background-size: 1rem;
    transition: border-color 0.2s;
}

.artlist-sorter select:focus[b-zm7y3whigj] {
    outline: none;
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    box-shadow: 0 0 0 2px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.15));
}

.artlist-viewmode[b-zm7y3whigj] {
    display: flex;
    border-radius: var(--bhogi-radius-xs, 0.375rem);
    overflow: hidden;
    border: 1px solid var(--cmp-category-page-control-border, #ced4da);
}

.viewmode-btn[b-zm7y3whigj] {
    padding: 0.375rem 0.625rem;
    border: none;
    background: var(--cmp-category-page-control-bg, #fff);
    color: var(--cmp-category-page-muted, #6c757d);
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.875rem;
    line-height: 1;
}

.viewmode-btn:not(:last-child)[b-zm7y3whigj] {
    border-right: 1px solid var(--cmp-category-page-control-border, #ced4da);
}

.viewmode-btn:hover[b-zm7y3whigj] {
    background: var(--cmp-category-page-control-hover-bg, #f8f9fa);
}

.viewmode-btn.active[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: #fff;
}

/* ========================================
   LINES VIEW (matching Bhogi.Web artlist-lines)
   ======================================== */
.artlist-lines[b-zm7y3whigj] {
    display: flex;
    flex-direction: column;
    background: var(--cmp-category-page-list-bg, var(--bhogi-surface, #fff));
    border: 1px solid var(--cmp-category-page-list-border, var(--bhogi-border, #e2e8f0));
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    overflow: hidden;
}

.art-line-item[b-zm7y3whigj] {
    display: grid;
    grid-template-columns: 100px 1fr 220px;
    gap: 1.25rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--cmp-category-page-list-border, var(--bhogi-border, #e2e8f0));
    align-items: start;
    transition: background-color 0.15s;
}

.art-line-item:last-child[b-zm7y3whigj] {
    border-bottom: none;
}

.art-line-item:hover[b-zm7y3whigj] {
    background-color: var(--cmp-category-page-list-hover-bg, var(--bhogi-surface-raised, #f8fafc));
}

/* Line item picture */
.art-line-item .art-picture-block[b-zm7y3whigj] {
    width: 100px;
    height: 100px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid #e9ecef;
    flex-shrink: 0;
}

.art-line-item .art-picture-block a[b-zm7y3whigj],
.art-line-item .art-picture-block[b-zm7y3whigj]  picture {
    display: block;
    width: 100%;
    height: 100%;
}

.art-line-item .art-picture-block[b-zm7y3whigj]  img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.art-badges[b-zm7y3whigj] {
    position: absolute;
    top: 0.375rem;
    left: 0.375rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.art-badge[b-zm7y3whigj] {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    font-size: 0.6875rem;
    font-weight: 700;
    border-radius: 3px;
    line-height: 1.5;
}

.badge-danger[b-zm7y3whigj] {
    background: #dc3545;
    color: #fff;
}

.badge-success[b-zm7y3whigj] {
    background: #198754;
    color: #fff;
}

.badge-warning[b-zm7y3whigj] {
    background: #ffc107;
    color: #1a1a1a;
}

.badge-secondary[b-zm7y3whigj] {
    background: #6c757d;
    color: #fff;
}

/* Line item data block */
.art-line-item .art-data-block[b-zm7y3whigj] {
    padding: 0;
    min-width: 0;
}

.art-brand[b-zm7y3whigj] {
    font-size: 0.75rem;
    margin-bottom: 0.25rem;
}

.art-brand a[b-zm7y3whigj],
.art-brand span[b-zm7y3whigj] {
    color: #6c757d;
    text-decoration: none;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.art-brand a:hover[b-zm7y3whigj] {
    color: var(--bhogi-primary, #2563eb);
}

.art-line-item .art-name[b-zm7y3whigj] {
    display: block;
    margin-bottom: 0.375rem;
}

.art-line-item .art-name a[b-zm7y3whigj] {
    color: var(--cmp-category-page-product-name, var(--bhogi-text, #0f172a));
    text-decoration: none;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.art-line-item .art-name a:hover[b-zm7y3whigj] {
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
}

.art-description[b-zm7y3whigj] {
    font-size: 0.8125rem;
    color: #6c757d;
    line-height: 1.5;
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.art-attrs[b-zm7y3whigj] {
    font-size: 0.75rem;
    color: #6c757d;
}

.art-attr-label[b-zm7y3whigj] {
    font-weight: 500;
    margin-right: 0.25rem;
}

/* Line item actions block */
.art-actions-block[b-zm7y3whigj] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.625rem;
    justify-content: center;
}

/* Delivery time */
.art-delivery[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #495057;
}

/* Price block */
.art-price-block[b-zm7y3whigj] {
    text-align: right;
}

.art-price-call[b-zm7y3whigj] {
    font-size: 0.875rem;
    color: var(--bhogi-primary, #2563eb);
    font-weight: 600;
}

.art-price[b-zm7y3whigj] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.art-finalprice[b-zm7y3whigj] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}

.art-price-from[b-zm7y3whigj] {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 400;
}

.art-price-value[b-zm7y3whigj] {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
}

.art-price-offer .art-price-value[b-zm7y3whigj] {
    color: #dc3545;
}

.art-compareprice[b-zm7y3whigj] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    margin-top: 0.125rem;
}

.art-compareprice-label[b-zm7y3whigj] {
    font-size: 0.6875rem;
    color: #adb5bd;
    font-weight: 400;
}

.art-compareprice-value[b-zm7y3whigj] {
    font-size: 0.8125rem;
    color: #adb5bd;
    text-decoration: line-through;
    font-weight: 400;
}

/* Action buttons in list view */
.art-buttons[b-zm7y3whigj] {
    display: flex;
    gap: 0.375rem;
}

.art-btn[b-zm7y3whigj] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--cmp-category-page-btn-border, var(--bhogi-border, #e2e8f0));
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.875rem;
    text-decoration: none;
    color: var(--cmp-category-page-btn-fg, var(--bhogi-text-secondary, #475569));
    background: var(--cmp-category-page-btn-bg, var(--bhogi-surface, #fff));
}

.art-btn:hover[b-zm7y3whigj] {
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: var(--cmp-category-page-btn-hover-fg, var(--bhogi-primary, #2563eb));
    background: var(--cmp-category-page-btn-hover-bg, var(--bhogi-primary-light, #eff6ff));
}

.art-btn-cart[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: #fff;
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
}

.art-btn-cart:hover[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary-hover, var(--bhogi-primary-hover, #1d4ed8));
    color: #fff;
}

.art-btn-cart.added[b-zm7y3whigj] {
    background: var(--cmp-category-page-success, var(--bhogi-success, #059669));
    border-color: var(--cmp-category-page-success, var(--bhogi-success, #059669));
    color: #fff;
}

.art-btn-cart:disabled[b-zm7y3whigj] {
    opacity: 0.6;
    cursor: not-allowed;
}

.art-btn-detail[b-zm7y3whigj] {
    color: #6c757d;
}

/* ========================================
   PAGINATION (matching Bhogi.Web pager)
   ======================================== */
.artlist-pager[b-zm7y3whigj] {
    margin-top: 2rem;
    display: flex;
    justify-content: center;
}

.pagination[b-zm7y3whigj] {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 0.25rem;
}

.page-item .page-link[b-zm7y3whigj],
.page-item button.page-link[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 0.625rem;
    border: 1px solid var(--cmp-category-page-pager-border, var(--bhogi-border, #dee2e6));
    background: var(--cmp-category-page-pager-bg, var(--bhogi-surface, #fff));
    color: var(--cmp-category-page-pager-fg, var(--bhogi-text, #495057));
    font-size: 0.875rem;
    cursor: pointer;
    transition: transform 180ms var(--bhogi-ease-out, ease-out), box-shadow 180ms var(--bhogi-ease-out, ease-out), background-color 180ms ease, border-color 180ms ease, color 180ms ease;
    border-radius: var(--bhogi-radius-full, 999px);
    text-decoration: none;
    font-weight: 600;
}

.page-item .page-link:hover[b-zm7y3whigj],
.page-item button.page-link:hover[b-zm7y3whigj] {
    background: var(--cmp-category-page-pager-hover-bg, var(--bhogi-surface-raised, #f8fafc));
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08));
}

.page-item.active .page-link[b-zm7y3whigj],
.page-item.active button.page-link[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: var(--storefront-on-primary, var(--cmp-on-primary, #fff));
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08));
}

.page-item.disabled .page-link[b-zm7y3whigj] {
    cursor: default;
    opacity: 0.5;
}

/* ========================================
   EMPTY STATE
   ======================================== */
.empty-state[b-zm7y3whigj] {
    text-align: center;
    padding: 4rem 2rem;
}

.empty-state i[b-zm7y3whigj] {
    font-size: 3.5rem;
    color: var(--cmp-category-page-empty-icon, #d1d5db);
    margin-bottom: 1rem;
}

.empty-state h3[b-zm7y3whigj] {
    font-size: 1.25rem;
    color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
    margin-bottom: 0.5rem;
}

.empty-state p[b-zm7y3whigj] {
    color: var(--cmp-category-page-text-secondary, var(--bhogi-text-secondary, #475569));
    margin-bottom: 1.5rem;
}

.btn-continue[b-zm7y3whigj] {
    display: inline-block;
    padding: 0.625rem 1.5rem;
    background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: var(--storefront-on-primary, var(--cmp-on-primary, #fff));
    text-decoration: none;
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    font-weight: 600;
    font-size: 0.875rem;
    transition: transform 180ms var(--bhogi-ease-out, ease-out), box-shadow 180ms var(--bhogi-ease-out, ease-out), background 180ms ease;
}

.btn-continue:hover[b-zm7y3whigj] {
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08));
}

/* ========================================
   CATEGORY FILTER SIDEBAR (facets)
   ======================================== */
.category-layout[b-zm7y3whigj] {
    display: flex;
    align-items: flex-start;
    gap: 2rem;
}

.category-filters[b-zm7y3whigj] {
    flex: 0 0 240px;
    width: 240px;
    background: var(--cmp-category-page-surface, var(--bhogi-surface, #fff));
    border: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
    border-radius: var(--bhogi-radius-md, 0.875rem);
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08));
    padding: 1.25rem;
    position: sticky;
    top: 1rem;
}

.category-main[b-zm7y3whigj] {
    flex: 1;
    min-width: 0;
}

.filters-header[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.filters-header h2[b-zm7y3whigj] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
}

.filters-clear[b-zm7y3whigj] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    cursor: pointer;
    text-decoration: underline;
}

.filter-group[b-zm7y3whigj] {
    padding: 1rem 0;
    border-top: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
}

.category-filters .filter-group:first-of-type[b-zm7y3whigj] {
    border-top: none;
    padding-top: 0;
}

.filter-group-title[b-zm7y3whigj] {
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--cmp-category-page-muted, #6c757d);
    margin: 0 0 0.75rem;
}

.filter-options[b-zm7y3whigj] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    max-height: 220px;
    overflow-y: auto;
}

.filter-option label[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    color: var(--cmp-category-page-text-secondary, var(--bhogi-text-secondary, #475569));
}

.filter-option input[type="checkbox"][b-zm7y3whigj] {
    accent-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    width: 15px;
    height: 15px;
    flex-shrink: 0;
}

.filter-option-label[b-zm7y3whigj] {
    flex: 1;
}

.filter-option-count[b-zm7y3whigj] {
    font-size: 0.75rem;
    color: var(--cmp-category-page-muted, #6c757d);
}

.filter-price-row[b-zm7y3whigj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-price-input[b-zm7y3whigj] {
    width: 0;
    flex: 1;
    min-width: 0;
    padding: 0.4rem 0.5rem;
    border: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
    border-radius: var(--bhogi-radius-xs, 0.375rem);
    font-size: 0.8125rem;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.filter-price-input:focus-visible[b-zm7y3whigj] {
    outline: none;
    border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb)) 20%, transparent);
}

.filter-price-sep[b-zm7y3whigj] {
    color: var(--cmp-category-page-muted, #6c757d);
    font-size: 0.8125rem;
}

.filter-price-apply[b-zm7y3whigj] {
    margin-top: 0.75rem;
    width: 100%;
    padding: 0.45rem;
    border: 1px solid var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    background: transparent;
    color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    border-radius: var(--bhogi-radius-xs, 0.375rem);
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: transform 180ms var(--bhogi-ease-out, ease-out), box-shadow 180ms var(--bhogi-ease-out, ease-out), background-color 180ms ease, color 180ms ease;
}

.filter-price-apply:hover[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
    color: var(--storefront-on-primary, var(--cmp-on-primary, #fff));
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0, 0, 0, 0.08));
}

@media (max-width: 992px) {
    .category-layout[b-zm7y3whigj] {
        flex-direction: column;
    }

    /* Replaced by the sticky mobile-filter-bar + full-screen mobile-sheet below --
       an inline stacked sidebar pushed the entire product grid out of view behind
       every filter group on narrow screens. */
    .category-filters[b-zm7y3whigj] {
        display: none;
    }

    .filter-options[b-zm7y3whigj] {
        max-height: none;
    }
}

/* Mobile filter/sort: sticky bottom bar + full-screen drill-down sheets (Sort, Filter groups,
   Price), mirroring the pattern common to mobile shopping apps. Hidden by default so nothing
   shows on desktop even if the breakpoint below is ever misordered; the media query flips both
   on for narrow screens only. Shares state (facets/activeFilter) and handlers
   (ToggleFacetOption/ApplyPriceRange/ClearAllFilters/OnSortChanged) with the desktop sidebar --
   this is a presentation-only addition, not a second filtering implementation. */
.mobile-filter-bar[b-zm7y3whigj],
.mobile-sheet-overlay[b-zm7y3whigj],
.mobile-sheet[b-zm7y3whigj] {
    display: none;
}

@media (max-width: 992px) {
    .mobile-filter-bar[b-zm7y3whigj] {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 40;
        background: #fff;
        border-top: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        box-shadow: 0 -2px 10px rgba(15, 23, 42, 0.08);
    }

    .mobile-filter-bar-btn[b-zm7y3whigj] {
        flex: 1;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.85rem 0.5rem;
        background: none;
        border: none;
        font-size: 0.875rem;
        font-weight: 600;
        color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
        cursor: pointer;
    }

    .mobile-filter-bar-btn i[b-zm7y3whigj] {
        font-size: 0.9rem;
        color: var(--cmp-category-page-muted, #6c757d);
    }

    .mobile-filter-bar-divider[b-zm7y3whigj] {
        width: 1px;
        margin: 0.6rem 0;
        background: var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
    }

    /* Backdrop shared by the Sort/Filter sheets -- same dim/blur recipe as MobileNav's
       .mobile-nav-overlay, so opening either reads as the same kind of popup as the
       site's mobile hamburger menu. */
    .mobile-sheet-overlay[b-zm7y3whigj] {
        display: block;
        position: fixed;
        inset: 0;
        background: linear-gradient(135deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.8) 100%);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.35s cubic-bezier(0.16, 1, 0.3, 1);
        -webkit-backdrop-filter: blur(8px);
        backdrop-filter: blur(8px);
        z-index: 1900;
    }

    .mobile-sheet-overlay.active[b-zm7y3whigj] {
        opacity: 1;
        visibility: visible;
    }

    /* Sort/Filter as a bottom sheet anchored under the mobile-filter-bar -- same
       "stay mounted, toggle .active, let transform transition" mechanic as MobileNav's
       drawer (MobileNav.razor.css .mobile-nav/.mobile-nav.active), just sliding up
       instead of in from the side, which reads more naturally for a short options
       list anchored to the toolbar button that opened it. */
    .mobile-sheet[b-zm7y3whigj] {
        display: flex;
        flex-direction: column;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        max-height: 82vh;
        border-radius: 1.1rem 1.1rem 0 0;
        z-index: 1901;
        background: #fff;
        box-shadow: 0 -8px 30px rgba(15, 23, 42, 0.22);
        transform: translateY(100%);
        transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    }

    .mobile-sheet.active[b-zm7y3whigj] {
        transform: translateY(0);
    }

    .mobile-sheet-grabber[b-zm7y3whigj] {
        flex-shrink: 0;
        width: 2.5rem;
        height: 0.25rem;
        margin: 0.6rem auto 0.1rem;
        border-radius: 999px;
        background: var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
    }

    .mobile-sheet-header[b-zm7y3whigj] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
        padding: 0.9rem 1rem;
        border-bottom: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        flex-shrink: 0;
    }

    .mobile-sheet-header h2[b-zm7y3whigj] {
        flex: 1;
        margin: 0;
        font-size: 1.05rem;
        font-weight: 700;
        text-align: center;
        color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
    }

    .mobile-sheet-icon-btn[b-zm7y3whigj] {
        background: none;
        border: none;
        padding: 0.25rem 0.5rem;
        font-size: 1.1rem;
        color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
        cursor: pointer;
    }

    .mobile-sheet-header-spacer[b-zm7y3whigj] {
        width: 2rem;
    }

    .mobile-sheet-clear[b-zm7y3whigj] {
        background: none;
        border: none;
        padding: 0;
        font-size: 0.8125rem;
        font-weight: 600;
        color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
        white-space: nowrap;
        cursor: pointer;
    }

    .mobile-sheet-body[b-zm7y3whigj] {
        flex: 1;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .mobile-sheet-list-row[b-zm7y3whigj] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 1rem;
        background: none;
        border: none;
        border-bottom: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        font-size: 0.9375rem;
        color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
        text-align: left;
        cursor: pointer;
    }

    .mobile-sheet-list-row-right[b-zm7y3whigj] {
        display: flex;
        align-items: center;
        gap: 0.6rem;
        color: var(--cmp-category-page-muted, #6c757d);
    }

    .mobile-sheet-badge[b-zm7y3whigj] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 1.3rem;
        height: 1.3rem;
        padding: 0 0.35rem;
        border-radius: 999px;
        background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
        color: #fff;
        font-size: 0.7rem;
        font-weight: 700;
    }

    .mobile-sheet-price[b-zm7y3whigj] {
        padding: 1.25rem 1rem;
    }

    .mobile-sheet-price .filter-price-row[b-zm7y3whigj] {
        margin-bottom: 1rem;
    }

    .mobile-sheet-price .filter-price-input[b-zm7y3whigj] {
        padding: 0.6rem 0.65rem;
        font-size: 0.9375rem;
    }

    .mobile-sheet-apply[b-zm7y3whigj] {
        width: 100%;
        padding: 0.85rem;
        border: none;
        border-radius: var(--bhogi-radius-sm, 0.375rem);
        background: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
        color: #fff;
        font-weight: 600;
        cursor: pointer;
    }

    .mobile-sheet-checkbox-row[b-zm7y3whigj] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1rem;
        border-bottom: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        font-size: 0.9375rem;
        color: var(--cmp-category-page-text-secondary, var(--bhogi-text-secondary, #475569));
    }

    .mobile-sheet-checkbox-row input[type="checkbox"][b-zm7y3whigj] {
        accent-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
        width: 1.15rem;
        height: 1.15rem;
        flex-shrink: 0;
        margin-left: 0.75rem;
    }

    .mobile-sheet-count[b-zm7y3whigj] {
        color: var(--cmp-category-page-muted, #6c757d);
        font-size: 0.85rem;
    }

    .mobile-sheet-radio-row[b-zm7y3whigj] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 1rem;
        background: none;
        border: none;
        border-bottom: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        font-size: 0.9375rem;
        color: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
        text-align: left;
        cursor: pointer;
    }

    .mobile-sheet-radio-label.active[b-zm7y3whigj] {
        font-weight: 700;
    }

    .mobile-sheet-radio[b-zm7y3whigj] {
        width: 1.1rem;
        height: 1.1rem;
        border-radius: 50%;
        border: 1.5px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        flex-shrink: 0;
    }

    .mobile-sheet-radio.checked[b-zm7y3whigj] {
        border-color: var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb));
        background: radial-gradient(circle, var(--cmp-category-page-primary, var(--bhogi-primary, #2563eb)) 0 40%, transparent 44%);
    }

    .mobile-sheet-footer[b-zm7y3whigj] {
        flex-shrink: 0;
        padding: 0.85rem 1rem;
        border-top: 1px solid var(--cmp-category-page-toolbar-border, var(--bhogi-border, #e2e8f0));
        background: #fff;
    }

    .mobile-sheet-done[b-zm7y3whigj] {
        width: 100%;
        padding: 0.85rem;
        border: none;
        border-radius: var(--bhogi-radius-sm, 0.375rem);
        background: var(--cmp-category-page-title, var(--bhogi-text, #0f172a));
        color: #fff;
        font-weight: 600;
        cursor: pointer;
    }
}

.btn-continue:hover[b-zm7y3whigj] {
    background: var(--cmp-category-page-primary-hover, var(--bhogi-primary-hover, #1d4ed8));
}

/* ========================================
   RESPONSIVE
   ======================================== */
@media (max-width: 1200px) {
    .artlist-4-cols[b-zm7y3whigj] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .art-line-item[b-zm7y3whigj] {
        grid-template-columns: 80px 1fr 180px;
        gap: 1rem;
    }

    .art-line-item .art-picture-block[b-zm7y3whigj] {
        width: 80px;
        height: 80px;
    }
}

@media (max-width: 768px) {
    .page-title[b-zm7y3whigj] {
        font-size: 1.25rem;
    }

    .artlist-4-cols[b-zm7y3whigj] {
        grid-template-columns: repeat(2, 1fr);
    }

    .category-has-products .featured-products-section[b-zm7y3whigj],
    .category-has-products .products-section[b-zm7y3whigj] {
        padding: 1.5rem 0;
    }

    .section-header[b-zm7y3whigj] {
        margin-bottom: 0.875rem;
    }

    .subcategories-with-products[b-zm7y3whigj] {
        padding: 1.25rem 0;
    }

    .subcategories-with-products .artlist-4-cols[b-zm7y3whigj] {
        gap: 0.75rem;
    }

    .subcategories-with-products .art-boxed .art-picture-block[b-zm7y3whigj] {
        aspect-ratio: 1;
    }

    .subcategories-with-products .art-data-block[b-zm7y3whigj] {
        padding: 0.75rem 0.875rem;
    }

    .artlist-toolbar[b-zm7y3whigj] {
        padding: 0.5rem 0.875rem;
        margin-bottom: 1rem;
    }

    /* Sort now lives in the sticky mobile Sort/Filter bar below the grid --
       an inline dropdown here just duplicates it and was the main source of
       the toolbar's stacked, oversized-empty-space look on phones. */
    .artlist-sorter[b-zm7y3whigj] {
        display: none;
    }

    .art-line-item[b-zm7y3whigj] {
        grid-template-columns: 96px 1fr;
        gap: 0.875rem;
    }

    .art-line-item .art-picture-block[b-zm7y3whigj] {
        width: 96px;
        height: 96px;
    }

    .art-actions-block[b-zm7y3whigj] {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding-top: 0.75rem;
        border-top: 1px solid #f0f0f0;
    }

    .art-price-block[b-zm7y3whigj] {
        text-align: left;
    }

    .art-price[b-zm7y3whigj] {
        align-items: flex-start;
    }
}

/* Edge-to-edge product grid on mobile: cards flush to the screen edges, a hairline gap
   between them, no border/radius/shadow -- the product image becomes the dominant element,
   the way most mobile shopping-app listings (Max Fashion included) lay theirs out, instead of
   leaving a wide side margin around a boxed, shadowed card. Scoped to .products-artlist, a
   class added only to the main product grid's own div (not the subcategories grid above it,
   which reuses the same shared .artlist-4-cols/.artlist-grid classes) so nothing else on this
   page changes. Reaches into the shared <ProductCard> component with ::deep, since Blazor's
   CSS isolation otherwise stops a page's stylesheet from touching a child component's own
   markup -- this does NOT edit ProductCard.razor.css itself, so every other page that renders
   <ProductCard> (Bestsellers, Deals, New Arrivals, Trending, related/associated products, the
   quick-add modal) is completely unaffected. */
@media (max-width: 768px) {
    .products-artlist[b-zm7y3whigj] {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
        min-width: 0;
    }

    /* Two classes so this reliably wins over the single-class .artlist-4-cols gap rule below
       (and any future one), regardless of source order. */
    .products-artlist.artlist-4-cols[b-zm7y3whigj] {
        --artlist-gap: 2px;
    }

    .products-artlist[b-zm7y3whigj]  .product-card {
        padding: 0 0 0.625rem;
        border: none;
        border-radius: 0;
        box-shadow: none;
    }

    .products-artlist[b-zm7y3whigj]  .product-card:hover {
        box-shadow: none;
        transform: none;
        border-color: transparent;
    }

    .products-artlist[b-zm7y3whigj]  .product-image-box {
        border-radius: 0;
        margin-bottom: 0.5rem;
    }
}

@media (max-width: 480px) {
    .artlist-4-cols[b-zm7y3whigj] {
        grid-template-columns: repeat(2, 1fr);
        --artlist-gap: 0.625rem;
    }

    .category-has-products .featured-products-section[b-zm7y3whigj],
    .category-has-products .products-section[b-zm7y3whigj] {
        padding: 1.25rem 0;
    }

    .category-has-products .artlist-toolbar[b-zm7y3whigj] {
        margin-bottom: 0.75rem;
        padding: 0.5rem 0.75rem;
    }

    .category-has-products .toolbar-right[b-zm7y3whigj] {
        justify-content: flex-end;
    }

    .subcategories-with-products .artlist-4-cols[b-zm7y3whigj] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.625rem;
    }

    .subcategories-with-products .art-boxed .art-picture-block[b-zm7y3whigj] {
        aspect-ratio: 1;
    }

    .subcategories-with-products .art-data-block[b-zm7y3whigj] {
        padding: 0.625rem 0.75rem;
    }

    .subcategories-with-products .art-boxed .art-name[b-zm7y3whigj] {
        font-size: 0.875rem;
    }

    .art-line-item[b-zm7y3whigj] {
        grid-template-columns: 96px 1fr;
        gap: 0.75rem;
        padding: 0.75rem 1rem;
    }

    .art-line-item .art-picture-block[b-zm7y3whigj] {
        width: 96px;
        height: 96px;
    }

    .page-title-row[b-zm7y3whigj] {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* Mobile list view: use the available screen width for product content. The page keeps
   only its 2px global gutter; compact internal padding protects readability without
   making the list look inset or clipping its price/action row on narrow devices. */
@media (max-width: 480px) {
    .category-main[b-zm7y3whigj],
    .artlist-lines[b-zm7y3whigj] {
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }

    .artlist-lines[b-zm7y3whigj] {
        border-left: 0;
        border-right: 0;
        border-radius: 0;
    }

    .art-line-item[b-zm7y3whigj] {
        grid-template-columns: 88px minmax(0, 1fr);
        column-gap: 0.5rem;
        row-gap: 0.5rem;
        padding: 0.625rem 0.375rem;
        min-width: 0;
    }

    .art-line-item .art-picture-block[b-zm7y3whigj] {
        width: 88px;
        height: 88px;
    }

    .art-line-item .art-data-block[b-zm7y3whigj],
    .art-line-item .art-name[b-zm7y3whigj],
    .art-line-item .art-name a[b-zm7y3whigj],
    .art-description[b-zm7y3whigj],
    .art-attrs[b-zm7y3whigj] {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    .art-line-item .art-name a[b-zm7y3whigj] {
        font-size: 0.875rem;
        line-height: 1.3;
    }

    .art-description[b-zm7y3whigj] {
        -webkit-line-clamp: 3;
        margin-bottom: 0.375rem;
        font-size: 0.75rem;
        line-height: 1.4;
    }

    .art-actions-block[b-zm7y3whigj] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: 0.375rem 0.5rem;
        width: 100%;
        min-width: 0;
        padding-top: 0.5rem;
    }

    .art-delivery[b-zm7y3whigj] {
        min-width: 0;
        font-size: 0.75rem;
        line-height: 1.25;
        overflow-wrap: anywhere;
    }

    .art-price-block[b-zm7y3whigj] {
        min-width: 0;
    }

    .art-price-value[b-zm7y3whigj] {
        font-size: 0.9375rem;
        white-space: nowrap;
    }

    .art-buttons[b-zm7y3whigj] {
        justify-self: end;
    }
}

@media (max-width: 359px) {
    .art-actions-block[b-zm7y3whigj] {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "delivery price"
            "buttons buttons";
    }

    .art-delivery[b-zm7y3whigj] {
        grid-area: delivery;
    }

    .art-price-block[b-zm7y3whigj] {
        grid-area: price;
    }

    .art-buttons[b-zm7y3whigj] {
        grid-area: buttons;
    }
}

@media (prefers-reduced-motion: reduce) {
    .category-section-reveal[b-zm7y3whigj] {
        animation: none;
    }
}
/* /Components/Pages/ChangePassword.razor.rz.scp.css */
/* ============================================
   CHANGE PASSWORD PAGE
   Matches Bhogi.Web Identity/ChangePassword.cshtml style
   ============================================ */

/* Breadcrumb */
.breadcrumb-nav[b-vhtwu217vo] {
    background: linear-gradient(180deg, var(--bhogi-surface), var(--bhogi-surface-raised));
    border-bottom: 1px solid var(--bhogi-border);
    padding: 0.75rem 0;
    margin-bottom: 0;
}

.breadcrumb[b-vhtwu217vo] {
    margin-bottom: 0;
    font-size: 0.8125rem;
    background: none;
    padding: 0;
}

.breadcrumb-item a[b-vhtwu217vo] {
    color: var(--bhogi-text-muted);
    text-decoration: none;
}

.breadcrumb-item a:hover[b-vhtwu217vo] {
    color: var(--bhogi-primary);
}

.breadcrumb-item.active[b-vhtwu217vo] {
    color: var(--bhogi-text-secondary);
}

/* Fieldset legend */
.fieldset-legend[b-vhtwu217vo] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bhogi-text);
    border-bottom: 2px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--bhogi-border));
    padding-bottom: 0.5rem;
    margin-bottom: 1.25rem;
}

.fieldset-legend span[b-vhtwu217vo] {
    background: none;
}

/* Form labels */
.col-form-label[b-vhtwu217vo] {
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    font-size: 0.875rem;
}

.col-form-label.required[b-vhtwu217vo]::after {
    content: " *";
    color: var(--bhogi-maroon);
}

.security-intro[b-vhtwu217vo] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-lg);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 8%, var(--bhogi-surface)), var(--bhogi-surface));
}

.security-intro__icon[b-vhtwu217vo] {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 50%;
    color: var(--bhogi-primary);
    background: color-mix(in srgb, var(--bhogi-primary) 12%, transparent);
}

.security-intro h2[b-vhtwu217vo] { margin: 0 0 .2rem; color: var(--bhogi-text); font-size: 1rem; font-weight: 750; }
.security-intro p[b-vhtwu217vo] { margin: 0; color: var(--bhogi-text-muted); font-size: .85rem; line-height: 1.5; }

.password-field[b-vhtwu217vo] { position: relative; }
.password-field .form-control[b-vhtwu217vo] { padding-right: 3rem; }
.password-toggle[b-vhtwu217vo] {
    position: absolute;
    top: 50%;
    right: .35rem;
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: .45rem;
    color: var(--bhogi-text-muted);
    background: transparent;
}
.password-toggle:hover[b-vhtwu217vo] { color: var(--bhogi-primary); background: color-mix(in srgb, var(--bhogi-primary) 8%, transparent); }
.password-toggle:focus-visible[b-vhtwu217vo] { outline: 2px solid var(--bhogi-primary); outline-offset: 1px; }
.security-submit[b-vhtwu217vo] { min-width: 12rem; min-height: 2.75rem; }

/* Responsive */
@media (max-width: 767.98px) {
    .col-form-label[b-vhtwu217vo] {
        padding-bottom: 0.25rem;
    }

    .security-intro[b-vhtwu217vo] { align-items: flex-start; }
    .security-submit[b-vhtwu217vo] { width: 100%; }
}
/* /Components/Pages/Checkout.razor.rz.scp.css */
/* ============================================
   CHECKOUT PAGE — Enterprise-Grade Design
   ============================================ */

.checkout-page[b-o6dgd8giip] {
    padding-bottom: 5rem;
    background: linear-gradient(180deg, var(--bhogi-surface-raised, #fcfcfc) 0%, var(--bhogi-surface, #ffffff) 42%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface)) 100%);
    min-height: 100vh;
}

/* Breadcrumb Navigation */
[b-o6dgd8giip] .breadcrumb-nav {
    padding: 1rem 0;
    margin-bottom: 0.5rem;
}

[b-o6dgd8giip] .breadcrumb {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.8125rem;
}

[b-o6dgd8giip] .breadcrumb-item {
    display: flex;
    align-items: center;
    color: var(--bhogi-text-muted);
}

[b-o6dgd8giip] .breadcrumb-item + .breadcrumb-item::before {
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-right: 0.5rem;
    font-size: 0.625rem;
    color: color-mix(in srgb, var(--bhogi-maroon) 20%, var(--bhogi-border-strong));
}

[b-o6dgd8giip] .breadcrumb-item a {
    color: var(--bhogi-text-muted);
    text-decoration: none;
    transition: color 0.2s ease;
}

[b-o6dgd8giip] .breadcrumb-item a:hover {
    color: var(--bhogi-primary, #2563eb);
}

[b-o6dgd8giip] .breadcrumb-item.active {
    color: var(--bhogi-text);
    font-weight: 600;
}

.page-title[b-o6dgd8giip] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 2.25rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 2.5rem;
    letter-spacing: -0.02em;
    position: relative;
}

.page-title[b-o6dgd8giip]::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -0.5rem;
    width: 3rem;
    height: 3px;
    background: linear-gradient(90deg, var(--bhogi-primary) 0%, var(--bhogi-gold) 100%);
    border-radius: 2px;
}

/* ============================================
   Checkout Progress Steps
   (matches Bhogi.Web CheckoutProgressViewComponent)
   Cart → Address → Shipping → Payment → Confirm → Complete
   ============================================ */
.checkout-steps[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 3rem;
    padding: 1.5rem 2rem;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border-radius: var(--bhogi-radius-xl);
    box-shadow: var(--bhogi-shadow-md);
    border: 1px solid var(--bhogi-border-light);
}

.step[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    color: var(--bhogi-text-muted);
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.step.active[b-o6dgd8giip] {
    color: var(--bhogi-primary, #2563eb);
}

.step.completed[b-o6dgd8giip] {
    color: var(--bhogi-success, #059669);
}

.step-link[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    color: inherit;
}

.step-link:hover[b-o6dgd8giip] {
    text-decoration: none;
    color: inherit;
    opacity: 0.8;
}

.step-number[b-o6dgd8giip] {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-premium);
    border-radius: 50%;
    font-weight: 700;
    font-size: 0.875rem;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    border: 2px solid transparent;
}

.step.active .step-number[b-o6dgd8giip] {
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    box-shadow: 0 0 0 4px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.15));
    animation: stepPulse-b-o6dgd8giip 2s ease-in-out infinite;
}

.step.completed .step-number[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-success) 0%, var(--bhogi-primary) 100%);
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(5, 150, 105, 0.2);
}

.step-title[b-o6dgd8giip] {
    font-weight: 600;
    font-size: 0.8125rem;
    letter-spacing: 0.01em;
}

.step-line[b-o6dgd8giip] {
    width: 32px;
    height: 2.5px;
    background: var(--bhogi-border-light);
    transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
    border-radius: 2px;
    flex-shrink: 0;
}

.step-line.completed[b-o6dgd8giip] {
    background: var(--bhogi-success, #059669);
}

@keyframes stepPulse-b-o6dgd8giip {
    0%, 100% { box-shadow: 0 0 0 4px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.15)); }
    50% { box-shadow: 0 0 0 8px rgba(37, 99, 235, 0.06); }
}

/* ============================================
   Checkout Layout
   ============================================ */
.checkout-layout[b-o6dgd8giip] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 2.5rem;
    align-items: start;
}

/* Checkout Form */
.checkout-form[b-o6dgd8giip] {
    background: linear-gradient(180deg, var(--bhogi-surface, #fff) 0%, var(--bhogi-surface-premium, #f5f5f5) 100%);
    border-radius: var(--bhogi-radius-xl, 1rem);
    box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0,0,0,0.04));
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    overflow: hidden;
}

.checkout-section[b-o6dgd8giip] {
    padding: 2rem;
    animation: sectionFadeIn-b-o6dgd8giip 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.checkout-section h2[b-o6dgd8giip] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid color-mix(in srgb, var(--bhogi-gold) 26%, var(--bhogi-primary-light));
    position: relative;
}

@keyframes sectionFadeIn-b-o6dgd8giip {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============================================
   Warnings/Errors (matches Bhogi.Web #confirm-warnings)
   ============================================ */
.checkout-warnings[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-maroon-soft) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, white) 100%);
    border: 1px solid color-mix(in srgb, var(--bhogi-maroon) 20%, transparent);
    border-left: 4px solid var(--bhogi-maroon);
    border-radius: 0.625rem;
    padding: 1rem 1.25rem;
    margin: 0 2rem 1rem;
    box-shadow: 0 6px 18px rgba(139, 0, 0, 0.08);
}

.checkout-warnings ul[b-o6dgd8giip] {
    margin: 0;
    padding-left: 1.25rem;
}

.checkout-warnings li[b-o6dgd8giip] {
    color: var(--bhogi-maroon-deep);
    font-size: 0.875rem;
    line-height: 1.5;
}

/* ============================================
   Form Styles
   ============================================ */
.form-row[b-o6dgd8giip] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-group[b-o6dgd8giip] {
    margin-bottom: 1.125rem;
}

.form-group label[b-o6dgd8giip] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    margin-bottom: 0.5rem;
    letter-spacing: 0.01em;
}

.form-control[b-o6dgd8giip] {
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    border: 1.5px solid var(--bhogi-border);
    border-radius: 0.625rem;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    background: var(--bhogi-surface);
    color: var(--bhogi-text);
}

.form-control:hover[b-o6dgd8giip] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 35%, var(--bhogi-border-strong));
}

.form-control:focus[b-o6dgd8giip] {
    outline: none;
    border-color: var(--bhogi-primary);
    box-shadow: var(--bhogi-focus-ring), 0 2px 8px rgba(15, 122, 102, 0.08);
}

.form-control.invalid[b-o6dgd8giip],
.form-control:invalid:not(:placeholder-shown)[b-o6dgd8giip] {
    border-color: var(--bhogi-danger);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--bhogi-danger) 12%, transparent);
}

.validation-message[b-o6dgd8giip] {
    color: var(--bhogi-danger);
    font-size: 0.75rem;
    margin-top: 0.375rem;
    font-weight: 500;
}

/* ShippingAddressDiffers checkbox (matches Bhogi.Web ShippingAddressDiffers.cshtml) */
.shipping-differs-check[b-o6dgd8giip] {
    margin-top: 0.5rem;
    margin-bottom: 1.25rem;
}

.checkbox-label[b-o6dgd8giip] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    cursor: pointer;
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    line-height: 1.5;
    font-size: 0.9375rem;
}

.checkbox-label input[type="checkbox"][b-o6dgd8giip] {
    width: 18px;
    height: 18px;
    accent-color: var(--bhogi-primary);
    margin-top: 0.1875rem;
    flex-shrink: 0;
}

/* Form Actions */
.form-actions[b-o6dgd8giip] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--bhogi-border-light);
}

/* Shipping Address Summary */
.shipping-address-summary[b-o6dgd8giip] {
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, var(--bhogi-surface)) 100%);
    border-radius: 0.75rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--bhogi-border-light);
}

.shipping-address-summary h4[b-o6dgd8giip] {
    font-size: 0.875rem;
    color: var(--bhogi-text-muted);
    margin-bottom: 0.5rem;
    font-weight: 600;
}

.shipping-address-summary p[b-o6dgd8giip] {
    margin: 0;
    line-height: 1.6;
    color: var(--bhogi-text);
}

/* ============================================
   Shipping Methods (matches Bhogi.Web ShippingMethodList.cshtml)
   ============================================ */
.shipping-methods[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.shipping-option[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.125rem 1.25rem;
    background: var(--bhogi-surface);
    border: 2px solid var(--bhogi-border-light);
    border-radius: 0.75rem;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.shipping-option:hover[b-o6dgd8giip] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 35%, var(--bhogi-border));
    background: color-mix(in srgb, var(--bhogi-primary) 2%, transparent);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.shipping-option.selected[b-o6dgd8giip] {
    border-color: var(--bhogi-primary);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 5%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--bhogi-primary) 10%, transparent), 0 4px 16px rgba(15, 122, 102, 0.08);
}

.shipping-option input[b-o6dgd8giip] {
    width: 18px;
    height: 18px;
    accent-color: var(--bhogi-primary);
}

.shipping-details[b-o6dgd8giip] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.shipping-name[b-o6dgd8giip] {
    font-weight: 600;
    color: var(--bhogi-text);
}

.shipping-time[b-o6dgd8giip] {
    font-size: 0.875rem;
    color: var(--bhogi-text-muted);
}

.shipping-price[b-o6dgd8giip] {
    font-weight: 700;
    color: var(--bhogi-primary-hover);
}

/* ============================================
   Checkout Attributes (e.g. Gift Wrap) -- configured in Bhogi.Admin, rendered below the
   shipping method list. Mirrors Bhogi.Web's ShoppingCart/Partials/_CheckoutAttributes styling
   family loosely, using the same design tokens as the rest of this page.
   ============================================ */
.checkout-attributes[b-o6dgd8giip] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--bhogi-border-light);
    display: flex;
    flex-direction: column;
    gap: 1.125rem;
}

.checkout-attributes h3[b-o6dgd8giip] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--bhogi-text);
}

.checkout-attr[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.checkout-attr-label[b-o6dgd8giip] {
    font-weight: 600;
    color: var(--bhogi-text);
}

.required-marker[b-o6dgd8giip] {
    color: var(--bhogi-danger, #dc3545);
    margin-left: 0.25rem;
}

.checkout-attr-prompt[b-o6dgd8giip] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--bhogi-text-muted);
}

.checkout-attr-option[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: var(--bhogi-surface);
    border: 1px solid var(--bhogi-border-light);
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.checkout-attr-option:hover[b-o6dgd8giip] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 35%, var(--bhogi-border));
}

.checkout-attr-option input[b-o6dgd8giip] {
    width: 16px;
    height: 16px;
    accent-color: var(--bhogi-primary);
}

.checkout-attr-price[b-o6dgd8giip] {
    margin-left: auto;
    font-size: 0.875rem;
    color: var(--bhogi-primary-hover);
    font-weight: 600;
}

.checkout-attr-select[b-o6dgd8giip],
.checkout-attr-input[b-o6dgd8giip],
.checkout-attr-textarea[b-o6dgd8giip] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    background: var(--bhogi-surface);
    border: 1px solid var(--bhogi-border-light);
    border-radius: 0.5rem;
    color: var(--bhogi-text);
    font-family: inherit;
    font-size: 0.9375rem;
}

.checkout-attr-select:focus[b-o6dgd8giip],
.checkout-attr-input:focus[b-o6dgd8giip],
.checkout-attr-textarea:focus[b-o6dgd8giip] {
    outline: none;
    border-color: var(--bhogi-primary);
}

.checkout-attr-textarea[b-o6dgd8giip] {
    resize: vertical;
}

/* ============================================
   Payment Methods — List layout
   (matches Bhogi.Web PaymentMethodList.cshtml)
   ============================================ */
.payment-methods-list[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 1.5rem;
    border: 1px solid var(--bhogi-border-light);
    border-radius: 0.75rem;
    overflow: hidden;
    box-shadow: var(--bhogi-shadow-sm);
}

.payment-method-item[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.125rem 1.25rem;
    background: var(--bhogi-surface);
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    border-bottom: 1px solid var(--bhogi-border-light);
}

.payment-method-item:last-child[b-o6dgd8giip] {
    border-bottom: none;
}

.payment-method-item:hover[b-o6dgd8giip] {
    background: color-mix(in srgb, var(--bhogi-primary) 3%, transparent);
}

.payment-method-item.active[b-o6dgd8giip] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 5%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
    border-left: 3px solid var(--bhogi-primary);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}

.payment-opt-data[b-o6dgd8giip] {
    display: flex;
    align-items: center;
}

.payment-opt-control[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.payment-opt-control input[type="radio"][b-o6dgd8giip] {
    width: 18px;
    height: 18px;
    accent-color: var(--bhogi-primary);
    flex-shrink: 0;
}

.payment-brand-icon[b-o6dgd8giip] {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-premium);
    border-radius: 0.5rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.payment-brand-icon i[b-o6dgd8giip] {
    font-size: 1.125rem;
    color: var(--bhogi-text-muted);
    transition: color 0.3s ease;
}

.payment-method-item.active .payment-brand-icon[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 14%, transparent) 100%);
    box-shadow: var(--bhogi-shadow-sm);
}

.payment-method-item.active .payment-brand-icon i[b-o6dgd8giip] {
    color: var(--bhogi-primary);
}

.payment-opt-name[b-o6dgd8giip] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--bhogi-text);
    cursor: pointer;
    margin: 0;
}

.payment-method-description[b-o6dgd8giip] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-muted);
    line-height: 1.5;
    padding-left: 5.75rem;
}

/* Old grid classes kept for backward compat */
.payment-methods[b-o6dgd8giip] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.payment-option[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.5rem;
    background: var(--bhogi-surface);
    border: 2px solid var(--bhogi-border-light);
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.25s ease;
}

.payment-option:hover[b-o6dgd8giip] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 35%, var(--bhogi-border));
}

.payment-option.selected[b-o6dgd8giip] {
    border-color: var(--bhogi-primary);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 5%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}

.payment-option input[b-o6dgd8giip] {
    position: absolute;
    opacity: 0;
}

.payment-option i[b-o6dgd8giip] {
    font-size: 2rem;
    color: var(--bhogi-text-muted);
    transition: color 0.25s ease;
}

.payment-option.selected i[b-o6dgd8giip] {
    color: var(--bhogi-primary);
}

.payment-option span[b-o6dgd8giip] {
    font-size: 0.875rem;
    font-weight: 600;
    text-align: center;
    color: var(--bhogi-text-secondary);
}

/* Payment Info Panel (matches Bhogi.Web PaymentInfoAjax widget) */
.payment-info-panel[b-o6dgd8giip] {
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, var(--bhogi-surface)) 100%);
    border-radius: 0.75rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--bhogi-border-light);
    animation: sectionFadeIn-b-o6dgd8giip 0.3s ease;
}

/* ============================================
   Confirm Step — Order Review Data
   (matches Bhogi.Web OrderReviewData.cshtml card layout)
   ============================================ */
.confirm-hint[b-o6dgd8giip] {
    color: var(--bhogi-text-secondary);
    font-size: 0.9375rem;
    margin-bottom: 1.5rem;
    line-height: 1.6;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-primary) 8%, var(--bhogi-surface)) 100%);
    border-radius: 0.75rem;
    border-left: 3px solid var(--bhogi-primary);
}

/* Terms of Service (matches Bhogi.Web ConfirmDetails.cshtml) */
.terms-of-service-box[b-o6dgd8giip] {
    padding: 1rem 1.25rem;
    background: color-mix(in srgb, var(--bhogi-gold) 18%, transparent);
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 35%, transparent);
    border-radius: 0.75rem;
    margin-bottom: 1.5rem;
}

.terms-of-service-box .checkbox-label[b-o6dgd8giip] {
    font-size: 0.875rem;
    color: var(--bhogi-gold-dark);
}

.terms-of-service-box .checkbox-label a[b-o6dgd8giip] {
    color: var(--bhogi-primary);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, var(--bhogi-primary) 30%, transparent);
    text-underline-offset: 2px;
    transition: text-decoration-color 0.2s ease;
}

.terms-of-service-box .checkbox-label a:hover[b-o6dgd8giip] {
    text-decoration-color: var(--bhogi-primary);
}

.order-review-data-box[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, var(--bhogi-surface)) 100%);
    border: 1px solid var(--bhogi-border-light);
    border-radius: 0.75rem;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}

.review-row[b-o6dgd8giip] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
}

.review-row + .review-row[b-o6dgd8giip] {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--bhogi-border-light);
}

.review-col[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
}

.review-heading-row[b-o6dgd8giip] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.review-heading[b-o6dgd8giip] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin: 0;
}

.review-heading-row .btn-sm[b-o6dgd8giip] {
    font-size: 0.75rem;
    padding: 0.25rem 0.75rem;
}

.review-col address[b-o6dgd8giip] {
    font-style: normal;
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--bhogi-text-secondary);
}

.review-col address .name[b-o6dgd8giip] {
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.review-col address .mt-2[b-o6dgd8giip] {
    margin-top: 0.5rem;
}

/* Order Notes */
.order-notes[b-o6dgd8giip] {
    margin-bottom: 1.5rem;
}

.order-notes label[b-o6dgd8giip] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    margin-bottom: 0.5rem;
}

.order-notes textarea[b-o6dgd8giip] {
    resize: vertical;
    min-height: 80px;
}

/* ============================================
   Confirm Products Section
   (matches Bhogi.Web ConfirmDetails.cshtml cart items)
   ============================================ */
.confirm-products-section[b-o6dgd8giip] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 2px solid var(--bhogi-border-light);
}

.confirm-products-header[b-o6dgd8giip] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 1rem;
}

.confirm-products-header h5[b-o6dgd8giip] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin: 0;
}

.confirm-cart-items[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.confirm-cart-item[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.875rem;
    background: var(--bhogi-surface);
    border-radius: 0.625rem;
    border: 1px solid var(--bhogi-border-light);
    transition: all 0.2s ease;
}

.confirm-cart-item:hover[b-o6dgd8giip] {
    background: color-mix(in srgb, var(--bhogi-primary) 2%, transparent);
    box-shadow: var(--bhogi-shadow-sm);
}

.confirm-cart-item .item-image[b-o6dgd8giip] {
    width: 50px;
    height: 50px;
    border-radius: 0.375rem;
    overflow: hidden;
    background: var(--bhogi-surface-premium);
    flex-shrink: 0;
}

.confirm-cart-item .item-image img[b-o6dgd8giip] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.confirm-cart-item .item-info[b-o6dgd8giip] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.confirm-cart-item .item-name[b-o6dgd8giip] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text);
}

.confirm-cart-item .item-qty-price[b-o6dgd8giip] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-muted);
}

.confirm-cart-item .item-total[b-o6dgd8giip] {
    font-weight: 700;
    color: var(--bhogi-primary-hover);
    white-space: nowrap;
}

/* ============================================
   Order Summary Sidebar
   (matches Bhogi.Web CheckoutOrderTotals.cshtml)
   ============================================ */
.order-summary[b-o6dgd8giip] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border-radius: 1rem;
    box-shadow: var(--bhogi-shadow-md);
    border: 1px solid var(--bhogi-border-light);
    padding: 1.75rem;
    position: sticky;
    top: 100px;
}

.order-summary h2[b-o6dgd8giip] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--bhogi-border-light);
}

.order-summary-heading[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.order-summary-toggle[b-o6dgd8giip] {
    display: none;
    align-items: center;
    gap: 0.5rem;
    border: 0;
    background: transparent;
    color: var(--bhogi-primary);
    font: inherit;
    font-size: 0.875rem;
    font-weight: 700;
    cursor: pointer;
}

.order-summary-toggle:focus-visible[b-o6dgd8giip] {
    outline: 2px solid var(--bhogi-primary);
    outline-offset: 4px;
    border-radius: 0.25rem;
}

/* Order Items */
.order-items[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-height: 300px;
    overflow-y: auto;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--bhogi-border-light);
    scrollbar-width: thin;
    scrollbar-color: var(--bhogi-border-strong) transparent;
}

.order-items[b-o6dgd8giip]::-webkit-scrollbar {
    width: 4px;
}

.order-items[b-o6dgd8giip]::-webkit-scrollbar-thumb {
    background: var(--bhogi-border-strong);
    border-radius: 4px;
}

.order-item[b-o6dgd8giip] {
    display: flex;
    gap: 0.75rem;
    transition: all 0.2s ease;
}

.order-item:hover[b-o6dgd8giip] {
    background: color-mix(in srgb, var(--bhogi-primary) 2%, transparent);
    border-radius: 0.5rem;
    margin: -0.25rem;
    padding: 0.25rem;
}

.item-image[b-o6dgd8giip] {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 0.5rem;
    overflow: hidden;
    background: var(--bhogi-surface-premium);
    flex-shrink: 0;
    box-shadow: var(--bhogi-shadow-xs);
}

.item-image img[b-o6dgd8giip] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.item-qty[b-o6dgd8giip] {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 50%;
    box-shadow: var(--bhogi-shadow-sm);
}

.item-details[b-o6dgd8giip] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.item-name[b-o6dgd8giip] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.item-price[b-o6dgd8giip] {
    font-weight: 600;
    color: var(--bhogi-text-secondary);
}

/* Summary Totals */
.summary-totals[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.summary-row[b-o6dgd8giip] {
    display: flex;
    justify-content: space-between;
    font-size: 0.875rem;
    color: var(--bhogi-text-secondary);
}

.summary-row.total[b-o6dgd8giip] {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--bhogi-text);
    padding: 0.875rem;
    margin: 0.5rem -0.5rem 0;
    border-radius: 0.625rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, var(--bhogi-surface)) 100%);
    border: 1px solid var(--bhogi-border-light);
    letter-spacing: -0.01em;
}

/* Cart Footer Actions — Confirm/Next buttons in sidebar
   (matches Bhogi.Web CheckoutOrderTotals.cshtml btn-buy + nextstep) */
.mobile-confirm-actions[b-o6dgd8giip] {
    display: none;
    margin-bottom: 1.5rem;
}

.mobile-confirm-actions .summary-row[b-o6dgd8giip] {
    margin: 0 0 0.75rem;
}

.cart-footer-actions[b-o6dgd8giip] {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--bhogi-border-light);
}

.btn-block[b-o6dgd8giip] {
    display: flex;
    width: 100%;
    justify-content: center;
}

.btn-buy[b-o6dgd8giip] {
    letter-spacing: 0.02em;
    text-transform: uppercase;
    font-size: 0.9375rem;
}

.btn-lg[b-o6dgd8giip] {
    padding: 0.9375rem 1.5rem;
    font-size: 1.05rem;
}

/* Secure Checkout Badge */
.secure-checkout[b-o6dgd8giip] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 0.75rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-success) 10%, transparent) 0%, color-mix(in srgb, var(--bhogi-primary) 8%, transparent) 100%);
    border-radius: 0.625rem;
    color: var(--bhogi-success);
    font-size: 0.8125rem;
    font-weight: 600;
    border: 1px solid color-mix(in srgb, var(--bhogi-success) 20%, transparent);
    letter-spacing: 0.02em;
}

.secure-checkout i[b-o6dgd8giip] {
    color: var(--bhogi-success);
    font-size: 1rem;
}

/* ============================================
   Buttons
   ============================================ */
.btn[b-o6dgd8giip] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    border: none;
    text-decoration: none;
    letter-spacing: 0.01em;
    position: relative;
    overflow: hidden;
}

.btn[b-o6dgd8giip]::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.15) 0%, transparent 50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: inherit;
    pointer-events: none;
}

.btn:hover[b-o6dgd8giip]::after {
    opacity: 1;
}

.btn-primary[b-o6dgd8giip] {
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    box-shadow: var(--bhogi-shadow-sm);
}

.btn-primary:hover[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover) 0%, var(--bhogi-primary) 100%);
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-md);
}

.btn-primary:active[b-o6dgd8giip] {
    transform: translateY(0);
    box-shadow: var(--bhogi-shadow-xs);
}

.btn-primary:disabled[b-o6dgd8giip] {
    opacity: 0.65;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.btn-outline[b-o6dgd8giip] {
    background: var(--bhogi-surface);
    border: 2px solid var(--bhogi-border);
    color: var(--bhogi-text-secondary);
}

.btn-outline:hover[b-o6dgd8giip] {
    border-color: var(--bhogi-primary);
    color: var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, transparent) 100%);
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-sm);
}

.btn-danger[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-maroon) 0%, color-mix(in srgb, var(--bhogi-maroon) 78%, white) 100%);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(139, 0, 0, 0.2);
}

.btn-danger:hover[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-maroon-deep) 0%, var(--bhogi-maroon) 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(139, 0, 0, 0.25);
}

.btn-danger:active[b-o6dgd8giip] {
    transform: translateY(0);
}

.btn-danger:disabled[b-o6dgd8giip] {
    opacity: 0.65;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.btn-warning[b-o6dgd8giip] {
    background: var(--bhogi-gradient-gold);
    color: #15211d;
    box-shadow: var(--bhogi-shadow-gold);
}

.btn-warning:hover[b-o6dgd8giip] {
    background: linear-gradient(135deg, var(--bhogi-gold-hover) 0%, var(--bhogi-gold) 45%, var(--bhogi-gold-deep) 100%);
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-gold);
}

.btn-secondary[b-o6dgd8giip] {
    background: var(--bhogi-surface-raised);
    color: var(--bhogi-text-secondary);
    border: 1px solid var(--bhogi-border-light);
}

.btn-secondary:hover[b-o6dgd8giip] {
    background: var(--bhogi-surface-premium);
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-sm);
}

.btn-sm[b-o6dgd8giip] {
    font-size: 0.8125rem;
    padding: 0.375rem 0.875rem;
}

.text-muted[b-o6dgd8giip] {
    color: var(--bhogi-text-muted);
}

/* ============================================
   Saved Addresses — Card Grid
   (matches Bhogi.Web BillingAddress.cshtml address list)
   ============================================ */
.saved-addresses-section[b-o6dgd8giip] {
    border: none;
    padding: 0;
    margin: 0 0 1.5rem;
}

.saved-addresses-section legend[b-o6dgd8giip] {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: var(--bhogi-text-muted);
    text-transform: uppercase;
    padding: 0;
    margin-bottom: 1.25rem;
}

.saved-addresses-section legend span[b-o6dgd8giip] {
    display: inline-block;
    padding-right: 0.5rem;
}

.address-card-grid[b-o6dgd8giip] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1rem;
}

.address-card[b-o6dgd8giip] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border: 1.5px solid var(--bhogi-border-light);
    border-radius: 0.75rem;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.address-card:hover[b-o6dgd8giip] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 35%, var(--bhogi-border));
    box-shadow: var(--bhogi-shadow-md);
    transform: translateY(-2px);
}

.address-card-data[b-o6dgd8giip] {
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--bhogi-text-secondary);
}

.address-card-data .name[b-o6dgd8giip] {
    font-weight: 600;
    margin-bottom: 0.25rem;
    color: var(--bhogi-text);
}

.address-card-data .address-lines[b-o6dgd8giip] {
    margin-top: 0.25rem;
}

.add-new-card[b-o6dgd8giip] {
    border-style: dashed;
    border-color: var(--bhogi-border);
    border-width: 2px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.add-new-card:hover[b-o6dgd8giip] {
    border-color: var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, transparent) 100%);
}

.add-new-icon[b-o6dgd8giip] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-premium);
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    margin: 0 auto 0.75rem;
}

.add-new-icon:hover[b-o6dgd8giip] {
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    box-shadow: var(--bhogi-shadow-md);
    transform: scale(1.05);
}

.add-new-icon i[b-o6dgd8giip] {
    font-size: 1.25rem;
    color: var(--bhogi-text-muted);
}

.add-new-icon:hover i[b-o6dgd8giip] {
    color: #ffffff;
}

/* ============================================
   Shipping Within Country — Sidebar subtitle
   ============================================ */
.summary-shipping-info[b-o6dgd8giip] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.shipping-within[b-o6dgd8giip] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted);
    font-weight: 400;
}

/* ============================================
   Completed Page (matches Bhogi.Web Completed.cshtml)
   ============================================ */
.checkout-completed-page[b-o6dgd8giip] {
    max-width: 800px;
    margin: 0 auto;
}

.completed-content[b-o6dgd8giip] {
    text-align: center;
    padding: 4rem 2.5rem 3.5rem;
    background: var(--bhogi-surface);
    border-radius: 1.25rem;
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.06),
        0 4px 12px rgba(0, 0, 0, 0.03),
        0 0 0 1px rgba(0, 0, 0, 0.02);
    animation: completedSlideUp-b-o6dgd8giip 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

.completed-content[b-o6dgd8giip]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--bhogi-success) 0%, var(--bhogi-primary) 40%, var(--bhogi-gold) 65%, var(--bhogi-success) 100%);
    background-size: 200% 100%;
    animation: shimmerBar-b-o6dgd8giip 3s ease-in-out infinite;
}

@keyframes shimmerBar-b-o6dgd8giip {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

@keyframes completedSlideUp-b-o6dgd8giip {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
}

.completed-icon[b-o6dgd8giip] {
    width: 120px;
    height: 120px;
    margin: 0 auto 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-success) 10%, white) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, white) 100%);
    border-radius: 50%;
    box-shadow:
        0 0 0 12px color-mix(in srgb, var(--bhogi-success) 8%, transparent),
        0 0 0 24px color-mix(in srgb, var(--bhogi-success) 4%, transparent),
        0 8px 32px color-mix(in srgb, var(--bhogi-success) 18%, transparent);
    animation: celebrateIcon-b-o6dgd8giip 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.3s both;
    position: relative;
}

.completed-icon[b-o6dgd8giip]::before {
    content: '';
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--bhogi-success), var(--bhogi-primary), var(--bhogi-gold));
    z-index: 0;
    opacity: 0.2;
    animation: pulseRing-b-o6dgd8giip 2s ease-in-out infinite;
}

@keyframes pulseRing-b-o6dgd8giip {
    0%, 100% { transform: scale(1); opacity: 0.2; }
    50% { transform: scale(1.08); opacity: 0.1; }
}

@keyframes celebrateIcon-b-o6dgd8giip {
    0% { transform: scale(0); opacity: 0; }
    50% { transform: scale(1.12); }
    70% { transform: scale(0.95); }
    100% { transform: scale(1); opacity: 1; }
}

.completed-icon i[b-o6dgd8giip] {
    font-size: 4rem;
    color: var(--bhogi-success);
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 2px 4px color-mix(in srgb, var(--bhogi-success) 30%, transparent));
}

.completed-heading[b-o6dgd8giip] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 2.125rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0.625rem;
    letter-spacing: -0.02em;
}

.completed-subheading[b-o6dgd8giip] {
    font-size: 1.25rem;
    font-weight: 400;
    color: var(--bhogi-text-muted);
    margin-bottom: 2.5rem;
    letter-spacing: 0.01em;
}

.completed-body[b-o6dgd8giip] {
    margin-bottom: 2.5rem;
}

.completed-body p[b-o6dgd8giip] {
    color: var(--bhogi-text-secondary);
    margin-bottom: 0.5rem;
    font-size: 1.0625rem;
}

.order-number-link[b-o6dgd8giip] {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--bhogi-primary);
    display: inline-block;
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 14%, transparent) 100%);
    padding: 0.375rem 1rem;
    border-radius: 0.5rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--bhogi-border));
    letter-spacing: 0.02em;
}

.completed-email-info[b-o6dgd8giip] {
    font-size: 0.9375rem;
    color: var(--bhogi-text-muted);
    margin-top: 1rem;
}

.completed-actions[b-o6dgd8giip] {
    display: flex;
    gap: 1.25rem;
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 0.5rem;
}

/* ============================================
   Loading & Empty States
   ============================================ */
.loading-state[b-o6dgd8giip],
.empty-cart[b-o6dgd8giip] {
    text-align: center;
    padding: 5rem 2rem;
    animation: sectionFadeIn-b-o6dgd8giip 0.4s ease;
}

.loading-state i[b-o6dgd8giip],
.empty-cart i[b-o6dgd8giip] {
    font-size: 4rem;
    color: var(--bhogi-border-strong);
    margin-bottom: 1.5rem;
}

.loading-state i[b-o6dgd8giip] {
    color: var(--bhogi-primary);
}

.empty-cart h2[b-o6dgd8giip] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.5rem;
    color: var(--bhogi-text);
    margin-bottom: 0.75rem;
}

.empty-cart p[b-o6dgd8giip] {
    color: var(--bhogi-text-muted);
    margin-bottom: 1.5rem;
    font-size: 1.0625rem;
}

/* ============================================
   Animations
   ============================================ */
@keyframes fadeIn-b-o6dgd8giip {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideUp-b-o6dgd8giip {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 1024px) {
    .checkout-layout[b-o6dgd8giip] {
        grid-template-columns: 1fr;
    }

    .order-summary[b-o6dgd8giip] {
        position: static;
        order: -1;
    }

    .order-items[b-o6dgd8giip] {
        max-height: none;
    }

    .checkout-section[b-o6dgd8giip] {
        padding: 1.5rem;
    }
}

@media (max-width: 767px) {
    .checkout-page[b-o6dgd8giip] {
        padding-bottom: 3rem;
    }

    .page-title[b-o6dgd8giip] {
        font-size: 1.75rem;
        margin-bottom: 1.5rem;
    }

    .checkout-steps[b-o6dgd8giip] {
        flex-wrap: wrap;
        gap: 0.375rem;
        padding: 1rem;
        border-radius: 0.75rem;
        margin-bottom: 1.5rem;
    }

    .step-line[b-o6dgd8giip] {
        display: none;
    }

    .step-title[b-o6dgd8giip] {
        display: none;
    }

    .step[b-o6dgd8giip] {
        padding: 0.375rem;
    }

    .step-number[b-o6dgd8giip] {
        width: 34px;
        height: 34px;
        font-size: 0.8125rem;
    }

    .form-row[b-o6dgd8giip] {
        grid-template-columns: 1fr;
    }

    .payment-methods[b-o6dgd8giip] {
        grid-template-columns: 1fr;
    }

    .payment-method-description[b-o6dgd8giip] {
        padding-left: 3rem;
    }

    .address-card-grid[b-o6dgd8giip] {
        grid-template-columns: 1fr;
    }

    .review-row[b-o6dgd8giip] {
        grid-template-columns: 1fr;
    }

    .form-actions[b-o6dgd8giip] {
        flex-direction: column;
    }

    .form-actions .btn[b-o6dgd8giip] {
        width: 100%;
    }

    .completed-heading[b-o6dgd8giip] {
        font-size: 1.5rem;
    }

    .completed-actions[b-o6dgd8giip] {
        flex-direction: column;
    }

    .completed-actions .btn[b-o6dgd8giip] {
        width: 100%;
    }

    .checkout-section h2[b-o6dgd8giip] {
        font-size: 1.25rem;
    }

    .order-summary[b-o6dgd8giip] {
        padding: 1.25rem;
        border-radius: 0.75rem;
    }

    .order-summary h2[b-o6dgd8giip] {
        font-size: 1.125rem;
        margin: 0;
        padding: 0;
        border: 0;
    }

    .order-summary-heading[b-o6dgd8giip] {
        padding-bottom: 0.875rem;
        border-bottom: 1px solid var(--bhogi-border-light);
    }

    .order-summary-toggle[b-o6dgd8giip] {
        display: inline-flex;
    }

    .order-summary-content[b-o6dgd8giip] {
        display: none;
        padding-top: 1rem;
    }

    .order-summary-content.open[b-o6dgd8giip] {
        display: block;
    }

    .mobile-confirm-actions[b-o6dgd8giip] {
        display: block;
    }

    .summary-confirm-actions[b-o6dgd8giip] {
        display: none;
    }

    .checkout-warnings[b-o6dgd8giip] {
        margin: 0 1rem 1rem;
    }

    .confirm-hint[b-o6dgd8giip] {
        font-size: 0.875rem;
        padding: 0.875rem 1rem;
    }

    .order-review-data-box[b-o6dgd8giip] {
        padding: 1rem;
    }

    .summary-row.total[b-o6dgd8giip] {
        font-size: 1.125rem;
    }

    .terms-of-service-box[b-o6dgd8giip] {
        padding: 0.875rem 1rem;
    }
}

@media (max-width: 480px) {
    .checkout-section[b-o6dgd8giip] {
        padding: 1.25rem 1rem;
    }

    .completed-content[b-o6dgd8giip] {
        padding: 2.5rem 1.25rem 2rem;
    }

    .completed-icon[b-o6dgd8giip] {
        width: 90px;
        height: 90px;
    }

    .completed-icon i[b-o6dgd8giip] {
        font-size: 3rem;
    }

    .completed-heading[b-o6dgd8giip] {
        font-size: 1.375rem;
    }
}
/* /Components/Pages/Compare.razor.rz.scp.css */
/* Compare Page — Enterprise Design */
.compare-page[b-y320jzb29q] {
    padding-bottom: 4rem;
    background: var(--cmp-compare-page-bg, linear-gradient(180deg, var(--bhogi-surface-raised, #fcfcfc) 0%, var(--bhogi-surface, #ffffff) 45%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface)) 100%));
    min-height: 100vh;
}

.compare-page .page-title[b-y320jzb29q] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 2rem;
    font-weight: 700;
    color: var(--cmp-compare-page-title, var(--bhogi-text, #0f172a));
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.compare-page .page-title i[b-y320jzb29q] {
    color: var(--cmp-compare-page-accent, var(--bhogi-primary, #0f7a66));
}

.compare-page .loading-state[b-y320jzb29q],
.compare-page .empty-state[b-y320jzb29q] {
    text-align: center;
    padding: 4rem 2rem;
}

.compare-page .empty-state i[b-y320jzb29q] {
    font-size: 4rem;
    color: var(--cmp-compare-page-empty-icon, var(--bhogi-border-strong));
    margin-bottom: 1rem;
    display: block;
}

.compare-page .empty-state h2[b-y320jzb29q] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.compare-page .empty-state p[b-y320jzb29q] {
    color: var(--cmp-compare-page-muted, var(--bhogi-text-muted));
    margin-bottom: 1.5rem;
}

.compare-actions-top[b-y320jzb29q] {
    margin-bottom: 1rem;
    display: flex;
    justify-content: flex-end;
}

.compare-mobile-list[b-y320jzb29q] {
    display: none;
}

/* Compare Table */
.compare-table-wrapper[b-y320jzb29q] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    background: var(--cmp-compare-page-table-bg, var(--bhogi-surface, #fff));
    border-radius: var(--cmp-compare-page-table-radius, var(--bhogi-radius-xl, 1rem));
    box-shadow: var(--cmp-compare-page-table-shadow, var(--bhogi-shadow-md, 0 10px 30px rgba(21, 33, 29, 0.12)));
    border: 1px solid var(--cmp-compare-page-table-border, var(--bhogi-border-light, #f1f5f9));
}

.compare-table[b-y320jzb29q] {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
}

.compare-row[b-y320jzb29q] {
    border-bottom: 1px solid var(--cmp-compare-page-row-border, var(--bhogi-border-light));
}

.compare-label[b-y320jzb29q] {
    text-align: left;
    padding: 0.875rem 1rem;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--cmp-compare-page-label-fg, var(--bhogi-text-secondary, #475569));
    text-transform: uppercase;
    letter-spacing: 0.03em;
    width: 140px;
    min-width: 140px;
    background: var(--cmp-compare-page-label-bg, var(--bhogi-surface-raised, #f8fafc));
    vertical-align: top;
}

.compare-cell[b-y320jzb29q] {
    padding: 0.875rem 1rem;
    text-align: center;
    vertical-align: top;
    min-width: 200px;
}

.compare-desc[b-y320jzb29q] {
    font-size: 0.875rem;
    color: var(--cmp-compare-page-text-secondary, var(--bhogi-text-secondary));
    text-align: left;
    line-height: 1.5;
}

/* Product card in compare header */
.compare-product-card[b-y320jzb29q] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
}

.remove-compare-btn[b-y320jzb29q] {
    position: absolute;
    top: 0;
    right: 0;
    width: 28px;
    height: 28px;
    border: 1px solid var(--cmp-compare-page-remove-border, var(--bhogi-border-light));
    border-radius: 50%;
    background: var(--cmp-compare-page-remove-bg, var(--bhogi-surface));
    color: var(--cmp-compare-page-remove-fg, var(--bhogi-text-muted));
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    transition: all 0.2s ease;
    z-index: 2;
}

.remove-compare-btn:hover[b-y320jzb29q] {
    background: var(--cmp-compare-page-remove-hover-bg, var(--bhogi-maroon));
    border-color: var(--cmp-compare-page-remove-hover-border, var(--bhogi-maroon));
    color: #fff;
}

.compare-img-link[b-y320jzb29q] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 140px;
    height: 140px;
    background: var(--cmp-compare-page-img-bg, linear-gradient(180deg, var(--bhogi-surface-raised) 0%, var(--bhogi-surface-premium) 100%));
    border-radius: 0.5rem;
    overflow: hidden;
}

.compare-img-link img[b-y320jzb29q] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.compare-product-name[b-y320jzb29q] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--cmp-compare-page-product-name, var(--bhogi-text));
    text-decoration: none;
    text-align: center;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s ease;
}

.compare-product-name:hover[b-y320jzb29q] {
    color: var(--cmp-compare-page-product-name-hover, var(--bhogi-primary));
}

/* Price */
.compare-price[b-y320jzb29q] {
    font-weight: 700;
    font-size: 1.125rem;
    color: var(--cmp-compare-page-price, var(--bhogi-primary-hover));
}

.compare-old-price[b-y320jzb29q] {
    display: block;
    font-size: 0.8125rem;
    color: var(--cmp-compare-page-muted, var(--bhogi-text-muted));
    text-decoration: line-through;
    margin-top: 0.125rem;
}

/* Stock badges */
.stock-badge[b-y320jzb29q] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 1rem;
}

.stock-badge.in-stock[b-y320jzb29q] {
    color: var(--cmp-compare-page-stock-in-fg, var(--bhogi-success));
    background: var(--cmp-compare-page-stock-in-bg, color-mix(in srgb, var(--bhogi-success) 10%, transparent));
}

.stock-badge.out-of-stock[b-y320jzb29q] {
    color: var(--cmp-compare-page-stock-out-fg, var(--bhogi-danger));
    background: var(--cmp-compare-page-stock-out-bg, color-mix(in srgb, var(--bhogi-danger) 10%, transparent));
}

/* Rating */
.compare-rating[b-y320jzb29q] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-weight: 500;
}

.compare-rating i[b-y320jzb29q] {
    color: var(--cmp-compare-page-rating, var(--bhogi-gold-deep));
}

.compare-rating .review-count[b-y320jzb29q] {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 400;
}

.no-rating[b-y320jzb29q] {
    font-size: 0.8125rem;
    color: #adb5bd;
    font-style: italic;
}

/* Actions */
.compare-actions-row .compare-cell[b-y320jzb29q] {
    padding: 1rem;
}

.compare-actions-bottom[b-y320jzb29q] {
    margin-top: 2rem;
}

/* Responsive */
@media (max-width: 767px) {
    .compare-mobile-list[b-y320jzb29q] {
        display: flex;
        align-items: stretch;
        gap: 0.875rem;
        margin-bottom: 1.5rem;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 0.5rem;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: var(--cmp-compare-page-scrollbar-thumb, rgba(13, 107, 90, 0.25)) transparent;
    }

    .compare-mobile-list[b-y320jzb29q]::-webkit-scrollbar {
        height: 6px;
    }

    .compare-mobile-list[b-y320jzb29q]::-webkit-scrollbar-thumb {
        background: var(--cmp-compare-page-scrollbar-thumb, rgba(13, 107, 90, 0.25));
        border-radius: 999px;
    }

    .compare-mobile-card[b-y320jzb29q] {
        position: relative;
        flex: 0 0 min(82vw, 320px);
        min-width: min(82vw, 320px);
        min-height: 520px;
        background: var(--cmp-compare-page-card-bg, var(--bhogi-surface, #fff));
        border: 1px solid var(--cmp-compare-page-card-border, var(--bhogi-border-light, #e2e8f0));
        border-radius: 1rem;
        box-shadow: var(--bhogi-shadow-sm, 0 1px 3px rgba(0,0,0,0.04));
        padding: 1rem;
        scroll-snap-align: start;
        display: flex;
        flex-direction: column;
    }

    .compare-mobile-header[b-y320jzb29q] {
        display: flex;
        align-items: flex-start;
        gap: 0.875rem;
    }

    .compare-mobile-remove[b-y320jzb29q] {
        top: 0.75rem;
        right: 0.75rem;
    }

    .compare-mobile-img-link[b-y320jzb29q] {
        width: 96px;
        height: 96px;
        flex-shrink: 0;
    }

    .compare-mobile-summary[b-y320jzb29q] {
        flex: 1;
        min-width: 0;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
        padding-right: 2rem;
    }

    .compare-mobile-name[b-y320jzb29q] {
        text-align: left;
        -webkit-line-clamp: 3;
    }

    .compare-mobile-price-block[b-y320jzb29q] {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .compare-mobile-rating[b-y320jzb29q] {
        font-size: 0.875rem;
    }

    .compare-mobile-specs[b-y320jzb29q] {
        display: grid;
        gap: 0.75rem;
        margin: 1rem 0 0;
        flex: 1;
        align-content: start;
    }

    .compare-mobile-spec[b-y320jzb29q] {
        display: grid;
        gap: 0.25rem;
        padding-top: 0.75rem;
        border-top: 1px solid var(--cmp-compare-page-card-divider, #eef2f7);
    }

    .compare-mobile-spec dt[b-y320jzb29q] {
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: var(--bhogi-text-secondary, #64748b);
    }

    .compare-mobile-spec dd[b-y320jzb29q] {
        margin: 0;
        font-size: 0.875rem;
        color: var(--bhogi-text, #1e293b);
        line-height: 1.5;
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .compare-mobile-actions[b-y320jzb29q] {
        margin-top: 1rem;
    }

    .compare-mobile-actions .btn[b-y320jzb29q] {
        width: 100%;
    }

    .compare-table-desktop[b-y320jzb29q] {
        display: none;
    }

    .compare-label[b-y320jzb29q] {
        width: 100px;
        min-width: 100px;
        font-size: 0.75rem;
        padding: 0.625rem;
    }

    .compare-cell[b-y320jzb29q] {
        min-width: 160px;
        padding: 0.625rem;
    }

    .compare-img-link[b-y320jzb29q] {
        width: 100px;
        height: 100px;
    }
}
/* /Components/Pages/ContactUs.razor.rz.scp.css */
/* ============================================================
   CONTACT US — Enterprise Premium Contact Page
   Architecture: Breadcrumb → Hero → 2-Column Grid
   ============================================================ */

.contact-page[b-wc6p0mnylf] {
    --cu-bg: var(--bhogi-surface);
    --cu-surface: var(--bhogi-surface-premium);
    --cu-border: var(--bhogi-border-light);
    --cu-text: var(--bhogi-text-secondary);
    --cu-text-muted: var(--bhogi-text-muted);
    --cu-heading: var(--bhogi-text);
    --cu-accent: var(--bhogi-primary);
    --cu-accent-hover: var(--bhogi-primary-hover);
    --cu-accent-soft: color-mix(in srgb, var(--bhogi-primary) 8%, transparent);
    --cu-success: var(--bhogi-success);
    --cu-radius: var(--bhogi-radius-lg);
    --cu-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: linear-gradient(180deg, var(--cu-bg) 0%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--cu-bg)) 100%);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-wc6p0mnylf] {
    background: var(--cu-surface);
    border-bottom: 1px solid var(--cu-border);
    padding: 0.875rem 0;
}

.crumbs[b-wc6p0mnylf] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--cu-text-muted);
}

.crumbs li + li[b-wc6p0mnylf]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-wc6p0mnylf] {
    color: var(--cu-text-muted);
    text-decoration: none;
    transition: color .2s var(--cu-ease);
}

.crumbs a:hover[b-wc6p0mnylf] { color: var(--cu-accent); }

.crumbs .active[b-wc6p0mnylf] {
    color: var(--cu-heading);
    font-weight: 600;
}

/* ── Container ── */
.cu-container[b-wc6p0mnylf] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Hero ── */
.cu-hero[b-wc6p0mnylf] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    max-width: 600px;
    margin: 0 auto;
    animation: cu-fadeIn-b-wc6p0mnylf .4s var(--cu-ease) both;
}

.cu-title[b-wc6p0mnylf] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--cu-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.cu-title i[b-wc6p0mnylf] {
    color: var(--cu-accent);
    font-size: 1.5rem;
    filter: drop-shadow(0 6px 12px rgba(15, 122, 102, 0.18));
}

.cu-subtitle[b-wc6p0mnylf] {
    font-size: 1.0625rem;
    color: var(--cu-text-muted);
    line-height: 1.6;
    margin: 0;
}

/* ── 2-Column Grid ── */
.cu-grid[b-wc6p0mnylf] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    padding-bottom: 4rem;
    animation: cu-fadeIn-b-wc6p0mnylf .5s var(--cu-ease) .1s both;
}

@keyframes cu-fadeIn-b-wc6p0mnylf {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Info Column ── */
.cu-topic-block[b-wc6p0mnylf] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--cu-text);
    margin-bottom: 1.5rem;
}

.cu-topic-block a[b-wc6p0mnylf] {
    color: var(--cu-accent);
}

/* Info Cards */
.cu-cards[b-wc6p0mnylf] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cu-card[b-wc6p0mnylf] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    background: var(--cu-surface);
    border: 1px solid var(--cu-border);
    border-radius: var(--cu-radius);
    transition: border-color .2s var(--cu-ease), box-shadow .2s var(--cu-ease);
}

.cu-card:hover[b-wc6p0mnylf] {
    border-color: color-mix(in srgb, var(--bhogi-gold) 34%, var(--cu-border));
    box-shadow: var(--bhogi-shadow-sm);
}

.cu-card-link[b-wc6p0mnylf] {
    color: inherit;
    text-decoration: none;
}

.cu-card-link:focus-visible[b-wc6p0mnylf] {
    outline: 3px solid color-mix(in srgb, var(--cu-accent) 28%, transparent);
    outline-offset: 2px;
}

.cu-card-link:hover .cu-card-arrow[b-wc6p0mnylf] {
    transform: translateX(3px);
}

.cu-card-arrow[b-wc6p0mnylf] {
    align-self: center;
    margin-left: auto;
    color: var(--cu-accent);
    font-size: 0.75rem;
    transition: transform .2s var(--cu-ease);
}

.cu-card-icon[b-wc6p0mnylf] {
    width: 2.75rem;
    height: 2.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--cu-accent-soft);
    color: var(--cu-accent);
    border-radius: 0.625rem;
    font-size: 1rem;
    flex-shrink: 0;
}

.cu-card-body h3[b-wc6p0mnylf] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--cu-heading);
    margin: 0 0 0.25rem;
}

.cu-card-body p[b-wc6p0mnylf] {
    font-size: 0.8125rem;
    color: var(--cu-text-muted);
    margin: 0;
    line-height: 1.5;
}

.cu-card-body a[b-wc6p0mnylf] {
    color: var(--cu-accent);
    font-weight: 600;
}

/* ── Form Card ── */
.cu-form-card[b-wc6p0mnylf] {
    background: var(--cu-surface);
    border: 1px solid var(--cu-border);
    border-radius: var(--cu-radius);
    padding: 2rem;
    box-shadow: var(--bhogi-shadow-sm);
}

.cu-form-title[b-wc6p0mnylf] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--cu-heading);
    margin: 0 0 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--cu-border);
    position: relative;
}

.cu-form-intro[b-wc6p0mnylf] {
    margin: -0.75rem 0 1.25rem;
    color: var(--cu-text-muted);
    font-size: 0.8125rem;
    line-height: 1.55;
}

.cu-error[b-wc6p0mnylf] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    margin-bottom: 1rem;
    padding: 0.75rem 0.875rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-maroon) 30%, var(--cu-border));
    border-radius: 0.625rem;
    background: color-mix(in srgb, var(--bhogi-maroon) 7%, var(--cu-surface));
    color: var(--bhogi-maroon);
    font-size: 0.8125rem;
    line-height: 1.45;
}

.cu-form-title[b-wc6p0mnylf]::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 60px;
    height: 2px;
    background: linear-gradient(90deg, var(--cu-accent), var(--bhogi-gold));
    border-radius: 1px;
}

/* Fields */
.cu-field[b-wc6p0mnylf] {
    margin-bottom: 1.25rem;
}

.cu-field label[b-wc6p0mnylf] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--cu-heading);
    margin-bottom: 0.375rem;
}

.cu-req[b-wc6p0mnylf] {
    color: var(--bhogi-maroon);
}

.cu-input-wrap[b-wc6p0mnylf] {
    position: relative;
    display: flex;
    align-items: center;
}

.cu-input-wrap > i[b-wc6p0mnylf] {
    position: absolute;
    left: 0.875rem;
    font-size: 0.8125rem;
    color: var(--cu-text-muted);
    pointer-events: none;
    z-index: 1;
}

.cu-input-wrap input[b-wc6p0mnylf],
.cu-input-wrap textarea[b-wc6p0mnylf] {
    width: 100%;
    padding: 0.6875rem 0.875rem 0.6875rem 2.5rem;
    font-size: 0.875rem;
    border: 1px solid var(--cu-border);
    border-radius: 0.5rem;
    background: var(--cu-bg);
    color: var(--cu-text);
    transition: border-color .2s var(--cu-ease), box-shadow .2s var(--cu-ease);
    outline: none;
    font-family: inherit;
}

.cu-textarea-wrap[b-wc6p0mnylf] {
    align-items: flex-start;
}

.cu-textarea-wrap > i[b-wc6p0mnylf] {
    top: 0.8125rem;
}

.cu-input-wrap input:focus[b-wc6p0mnylf],
.cu-input-wrap textarea:focus[b-wc6p0mnylf] {
    border-color: var(--cu-accent);
    box-shadow: var(--bhogi-focus-ring);
}

.cu-input-wrap input[b-wc6p0mnylf]::placeholder,
.cu-input-wrap textarea[b-wc6p0mnylf]::placeholder {
    color: #94a3b8;
}

[b-wc6p0mnylf] .validation-message {
    font-size: 0.75rem;
    color: var(--bhogi-maroon);
    margin-top: 0.25rem;
}

/* Buttons */
.cu-btn[b-wc6p0mnylf] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.75rem;
    font-size: 0.875rem;
    font-weight: 600;
    border: none;
    border-radius: var(--cu-radius);
    cursor: pointer;
    transition: background .2s var(--cu-ease), transform .15s var(--cu-ease), box-shadow .2s var(--cu-ease);
    font-family: inherit;
}

.cu-btn-primary[b-wc6p0mnylf] {
    color: #fff;
    background: var(--bhogi-gradient-primary);
    box-shadow: var(--bhogi-shadow-sm);
}

.cu-btn-primary:hover:not(:disabled)[b-wc6p0mnylf] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover) 0%, var(--bhogi-primary) 100%);
    transform: translateY(-1px);
    box-shadow: var(--bhogi-shadow-md);
}

.cu-btn-primary:disabled[b-wc6p0mnylf] {
    opacity: .65;
    cursor: not-allowed;
}

.cu-btn-outline[b-wc6p0mnylf] {
    color: var(--cu-accent);
    background: transparent;
    border: 1.5px solid color-mix(in srgb, var(--bhogi-gold) 50%, var(--cu-accent));
}

.cu-btn-outline:hover[b-wc6p0mnylf] {
    background: linear-gradient(135deg, var(--cu-accent-soft) 0%, color-mix(in srgb, var(--bhogi-gold) 16%, transparent) 100%);
    transform: translateY(-1px);
}

/* ── Success State ── */
.cu-success[b-wc6p0mnylf] {
    text-align: center;
    padding: 3rem 2rem;
    background: var(--cu-surface);
    border: 1px solid var(--cu-border);
    border-radius: var(--cu-radius);
    animation: cu-scaleIn-b-wc6p0mnylf .4s var(--cu-ease) both;
}

@keyframes cu-scaleIn-b-wc6p0mnylf {
    from { opacity: 0; transform: scale(.95); }
    to   { opacity: 1; transform: scale(1); }
}

.cu-success-icon[b-wc6p0mnylf] {
    font-size: 3rem;
    color: var(--cu-success);
    margin-bottom: 1rem;
}

.cu-success h3[b-wc6p0mnylf] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--cu-heading);
    margin: 0 0 0.5rem;
}

.cu-success p[b-wc6p0mnylf] {
    font-size: 0.9375rem;
    color: var(--cu-text-muted);
    margin: 0 0 1.5rem;
    line-height: 1.6;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .cu-container[b-wc6p0mnylf] {
        padding: 0 1rem;
    }

    .cu-grid[b-wc6p0mnylf] {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .cu-title[b-wc6p0mnylf] {
        font-size: 1.5rem;
    }

    .cu-form-card[b-wc6p0mnylf] {
        padding: 1.5rem;
    }

    .cu-hero[b-wc6p0mnylf] {
        padding: 1.5rem 0 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cu-hero[b-wc6p0mnylf], .cu-grid[b-wc6p0mnylf], .cu-success[b-wc6p0mnylf] {
        animation: none;
    }
}
/* /Components/Pages/CustomerAddresses.razor.rz.scp.css */
/* ============================================
   CUSTOMER ADDRESSES PAGE - PREMIUM BHOGI BRANDING
   Enterprise-grade design with Bhogi design tokens
   ============================================ */

/* ── Design Token References ── */
/* Primary: #0d6b5a | Accent: #DAA520 | Surface: #f8fafc */
/* Shadows: Multi-layer depth system | Transitions: Smooth 0.2s ease */

/* ============================================
   BREADCRUMB NAVIGATION
   ============================================ */
.breadcrumb-nav[b-sx2jfd9ypj] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
    border-bottom: 1px solid var(--bhogi-border-light);
    padding: 1rem 0;
    margin-bottom: 2rem;
    box-shadow: var(--bhogi-shadow-xs);
}

.breadcrumb[b-sx2jfd9ypj] {
    margin-bottom: 0;
    font-size: 0.875rem;
    background: none;
    padding: 0;
    font-weight: 500;
}

.breadcrumb-item[b-sx2jfd9ypj] {
    display: flex;
    align-items: center;
}

.breadcrumb-item a[b-sx2jfd9ypj] {
    color: var(--bhogi-text-secondary);
    text-decoration: none;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
}

.breadcrumb-item a:hover[b-sx2jfd9ypj] {
    color: var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
}

.breadcrumb-item a i[b-sx2jfd9ypj] {
    margin-right: 0.375rem;
    font-size: 0.875rem;
}

.breadcrumb-item.active[b-sx2jfd9ypj] {
    color: var(--bhogi-text);
    font-weight: 600;
}

/* ============================================
   LOADING STATE
   ============================================ */
.loading-state i[b-sx2jfd9ypj] {
    color: var(--bhogi-primary) !important;
    animation: pulse-b-sx2jfd9ypj 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse-b-sx2jfd9ypj {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* ============================================
   ADDRESS CARDS - PREMIUM DESIGN
   ============================================ */
.address-list[b-sx2jfd9ypj] {
    padding: 0;
    margin: 0;
}

.address-toolbar[b-sx2jfd9ypj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-lg);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 7%, var(--bhogi-surface)) 0%, var(--bhogi-surface) 100%);
}

.address-toolbar h2[b-sx2jfd9ypj] {
    margin: 0 0 .2rem;
    color: var(--bhogi-text);
    font-size: 1rem;
    font-weight: 750;
}

.address-toolbar p[b-sx2jfd9ypj] {
    margin: 0;
    color: var(--bhogi-text-muted);
    font-size: .82rem;
}

.address-actions[b-sx2jfd9ypj] {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
}

.address-list-item[b-sx2jfd9ypj] {
    list-style: none;
}

.address-list-item .card[b-sx2jfd9ypj] {
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-lg);
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    box-shadow: var(--bhogi-shadow-sm);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

/* Subtle gradient overlay for depth */
.address-list-item .card[b-sx2jfd9ypj]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--bhogi-gradient-primary);
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.address-list-item .card:hover[b-sx2jfd9ypj] {
    transform: translateY(-4px);
    box-shadow: var(--bhogi-shadow-lg);
    border-color: color-mix(in srgb, var(--bhogi-gold) 34%, var(--bhogi-border));
}

.address-list-item .card:hover[b-sx2jfd9ypj]::before {
    opacity: 1;
}

/* Default address cards get premium styling */
.address-list-item .card.border-primary[b-sx2jfd9ypj] {
    border: 2px solid var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-surface) 0%, color-mix(in srgb, var(--bhogi-primary) 8%, white) 100%);
    box-shadow: var(--bhogi-shadow-md);
}

.address-list-item .card.border-primary[b-sx2jfd9ypj]::before {
    opacity: 1;
    height: 4px;
    background: linear-gradient(90deg, var(--bhogi-primary) 0%, var(--bhogi-gold) 100%);
}

.address-list-item .card.border-primary:hover[b-sx2jfd9ypj] {
    box-shadow: 0 20px 50px -12px rgba(13,107,90,0.15), 0 4px 6px -4px rgba(13,107,90,0.08);
}

/* Card body spacing */
.address-list-item .card-body[b-sx2jfd9ypj] {
    padding: 1.5rem;
}

/* ============================================
   CARD HEADER & TITLE
   ============================================ */
.address-list-item .card-title[b-sx2jfd9ypj] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0;
    letter-spacing: -0.01em;
}

.address-list-item .card-title span[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, var(--bhogi-primary) 0%, var(--bhogi-gold-deep) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Dropdown menu button */
.dropdown .btn[b-sx2jfd9ypj] {
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.dropdown .btn:hover[b-sx2jfd9ypj] {
    background: var(--bhogi-surface-raised);
    color: var(--bhogi-primary) !important;
}

.dropdown-menu[b-sx2jfd9ypj] {
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-sm);
    box-shadow: var(--bhogi-shadow-md);
    padding: 0.5rem;
}

.dropdown-item[b-sx2jfd9ypj] {
    border-radius: 0.375rem;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

.dropdown-item:hover[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, transparent) 100%);
    color: var(--bhogi-primary);
}

.dropdown-item.text-danger:hover[b-sx2jfd9ypj] {
    background: var(--bhogi-maroon-soft);
    color: var(--bhogi-maroon);
}

.dropdown-item i[b-sx2jfd9ypj] {
    width: 1.25rem;
    text-align: center;
}

/* ============================================
   BADGES - PREMIUM STYLING
   ============================================ */
.badge[b-sx2jfd9ypj] {
    font-weight: 600;
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.badge.bg-primary[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #0d6b5a 0%, #0a5c4d 100%) !important;
    box-shadow: 0 2px 4px rgba(13,107,90,0.2);
}

.badge.bg-success[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #059669 0%, #047857 100%) !important;
    box-shadow: 0 2px 4px rgba(5,150,105,0.2);
}

/* ============================================
   ADDRESS FIELDS
   ============================================ */
.address-field[b-sx2jfd9ypj] {
    font-size: 0.9375rem;
    color: #475569;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: flex-start;
    line-height: 1.6;
}

.address-field i[b-sx2jfd9ypj] {
    margin-top: 0.125rem;
    color: #0d6b5a !important;
    font-size: 0.875rem;
}

.field-label[b-sx2jfd9ypj] {
    font-weight: 600;
    color: #64748b;
    margin-right: 0.25rem;
}

.address-formatted[b-sx2jfd9ypj] {
    font-size: 0.9375rem;
    color: #475569;
    line-height: 1.7;
    padding: 0.75rem;
    background: #f8fafc;
    border-radius: 0.5rem;
    border-left: 3px solid #0d6b5a;
    margin-top: 0.75rem;
}

.address-formatted i[b-sx2jfd9ypj] {
    color: #0d6b5a !important;
}

/* ============================================
   ALERTS - BRANDED STYLING
   ============================================ */
.alert[b-sx2jfd9ypj] {
    border-radius: 0.75rem;
    border: none;
    padding: 1rem 1.25rem;
    font-size: 0.9375rem;
    font-weight: 500;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.alert-success[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    color: #065f46;
    border-left: 4px solid #059669;
}

.alert-danger[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    color: #991b1b;
    border-left: 4px solid #dc2626;
}

.alert-info[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #f0f9ff 0%, #dbeafe 100%);
    color: #075985;
    border-left: 4px solid #0284c7;
}

.alert i[b-sx2jfd9ypj] {
    font-size: 1rem;
}

.btn-close[b-sx2jfd9ypj] {
    opacity: 0.5;
    transition: opacity 0.2s;
}

.btn-close:hover[b-sx2jfd9ypj] {
    opacity: 1;
}

/* ============================================
   BUTTONS - PREMIUM BHOGI STYLE
   ============================================ */
.btn-primary[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #0d6b5a 0%, #0a5c4d 100%);
    border: none;
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 2px 4px rgba(13,107,90,0.2);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.btn-primary[b-sx2jfd9ypj]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255,255,255,0.15) 0%, transparent 60%);
    pointer-events: none;
}

.btn-primary:hover[b-sx2jfd9ypj] {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(13,107,90,0.3);
    background: linear-gradient(135deg, #0a5c4d 0%, #084c41 100%);
}

.btn-primary:active[b-sx2jfd9ypj] {
    transform: translateY(0);
}

.btn-primary:disabled[b-sx2jfd9ypj] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-secondary[b-sx2jfd9ypj] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    color: #475569;
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-secondary:hover[b-sx2jfd9ypj] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    color: #0f172a;
}

.btn-danger[b-sx2jfd9ypj] {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%);
    border: none;
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 2px 4px rgba(220,38,38,0.2);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-danger:hover[b-sx2jfd9ypj] {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(220,38,38,0.3);
}

/* ============================================
   MODALS - PREMIUM OVERLAY
   ============================================ */
.modal[b-sx2jfd9ypj] {
    backdrop-filter: blur(4px);
    background: color-mix(in srgb, #000 55%, transparent);
    animation: fadeIn-b-sx2jfd9ypj 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes fadeIn-b-sx2jfd9ypj {
    from { opacity: 0; }
    to { opacity: 1; }
}

.modal-dialog[b-sx2jfd9ypj] {
    animation: slideUp-b-sx2jfd9ypj 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes slideUp-b-sx2jfd9ypj {
    from {
        opacity: 0;
        transform: translateY(1rem);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.modal-content[b-sx2jfd9ypj] {
    border: none;
    border-radius: 1rem;
    box-shadow: 0 25px 60px -12px rgba(0,0,0,0.25);
}

.modal-header[b-sx2jfd9ypj] {
    border-bottom: 1px solid #e2e8f0;
    padding: 1.5rem;
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    border-radius: 1rem 1rem 0 0;
}

.modal-title[b-sx2jfd9ypj] {
    font-weight: 700;
    color: #0f172a;
    font-size: 1.25rem;
}

.modal-body[b-sx2jfd9ypj] {
    padding: 1.5rem;
}

.modal-footer[b-sx2jfd9ypj] {
    border-top: 1px solid #e2e8f0;
    padding: 1.25rem 1.5rem;
    background: #f8fafc;
    border-radius: 0 0 1rem 1rem;
}

/* ============================================
   FORM ELEMENTS - PREMIUM INPUTS
   ============================================ */
.form-label[b-sx2jfd9ypj] {
    font-weight: 600;
    color: #0f172a;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}

.form-label .text-danger[b-sx2jfd9ypj] {
    color: #dc2626;
}

.form-control[b-sx2jfd9ypj], .form-select[b-sx2jfd9ypj] {
    border: 1px solid #e2e8f0;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    background: #ffffff;
}

.form-control:focus[b-sx2jfd9ypj], .form-select:focus[b-sx2jfd9ypj] {
    border-color: #0d6b5a;
    box-shadow: 0 0 0 3px rgba(13,107,90,0.12);
    outline: none;
}

.form-control[b-sx2jfd9ypj]::placeholder {
    color: #94a3b8;
    font-weight: 400;
}

.form-text[b-sx2jfd9ypj] {
    font-size: 0.8125rem;
    color: #64748b;
    margin-top: 0.375rem;
}

.validation-message[b-sx2jfd9ypj] {
    color: #dc2626;
    font-size: 0.8125rem;
    margin-top: 0.375rem;
    font-weight: 500;
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */
@media (max-width: 991.98px) {
    .address-list-item .card-body[b-sx2jfd9ypj] {
        padding: 1.25rem;
    }

    .address-list-item .card-title[b-sx2jfd9ypj] {
        font-size: 1rem;
    }

    .btn-primary[b-sx2jfd9ypj], .btn-secondary[b-sx2jfd9ypj], .btn-danger[b-sx2jfd9ypj] {
        padding: 0.625rem 1.25rem;
    }
}

@media (max-width: 767.98px) {
    .breadcrumb-nav[b-sx2jfd9ypj] {
        padding: 0.75rem 0;
        margin-bottom: 1.5rem;
    }

    .address-list[b-sx2jfd9ypj] {
        gap: 1rem !important;
    }

    .address-list-item .card-body[b-sx2jfd9ypj] {
        padding: 1rem;
    }

    .modal-body[b-sx2jfd9ypj] {
        padding: 1.25rem;
    }

    .modal-header[b-sx2jfd9ypj], .modal-footer[b-sx2jfd9ypj] {
        padding: 1rem 1.25rem;
    }

    .address-toolbar[b-sx2jfd9ypj] {
        align-items: stretch;
        flex-direction: column;
    }

    .address-toolbar .btn[b-sx2jfd9ypj] { width: 100%; }
}

@media (max-width: 575.98px) {
    .breadcrumb[b-sx2jfd9ypj] {
        font-size: 0.8125rem;
    }

    .address-list-item .card-title[b-sx2jfd9ypj] {
        font-size: 0.9375rem;
    }

    .address-field[b-sx2jfd9ypj], .address-formatted[b-sx2jfd9ypj] {
        font-size: 0.875rem;
    }

    .badge[b-sx2jfd9ypj] {
        font-size: 0.6875rem;
        padding: 0.3rem 0.6rem;
    }

    .modal-dialog[b-sx2jfd9ypj] {
        align-items: end;
        min-height: 100%;
        margin: 0;
    }

    .modal-content[b-sx2jfd9ypj] {
        max-height: 92vh;
        border-radius: 1rem 1rem 0 0;
    }
}
/* /Components/Pages/CustomerInfo.razor.rz.scp.css */
/* ============================================
   CUSTOMER INFO PAGE
   Matches Bhogi.Web Customer/Info.cshtml style
   ============================================ */

/* Breadcrumb */
.breadcrumb-nav[b-hn6d3uzhoi] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
    border-bottom: 1px solid var(--bhogi-border-light);
    padding: 0.75rem 0;
    margin-bottom: 0;
}

.breadcrumb[b-hn6d3uzhoi] {
    margin-bottom: 0;
    font-size: 0.8125rem;
    background: none;
    padding: 0;
}

.breadcrumb-item a[b-hn6d3uzhoi] {
    color: var(--bhogi-text-muted);
    text-decoration: none;
}

.breadcrumb-item a:hover[b-hn6d3uzhoi] {
    color: var(--bhogi-primary);
}

.breadcrumb-item.active[b-hn6d3uzhoi] {
    color: var(--bhogi-text-secondary);
}

/* Fieldset legend */
.fieldset-legend[b-hn6d3uzhoi] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bhogi-text);
    border-bottom: 2px solid color-mix(in srgb, var(--bhogi-gold) 26%, var(--bhogi-border-light));
    padding-bottom: 0.5rem;
    margin-bottom: 1.25rem;
}

.fieldset-legend span[b-hn6d3uzhoi] {
    background: none;
}

/* Form labels */
.col-form-label[b-hn6d3uzhoi] {
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    font-size: 0.875rem;
}

.col-form-label.required[b-hn6d3uzhoi]::after {
    content: " *";
    color: var(--bhogi-maroon);
}

/* Read-only fields */
.form-control-plaintext[b-hn6d3uzhoi] {
    font-size: 0.875rem;
    color: var(--bhogi-text);
    padding-top: calc(0.375rem + 1px);
    padding-bottom: calc(0.375rem + 1px);
}

.profile-intro[b-hn6d3uzhoi] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem 1.15rem;
    border: 1px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-lg);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 7%, var(--bhogi-surface)) 0%, var(--bhogi-surface) 100%);
}

.profile-intro__icon[b-hn6d3uzhoi] {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    color: var(--bhogi-primary);
    background: color-mix(in srgb, var(--bhogi-primary) 12%, transparent);
}

.profile-intro h2[b-hn6d3uzhoi] {
    margin: 0 0 .2rem;
    color: var(--bhogi-text);
    font-size: 1rem;
    font-weight: 750;
}

.profile-intro p[b-hn6d3uzhoi] {
    margin: 0;
    color: var(--bhogi-text-muted);
    font-size: .85rem;
    line-height: 1.5;
}

.profile-save[b-hn6d3uzhoi] {
    min-width: 8.5rem;
    min-height: 2.75rem;
}

/* Responsive */
@media (max-width: 767.98px) {
    .col-form-label[b-hn6d3uzhoi] {
        padding-bottom: 0.25rem;
    }

    .profile-intro[b-hn6d3uzhoi] { align-items: flex-start; }
}

/* ============================================
   DARK MODE
   ============================================ */

[data-theme="dark"] .breadcrumb-nav[b-hn6d3uzhoi] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
    border-bottom-color: var(--bhogi-border-light);
}

[data-theme="dark"] .breadcrumb-item a[b-hn6d3uzhoi] {
    color: var(--bhogi-text-muted);
}

[data-theme="dark"] .breadcrumb-item.active[b-hn6d3uzhoi] {
    color: var(--bhogi-text-secondary);
}

[data-theme="dark"] .fieldset-legend[b-hn6d3uzhoi] {
    color: var(--bhogi-text);
    border-bottom-color: color-mix(in srgb, var(--bhogi-gold) 18%, var(--bhogi-border-light));
}

[data-theme="dark"] .col-form-label[b-hn6d3uzhoi] {
    color: var(--bhogi-text-secondary);
}

[data-theme="dark"] .form-control-plaintext[b-hn6d3uzhoi] {
    color: var(--bhogi-text);
}
/* /Components/Pages/CustomerOrders.razor.rz.scp.css */
/* ============================================
   CUSTOMER ORDERS PAGE - Enterprise Mobile Design
   ============================================ */

/* ============================================
   BREADCRUMB - Hide on mobile, show on desktop
   ============================================ */
.breadcrumb-nav[b-y4zunjqme9] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
    border-bottom: 1px solid var(--bhogi-border-light);
    padding: 0.75rem 0;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .breadcrumb-nav[b-y4zunjqme9] {
        display: none;
    }
}

.breadcrumb[b-y4zunjqme9] {
    margin-bottom: 0;
    font-size: 0.8125rem;
    background: none;
    padding: 0;
}

.breadcrumb-item a[b-y4zunjqme9] {
    color: var(--bhogi-text-muted);
    text-decoration: none;
}

.breadcrumb-item a:hover[b-y4zunjqme9] {
    color: var(--bhogi-primary, #2563eb);
}

.breadcrumb-item.active[b-y4zunjqme9] {
    color: var(--bhogi-text-secondary);
}

/* ============================================
   ORDER LIST
   ============================================ */
.order-list[b-y4zunjqme9] {
    padding: 0;
    margin: 0;
}

.order-item[b-y4zunjqme9] {
    margin-bottom: 1rem;
}

/* ============================================
   ORDER CARD - MOBILE OPTIMIZED
   ============================================ */
.order-card[b-y4zunjqme9] {
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: var(--bhogi-radius-lg);
    overflow: hidden;
    box-shadow: var(--bhogi-shadow-sm);
    transition: all 0.2s ease;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
}

.order-card:hover[b-y4zunjqme9] {
    box-shadow: var(--bhogi-shadow-md);
    transform: translateY(-1px);
}

/* ============================================
   MOBILE: Order Header (Compact)
   ============================================ */
.order-header[b-y4zunjqme9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, var(--bhogi-surface)) 100%);
    border-bottom: 1px solid var(--bhogi-border-light);
}

.order-number-mobile[b-y4zunjqme9] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.order-number-mobile .order-label[b-y4zunjqme9] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.order-number-mobile .order-value[b-y4zunjqme9] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bhogi-text);
}

.order-status-mobile[b-y4zunjqme9] {
    flex-shrink: 0;
}

/* ============================================
   ORDER DETAILS - Stacked Mobile Layout
   ============================================ */
.order-details[b-y4zunjqme9] {
    margin: 0;
    padding: 0;
}

.order-detail-row[b-y4zunjqme9] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--bhogi-border-light);
}

.order-detail-row:last-of-type[b-y4zunjqme9] {
    border-bottom: none;
}

.order-detail-row dt[b-y4zunjqme9] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--bhogi-text-muted);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.order-detail-row dt i[b-y4zunjqme9] {
    font-size: 0.875rem;
    color: var(--bhogi-border-strong);
}

.order-detail-row dd[b-y4zunjqme9] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #1e293b;
    margin: 0;
    text-align: right;
}

/* Total Row - Highlighted */
.order-total-row[b-y4zunjqme9] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    margin: 0 -1.25rem;
    padding: 0.875rem 1.25rem;
    border-radius: 0 0 0.75rem 0.75rem;
    border-bottom: none;
}

.order-total-row dt[b-y4zunjqme9] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #78350f;
}

.order-total-row dt i[b-y4zunjqme9] {
    color: #92400e;
}

.order-total-amount[b-y4zunjqme9] {
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: #92400e !important;
}

/* ============================================
   BADGES - Enhanced Styling
   ============================================ */
.order-card .badge[b-y4zunjqme9] {
    padding: 0.375rem 0.75rem;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    border-radius: 0.375rem;
}

.badge.bg-warning[b-y4zunjqme9] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde047 100%) !important;
    color: #78350f !important;
}

.badge.bg-info[b-y4zunjqme9] {
    background: linear-gradient(135deg, #dbeafe 0%, #93c5fd 100%) !important;
    color: #1e3a8a !important;
}

.badge.bg-success[b-y4zunjqme9] {
    background: linear-gradient(135deg, #d1fae5 0%, #6ee7b7 100%) !important;
    color: #065f46 !important;
}

.badge.bg-secondary[b-y4zunjqme9] {
    background: linear-gradient(135deg, #f1f5f9 0%, #cbd5e1 100%) !important;
    color: #475569 !important;
}

/* ============================================
   ORDER ACTIONS
   ============================================ */
.order-actions[b-y4zunjqme9] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #f1f5f9;
}

.order-actions .btn[b-y4zunjqme9] {
    border-radius: 0.5rem;
    font-weight: 600;
    font-size: 0.875rem;
    padding: 0.625rem 1rem;
    transition: all 0.2s ease;
}

.order-actions .btn-outline-primary[b-y4zunjqme9] {
    border: 1.5px solid var(--bhogi-primary, #2563eb);
    color: var(--bhogi-primary, #2563eb);
}

.order-actions .btn-outline-primary:hover[b-y4zunjqme9] {
    background: var(--bhogi-primary, #2563eb);
    border-color: var(--bhogi-primary, #2563eb);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(37, 99, 235, 0.2);
}

/* ============================================
   DESKTOP LAYOUT ADJUSTMENTS
   ============================================ */
@media (min-width: 768px) {
    .order-item[b-y4zunjqme9] {
        margin-bottom: 1.5rem;
    }

    .order-card .card-body[b-y4zunjqme9] {
        padding: 1.5rem;
    }

    .order-details[b-y4zunjqme9] {
        display: block;
    }

    .order-detail-row[b-y4zunjqme9] {
        display: grid;
        grid-template-columns: 150px 1fr;
        gap: 1rem;
        padding: 0.625rem 0;
    }

    .order-detail-row dt[b-y4zunjqme9] {
        font-size: 0.875rem;
        color: #64748b;
    }

    .order-detail-row dd[b-y4zunjqme9] {
        text-align: left;
    }

    .order-total-row[b-y4zunjqme9] {
        background: transparent;
        margin: 0.5rem 0 0;
        padding: 0.75rem 0;
        border-top: 2px solid #e2e8f0;
        border-radius: 0;
    }

    .order-total-row dt[b-y4zunjqme9] {
    color: var(--bhogi-text);
    }

    .order-total-amount[b-y4zunjqme9] {
        font-size: 1.25rem !important;
        color: var(--bhogi-primary, #2563eb) !important;
    }

    .order-actions .btn[b-y4zunjqme9] {
        width: auto;
    }
}

/* ============================================
   EMPTY STATE
   ============================================ */
@media (max-width: 767.98px) {
    .alert[b-y4zunjqme9] {
        border-radius: 0.75rem;
        margin-bottom: 1rem;
    }

    .btn-primary[b-y4zunjqme9] {
        width: 100%;
        border-radius: 0.5rem;
        padding: 0.875rem 1.5rem;
        font-weight: 600;
    }
}
    color: #212529;
    font-weight: 600;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 0.75rem;[b-y4zunjqme9]
}

.order-item dt[b-y4zunjqme9] {
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}

.order-item dd[b-y4zunjqme9] {
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}

.order-total[b-y4zunjqme9] {
    color: #1a1a2e;
    font-size: 0.9375rem !important;
}

/* Status badges */
.order-item .badge[b-y4zunjqme9] {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.35em 0.65em;
    border-radius: 0.375rem;
}

/* ============================================
   DARK MODE
   ============================================ */

[data-theme="dark"] .breadcrumb-nav[b-y4zunjqme9] {
    background: #1a1a2e;
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .breadcrumb-item a[b-y4zunjqme9] {
    color: rgba(255, 255, 255, 0.6);
}

[data-theme="dark"] .breadcrumb-item.active[b-y4zunjqme9] {
    color: rgba(255, 255, 255, 0.8);
}

[data-theme="dark"] .order-item .card[b-y4zunjqme9] {
    background: #1e2a3a;
    border-color: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .order-item .card-title[b-y4zunjqme9] {
    color: #f8f9fa;
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .order-item dt[b-y4zunjqme9] {
    color: rgba(255, 255, 255, 0.5) !important;
}

[data-theme="dark"] .order-item dd[b-y4zunjqme9] {
    color: rgba(255, 255, 255, 0.85);
}

[data-theme="dark"] .order-total[b-y4zunjqme9] {
    color: #f8f9fa;
}
/* /Components/Pages/DealsPage.razor.rz.scp.css */
/* ============================================================
   DEALS PAGE — Enterprise Premium Product Grid
   ============================================================ */

.newproducts-page[b-rwp2s5scl2] {
    --np-bg: #ffffff;
    --np-surface: #f8fafc;
    --np-border: #e2e8f0;
    --np-text: #334155;
    --np-text-muted: #64748b;
    --np-heading: #0f172a;
    --np-accent: #3b82f6;
    --np-accent-soft: rgba(59,130,246,.08);
    --np-sale: #ef4444;
    --np-new: #8b5cf6;
    --np-radius: 0.75rem;
    --np-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--np-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-rwp2s5scl2] {
    background: var(--np-surface);
    border-bottom: 1px solid var(--np-border);
    padding: 0.875rem 0;
}

.crumbs[b-rwp2s5scl2] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--np-text-muted);
}

.crumbs li + li[b-rwp2s5scl2]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-rwp2s5scl2] {
    color: var(--np-text-muted);
    text-decoration: none;
    transition: color .2s var(--np-ease);
}
.crumbs a:hover[b-rwp2s5scl2] { color: var(--np-accent); }
.crumbs .active[b-rwp2s5scl2] { color: var(--np-heading); font-weight: 600; }

/* ── Container ── */
.np-container[b-rwp2s5scl2] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ── */
.np-header[b-rwp2s5scl2] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    margin: 1.25rem 0 1.75rem;
    background: linear-gradient(180deg, rgba(255, 247, 237, 0.92) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid rgba(245, 158, 11, 0.12);
    border-radius: 1.25rem;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
    animation: np-fadeIn-b-rwp2s5scl2 .4s var(--np-ease) both;
}

.np-kicker[b-rwp2s5scl2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.75rem;
    margin-bottom: 0.875rem;
    border-radius: 999px;
    background: rgba(245, 158, 11, 0.12);
    color: #b45309;
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.np-title[b-rwp2s5scl2] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.np-title i[b-rwp2s5scl2] {
    color: var(--np-sale);
    font-size: 1.5rem;
}

.np-subtitle[b-rwp2s5scl2] {
    font-size: 1.0625rem;
    color: var(--np-text-muted);
    margin: 0;
    line-height: 1.6;
}

.np-highlights[b-rwp2s5scl2] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.np-highlight[b-rwp2s5scl2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: var(--np-heading);
    font-size: 0.75rem;
    font-weight: 700;
}

/* Deal family navigation */
.deal-family-tabs[b-rwp2s5scl2] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.deal-family-tab[b-rwp2s5scl2] {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 0.65rem;
    align-items: center;
    padding: 0.9rem;
    border: 1px solid var(--np-border);
    border-radius: 0.85rem;
    background: #fff;
    color: var(--np-heading);
    text-align: left;
    cursor: pointer;
    transition: border-color .2s var(--np-ease), box-shadow .2s var(--np-ease), transform .2s var(--np-ease);
}

.deal-family-tab:hover[b-rwp2s5scl2],
.deal-family-tab.is-active[b-rwp2s5scl2] {
    border-color: var(--deal-accent);
    box-shadow: 0 8px 22px color-mix(in srgb, var(--deal-accent) 14%, transparent);
    transform: translateY(-2px);
}

.deal-family-tab.is-active[b-rwp2s5scl2] {
    background: color-mix(in srgb, var(--deal-accent) 6%, white);
}

.deal-family-tab > i[b-rwp2s5scl2] {
    grid-row: 1 / span 2;
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.65rem;
    color: #fff;
    background: var(--deal-accent);
}

.deal-family-tab span[b-rwp2s5scl2] { font-size: 0.82rem; font-weight: 800; }
.deal-family-tab small[b-rwp2s5scl2] { color: var(--np-text-muted); font-size: 0.7rem; }

.deal-family[b-rwp2s5scl2] {
    padding-bottom: 4rem;
}

.deal-family-heading[b-rwp2s5scl2] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.deal-family-icon[b-rwp2s5scl2] {
    display: grid;
    place-items: center;
    flex: 0 0 3rem;
    width: 3rem;
    height: 3rem;
    border-radius: 0.9rem;
    color: #fff;
    background: var(--deal-accent);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--deal-accent) 24%, transparent);
}

.deal-family-heading h2[b-rwp2s5scl2] {
    margin: 0 0 0.2rem;
    color: var(--np-heading);
    font-size: 1.45rem;
}

.deal-family-heading p[b-rwp2s5scl2] {
    margin: 0;
    color: var(--np-text-muted);
    font-size: 0.9rem;
}

.deal-mechanisms[b-rwp2s5scl2] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.deal-mechanisms span[b-rwp2s5scl2] {
    padding: 0.4rem 0.7rem;
    border: 1px solid color-mix(in srgb, var(--deal-accent) 22%, var(--np-border));
    border-radius: 999px;
    background: color-mix(in srgb, var(--deal-accent) 5%, white);
    color: var(--np-text);
    font-size: 0.75rem;
    font-weight: 650;
}

.deal-mechanisms i[b-rwp2s5scl2] {
    margin-right: 0.25rem;
    color: var(--deal-accent);
}

@keyframes np-fadeIn-b-rwp2s5scl2 {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Product Grid ── */
.np-grid[b-rwp2s5scl2] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: np-fadeIn-b-rwp2s5scl2 .5s var(--np-ease) .1s both;
}

/* ── Product Card ── */
.np-card[b-rwp2s5scl2] {
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--np-bg);
    border: 1px solid var(--np-border);
    border-radius: var(--np-radius);
    text-decoration: none;
    color: var(--np-text);
    overflow: hidden;
    transition: border-color .25s var(--np-ease), box-shadow .25s var(--np-ease), transform .2s var(--np-ease);
}

.np-card:hover[b-rwp2s5scl2] {
    border-color: var(--np-accent);
    box-shadow: 0 6px 24px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

/* Badges */
.np-badge[b-rwp2s5scl2] {
    position: absolute;
    top: 0.75rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    z-index: 1;
}

.np-badge-new[b-rwp2s5scl2] {
    right: 0.75rem;
    background: var(--np-new);
    color: #fff;
}

.np-badge-sale[b-rwp2s5scl2] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
}

.np-badge-bestseller[b-rwp2s5scl2] {
    right: 0.75rem;
    background: #f59e0b;
    color: #fff;
}

.np-badge-trending[b-rwp2s5scl2] {
    right: 0.75rem;
    background: #8b5cf6;
    color: #fff;
}

.np-badge-discount[b-rwp2s5scl2] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
    font-weight: 800;
}

/* Rating Stars */
.np-card-rating[b-rwp2s5scl2] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    color: #f59e0b;
}

.np-card-rating .rating-count[b-rwp2s5scl2] {
    color: var(--np-text-muted);
    font-size: 0.6875rem;
    margin-left: 0.125rem;
}

.np-price-from[b-rwp2s5scl2] {
    font-size: 0.75rem;
    color: var(--np-text-muted);
    font-weight: 500;
}

/* Card Image */
.np-card-img[b-rwp2s5scl2] {
    width: 100%;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: var(--np-surface);
}

.np-card-img img[b-rwp2s5scl2] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--np-ease);
}

.np-card:hover .np-card-img img[b-rwp2s5scl2] {
    transform: scale(1.05);
}

/* Card Body */
.np-card-body[b-rwp2s5scl2] {
    padding: 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.np-card-name[b-rwp2s5scl2] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.np-card-price[b-rwp2s5scl2] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-top: auto;
}

.np-price-current[b-rwp2s5scl2] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--np-heading);
}

.np-price-old[b-rwp2s5scl2] {
    font-size: 0.8125rem;
    color: var(--np-text-muted);
    text-decoration: line-through;
}

/* ── Skeleton ── */
.np-skeleton[b-rwp2s5scl2] {
    pointer-events: none;
}

.np-skeleton .sk-img[b-rwp2s5scl2] {
    width: 100%;
    aspect-ratio: 1;
    background: var(--np-surface);
}

.np-skeleton .sk-name[b-rwp2s5scl2] {
    height: 1rem;
    width: 75%;
    margin: 1rem 1rem 0.5rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-price[b-rwp2s5scl2] {
    height: 0.875rem;
    width: 35%;
    margin: 0 1rem 1rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-name[b-rwp2s5scl2],
.np-skeleton .sk-price[b-rwp2s5scl2] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-rwp2s5scl2 1.5s ease infinite;
}

@keyframes sk-shimmer-b-rwp2s5scl2 {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty ── */
.np-empty[b-rwp2s5scl2] {
    text-align: center;
    padding: 4rem 2rem;
}

.np-empty i[b-rwp2s5scl2] {
    font-size: 3rem;
    color: var(--np-border);
    margin-bottom: 1rem;
    display: block;
}

.np-empty h2[b-rwp2s5scl2] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
}

.np-empty p[b-rwp2s5scl2] {
    font-size: 0.9375rem;
    color: var(--np-text-muted);
    margin: 0 0 1.5rem;
}

.np-btn[b-rwp2s5scl2] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--np-accent);
    border-radius: var(--np-radius);
    text-decoration: none;
    transition: background .2s var(--np-ease), transform .15s var(--np-ease);
}

.np-btn:hover[b-rwp2s5scl2] {
    background: #2563eb;
    transform: translateY(-1px);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .np-container[b-rwp2s5scl2] { padding: 0 1rem; }
    .np-header[b-rwp2s5scl2] { padding: 1.5rem 1rem 1.25rem; margin: 1rem 0 1.25rem; border-radius: 1rem; }
    .np-title[b-rwp2s5scl2] { font-size: 1.5rem; }
    .np-grid[b-rwp2s5scl2] { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.75rem; }
    .np-card-body[b-rwp2s5scl2] { padding: 0.75rem; }
    .np-highlights[b-rwp2s5scl2] { gap: 0.4rem; }
    .np-highlight[b-rwp2s5scl2] { font-size: 0.6875rem; padding: 0.35rem 0.625rem; }
    .deal-family-tabs[b-rwp2s5scl2] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .deal-family-tab[b-rwp2s5scl2] { padding: 0.7rem; }
    .deal-family-heading[b-rwp2s5scl2] { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
    .np-header[b-rwp2s5scl2], .np-grid[b-rwp2s5scl2] { animation: none; }
    .np-skeleton .sk-name[b-rwp2s5scl2], .np-skeleton .sk-price[b-rwp2s5scl2] { animation: none; }
}
/* /Components/Pages/Debug.razor.rz.scp.css */
/* Debug Page Component - CSS Isolation */

/* ============================================
   Debug Page Layout
   ============================================ */
.debug-page[b-l4oog71yzr] {
    padding: 2rem 0;
    min-height: 100vh;
    background: var(--bg-page, #f8f9fa);
}

.debug-page h1[b-l4oog71yzr] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--color-text, #212529);
    margin-bottom: 2rem;
}

.debug-page h2[b-l4oog71yzr] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--color-text, #212529);
    margin: 2rem 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--color-primary, #0d6b5a);
}

/* ============================================
   Debug Tables
   ============================================ */
.debug-page .table[b-l4oog71yzr] {
    width: 100%;
    background: white;
    border-collapse: collapse;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    margin-bottom: 2rem;
}

.debug-page .table th[b-l4oog71yzr] {
    background: var(--color-bg-subtle, #f8fafc);
    font-weight: 600;
    color: var(--color-text, #212529);
    text-align: left;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--color-border, #e5e7eb);
}

.debug-page .table td[b-l4oog71yzr] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    color: var(--color-text-secondary, #4b5563);
    font-size: 0.875rem;
}

.debug-page .table tr:last-child td[b-l4oog71yzr] {
    border-bottom: none;
}

.debug-page .table tr:hover td[b-l4oog71yzr] {
    background: var(--color-bg-subtle, #f8fafc);
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 768px) {
    .debug-page[b-l4oog71yzr] {
        padding: 1rem 0;
    }

    .debug-page .table[b-l4oog71yzr] {
        display: block;
        overflow-x: auto;
    }

    .debug-page h1[b-l4oog71yzr] {
        font-size: 1.5rem;
    }
}
/* /Components/Pages/Error.razor.rz.scp.css */
/* ============================================
   ERROR PAGE - Premium Enterprise Design
   ============================================ */

.error-page[b-tan4m4d88v] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: 2rem;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
}

.error-container[b-tan4m4d88v] {
    text-align: center;
    max-width: 500px;
}

.error-icon[b-tan4m4d88v] {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, var(--bhogi-maroon-soft), color-mix(in srgb, var(--bhogi-maroon) 20%, transparent));
    border-radius: 50%;
    color: var(--bhogi-maroon);
    font-size: 2.5rem;
}

.error-title[b-tan4m4d88v] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.875rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0.75rem;
}

.error-message[b-tan4m4d88v] {
    font-size: 1.125rem;
    color: var(--bhogi-text-muted);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.error-details[b-tan4m4d88v] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background-color: var(--bhogi-surface-raised);
    border-radius: 0.625rem;
    margin-bottom: 1.5rem;
}

.error-label[b-tan4m4d88v] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
}

.error-code[b-tan4m4d88v] {
    font-size: 0.875rem;
    color: var(--bhogi-maroon);
    background-color: var(--bhogi-maroon-soft);
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    font-weight: 600;
}

.error-actions[b-tan4m4d88v] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.btn-primary[b-tan4m4d88v],
.btn-secondary[b-tan4m4d88v] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 0.625rem;
    text-decoration: none;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    cursor: pointer;
}

.btn-primary[b-tan4m4d88v] {
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    border: none;
    box-shadow: 0 4px 14px rgba(13, 110, 253, 0.25);
}

.btn-primary:hover[b-tan4m4d88v] {
    background: linear-gradient(135deg, #0b5ed7 0%, #0d6efd 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(13, 110, 253, 0.35);
}

.btn-secondary[b-tan4m4d88v] {
    background-color: var(--bhogi-surface);
    color: var(--bhogi-text-secondary);
    border: 2px solid var(--bhogi-border);
}

.btn-secondary:hover[b-tan4m4d88v] {
    border-color: var(--bhogi-primary);
    color: var(--bhogi-primary);
}

/* Dark Mode */
[data-theme="dark"] .error-title[b-tan4m4d88v] {
    color: #ffffff;
}

[data-theme="dark"] .error-details[b-tan4m4d88v] {
    background-color: #1f2937;
}

[data-theme="dark"] .error-label[b-tan4m4d88v] {
    color: #9ca3af;
}

[data-theme="dark"] .btn-secondary[b-tan4m4d88v] {
    background-color: #1f2937;
    border-color: #374151;
    color: #d1d5db;
}

[data-theme="dark"] .btn-secondary:hover[b-tan4m4d88v] {
    border-color: #0d6efd;
    color: #0d6efd;
}

/* Responsive */
@media (max-width: 480px) {
    .error-icon[b-tan4m4d88v] {
        width: 80px;
        height: 80px;
        font-size: 2rem;
    }

    .error-title[b-tan4m4d88v] {
        font-size: 1.5rem;
    }

    .error-message[b-tan4m4d88v] {
        font-size: 1rem;
    }

    .error-actions[b-tan4m4d88v] {
        flex-direction: column;
    }

    .btn-primary[b-tan4m4d88v],
    .btn-secondary[b-tan4m4d88v] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Pages/HelpCenter.razor.rz.scp.css */
.help-page[b-cur2g3nuwt] {
    --help-surface: var(--bhogi-surface-premium);
    --help-border: var(--bhogi-border-light);
    --help-text: var(--bhogi-text);
    --help-muted: var(--bhogi-text-muted);
    --help-accent: var(--bhogi-primary);
    min-height: 60vh;
    color: var(--help-text);
    background: var(--bhogi-surface);
}

.help-container[b-cur2g3nuwt] {
    width: min(1180px, calc(100% - 3rem));
    margin-inline: auto;
}

.help-breadcrumb[b-cur2g3nuwt] {
    border-bottom: 1px solid var(--help-border);
    background: var(--help-surface);
}

.help-breadcrumb ol[b-cur2g3nuwt] {
    display: flex;
    gap: .55rem;
    margin: 0;
    padding: .9rem 0;
    list-style: none;
    color: var(--help-muted);
    font-size: .8125rem;
}

.help-breadcrumb li + li[b-cur2g3nuwt]::before { content: '/'; margin-right: .55rem; opacity: .45; }
.help-breadcrumb a[b-cur2g3nuwt] { color: inherit; text-decoration: none; }
.help-breadcrumb a:hover[b-cur2g3nuwt] { color: var(--help-accent); }

.help-hero[b-cur2g3nuwt] {
    padding: clamp(3.25rem, 8vw, 6.5rem) 0;
    text-align: center;
    background:
        radial-gradient(circle at 15% 15%, color-mix(in srgb, var(--help-accent) 12%, transparent), transparent 27%),
        radial-gradient(circle at 85% 20%, color-mix(in srgb, var(--bhogi-gold) 18%, transparent), transparent 25%),
        linear-gradient(180deg, color-mix(in srgb, var(--help-accent) 4%, var(--bhogi-surface)), var(--bhogi-surface));
}

.help-hero-inner[b-cur2g3nuwt] { max-width: 760px; }

.help-eyebrow[b-cur2g3nuwt],
.help-section-heading > span[b-cur2g3nuwt] {
    display: block;
    margin-bottom: .75rem;
    color: var(--help-accent);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.help-hero h1[b-cur2g3nuwt] {
    margin: 0 0 .9rem;
    font-family: var(--bhogi-font-display, inherit);
    font-size: clamp(2.5rem, 6vw, 4.75rem);
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -.04em;
}

.help-hero p[b-cur2g3nuwt] {
    max-width: 650px;
    margin: 0 auto 1.75rem;
    color: var(--help-muted);
    font-size: clamp(1rem, 2vw, 1.125rem);
    line-height: 1.7;
}

.help-quick-actions[b-cur2g3nuwt] {
    display: flex;
    justify-content: center;
    gap: .75rem;
}

.help-quick-actions a[b-cur2g3nuwt],
.help-contact-card > a[b-cur2g3nuwt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 3.1rem;
    padding: .75rem 1.25rem;
    border-radius: var(--bhogi-radius-lg);
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}

.help-primary-action[b-cur2g3nuwt],
.help-contact-card > a[b-cur2g3nuwt] {
    color: #fff;
    background: var(--bhogi-gradient-primary);
    box-shadow: var(--bhogi-shadow-md);
}

.help-primary-action:hover[b-cur2g3nuwt],
.help-contact-card > a:hover[b-cur2g3nuwt] { color: #fff; transform: translateY(-2px); box-shadow: var(--bhogi-shadow-lg); }

.help-secondary-action[b-cur2g3nuwt] {
    border: 1px solid color-mix(in srgb, var(--help-accent) 36%, var(--help-border));
    color: var(--help-accent);
    background: var(--help-surface);
}

.help-secondary-action:hover[b-cur2g3nuwt] { color: var(--help-accent); transform: translateY(-2px); box-shadow: var(--bhogi-shadow-sm); }

.help-topics[b-cur2g3nuwt] { padding: clamp(3rem, 7vw, 5rem) 0; }
.help-section-heading[b-cur2g3nuwt] { margin-bottom: 1.5rem; }
.help-section-heading h2[b-cur2g3nuwt],
.help-answers-intro h2[b-cur2g3nuwt] { margin: 0; font-size: clamp(1.75rem, 3vw, 2.45rem); letter-spacing: -.03em; }

.help-topic-grid[b-cur2g3nuwt] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.help-topic-card[b-cur2g3nuwt] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid var(--help-border);
    border-radius: var(--bhogi-radius-lg);
    color: var(--help-text);
    background: var(--help-surface);
    box-shadow: var(--bhogi-shadow-sm);
    text-decoration: none;
    transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.help-topic-card:hover[b-cur2g3nuwt] {
    color: var(--help-text);
    border-color: color-mix(in srgb, var(--help-accent) 35%, var(--help-border));
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-md);
}

.help-topic-icon[b-cur2g3nuwt],
.help-contact-icon[b-cur2g3nuwt] {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: .8rem;
    color: var(--help-accent);
    background: color-mix(in srgb, var(--help-accent) 10%, var(--help-surface));
}

.help-topic-card strong[b-cur2g3nuwt],
.help-topic-card small[b-cur2g3nuwt] { display: block; }
.help-topic-card strong[b-cur2g3nuwt] { margin-bottom: .2rem; font-size: .9rem; }
.help-topic-card small[b-cur2g3nuwt] { overflow: hidden; color: var(--help-muted); font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.help-topic-card > i[b-cur2g3nuwt] { color: var(--help-muted); font-size: .7rem; }

.help-answers[b-cur2g3nuwt] {
    scroll-margin-top: 1rem;
    padding: clamp(3rem, 7vw, 5rem) 0;
    border-block: 1px solid var(--help-border);
    background: color-mix(in srgb, var(--help-accent) 3%, var(--help-surface));
}

.help-answers-layout[b-cur2g3nuwt] {
    display: grid;
    grid-template-columns: minmax(240px, .65fr) minmax(0, 1.35fr);
    align-items: start;
    gap: clamp(2rem, 6vw, 5rem);
}

.help-answers-intro[b-cur2g3nuwt] { position: sticky; top: 1.5rem; }
.help-answers-intro p[b-cur2g3nuwt] { margin: .8rem 0 1.25rem; color: var(--help-muted); line-height: 1.65; }
.help-answers-intro > a[b-cur2g3nuwt] { color: var(--help-accent); font-size: .85rem; font-weight: 700; text-decoration: none; }
.help-answers-intro > a i[b-cur2g3nuwt] { margin-left: .3rem; }

.help-faq-list[b-cur2g3nuwt] { display: grid; gap: .75rem; }
.help-faq-list details[b-cur2g3nuwt] { scroll-margin-top: 1rem; border: 1px solid var(--help-border); border-radius: var(--bhogi-radius-lg); background: var(--help-surface); box-shadow: var(--bhogi-shadow-sm); }
.help-faq-list summary[b-cur2g3nuwt] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 4.25rem; padding: 1rem 1.2rem; cursor: pointer; font-size: .9rem; font-weight: 700; list-style: none; }
.help-faq-list summary[b-cur2g3nuwt]::-webkit-details-marker { display: none; }
.help-faq-list summary span[b-cur2g3nuwt] { display: flex; align-items: center; gap: .75rem; }
.help-faq-list summary span i[b-cur2g3nuwt] { width: 1rem; color: var(--help-accent); text-align: center; }
.help-faq-list summary > i[b-cur2g3nuwt] { color: var(--help-muted); font-size: .7rem; transition: transform .2s ease; }
.help-faq-list details[open] summary > i[b-cur2g3nuwt] { transform: rotate(45deg); }
.help-faq-list details > div[b-cur2g3nuwt] { padding: 0 1.2rem 1.2rem 2.95rem; }
.help-faq-list details p[b-cur2g3nuwt] { margin: 0; color: var(--help-muted); font-size: .84rem; line-height: 1.65; }
.help-faq-list details a[b-cur2g3nuwt] { color: var(--help-accent); font-weight: 700; }

.help-contact[b-cur2g3nuwt] { padding: clamp(2.75rem, 6vw, 4.5rem) 0; }
.help-contact-card[b-cur2g3nuwt] { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1.25rem; padding: clamp(1.5rem, 4vw, 2.25rem); border: 1px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--help-border)); border-radius: 1.5rem; background: var(--help-surface); box-shadow: var(--bhogi-shadow-md); }
.help-contact-icon[b-cur2g3nuwt] { width: 3.5rem; height: 3.5rem; border-radius: 50%; font-size: 1.1rem; }
.help-contact-card h2[b-cur2g3nuwt] { margin: 0 0 .35rem; font-size: 1.25rem; }
.help-contact-card p[b-cur2g3nuwt] { margin: 0; color: var(--help-muted); font-size: .82rem; line-height: 1.55; }

.help-topic-card:focus-visible[b-cur2g3nuwt],
.help-quick-actions a:focus-visible[b-cur2g3nuwt],
.help-contact-card > a:focus-visible[b-cur2g3nuwt],
.help-faq-list summary:focus-visible[b-cur2g3nuwt] { outline: 3px solid color-mix(in srgb, var(--help-accent) 28%, transparent); outline-offset: 3px; }

@media (max-width: 820px) {
    .help-topic-grid[b-cur2g3nuwt] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .help-answers-layout[b-cur2g3nuwt] { grid-template-columns: 1fr; }
    .help-answers-intro[b-cur2g3nuwt] { position: static; }
    .help-contact-card[b-cur2g3nuwt] { grid-template-columns: auto 1fr; }
    .help-contact-card > a[b-cur2g3nuwt] { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
    .help-container[b-cur2g3nuwt] { width: min(100% - 2rem, 1180px); }
    .help-hero[b-cur2g3nuwt] { padding: 3rem 0; }
    .help-hero h1[b-cur2g3nuwt] { font-size: 2.6rem; }
    .help-quick-actions[b-cur2g3nuwt] { flex-direction: column; }
    .help-quick-actions a[b-cur2g3nuwt] { width: calc(100% - 4rem); }
    .help-topic-grid[b-cur2g3nuwt] { grid-template-columns: 1fr; }
    .help-topic-card small[b-cur2g3nuwt] { white-space: normal; }
    .help-faq-list summary[b-cur2g3nuwt] { align-items: flex-start; }
    .help-faq-list details > div[b-cur2g3nuwt] { padding-left: 1.2rem; }
    .help-contact-card[b-cur2g3nuwt] { grid-template-columns: 1fr; text-align: center; }
    .help-contact-icon[b-cur2g3nuwt] { margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .help-quick-actions a[b-cur2g3nuwt],
    .help-topic-card[b-cur2g3nuwt],
    .help-faq-list summary > i[b-cur2g3nuwt] { transition: none; }
}
/* /Components/Pages/LegalInformation.razor.rz.scp.css */
.legal-page[b-z993419dkw] {
    --legal-surface: var(--bhogi-surface-premium);
    --legal-border: var(--bhogi-border-light);
    --legal-text: var(--bhogi-text);
    --legal-muted: var(--bhogi-text-muted);
    --legal-accent: var(--bhogi-primary);
    min-height: 60vh;
    color: var(--legal-text);
    background: color-mix(in srgb, var(--legal-accent) 2%, var(--bhogi-surface));
}

.legal-container[b-z993419dkw] { width: min(1120px, calc(100% - 3rem)); margin-inline: auto; }
.legal-breadcrumb[b-z993419dkw] { border-bottom: 1px solid var(--legal-border); background: var(--legal-surface); }
.legal-breadcrumb ol[b-z993419dkw] { display: flex; gap: .55rem; margin: 0; padding: .9rem 0; list-style: none; color: var(--legal-muted); font-size: .8125rem; }
.legal-breadcrumb li + li[b-z993419dkw]::before { content: '/'; margin-right: .55rem; opacity: .45; }
.legal-breadcrumb a[b-z993419dkw] { color: inherit; text-decoration: none; }
.legal-breadcrumb a:hover[b-z993419dkw] { color: var(--legal-accent); }

.legal-hero[b-z993419dkw] {
    padding: clamp(2.75rem, 6vw, 4.75rem) 0;
    border-bottom: 1px solid var(--legal-border);
    background:
        radial-gradient(circle at 88% 20%, color-mix(in srgb, var(--bhogi-gold) 18%, transparent), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--legal-accent) 7%, var(--bhogi-surface)), var(--bhogi-surface));
}

.legal-hero-layout[b-z993419dkw] { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2rem; }
.legal-eyebrow[b-z993419dkw] { display: block; margin-bottom: .65rem; color: var(--legal-accent); font-size: .74rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.legal-hero h1[b-z993419dkw] { margin: 0 0 .75rem; font-family: var(--bhogi-font-display, inherit); font-size: clamp(2.25rem, 5vw, 4rem); font-weight: 700; line-height: 1.05; letter-spacing: -.04em; }
.legal-hero p[b-z993419dkw] { max-width: 720px; margin: 0; color: var(--legal-muted); font-size: clamp(.95rem, 2vw, 1.08rem); line-height: 1.7; }
.legal-hero-icon[b-z993419dkw] { display: grid; place-items: center; width: clamp(5rem, 9vw, 7rem); height: clamp(5rem, 9vw, 7rem); border: 1px solid color-mix(in srgb, var(--bhogi-gold) 34%, var(--legal-border)); border-radius: 50%; color: var(--legal-accent); background: color-mix(in srgb, var(--legal-surface) 92%, transparent); box-shadow: var(--bhogi-shadow-lg); font-size: clamp(1.5rem, 3vw, 2.2rem); }

.legal-layout[b-z993419dkw] { display: grid; grid-template-columns: 240px minmax(0, 1fr); align-items: start; gap: clamp(2rem, 6vw, 5rem); padding-block: clamp(2.5rem, 6vw, 4.5rem); }
.legal-sidebar[b-z993419dkw] { position: sticky; top: 1.5rem; display: grid; gap: 1rem; }
.legal-sidebar nav[b-z993419dkw] { display: grid; overflow: hidden; border: 1px solid var(--legal-border); border-radius: var(--bhogi-radius-lg); background: var(--legal-surface); box-shadow: var(--bhogi-shadow-sm); }
.legal-sidebar nav > span[b-z993419dkw] { padding: .85rem 1rem; border-bottom: 1px solid var(--legal-border); color: var(--legal-muted); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.legal-sidebar nav a[b-z993419dkw] { display: flex; align-items: center; gap: .65rem; padding: .9rem 1rem; color: var(--legal-muted); font-size: .8rem; font-weight: 650; text-decoration: none; }
.legal-sidebar nav a + a[b-z993419dkw] { border-top: 1px solid var(--legal-border); }
.legal-sidebar nav a:hover[b-z993419dkw] { color: var(--legal-accent); background: color-mix(in srgb, var(--legal-accent) 5%, var(--legal-surface)); }
.legal-sidebar nav a.active[b-z993419dkw] { color: var(--legal-accent); background: color-mix(in srgb, var(--legal-accent) 9%, var(--legal-surface)); box-shadow: inset 3px 0 var(--legal-accent); }
.legal-sidebar nav a i[b-z993419dkw] { width: 1rem; text-align: center; }

.legal-help-card[b-z993419dkw] { padding: 1.1rem; border: 1px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--legal-border)); border-radius: var(--bhogi-radius-lg); background: var(--legal-surface); }
.legal-help-card > span[b-z993419dkw] { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; margin-bottom: .8rem; border-radius: 50%; color: var(--legal-accent); background: color-mix(in srgb, var(--legal-accent) 10%, var(--legal-surface)); }
.legal-help-card strong[b-z993419dkw] { display: block; margin-bottom: .35rem; font-size: .85rem; }
.legal-help-card p[b-z993419dkw] { margin: 0 0 .75rem; color: var(--legal-muted); font-size: .73rem; line-height: 1.55; }
.legal-help-card a[b-z993419dkw] { color: var(--legal-accent); font-size: .75rem; font-weight: 700; text-decoration: none; }
.legal-help-card a i[b-z993419dkw] { margin-left: .25rem; }

.legal-article[b-z993419dkw] { min-width: 0; overflow: hidden; border: 1px solid var(--legal-border); border-radius: 1.25rem; background: var(--legal-surface); box-shadow: var(--bhogi-shadow-md); }
.legal-article-header[b-z993419dkw] { padding: 1.25rem clamp(1.25rem, 4vw, 2.5rem); border-bottom: 1px solid var(--legal-border); background: color-mix(in srgb, var(--legal-accent) 4%, var(--legal-surface)); }
.legal-article-header span[b-z993419dkw] { display: flex; align-items: center; gap: .5rem; margin-bottom: .3rem; color: var(--legal-accent); font-size: .75rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.legal-article-header p[b-z993419dkw] { margin: 0; color: var(--legal-muted); font-size: .77rem; line-height: 1.55; }

.legal-prose[b-z993419dkw] { padding: clamp(1.5rem, 5vw, 3rem); color: var(--legal-muted); font-size: .9rem; line-height: 1.8; }
.legal-prose[b-z993419dkw]  h2 { margin: 2.2rem 0 .7rem; color: var(--legal-text); font-size: 1.2rem; line-height: 1.3; }
.legal-prose[b-z993419dkw]  h2:first-child { margin-top: 0; }
.legal-prose[b-z993419dkw]  h3 { margin: 1.6rem 0 .55rem; color: var(--legal-text); font-size: 1rem; }
.legal-prose[b-z993419dkw]  p { margin: 0 0 1rem; }
.legal-prose[b-z993419dkw]  ul,
.legal-prose[b-z993419dkw]  ol { padding-left: 1.25rem; }
.legal-prose[b-z993419dkw]  a { color: var(--legal-accent); font-weight: 700; }

.legal-order-note[b-z993419dkw] { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1rem; margin: 0 clamp(1.25rem, 5vw, 3rem) clamp(1.5rem, 5vw, 3rem); padding: 1rem; border: 1px solid color-mix(in srgb, var(--bhogi-gold) 32%, var(--legal-border)); border-radius: var(--bhogi-radius-lg); background: color-mix(in srgb, var(--bhogi-gold) 7%, var(--legal-surface)); }
.legal-order-note > i[b-z993419dkw] { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 50%; color: var(--legal-accent); background: var(--legal-surface); }
.legal-order-note strong[b-z993419dkw] { display: block; margin-bottom: .2rem; font-size: .82rem; }
.legal-order-note p[b-z993419dkw] { margin: 0; color: var(--legal-muted); font-size: .73rem; line-height: 1.5; }
.legal-order-note a[b-z993419dkw] { padding: .55rem .8rem; border-radius: .55rem; color: #fff; background: var(--bhogi-gradient-primary); font-size: .75rem; font-weight: 700; text-decoration: none; white-space: nowrap; }

.legal-skeleton[b-z993419dkw] { display: grid; gap: 1rem; padding: 2.5rem; }
.legal-skeleton span[b-z993419dkw] { height: 1rem; border-radius: .4rem; background: color-mix(in srgb, var(--legal-muted) 14%, var(--legal-surface)); animation: legal-pulse-b-z993419dkw 1.3s ease-in-out infinite; }
.legal-skeleton span:first-child[b-z993419dkw] { width: 45%; height: 1.5rem; }
.legal-skeleton span:nth-child(3)[b-z993419dkw] { width: 88%; }
.legal-skeleton span:last-child[b-z993419dkw] { width: 72%; }
@keyframes legal-pulse-b-z993419dkw { 50% { opacity: .45; } }

.legal-page a:focus-visible[b-z993419dkw] { outline: 3px solid color-mix(in srgb, var(--legal-accent) 28%, transparent); outline-offset: 3px; }

@media (max-width: 760px) {
    .legal-hero-icon[b-z993419dkw] { display: none; }
    .legal-hero-layout[b-z993419dkw],
    .legal-layout[b-z993419dkw] { grid-template-columns: 1fr; }
    .legal-sidebar[b-z993419dkw] { position: static; }
    .legal-sidebar nav[b-z993419dkw] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .legal-sidebar nav > span[b-z993419dkw] { grid-column: 1 / -1; }
    .legal-sidebar nav a[b-z993419dkw] { justify-content: center; text-align: center; }
    .legal-sidebar nav a + a[b-z993419dkw] { border-top: none; border-left: 1px solid var(--legal-border); }
    .legal-sidebar nav a.active[b-z993419dkw] { box-shadow: inset 0 -3px var(--legal-accent); }
    .legal-help-card[b-z993419dkw] { display: none; }
}

@media (max-width: 520px) {
    .legal-container[b-z993419dkw] { width: min(100% - 2rem, 1120px); }
    .legal-hero[b-z993419dkw] { padding: 2.75rem 0; }
    .legal-hero h1[b-z993419dkw] { font-size: 2.45rem; }
    .legal-sidebar nav[b-z993419dkw] { overflow-x: auto; }
    .legal-sidebar nav a[b-z993419dkw] { min-width: 0; padding-inline: .55rem; font-size: .7rem; }
    .legal-sidebar nav a i[b-z993419dkw] { display: none; }
    .legal-order-note[b-z993419dkw] { grid-template-columns: auto 1fr; }
    .legal-order-note a[b-z993419dkw] { grid-column: 1 / -1; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .legal-skeleton span[b-z993419dkw] { animation: none; }
}
/* /Components/Pages/Login.razor.rz.scp.css */
/* ============================================
   Login Page — Enterprise Premium
   ============================================ */

.login-page[b-xcbdolsrx1] {
    padding-bottom: 3rem;
    background: linear-gradient(180deg, var(--bhogi-surface-raised, #fcfcfc) 0%, var(--bhogi-surface, #ffffff) 45%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface)) 100%);
}

.login-page .breadcrumb-nav[b-xcbdolsrx1] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
    padding: 0.75rem 0;
    margin-bottom: 2rem;
    border-bottom: 1px solid var(--bhogi-border-light);
}

.login-page .breadcrumb[b-xcbdolsrx1] {
    margin-bottom: 0;
    font-size: 0.875rem;
}

.login-page .breadcrumb-item a[b-xcbdolsrx1] {
    color: var(--bhogi-text-muted);
    text-decoration: none;
    transition: color 0.2s ease;
}

.login-page .breadcrumb-item a:hover[b-xcbdolsrx1] {
    color: var(--bhogi-primary, #2563eb);
}

.login-page .page-title[b-xcbdolsrx1] {
    text-align: center;
    margin-bottom: 1.5rem;
}

.login-page .page-title h1[b-xcbdolsrx1] {
    font-family: 'Playfair Display', serif;
    font-size: 2rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    letter-spacing: -0.02em;
}

.login-page .card[b-xcbdolsrx1] {
    border: none;
    border-radius: var(--bhogi-radius-xl);
    box-shadow: var(--bhogi-shadow-md);
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
}

/* Sign In Block */
.login-box[b-xcbdolsrx1] {
    background: transparent;
}

.login-box h2[b-xcbdolsrx1] {
    font-weight: 700;
    color: var(--bhogi-text);
    font-family: 'Playfair Display', serif;
}

/* Password toggle button */
.password-field[b-xcbdolsrx1] {
    position: relative;
}

.btn-toggle-pwd[b-xcbdolsrx1] {
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: var(--bhogi-text-muted);
    cursor: pointer;
    padding: 0.25rem;
    z-index: 5;
    font-size: 0.9rem;
    transition: color 0.2s ease;
}

.btn-toggle-pwd:hover[b-xcbdolsrx1] {
    color: var(--bhogi-primary-hover);
}

/* Login button */
.btn-login[b-xcbdolsrx1] {
    font-weight: 700;
    padding: 0.875rem 1.5rem;
    border-radius: var(--bhogi-radius, 0.5rem);
    transition: all 0.2s var(--bhogi-ease, ease);
    background: var(--bhogi-gradient-primary);
    border: none;
    color: #fff;
    letter-spacing: 0.01em;
}

.btn-login:hover:not(:disabled)[b-xcbdolsrx1] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover) 0%, var(--bhogi-primary) 100%);
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0,0,0,0.08));
}

.btn-login:disabled[b-xcbdolsrx1] {
    opacity: 0.65;
}

/* Forgot password */
.forgot-password a[b-xcbdolsrx1] {
    color: var(--bhogi-text-muted);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s ease;
}

.forgot-password a:hover[b-xcbdolsrx1] {
    color: var(--bhogi-primary, #2563eb);
    text-decoration: underline;
}

/* Register Block */
.register-box[b-xcbdolsrx1] {
    background: linear-gradient(180deg, var(--bhogi-surface-premium, #f5f5f5) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, var(--bhogi-surface)) 100%);
    border-left: 1px solid var(--bhogi-border, #e2e8f0);
}

.register-box h3[b-xcbdolsrx1] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0.75rem;
    font-family: 'Playfair Display', serif;
}

.register-box p[b-xcbdolsrx1] {
    font-size: 0.9rem;
    line-height: 1.7;
    color: var(--bhogi-text-secondary);
}

.register-button[b-xcbdolsrx1] {
    font-weight: 700;
    padding: 0.875rem 1.5rem;
    border-radius: var(--bhogi-radius, 0.5rem);
    transition: all 0.2s var(--bhogi-ease, ease);
    background: var(--bhogi-gradient-gold);
    border: none;
    color: var(--bhogi-text, #0f172a);
}

.register-button:hover[b-xcbdolsrx1] {
    background: linear-gradient(135deg, var(--bhogi-gold-hover) 0%, var(--bhogi-gold) 45%, var(--bhogi-gold-deep) 100%);
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0,0,0,0.08));
}

/* Alert styling */
.alert-danger[b-xcbdolsrx1] {
    border-radius: 0.625rem;
    font-size: 0.9rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-maroon) 18%, transparent);
    background: linear-gradient(135deg, var(--bhogi-maroon-soft) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, white) 100%);
}

/* Form floating label adjustments */
.form-floating > .form-control:focus ~ label[b-xcbdolsrx1],
.form-floating > .form-control:not(:placeholder-shown) ~ label[b-xcbdolsrx1] {
    color: var(--bhogi-primary, #2563eb);
}

/* Responsive */
@media (max-width: 991.98px) {
    .register-box[b-xcbdolsrx1] {
        border-left: none;
        border-top: 1px solid var(--bhogi-border-light);
    }
}

@media (max-width: 767.98px) {
    .login-page .page-title h1[b-xcbdolsrx1] {
        font-size: 1.5rem;
    }

    .login-box h2[b-xcbdolsrx1] {
        font-size: 1.15rem;
    }
}
/* /Components/Pages/ManufacturerDetail.razor.rz.scp.css */
/* ============================================================
   MANUFACTURER DETAIL — Enterprise Premium Brand Page
   ============================================================ */

.mfr-page[b-in5sij535c] {
    --mfr-bg: #ffffff;
    --mfr-surface: #f8fafc;
    --mfr-border: #e2e8f0;
    --mfr-text: #334155;
    --mfr-text-muted: #64748b;
    --mfr-heading: #0f172a;
    --mfr-accent: #3b82f6;
    --mfr-accent-soft: rgba(59,130,246,.08);
    --mfr-sale: #ef4444;
    --mfr-radius: 0.75rem;
    --mfr-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--mfr-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-in5sij535c] {
    background: var(--mfr-surface);
    border-bottom: 1px solid var(--mfr-border);
    padding: 0.875rem 0;
}

.crumbs[b-in5sij535c] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--mfr-text-muted);
}

.crumbs li + li[b-in5sij535c]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-in5sij535c] {
    color: var(--mfr-text-muted);
    text-decoration: none;
    transition: color .2s var(--mfr-ease);
}
.crumbs a:hover[b-in5sij535c] { color: var(--mfr-accent); }
.crumbs .active[b-in5sij535c] { color: var(--mfr-heading); font-weight: 600; }

/* ── Container ── */
.mfr-container[b-in5sij535c] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Hero ── */
.mfr-hero[b-in5sij535c] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    max-width: 700px;
    margin: 0 auto;
    animation: mfr-fadeIn-b-in5sij535c .4s var(--mfr-ease) both;
}

.mfr-logo[b-in5sij535c] {
    width: 120px;
    height: 120px;
    margin: 0 auto 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mfr-surface);
    border: 1px solid var(--mfr-border);
    border-radius: var(--mfr-radius);
    padding: 1rem;
}

.mfr-logo img[b-in5sij535c] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.mfr-title[b-in5sij535c] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--mfr-heading);
    margin: 0 0 0.75rem;
    letter-spacing: -0.02em;
}

.mfr-desc[b-in5sij535c] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--mfr-text);
}

.mfr-desc a[b-in5sij535c] {
    color: var(--mfr-accent);
}

@keyframes mfr-fadeIn-b-in5sij535c {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Products Header ── */
.mfr-products-header[b-in5sij535c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 0.75rem;
    margin-bottom: 1.5rem;
    border-bottom: 2px solid #f0f0f0;
    position: relative;
}

.mfr-products-header[b-in5sij535c]::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 80px;
    height: 2px;
    background: linear-gradient(90deg, var(--mfr-accent), #818cf8);
    border-radius: 1px;
}

.mfr-products-header h2[b-in5sij535c] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--mfr-heading);
    margin: 0;
}

.mfr-count[b-in5sij535c] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--mfr-text-muted);
}

/* ── Grid ── */
.mfr-grid[b-in5sij535c] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: mfr-fadeIn-b-in5sij535c .5s var(--mfr-ease) .1s both;
}

/* ── Product Card ── */
.mfr-card[b-in5sij535c] {
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--mfr-bg);
    border: 1px solid var(--mfr-border);
    border-radius: var(--mfr-radius);
    text-decoration: none;
    color: var(--mfr-text);
    overflow: hidden;
    transition: border-color .25s var(--mfr-ease), box-shadow .25s var(--mfr-ease), transform .2s var(--mfr-ease);
}

.mfr-card:hover[b-in5sij535c] {
    border-color: var(--mfr-accent);
    box-shadow: 0 6px 24px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

.mfr-badge[b-in5sij535c] {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    background: var(--mfr-sale);
    color: #fff;
    z-index: 1;
}

.mfr-card-img[b-in5sij535c] {
    width: 100%;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: var(--mfr-surface);
}

.mfr-card-img img[b-in5sij535c] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--mfr-ease);
}

.mfr-card:hover .mfr-card-img img[b-in5sij535c] { transform: scale(1.05); }

.mfr-card-body[b-in5sij535c] {
    padding: 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.mfr-card-body h3[b-in5sij535c] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--mfr-heading);
    margin: 0 0 0.5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.mfr-card-price[b-in5sij535c] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-top: auto;
}

.mfr-current[b-in5sij535c] { font-size: 1rem; font-weight: 700; color: var(--mfr-heading); }
.mfr-old[b-in5sij535c] { font-size: 0.8125rem; color: var(--mfr-text-muted); text-decoration: line-through; }

/* ── Skeleton ── */
.mfr-skeleton[b-in5sij535c] { padding: 3rem 0; }
.mfr-skeleton .sk-header[b-in5sij535c] {
    height: 2.25rem;
    width: 40%;
    margin: 0 auto 2rem;
    border-radius: 0.5rem;
}

.mfr-skeleton-grid[b-in5sij535c] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
}

.mfr-skeleton .sk-card[b-in5sij535c] { border-radius: var(--mfr-radius); overflow: hidden; }
.mfr-skeleton .sk-img[b-in5sij535c] { aspect-ratio: 1; }
.mfr-skeleton .sk-name[b-in5sij535c] { height: 1rem; width: 75%; margin: 1rem 1rem 0.5rem; border-radius: 0.375rem; }
.mfr-skeleton .sk-price[b-in5sij535c] { height: 0.875rem; width: 35%; margin: 0 1rem 1rem; border-radius: 0.375rem; }

.mfr-skeleton .sk-header[b-in5sij535c],
.mfr-skeleton .sk-img[b-in5sij535c],
.mfr-skeleton .sk-name[b-in5sij535c],
.mfr-skeleton .sk-price[b-in5sij535c] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-in5sij535c 1.5s ease infinite;
}

@keyframes sk-shimmer-b-in5sij535c {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty / No Products ── */
.mfr-empty[b-in5sij535c], .mfr-no-products[b-in5sij535c] {
    text-align: center;
    padding: 4rem 2rem;
}

.mfr-empty i[b-in5sij535c], .mfr-no-products i[b-in5sij535c] {
    font-size: 3rem;
    color: var(--mfr-border);
    margin-bottom: 1rem;
    display: block;
}

.mfr-empty h2[b-in5sij535c] { font-size: 1.375rem; font-weight: 700; color: var(--mfr-heading); margin: 0 0 0.5rem; }
.mfr-empty p[b-in5sij535c], .mfr-no-products p[b-in5sij535c] { font-size: 0.9375rem; color: var(--mfr-text-muted); margin: 0 0 1.5rem; }

.mfr-btn[b-in5sij535c] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--mfr-accent);
    border-radius: var(--mfr-radius);
    text-decoration: none;
    transition: background .2s var(--mfr-ease), transform .15s var(--mfr-ease);
}

.mfr-btn:hover[b-in5sij535c] { background: #2563eb; transform: translateY(-1px); }

/* ── Responsive ── */
@media (max-width: 768px) {
    .mfr-container[b-in5sij535c] { padding: 0 1rem; }
    .mfr-title[b-in5sij535c] { font-size: 1.5rem; }
    .mfr-grid[b-in5sij535c] { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.75rem; }
    .mfr-card-body[b-in5sij535c] { padding: 0.75rem; }
    .mfr-logo[b-in5sij535c] { width: 80px; height: 80px; }
}

@media (prefers-reduced-motion: reduce) {
    .mfr-hero[b-in5sij535c], .mfr-grid[b-in5sij535c] { animation: none; }
    .mfr-skeleton .sk-header[b-in5sij535c], .mfr-skeleton .sk-img[b-in5sij535c], .mfr-skeleton .sk-name[b-in5sij535c], .mfr-skeleton .sk-price[b-in5sij535c] { animation: none; }
}
/* /Components/Pages/Manufacturers.razor.rz.scp.css */
/* ============================================================
   MANUFACTURERS / BRANDS — Enterprise Premium Grid
   ============================================================ */

.brands-page[b-5zp0rjlqnl] {
    --bp-bg: var(--bhogi-bg, #ffffff);
    --bp-surface: var(--bhogi-surface, #f8fafc);
    --bp-border: var(--bhogi-border, #e2e8f0);
    --bp-text: var(--bhogi-text, #334155);
    --bp-text-muted: var(--bhogi-text-muted, #64748b);
    --bp-heading: var(--bhogi-text, #0f172a);
    --bp-accent: var(--bhogi-primary, #0f766e);
    --bp-accent-soft: color-mix(in srgb, var(--bp-accent) 9%, transparent);
    --bp-radius: 0.75rem;
    --bp-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--bp-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-5zp0rjlqnl] {
    background: var(--bp-surface);
    border-bottom: 1px solid var(--bp-border);
    padding: 0.875rem 0;
}

.crumbs[b-5zp0rjlqnl] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--bp-text-muted);
}

.crumbs li + li[b-5zp0rjlqnl]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-5zp0rjlqnl] {
    color: var(--bp-text-muted);
    text-decoration: none;
    transition: color .2s var(--bp-ease);
}
.crumbs a:hover[b-5zp0rjlqnl] { color: var(--bp-accent); }
.crumbs .active[b-5zp0rjlqnl] { color: var(--bp-heading); font-weight: 600; }

/* ── Container ── */
.bp-container[b-5zp0rjlqnl] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ── */
.bp-header[b-5zp0rjlqnl] {
    text-align: center;
    padding: 2.5rem 0 1.5rem;
    animation: bp-fadeIn-b-5zp0rjlqnl .4s var(--bp-ease) both;
}

.bp-title[b-5zp0rjlqnl] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--bp-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
}

.bp-subtitle[b-5zp0rjlqnl] {
    font-size: 1.0625rem;
    color: var(--bp-text-muted);
    margin: 0;
    line-height: 1.6;
}

@keyframes bp-fadeIn-b-5zp0rjlqnl {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Search Bar ── */
.bp-search-bar[b-5zp0rjlqnl] {
    max-width: 420px;
    margin: 0 auto 2rem;
}

.bp-count[b-5zp0rjlqnl] {
    margin: .65rem 0 0;
    text-align: center;
    font-size: .78rem;
    color: var(--bp-text-muted);
}

.bp-search-wrap[b-5zp0rjlqnl] {
    position: relative;
    display: flex;
    align-items: center;
}

.bp-search-wrap > i[b-5zp0rjlqnl] {
    position: absolute;
    left: 1rem;
    font-size: 0.8125rem;
    color: var(--bp-text-muted);
    pointer-events: none;
}

.bp-search-wrap input[b-5zp0rjlqnl] {
    width: 100%;
    padding: 0.75rem 2.5rem 0.75rem 2.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--bp-border);
    border-radius: 9999px;
    background: var(--bp-surface);
    color: var(--bp-text);
    outline: none;
    transition: border-color .2s var(--bp-ease), box-shadow .2s var(--bp-ease);
    font-family: inherit;
}

.bp-search-wrap input:focus[b-5zp0rjlqnl] {
    border-color: var(--bp-accent);
    box-shadow: 0 0 0 3px rgba(59,130,246,.12);
}

.bp-search-clear[b-5zp0rjlqnl] {
    position: absolute;
    right: 0.75rem;
    background: none;
    border: none;
    color: var(--bp-text-muted);
    cursor: pointer;
    font-size: 0.75rem;
    padding: 0.25rem;
}

/* ── Filter Bar ── */
/* ── Grid ── */
.bp-grid[b-5zp0rjlqnl] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: bp-fadeIn-b-5zp0rjlqnl .5s var(--bp-ease) .1s both;
}

/* ── Brand Card ── */
.bp-card[b-5zp0rjlqnl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem 1rem 1.25rem;
    background: var(--bp-surface);
    border: 1px solid var(--bp-border);
    border-radius: var(--bp-radius);
    text-decoration: none;
    color: var(--bp-text);
    transition: border-color .25s var(--bp-ease), box-shadow .25s var(--bp-ease), transform .2s var(--bp-ease);
    position: relative;
    overflow: hidden;
}

.bp-card:hover[b-5zp0rjlqnl] {
    border-color: var(--bp-accent);
    box-shadow: 0 4px 20px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

.bp-card-img[b-5zp0rjlqnl] {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.bp-card-img img[b-5zp0rjlqnl] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--bp-ease);
}

.bp-card:hover .bp-card-img img[b-5zp0rjlqnl] {
    transform: scale(1.05);
}

.bp-card-placeholder[b-5zp0rjlqnl] {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bp-accent-soft);
    border-radius: 0.625rem;
    color: var(--bp-accent);
    font-size: 2rem;
}

.bp-card-name[b-5zp0rjlqnl] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bp-heading);
    text-align: center;
    line-height: 1.4;
}

.bp-card-arrow[b-5zp0rjlqnl] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    font-size: 0.6875rem;
    color: var(--bp-accent);
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity .25s var(--bp-ease), transform .25s var(--bp-ease);
}

.bp-card:hover .bp-card-arrow[b-5zp0rjlqnl] {
    opacity: 1;
    transform: translateX(0);
}

/* ── Skeleton ── */
.bp-skeleton[b-5zp0rjlqnl] {
    pointer-events: none;
}

.bp-skeleton .sk-img[b-5zp0rjlqnl] {
    width: 80px;
    height: 80px;
    border-radius: 0.625rem;
    margin-bottom: 1rem;
}

.bp-skeleton .sk-name[b-5zp0rjlqnl] {
    width: 60%;
    height: 1rem;
    border-radius: 0.375rem;
}

.bp-skeleton .sk-img[b-5zp0rjlqnl],
.bp-skeleton .sk-name[b-5zp0rjlqnl] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-5zp0rjlqnl 1.5s ease infinite;
}

@keyframes sk-shimmer-b-5zp0rjlqnl {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty / No Results ── */
.bp-empty[b-5zp0rjlqnl], .bp-no-results[b-5zp0rjlqnl] {
    text-align: center;
    padding: 4rem 2rem;
}

.bp-empty i[b-5zp0rjlqnl], .bp-no-results i[b-5zp0rjlqnl] {
    font-size: 3rem;
    color: var(--bp-border);
    margin-bottom: 1rem;
    display: block;
}

.bp-empty h2[b-5zp0rjlqnl] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--bp-heading);
    margin: 0 0 0.5rem;
}

.bp-empty p[b-5zp0rjlqnl], .bp-no-results p[b-5zp0rjlqnl] {
    font-size: 0.9375rem;
    color: var(--bp-text-muted);
    margin: 0 0 1.5rem;
}

.bp-btn[b-5zp0rjlqnl] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--bp-accent);
    border-radius: var(--bp-radius);
    text-decoration: none;
    border: 0;
    cursor: pointer;
    transition: background .2s var(--bp-ease), transform .15s var(--bp-ease);
}

.bp-btn:hover[b-5zp0rjlqnl] {
    filter: brightness(.9);
    transform: translateY(-1px);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .bp-container[b-5zp0rjlqnl] { padding: 0 1rem; }
    .bp-title[b-5zp0rjlqnl] { font-size: 1.5rem; }
    .bp-grid[b-5zp0rjlqnl] { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 1rem; }
    .bp-card[b-5zp0rjlqnl] { padding: 1.25rem 0.75rem 1rem; }
    .bp-card-img[b-5zp0rjlqnl] { width: 70px; height: 70px; }
}

@media (prefers-reduced-motion: reduce) {
    .bp-header[b-5zp0rjlqnl], .bp-grid[b-5zp0rjlqnl] { animation: none; }
    .bp-skeleton .sk-img[b-5zp0rjlqnl], .bp-skeleton .sk-name[b-5zp0rjlqnl] { animation: none; }
}
/* /Components/Pages/NewProducts.razor.rz.scp.css */
/* ============================================================
   NEW PRODUCTS — Enterprise Premium Product Grid
   ============================================================ */

.newproducts-page[b-gantjpbqmx] {
    --np-bg: #ffffff;
    --np-surface: #f8fafc;
    --np-border: #e2e8f0;
    --np-text: #334155;
    --np-text-muted: #64748b;
    --np-heading: #0f172a;
    --np-accent: #3b82f6;
    --np-accent-soft: rgba(59,130,246,.08);
    --np-sale: #ef4444;
    --np-new: #8b5cf6;
    --np-radius: 0.75rem;
    --np-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--np-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-gantjpbqmx] {
    background: var(--np-surface);
    border-bottom: 1px solid var(--np-border);
    padding: 0.875rem 0;
}

.crumbs[b-gantjpbqmx] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--np-text-muted);
}

.crumbs li + li[b-gantjpbqmx]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-gantjpbqmx] {
    color: var(--np-text-muted);
    text-decoration: none;
    transition: color .2s var(--np-ease);
}
.crumbs a:hover[b-gantjpbqmx] { color: var(--np-accent); }
.crumbs .active[b-gantjpbqmx] { color: var(--np-heading); font-weight: 600; }

/* ── Container ── */
.np-container[b-gantjpbqmx] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ── */
.np-header[b-gantjpbqmx] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    margin: 1.25rem 0 1.75rem;
    background: linear-gradient(180deg, rgba(245, 243, 255, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid rgba(139, 92, 246, 0.12);
    border-radius: 1.25rem;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
    animation: np-fadeIn-b-gantjpbqmx .4s var(--np-ease) both;
}

.np-kicker[b-gantjpbqmx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.75rem;
    margin-bottom: 0.875rem;
    border-radius: 999px;
    background: rgba(139, 92, 246, 0.12);
    color: #6d28d9;
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.np-title[b-gantjpbqmx] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.np-title i[b-gantjpbqmx] {
    color: var(--np-new);
    font-size: 1.5rem;
}

.np-subtitle[b-gantjpbqmx] {
    font-size: 1.0625rem;
    color: var(--np-text-muted);
    margin: 0;
    line-height: 1.6;
}

.np-highlights[b-gantjpbqmx] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.np-highlight[b-gantjpbqmx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: var(--np-heading);
    font-size: 0.75rem;
    font-weight: 700;
}

@keyframes np-fadeIn-b-gantjpbqmx {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Product Grid ── */
.np-grid[b-gantjpbqmx] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: np-fadeIn-b-gantjpbqmx .5s var(--np-ease) .1s both;
}

/* ── Product Card ── */
.np-card[b-gantjpbqmx] {
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--np-bg);
    border: 1px solid var(--np-border);
    border-radius: var(--np-radius);
    text-decoration: none;
    color: var(--np-text);
    overflow: hidden;
    transition: border-color .25s var(--np-ease), box-shadow .25s var(--np-ease), transform .2s var(--np-ease);
}

.np-card:hover[b-gantjpbqmx] {
    border-color: var(--np-accent);
    box-shadow: 0 6px 24px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

/* Badges */
.np-badge[b-gantjpbqmx] {
    position: absolute;
    top: 0.75rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    z-index: 1;
}

.np-badge-new[b-gantjpbqmx] {
    right: 0.75rem;
    background: var(--np-new);
    color: #fff;
}

.np-badge-sale[b-gantjpbqmx] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
}

.np-badge-bestseller[b-gantjpbqmx] {
    right: 0.75rem;
    background: #f59e0b;
    color: #fff;
}

.np-badge-trending[b-gantjpbqmx] {
    right: 0.75rem;
    background: #8b5cf6;
    color: #fff;
}

.np-badge-discount[b-gantjpbqmx] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
    font-weight: 800;
}

/* Rating Stars */
.np-card-rating[b-gantjpbqmx] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    color: #f59e0b;
}

.np-card-rating .rating-count[b-gantjpbqmx] {
    color: var(--np-text-muted);
    font-size: 0.6875rem;
    margin-left: 0.125rem;
}

.np-price-from[b-gantjpbqmx] {
    font-size: 0.75rem;
    color: var(--np-text-muted);
    font-weight: 500;
}

/* Card Image */
.np-card-img[b-gantjpbqmx] {
    width: 100%;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: var(--np-surface);
}

.np-card-img img[b-gantjpbqmx] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--np-ease);
}

.np-card:hover .np-card-img img[b-gantjpbqmx] {
    transform: scale(1.05);
}

/* Card Body */
.np-card-body[b-gantjpbqmx] {
    padding: 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.np-card-name[b-gantjpbqmx] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.np-card-price[b-gantjpbqmx] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-top: auto;
}

.np-price-current[b-gantjpbqmx] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--np-heading);
}

.np-price-old[b-gantjpbqmx] {
    font-size: 0.8125rem;
    color: var(--np-text-muted);
    text-decoration: line-through;
}

/* ── Skeleton ── */
.np-skeleton[b-gantjpbqmx] {
    pointer-events: none;
}

.np-skeleton .sk-img[b-gantjpbqmx] {
    width: 100%;
    aspect-ratio: 1;
    background: var(--np-surface);
}

.np-skeleton .sk-name[b-gantjpbqmx] {
    height: 1rem;
    width: 75%;
    margin: 1rem 1rem 0.5rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-price[b-gantjpbqmx] {
    height: 0.875rem;
    width: 35%;
    margin: 0 1rem 1rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-name[b-gantjpbqmx],
.np-skeleton .sk-price[b-gantjpbqmx] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-gantjpbqmx 1.5s ease infinite;
}

@keyframes sk-shimmer-b-gantjpbqmx {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty ── */
.np-empty[b-gantjpbqmx] {
    text-align: center;
    padding: 4rem 2rem;
}

.np-empty i[b-gantjpbqmx] {
    font-size: 3rem;
    color: var(--np-border);
    margin-bottom: 1rem;
    display: block;
}

.np-empty h2[b-gantjpbqmx] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
}

.np-empty p[b-gantjpbqmx] {
    font-size: 0.9375rem;
    color: var(--np-text-muted);
    margin: 0 0 1.5rem;
}

.np-btn[b-gantjpbqmx] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--np-accent);
    border-radius: var(--np-radius);
    text-decoration: none;
    transition: background .2s var(--np-ease), transform .15s var(--np-ease);
}

.np-btn:hover[b-gantjpbqmx] {
    background: #2563eb;
    transform: translateY(-1px);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .np-container[b-gantjpbqmx] { padding: 0 1rem; }
    .np-header[b-gantjpbqmx] { padding: 1.5rem 1rem 1.25rem; margin: 1rem 0 1.25rem; border-radius: 1rem; }
    .np-title[b-gantjpbqmx] { font-size: 1.5rem; }
    .np-grid[b-gantjpbqmx] { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.75rem; }
    .np-card-body[b-gantjpbqmx] { padding: 0.75rem; }
    .np-highlights[b-gantjpbqmx] { gap: 0.4rem; }
    .np-highlight[b-gantjpbqmx] { font-size: 0.6875rem; padding: 0.35rem 0.625rem; }
}

@media (prefers-reduced-motion: reduce) {
    .np-header[b-gantjpbqmx], .np-grid[b-gantjpbqmx] { animation: none; }
    .np-skeleton .sk-name[b-gantjpbqmx], .np-skeleton .sk-price[b-gantjpbqmx] { animation: none; }
}

/* ============================================
   ARTLIST GRID SYSTEM - 4 Column Responsive Layout
   ============================================ */
.artlist[b-gantjpbqmx] {
    --artlist-gap: 1.25rem;
}

.artlist-grid[b-gantjpbqmx] {
    display: grid;
    gap: var(--artlist-gap);
}

.artlist-4-cols[b-gantjpbqmx] {
    grid-template-columns: repeat(4, 1fr);
}

/* Mobile: 2 columns */
@media (max-width: 767px) {
    .artlist-4-cols[b-gantjpbqmx] {
        grid-template-columns: repeat(2, 1fr);
        --artlist-gap: 0.625rem;
    }
}

/* Tablet: 3 columns */
@media (min-width: 768px) and (max-width: 1199px) {
    .artlist-4-cols[b-gantjpbqmx] {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Desktop: 4 columns (default) */
@media (min-width: 1200px) {
    .artlist-4-cols[b-gantjpbqmx] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
/* ============================================
   NOT FOUND PAGE - Premium Enterprise Design
   ============================================ */

.notfound-page[b-p0sap4c67i] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 2rem;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%);
}

.notfound-container[b-p0sap4c67i] {
    text-align: center;
    max-width: 600px;
}

/* Illustration */
.notfound-illustration[b-p0sap4c67i] {
    position: relative;
    margin-bottom: 2rem;
}

.notfound-code[b-p0sap4c67i] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 10rem;
    font-weight: 800;
    line-height: 1;
    background: linear-gradient(135deg, var(--bhogi-primary), var(--bhogi-gold), var(--bhogi-primary-dark));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    opacity: 0.9;
}

.notfound-icon[b-p0sap4c67i] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface);
    border-radius: 50%;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
    color: var(--bhogi-primary);
    font-size: 2rem;
}

/* Content */
.notfound-title[b-p0sap4c67i] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.875rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0.75rem;
}

.notfound-message[b-p0sap4c67i] {
    font-size: 1.125rem;
    color: var(--bhogi-text-muted);
    margin-bottom: 2rem;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

/* Suggestions */
.notfound-suggestions[b-p0sap4c67i] {
    background-color: var(--bhogi-surface);
    border-radius: 1.5rem;
    padding: 1.5rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.suggestions-title[b-p0sap4c67i] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    margin-bottom: 1rem;
}

.suggestions-grid[b-p0sap4c67i] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.75rem;
}

.suggestion-link[b-p0sap4c67i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    background-color: var(--bhogi-surface-raised);
    border-radius: 1rem;
    text-decoration: none;
    color: var(--bhogi-text-secondary);
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    border: 1px solid transparent;
}

.suggestion-link:hover[b-p0sap4c67i] {
    border-color: var(--bhogi-primary);
    color: var(--bhogi-primary);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(13, 110, 253, 0.12);
    background-color: var(--bhogi-surface);
}

.suggestion-link i[b-p0sap4c67i] {
    font-size: 1.25rem;
    color: var(--bhogi-primary);
}

.suggestion-link span[b-p0sap4c67i] {
    font-size: 0.875rem;
    font-weight: 600;
}

/* Actions */
.notfound-actions[b-p0sap4c67i] {
    display: flex;
    justify-content: center;
}

.btn-primary[b-p0sap4c67i] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 2rem;
    font-size: 1rem;
    font-weight: 600;
    background: var(--bhogi-gradient-primary);
    color: #ffffff;
    border: none;
    border-radius: 0.625rem;
    text-decoration: none;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(13, 110, 253, 0.25);
}

.btn-primary:hover[b-p0sap4c67i] {
    background: linear-gradient(135deg, #0b5ed7 0%, #0d6efd 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(13, 110, 253, 0.35);
}

/* Dark Mode */
[data-theme="dark"] .notfound-icon[b-p0sap4c67i] {
    background: #1f2937;
}

[data-theme="dark"] .notfound-title[b-p0sap4c67i] {
    color: #ffffff;
}

[data-theme="dark"] .notfound-suggestions[b-p0sap4c67i] {
    background-color: #1f2937;
}

[data-theme="dark"] .suggestions-title[b-p0sap4c67i] {
    color: #9ca3af;
}

[data-theme="dark"] .suggestion-link[b-p0sap4c67i] {
    background-color: #374151;
    color: #d1d5db;
}

[data-theme="dark"] .suggestion-link:hover[b-p0sap4c67i] {
    background-color: #4b5563;
}

/* Responsive */
@media (max-width: 768px) {
    .notfound-code[b-p0sap4c67i] {
        font-size: 7rem;
    }

    .notfound-icon[b-p0sap4c67i] {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }

    .suggestions-grid[b-p0sap4c67i] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .notfound-code[b-p0sap4c67i] {
        font-size: 5rem;
    }

    .notfound-icon[b-p0sap4c67i] {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }

    .notfound-title[b-p0sap4c67i] {
        font-size: 1.5rem;
    }

    .notfound-message[b-p0sap4c67i] {
        font-size: 1rem;
    }

    .notfound-suggestions[b-p0sap4c67i] {
        padding: 1rem;
    }

    .suggestion-link[b-p0sap4c67i] {
        padding: 0.75rem;
    }
}
/* /Components/Pages/OrderDetails.razor.rz.scp.css */
/* ===== Order Details Page - Enterprise Design ===== */

/* Loading & Not Found States */
.loading-state[b-s0tjxyvwi6],
.not-found-state[b-s0tjxyvwi6] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--bhogi-text-muted);
}

.loading-state i[b-s0tjxyvwi6],
.not-found-state i[b-s0tjxyvwi6] {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: block;
}

.not-found-state i[b-s0tjxyvwi6] {
    color: var(--bhogi-maroon);
}

.not-found-state h3[b-s0tjxyvwi6] {
    font-family: 'Playfair Display', serif;
    color: var(--bhogi-text);
    margin-bottom: 0.5rem;
}

/* Page Container */
.order-details-page[b-s0tjxyvwi6] {
    padding: 1.5rem 0 3rem;
    background: linear-gradient(180deg, var(--bhogi-surface-raised) 0%, var(--bhogi-surface) 45%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface)) 100%);
}

/* Order Header */
.order-header[b-s0tjxyvwi6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.order-header h1[b-s0tjxyvwi6] {
    font-family: 'Playfair Display', serif;
    font-size: 1.75rem;
    color: var(--bhogi-text);
    margin: 0;
}

.order-number[b-s0tjxyvwi6] {
    color: var(--bhogi-text-muted);
    font-weight: 400;
}

.reorder-confirmation[b-s0tjxyvwi6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding: 1rem 1.125rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold) 14%, var(--bhogi-surface)) 0%, var(--bhogi-surface) 100%);
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 48%, var(--bhogi-border-light));
    border-radius: var(--bhogi-radius-lg);
    box-shadow: var(--bhogi-shadow-sm);
}

.reorder-confirmation-copy[b-s0tjxyvwi6] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    color: var(--bhogi-text);
}

.reorder-confirmation-copy span[b-s0tjxyvwi6] {
    color: var(--bhogi-text-muted);
    font-size: 0.875rem;
}

.reorder-confirmation-actions[b-s0tjxyvwi6] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* Order Summary Bar */
.order-summary-bar[b-s0tjxyvwi6] {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border-radius: var(--bhogi-radius-lg);
    box-shadow: var(--bhogi-shadow-sm);
    overflow: hidden;
    margin-bottom: 1.5rem;
    border: 1px solid var(--bhogi-border-light);
}

.summary-item[b-s0tjxyvwi6] {
    flex: 1 1 0;
    min-width: 140px;
    padding: 1.25rem 1.5rem;
    border-right: 1px solid var(--bhogi-border-light);
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.summary-item:last-child[b-s0tjxyvwi6] {
    border-right: none;
}

.summary-label[b-s0tjxyvwi6] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bhogi-text-muted);
    font-weight: 600;
}

.summary-value[b-s0tjxyvwi6] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--bhogi-text);
}

.total-value[b-s0tjxyvwi6] {
    color: var(--bhogi-primary);
    font-size: 1.1rem;
}

/* Info Cards Grid */
.order-info-grid[b-s0tjxyvwi6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.info-card[b-s0tjxyvwi6] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border-radius: var(--bhogi-radius-lg);
    box-shadow: var(--bhogi-shadow-sm);
    border: 1px solid var(--bhogi-border-light);
    overflow: hidden;
}

.info-card-header[b-s0tjxyvwi6] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--bhogi-surface-raised) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, var(--bhogi-surface)) 100%);
    border-bottom: 1px solid var(--bhogi-border-light);
}

.info-card-header i[b-s0tjxyvwi6] {
    color: var(--bhogi-primary);
    font-size: 1rem;
}

.info-card-header h5[b-s0tjxyvwi6] {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 700;
    color: #1a1a2e;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.info-card-body[b-s0tjxyvwi6] {
    padding: 1.25rem;
}

/* Address Block */
.address-block[b-s0tjxyvwi6] {
    font-size: 0.9rem;
    line-height: 1.7;
    color: #374151;
}

.address-name[b-s0tjxyvwi6] {
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 0.25rem;
}

.address-contact[b-s0tjxyvwi6] {
    margin-top: 0.5rem;
    color: #6b7280;
}

.address-contact i[b-s0tjxyvwi6] {
    width: 16px;
    text-align: center;
    margin-right: 0.35rem;
    color: #0d6efd;
    font-size: 0.8rem;
}

/* Detail Rows */
.detail-row[b-s0tjxyvwi6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.6rem 0;
    border-bottom: 1px solid #f3f4f6;
}

.detail-row:last-child[b-s0tjxyvwi6] {
    border-bottom: none;
}

.detail-label[b-s0tjxyvwi6] {
    font-size: 0.85rem;
    color: #6b7280;
}

.detail-value[b-s0tjxyvwi6] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--bhogi-text);
}

/* Badges */
.badge[b-s0tjxyvwi6] {
    font-size: 0.75rem;
    padding: 0.3em 0.7em;
    border-radius: 6px;
    font-weight: 600;
}

/* Order Content Grid (Items + Totals) */
.order-content-grid[b-s0tjxyvwi6] {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

/* Section Headers */
.section-header[b-s0tjxyvwi6] {
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #f0f4f8 100%);
    border-bottom: 1px solid #e5e7eb;
    border-radius: 12px 12px 0 0;
}

.section-header h4[b-s0tjxyvwi6] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: #1a1a2e;
}

.section-header h4 i[b-s0tjxyvwi6] {
    color: var(--bhogi-primary);
    margin-right: 0.5rem;
}

/* Order Items Section */
.order-items-section[b-s0tjxyvwi6] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    border: 1px solid #e5e7eb;
    overflow: hidden;
}

.items-list[b-s0tjxyvwi6] {
    padding: 0;
}

.order-item[b-s0tjxyvwi6] {
    display: grid;
    grid-template-columns: 80px 1fr auto auto auto;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background-color 0.15s ease;
}

.order-item:last-child[b-s0tjxyvwi6] {
    border-bottom: none;
}

.order-item:hover[b-s0tjxyvwi6] {
    background-color: #f9fafb;
}

/* Item Image */
.item-image[b-s0tjxyvwi6] {
    width: 80px;
    height: 80px;
    border-radius: 8px;
    overflow: hidden;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    flex-shrink: 0;
}

.item-image img[b-s0tjxyvwi6] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.no-image[b-s0tjxyvwi6] {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d1d5db;
    font-size: 1.5rem;
}

/* Item Details */
.item-details[b-s0tjxyvwi6] {
    min-width: 0;
}

.item-name a[b-s0tjxyvwi6] {
    font-weight: 600;
    color: #1a1a2e;
    text-decoration: none;
    transition: color 0.15s ease;
}

.item-name a:hover[b-s0tjxyvwi6] {
    color: #0d6efd;
}

.item-sku[b-s0tjxyvwi6] {
    font-size: 0.8rem;
    color: #9ca3af;
    margin-top: 0.2rem;
}

.item-attributes[b-s0tjxyvwi6] {
    font-size: 0.82rem;
    color: #6b7280;
    margin-top: 0.3rem;
}

.item-price-mobile[b-s0tjxyvwi6] {
    display: none;
    font-weight: 600;
    color: #1a1a2e;
    margin-top: 0.3rem;
}

.item-qty[b-s0tjxyvwi6] {
    display: none;
    font-size: 0.85rem;
    color: #6b7280;
    margin-top: 0.15rem;
}

.item-unit-price[b-s0tjxyvwi6] {
    font-size: 0.9rem;
    color: #374151;
    text-align: right;
    white-space: nowrap;
}

.item-quantity[b-s0tjxyvwi6] {
    font-size: 0.9rem;
    color: #374151;
    text-align: center;
    min-width: 40px;
}

.item-subtotal[b-s0tjxyvwi6] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1a1a2e;
    text-align: right;
    white-space: nowrap;
}

/* Order Totals Section */
.order-totals-section[b-s0tjxyvwi6] {
    align-self: start;
}

.totals-card[b-s0tjxyvwi6] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    border: 1px solid #e5e7eb;
    overflow: hidden;
}

.totals-table[b-s0tjxyvwi6] {
    width: 100%;
    border-collapse: collapse;
}

.totals-table tr[b-s0tjxyvwi6] {
    border-bottom: 1px solid var(--bhogi-border-light);
}

.totals-table tr:last-child[b-s0tjxyvwi6] {
    border-bottom: none;
}

.totals-table th[b-s0tjxyvwi6],
.totals-table td[b-s0tjxyvwi6] {
    padding: 0.75rem 1.25rem;
    font-size: 0.9rem;
}

.totals-table th[b-s0tjxyvwi6] {
    font-weight: 500;
    color: #6b7280;
    text-align: left;
}

.totals-table td[b-s0tjxyvwi6] {
    font-weight: 600;
    color: #1a1a2e;
    text-align: right;
}

.discount-row th[b-s0tjxyvwi6],
.discount-row td[b-s0tjxyvwi6] {
    color: #10b981;
}

.total-row[b-s0tjxyvwi6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, #1a1a2e 0%, #2d2b55 100%);
    color: #fff;
}

.total-label[b-s0tjxyvwi6] {
    font-size: 1rem;
    font-weight: 600;
}

.total-amount[b-s0tjxyvwi6] {
    font-size: 1.25rem;
    font-weight: 800;
    font-family: 'Playfair Display', serif;
}

/* Order Actions */
.order-actions[b-s0tjxyvwi6] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.order-actions .btn[b-s0tjxyvwi6] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.7rem 1rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.order-actions .btn-primary[b-s0tjxyvwi6] {
    background: linear-gradient(135deg, #0d6efd 0%, #0b5ed7 100%);
    border: none;
}

.order-actions .btn-primary:hover[b-s0tjxyvwi6] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(13, 110, 253, 0.3);
}

.order-actions .btn-outline-secondary:hover[b-s0tjxyvwi6] {
    transform: translateY(-1px);
}

/* Shipments Section */
.shipments-section[b-s0tjxyvwi6],
.order-notes-section[b-s0tjxyvwi6] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
    border: 1px solid #e5e7eb;
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.shipments-list[b-s0tjxyvwi6],
.notes-list[b-s0tjxyvwi6] {
    padding: 1.25rem;
}

.shipment-card[b-s0tjxyvwi6] {
    padding: 1rem;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    margin-bottom: 0.75rem;
}

.shipment-card:last-child[b-s0tjxyvwi6] {
    margin-bottom: 0;
}

.shipment-id[b-s0tjxyvwi6] {
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.shipment-id i[b-s0tjxyvwi6] {
    color: #0d6efd;
    margin-right: 0.35rem;
}

.shipment-detail[b-s0tjxyvwi6] {
    display: flex;
    justify-content: space-between;
    padding: 0.3rem 0;
    font-size: 0.85rem;
}

.shipment-detail .detail-label[b-s0tjxyvwi6] {
    color: #6b7280;
}

.shipment-detail .detail-value[b-s0tjxyvwi6] {
    font-weight: 600;
    color: #1a1a2e;
}

/* Order Notes */
.note-item[b-s0tjxyvwi6] {
    padding: 0.75rem 1rem;
    background: #fffbeb;
    border-radius: 8px;
    border-left: 3px solid #f59e0b;
    margin-bottom: 0.75rem;
}

.note-item:last-child[b-s0tjxyvwi6] {
    margin-bottom: 0;
}

.note-date[b-s0tjxyvwi6] {
    font-size: 0.8rem;
    color: #9ca3af;
    margin-bottom: 0.3rem;
}

.note-date i[b-s0tjxyvwi6] {
    margin-right: 0.25rem;
}

.note-text[b-s0tjxyvwi6] {
    font-size: 0.9rem;
    color: #374151;
    line-height: 1.5;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
    .order-content-grid[b-s0tjxyvwi6] {
        grid-template-columns: 1fr;
    }

    .order-totals-section[b-s0tjxyvwi6] {
        order: -1;
    }
}

@media (max-width: 768px) {
    .order-summary-bar[b-s0tjxyvwi6] {
        flex-direction: column;
    }

    .summary-item[b-s0tjxyvwi6] {
        border-right: none;
        border-bottom: 1px solid #f0f0f0;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 0.85rem 1.25rem;
    }

    .summary-item:last-child[b-s0tjxyvwi6] {
        border-bottom: none;
    }

    .order-info-grid[b-s0tjxyvwi6] {
        grid-template-columns: 1fr;
    }

    .order-item[b-s0tjxyvwi6] {
        grid-template-columns: 64px 1fr;
        gap: 0.75rem;
    }

    .item-image[b-s0tjxyvwi6] {
        width: 64px;
        height: 64px;
    }

    .item-unit-price[b-s0tjxyvwi6],
    .item-quantity[b-s0tjxyvwi6] {
        display: none;
    }

    .item-subtotal[b-s0tjxyvwi6] {
        display: none;
    }

    .item-price-mobile[b-s0tjxyvwi6],
    .item-qty[b-s0tjxyvwi6] {
        display: block;
    }
}

@media (max-width: 480px) {
    .order-header[b-s0tjxyvwi6] {
        flex-direction: column;
        align-items: flex-start;
    }

    .order-header h1[b-s0tjxyvwi6] {
        font-size: 1.35rem;
    }

    .reorder-confirmation[b-s0tjxyvwi6] {
        align-items: stretch;
        flex-direction: column;
    }

    .reorder-confirmation-actions .btn[b-s0tjxyvwi6] {
        flex: 1;
        min-height: 2.75rem;
    }

    .order-item[b-s0tjxyvwi6] {
        grid-template-columns: 56px 1fr;
    }

    .item-image[b-s0tjxyvwi6] {
        width: 56px;
        height: 56px;
    }
}
/* /Components/Pages/OrderTrackingPage.razor.rz.scp.css */
.tracking-page[b-s7kdz8bt0h] {
    --tracking-surface: var(--bhogi-surface-premium);
    --tracking-border: var(--bhogi-border-light);
    --tracking-text: var(--bhogi-text);
    --tracking-muted: var(--bhogi-text-muted);
    --tracking-accent: var(--bhogi-primary);
    min-height: 60vh;
    color: var(--tracking-text);
    background: var(--bhogi-surface);
}

.tracking-container[b-s7kdz8bt0h] {
    width: min(1180px, calc(100% - 3rem));
    margin-inline: auto;
}

.tracking-breadcrumb[b-s7kdz8bt0h] {
    border-bottom: 1px solid var(--tracking-border);
    background: var(--tracking-surface);
}

.tracking-breadcrumb ol[b-s7kdz8bt0h] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin: 0;
    padding: 0.9rem 0;
    list-style: none;
    color: var(--tracking-muted);
    font-size: 0.8125rem;
}

.tracking-breadcrumb li + li[b-s7kdz8bt0h]::before {
    content: '/';
    margin-right: 0.55rem;
    opacity: .45;
}

.tracking-breadcrumb a[b-s7kdz8bt0h] {
    color: inherit;
    text-decoration: none;
}

.tracking-breadcrumb a:hover[b-s7kdz8bt0h] { color: var(--tracking-accent); }

.tracking-hero[b-s7kdz8bt0h] {
    overflow: hidden;
    padding: clamp(2.5rem, 6vw, 5rem) 0;
    background:
        radial-gradient(circle at 85% 10%, color-mix(in srgb, var(--bhogi-gold) 16%, transparent), transparent 30%),
        linear-gradient(135deg, color-mix(in srgb, var(--tracking-accent) 7%, var(--bhogi-surface)) 0%, var(--bhogi-surface) 56%);
}

.tracking-hero-grid[b-s7kdz8bt0h] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .78fr);
    align-items: center;
    gap: clamp(2rem, 6vw, 5.5rem);
}

.tracking-eyebrow[b-s7kdz8bt0h],
.tracking-section-head > span[b-s7kdz8bt0h] {
    display: block;
    margin-bottom: 0.75rem;
    color: var(--tracking-accent);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.tracking-copy h1[b-s7kdz8bt0h] {
    max-width: 660px;
    margin: 0 0 1rem;
    font-family: var(--bhogi-font-display, inherit);
    font-size: clamp(2.25rem, 5vw, 4.25rem);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -.035em;
}

.tracking-copy > p:not(.tracking-secure-note)[b-s7kdz8bt0h] {
    max-width: 590px;
    margin: 0 0 1.75rem;
    color: var(--tracking-muted);
    font-size: clamp(1rem, 2vw, 1.125rem);
    line-height: 1.7;
}

.tracking-primary[b-s7kdz8bt0h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
    min-height: 3.25rem;
    padding: 0.85rem 1.35rem;
    border-radius: var(--bhogi-radius-lg);
    color: #fff;
    background: var(--bhogi-gradient-primary);
    box-shadow: var(--bhogi-shadow-md);
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}

.tracking-primary:hover[b-s7kdz8bt0h] {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-lg);
}

.tracking-primary:focus-visible[b-s7kdz8bt0h],
.tracking-help-card a:focus-visible[b-s7kdz8bt0h] {
    outline: 3px solid color-mix(in srgb, var(--tracking-accent) 28%, transparent);
    outline-offset: 3px;
}

.tracking-secure-note[b-s7kdz8bt0h] {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin: 1rem 0 0;
    color: var(--tracking-muted);
    font-size: .78rem;
}

.tracking-secure-note i[b-s7kdz8bt0h] { color: var(--tracking-accent); }

.tracking-visual[b-s7kdz8bt0h] {
    padding: clamp(1.4rem, 3vw, 2rem);
    border: 1px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--tracking-border));
    border-radius: clamp(1.25rem, 3vw, 2rem);
    background: color-mix(in srgb, var(--tracking-surface) 94%, transparent);
    box-shadow: var(--bhogi-shadow-lg);
}

.tracking-visual-head[b-s7kdz8bt0h] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--tracking-border);
}

.tracking-package-icon[b-s7kdz8bt0h],
.help-card-icon[b-s7kdz8bt0h] {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    color: var(--tracking-accent);
    background: color-mix(in srgb, var(--tracking-accent) 10%, var(--tracking-surface));
}

.tracking-visual-head strong[b-s7kdz8bt0h],
.tracking-visual-head span[b-s7kdz8bt0h] { display: block; }
.tracking-visual-head strong[b-s7kdz8bt0h] { margin-bottom: .2rem; }
.tracking-visual-head span[b-s7kdz8bt0h] { color: var(--tracking-muted); font-size: .78rem; }

.tracking-timeline[b-s7kdz8bt0h] { margin: 0; padding: 1.5rem 0 0; list-style: none; }

.tracking-timeline li[b-s7kdz8bt0h] {
    position: relative;
    display: flex;
    gap: 1rem;
    min-height: 4.5rem;
}

.tracking-timeline li:not(:last-child)[b-s7kdz8bt0h]::after {
    content: '';
    position: absolute;
    top: 2.1rem;
    left: 1rem;
    width: 2px;
    height: calc(100% - .6rem);
    background: var(--tracking-border);
}

.timeline-dot[b-s7kdz8bt0h] {
    z-index: 1;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 2px solid var(--tracking-border);
    border-radius: 50%;
    color: var(--tracking-muted);
    background: var(--tracking-surface);
    font-size: .65rem;
}

.is-complete .timeline-dot[b-s7kdz8bt0h],
.is-active .timeline-dot[b-s7kdz8bt0h] {
    border-color: var(--tracking-accent);
    color: #fff;
    background: var(--tracking-accent);
}

.tracking-timeline strong[b-s7kdz8bt0h],
.tracking-timeline span[b-s7kdz8bt0h] { display: block; }
.tracking-timeline strong[b-s7kdz8bt0h] { margin: .15rem 0; font-size: .9rem; }
.tracking-timeline div span[b-s7kdz8bt0h] { color: var(--tracking-muted); font-size: .75rem; line-height: 1.45; }

.tracking-help[b-s7kdz8bt0h] {
    padding: clamp(2.75rem, 6vw, 4.5rem) 0;
    border-top: 1px solid var(--tracking-border);
    background: color-mix(in srgb, var(--tracking-accent) 3%, var(--tracking-surface));
}

.tracking-section-head[b-s7kdz8bt0h] { max-width: 620px; margin-bottom: 1.75rem; }
.tracking-section-head h2[b-s7kdz8bt0h] { margin: 0; font-size: clamp(1.65rem, 3vw, 2.35rem); letter-spacing: -.025em; }

.tracking-help-grid[b-s7kdz8bt0h] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.tracking-help-card[b-s7kdz8bt0h] {
    padding: 1.5rem;
    border: 1px solid var(--tracking-border);
    border-radius: var(--bhogi-radius-lg);
    background: var(--tracking-surface);
    box-shadow: var(--bhogi-shadow-sm);
}

.tracking-help-card-accent[b-s7kdz8bt0h] { border-top: 3px solid var(--tracking-accent); }
.tracking-help-card h3[b-s7kdz8bt0h] { margin: 1rem 0 .55rem; font-size: 1rem; }
.tracking-help-card p[b-s7kdz8bt0h] { margin: 0 0 1rem; color: var(--tracking-muted); font-size: .84rem; line-height: 1.6; }
.tracking-help-card ul[b-s7kdz8bt0h] { margin: 0; padding: 0; list-style: none; color: var(--tracking-muted); font-size: .78rem; }
.tracking-help-card li + li[b-s7kdz8bt0h] { margin-top: .4rem; }
.tracking-help-card li i[b-s7kdz8bt0h] { margin-right: .35rem; color: var(--tracking-accent); }
.tracking-help-card a[b-s7kdz8bt0h] { color: var(--tracking-accent); font-size: .82rem; font-weight: 700; text-decoration: none; }
.tracking-help-card a i[b-s7kdz8bt0h] { margin-left: .3rem; transition: transform .2s ease; }
.tracking-help-card a:hover i[b-s7kdz8bt0h] { transform: translateX(3px); }

@media (max-width: 820px) {
    .tracking-hero-grid[b-s7kdz8bt0h] { grid-template-columns: 1fr; }
    .tracking-visual[b-s7kdz8bt0h] { max-width: 620px; }
    .tracking-help-grid[b-s7kdz8bt0h] { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
    .tracking-container[b-s7kdz8bt0h] { width: min(100% - 2rem, 1180px); }
    .tracking-hero[b-s7kdz8bt0h] { padding: 2.25rem 0 2.75rem; }
    .tracking-copy h1[b-s7kdz8bt0h] { font-size: 2.35rem; }
    .tracking-primary[b-s7kdz8bt0h] {
        width: calc(100% - 4rem);
        min-width: 0;
    }
    .tracking-secure-note[b-s7kdz8bt0h] { align-items: flex-start; }
    .tracking-visual[b-s7kdz8bt0h] { padding: 1.25rem; border-radius: 1.25rem; }
    .tracking-help[b-s7kdz8bt0h] { padding: 2.5rem 0; }
}

@media (prefers-reduced-motion: reduce) {
    .tracking-primary[b-s7kdz8bt0h],
    .tracking-help-card a i[b-s7kdz8bt0h] { transition: none; }
}
/* /Components/Pages/PasswordRecovery.razor.rz.scp.css */
.recovery-page[b-idohvuh21f] {
    display: grid;
    min-height: 72vh;
    padding: clamp(2rem, 7vw, 5.5rem) 1rem;
    place-items: start center;
    background: radial-gradient(circle at top, color-mix(in srgb, var(--bhogi-primary) 10%, transparent), transparent 42%), var(--bhogi-surface-raised);
}

.recovery-card[b-idohvuh21f] {
    width: min(100%, 34rem);
    padding: clamp(1.5rem, 5vw, 3rem);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-xl);
    background: var(--bhogi-surface);
    box-shadow: var(--bhogi-shadow-lg);
    text-align: center;
}

.recovery-icon[b-idohvuh21f] {
    display: inline-grid;
    width: 4.25rem;
    height: 4.25rem;
    margin-bottom: 1rem;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--bhogi-gold) 20%, var(--bhogi-surface));
    color: var(--bhogi-primary);
    font-size: 1.5rem;
}

.recovery-kicker[b-idohvuh21f] {
    display: block;
    color: var(--bhogi-primary);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.recovery-card h1[b-idohvuh21f] {
    margin: 0.65rem 0 0.85rem;
    color: var(--bhogi-text);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(1.8rem, 6vw, 2.5rem);
    line-height: 1.12;
}

.recovery-card > p[b-idohvuh21f] {
    margin-bottom: 1.5rem;
    color: var(--bhogi-text-muted);
    line-height: 1.7;
}

.recovery-card .btn[b-idohvuh21f] {
    display: flex;
    justify-content: center;
    gap: 0.65rem;
    width: 100%;
}

.recovery-secondary[b-idohvuh21f] {
    display: inline-block;
    margin-top: 1rem;
    color: var(--bhogi-primary);
    font-weight: 650;
}

.recovery-support[b-idohvuh21f] {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1.75rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--bhogi-border-light);
    color: var(--bhogi-text-muted);
    font-size: 0.875rem;
}

.recovery-support a[b-idohvuh21f] {
    color: var(--bhogi-primary);
}
/* /Components/Pages/ProductCategoryShowcase.razor.rz.scp.css */
.pcs-page[b-foyldvjhm3] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 2.5rem 1.5rem 6rem;
    display: flex;
    flex-direction: column;
    gap: 3.5rem;
}

.pcs-intro h1[b-foyldvjhm3] {
    margin: 0 0 .75rem;
    font-size: 1.9rem;
}

.pcs-intro p[b-foyldvjhm3] {
    max-width: 70ch;
    opacity: .75;
    margin: 0;
    line-height: 1.5;
}

.pcs-section h2[b-foyldvjhm3] {
    font-size: 1.3rem;
    margin: 0 0 1.25rem;
    padding-bottom: .5rem;
    border-bottom: 1px solid rgba(127,127,127,.2);
}
.pcs-note[b-foyldvjhm3] {
    opacity: .7;
    font-size: .88rem;
    margin: -.5rem 0 1.25rem;
    max-width: 60ch;
}

.pcs-cardswiper-row[b-foyldvjhm3] {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.pcs-cardswiper-item[b-foyldvjhm3] {
    flex: 1 1 220px;
    text-align: center;
}

.pcs-cardswiper-item h3[b-foyldvjhm3] {
    font-size: .8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    opacity: .6;
    margin: 0 0 1rem;
}
/* /Components/Pages/ProductPage.razor.rz.scp.css */
/* ============================================
   Product Detail Page — Enterprise Design
   Uses global --bhogi-* design tokens
   ============================================ */

/* Page Container */
.product-detail-page[b-zp3j9z7qto] {
    background: linear-gradient(180deg, var(--bhogi-surface-raised, #fcfcfc) 0%, var(--bhogi-surface, #ffffff) 38%, color-mix(in srgb, var(--bhogi-primary) 3%, var(--bhogi-surface)) 100%);
    min-height: 100vh;
}

/* ============================================
   Main Product Section
   ============================================ */
.pdp-main[b-zp3j9z7qto] {
    padding: 1.75rem 0 3rem;
}

.pdp-grid[b-zp3j9z7qto] {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.85fr);
    gap: clamp(1.75rem, 3vw, 3rem);
    align-items: start;
}

/* Product Info Column */
.pdp-info[b-zp3j9z7qto] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: sticky;
    top: 1.5rem;
    padding: 1.25rem;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border: 1px solid var(--bhogi-border-light);
    border-radius: 0.75rem;
    box-shadow: var(--bhogi-shadow-sm);
}

/* ============================================
   Badges (moved from inline styles)
   ============================================ */
.pdp-badges[b-zp3j9z7qto] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.pdp-badge-tag[b-zp3j9z7qto] {
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.75rem;
    border-radius: 50px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    box-shadow: var(--bhogi-shadow-xs);
}

.pdp-badge-danger[b-zp3j9z7qto] { background: linear-gradient(135deg, var(--bhogi-maroon, #8B0000) 0%, var(--bhogi-maroon-deep, #6f0000) 100%); }
.pdp-badge-success[b-zp3j9z7qto] { background: linear-gradient(135deg, var(--bhogi-success, #1f8a70) 0%, var(--bhogi-primary, #0f7a66) 100%); }
.pdp-badge-info[b-zp3j9z7qto] { background: var(--bhogi-gradient-primary); }
.pdp-badge-warning[b-zp3j9z7qto] { background: var(--bhogi-gradient-gold); color: #15211d; }
.pdp-badge-secondary[b-zp3j9z7qto] { background: #6c757d; }

/* ============================================
   Brand
   ============================================ */
.pdp-brand[b-zp3j9z7qto] {
    margin-bottom: 0.125rem;
}

.pdp-brand-link[b-zp3j9z7qto] {
    font-size: 0.8125rem;
    color: var(--bhogi-primary, #2563eb);
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.02em;
    transition: color 0.2s var(--bhogi-ease, ease);
    text-transform: uppercase;
}

.pdp-brand-link:hover[b-zp3j9z7qto] {
    color: var(--bhogi-primary-hover, #1d4ed8);
    text-decoration: underline;
}

.pdp-brand-text[b-zp3j9z7qto] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-secondary, #475569);
    font-weight: 500;
}

/* ============================================
   Delivery Time
   ============================================ */
.pdp-delivery[b-zp3j9z7qto] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.pdp-delivery-dot[b-zp3j9z7qto] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--bhogi-gold, #FFD700) 0%, var(--bhogi-primary, #0f7a66) 100%);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}

.pdp-delivery-text[b-zp3j9z7qto] {
    color: var(--bhogi-text, #0f172a);
    font-weight: 500;
}

/* ============================================
   Offer Cards
   ============================================ */
.pdp-offers[b-zp3j9z7qto] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    padding: 0.875rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-gold, #FFD700) 34%, var(--bhogi-border-light, #f1f5f9));
    border-radius: 0.625rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-gold, #FFD700) 8%, #fff) 0%, #fff 100%);
}

.pdp-offers-heading[b-zp3j9z7qto] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--bhogi-text, #0f172a);
    font-size: 0.8125rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pdp-offer-list[b-zp3j9z7qto] {
    display: grid;
    gap: 0.5rem;
}

.pdp-offer-card[b-zp3j9z7qto] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-border-light, #f1f5f9) 82%, var(--bhogi-primary, #0f7a66) 10%);
    border-radius: 0.5rem;
    background: rgba(255, 255, 255, 0.86);
    color: var(--bhogi-text-secondary, #475569);
    font-size: 0.8125rem;
    line-height: 1.35;
}

.pdp-offer-card i[b-zp3j9z7qto] {
    color: var(--bhogi-primary, #0f7a66);
}

.pdp-offer-code[b-zp3j9z7qto] {
    flex-shrink: 0;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    background: var(--bhogi-text, #0f172a);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 1024px) {
    .pdp-grid[b-zp3j9z7qto] {
        grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.95fr);
        gap: 2.5rem;
    }
}

@media (max-width: 992px) {
    .pdp-grid[b-zp3j9z7qto] {
        display: block;
        gap: 2rem;
        min-width: 0;
    }

    .pdp-info[b-zp3j9z7qto] {
        position: static;
        width: 100%;
        max-width: 760px;
        min-width: 0;
        margin: 2rem auto 0;
        padding: 1.125rem;
        border-radius: var(--bhogi-radius-lg);
    }

    .pdp-info > *[b-zp3j9z7qto],
    .pdp-price-block[b-zp3j9z7qto],
    .pdp-offers[b-zp3j9z7qto],
    .pdp-purchase-section[b-zp3j9z7qto],
    .pdp-action-buttons[b-zp3j9z7qto],
    .pdp-trust-badges[b-zp3j9z7qto] {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    .pdp-title[b-zp3j9z7qto],
    .pdp-offer-card[b-zp3j9z7qto],
    .pdp-short-description[b-zp3j9z7qto] {
        overflow-wrap: anywhere;
    }

    .pdp-action-buttons[b-zp3j9z7qto] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .pdp-btn-cart[b-zp3j9z7qto],
    .pdp-btn-buy[b-zp3j9z7qto] {
        width: 100%;
        min-width: 0;
    }

    .pdp-main[b-zp3j9z7qto] {
        padding: 1.5rem 0 2rem;
    }
}

@media (max-width: 480px) {
    .product-detail-page[b-zp3j9z7qto] {
        padding-bottom: calc(6.5rem + env(safe-area-inset-bottom));
    }

    .pdp-main[b-zp3j9z7qto] {
        padding: 1rem 0 1.5rem;
    }

    .pdp-info[b-zp3j9z7qto] {
        margin-top: 1rem;
        padding: 1rem 0.875rem;
        border-left: 0;
        border-right: 0;
        border-radius: 0;
        box-shadow: none;
    }
}

@media (max-width: 359.98px) {
    .product-detail-page[b-zp3j9z7qto] {
        padding-bottom: calc(9rem + env(safe-area-inset-bottom));
    }
}
/* /Components/Pages/RecentlyViewedProductsPage.razor.rz.scp.css */
.recent-page[b-br4w5j7gb1] {
    min-height: 60vh;
    padding-bottom: clamp(3rem, 7vw, 5rem);
    background: var(--bhogi-bg, #fff);
}

.recent-page__container[b-br4w5j7gb1] {
    width: min(100%, var(--storefront-content-max, 1320px));
    margin-inline: auto;
    padding-inline: var(--storefront-gutter, 1rem);
}

.recent-page__breadcrumb[b-br4w5j7gb1] {
    padding-block: 1rem;
    border-bottom: 1px solid var(--bhogi-border);
}

.recent-page__breadcrumb ol[b-br4w5j7gb1] {
    display: flex;
    gap: .55rem;
    margin: 0;
    padding: 0;
    list-style: none;
    color: var(--bhogi-text-muted);
    font-size: .82rem;
}

.recent-page__breadcrumb li + li[b-br4w5j7gb1]::before {
    content: '/';
    margin-right: .55rem;
    opacity: .55;
}

.recent-page__breadcrumb a[b-br4w5j7gb1] { color: inherit; text-decoration: none; }
.recent-page__breadcrumb a:hover[b-br4w5j7gb1] { color: var(--bhogi-primary); }

.recent-page__header[b-br4w5j7gb1] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    padding-block: clamp(2rem, 5vw, 3.5rem) clamp(1.5rem, 4vw, 2.5rem);
}

.recent-page__eyebrow[b-br4w5j7gb1] {
    margin: 0 0 .6rem;
    color: var(--bhogi-primary);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.recent-page__eyebrow i[b-br4w5j7gb1] { margin-right: .35rem; }

.recent-page__header h1[b-br4w5j7gb1] {
    margin: 0 0 .65rem;
    color: var(--bhogi-text);
    font-size: clamp(2rem, 6vw, 3.4rem);
    letter-spacing: -.035em;
}

.recent-page__header p:last-child[b-br4w5j7gb1] {
    max-width: 42rem;
    margin: 0;
    color: var(--bhogi-text-muted);
    line-height: 1.65;
}

.recent-page__browse[b-br4w5j7gb1] {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: .65rem;
    min-height: 2.75rem;
    padding: .7rem 1rem;
    border: 1px solid var(--bhogi-border);
    border-radius: 999px;
    color: var(--bhogi-text);
    text-decoration: none;
    font-weight: 700;
}

.recent-page__browse:hover[b-br4w5j7gb1] { color: var(--bhogi-primary); border-color: var(--bhogi-primary); }

@media (max-width: 767.98px) {
    .recent-page__header[b-br4w5j7gb1] { align-items: start; flex-direction: column; gap: 1.25rem; }
}
/* /Components/Pages/RegisterPage.razor.rz.scp.css */
.register-page[b-8nzd3nfpm0] {
    min-height: 72vh;
    padding: clamp(1.25rem, 4vw, 3.5rem) 0 clamp(3rem, 7vw, 6rem);
    background: linear-gradient(145deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 58%, color-mix(in srgb, var(--bhogi-primary) 8%, var(--bhogi-surface)) 100%);
}

.register-shell[b-8nzd3nfpm0] {
    width: min(1120px, calc(100% - 2rem));
    margin: 0 auto;
}

.register-breadcrumb[b-8nzd3nfpm0] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: clamp(1.5rem, 4vw, 3rem);
    color: var(--bhogi-text-muted);
    font-size: 0.8125rem;
}

.register-breadcrumb a[b-8nzd3nfpm0] {
    color: var(--bhogi-primary);
    text-decoration: none;
}

.register-hero[b-8nzd3nfpm0] {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    align-items: center;
    gap: clamp(2rem, 7vw, 6rem);
}

.register-kicker[b-8nzd3nfpm0] {
    color: var(--bhogi-primary);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.register-copy h1[b-8nzd3nfpm0] {
    max-width: 12ch;
    margin: 0.65rem 0 1rem;
    color: var(--bhogi-text);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(2.25rem, 6vw, 4.25rem);
    line-height: 1.04;
    letter-spacing: -0.04em;
}

.register-copy > p[b-8nzd3nfpm0] {
    max-width: 38rem;
    color: var(--bhogi-text-secondary);
    font-size: 1.0625rem;
    line-height: 1.7;
}

.register-benefits[b-8nzd3nfpm0] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.875rem;
    margin-top: 2rem;
}

.register-benefits > div[b-8nzd3nfpm0] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    color: var(--bhogi-text-secondary);
    font-weight: 650;
}

.register-benefits i[b-8nzd3nfpm0] {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    place-items: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
    color: var(--bhogi-primary);
}

.register-card[b-8nzd3nfpm0] {
    padding: clamp(1.5rem, 4vw, 2.5rem);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-xl);
    background: color-mix(in srgb, var(--bhogi-surface) 94%, transparent);
    box-shadow: var(--bhogi-shadow-lg);
    text-align: center;
}

.register-icon[b-8nzd3nfpm0] {
    display: inline-grid;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1rem;
    place-items: center;
    border-radius: 50%;
    background: var(--bhogi-gradient-primary);
    color: #fff;
    font-size: 1.5rem;
}

.register-card h2[b-8nzd3nfpm0] {
    margin: 0 0 0.5rem;
    color: var(--bhogi-text);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.65rem;
}

.register-card > p[b-8nzd3nfpm0] {
    color: var(--bhogi-text-muted);
    line-height: 1.6;
}

.register-card .btn[b-8nzd3nfpm0] {
    display: flex;
    justify-content: center;
    gap: 0.65rem;
    width: 100%;
    margin-top: 1.25rem;
}

.register-divider[b-8nzd3nfpm0] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.5rem 0 0.75rem;
    color: var(--bhogi-text-muted);
    font-size: 0.8125rem;
}

.register-divider[b-8nzd3nfpm0]::before,
.register-divider[b-8nzd3nfpm0]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--bhogi-border-light);
}

.password-link[b-8nzd3nfpm0] {
    color: var(--bhogi-primary);
    font-weight: 700;
}

.register-card .register-terms[b-8nzd3nfpm0] {
    margin: 1.5rem 0 0;
    font-size: 0.75rem;
}

.register-terms a[b-8nzd3nfpm0] {
    color: inherit;
}

@media (max-width: 767.98px) {
    .register-hero[b-8nzd3nfpm0] {
        grid-template-columns: 1fr;
        gap: 1.75rem;
    }

    .register-copy h1[b-8nzd3nfpm0] {
        max-width: none;
    }
}

@media (max-width: 380px) {
    .register-benefits[b-8nzd3nfpm0] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Search.razor.rz.scp.css */
.search-page[b-i74929j6h3] {
    min-height: 70vh;
    padding-block: clamp(2rem, 5vw, 4.5rem);
    background: var(--cmp-search-page-bg, linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-raised) 100%));
}

.search-container[b-i74929j6h3] {
    width: min(100%, var(--storefront-content-max));
    margin-inline: auto;
    padding-inline: var(--storefront-gutter);
}

.search-header[b-i74929j6h3] {
    max-width: 48rem;
    margin: 0 auto clamp(2rem, 4vw, 3.5rem);
    text-align: center;
}

.search-kicker[b-i74929j6h3] {
    display: inline-flex;
    margin-bottom: var(--space-sm);
    color: var(--cmp-search-page-accent, var(--bhogi-primary));
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.search-header h1[b-i74929j6h3] {
    margin: 0;
    color: var(--cmp-search-page-title, var(--bhogi-text));
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(2rem, 5vw, 3.5rem);
    font-weight: 700;
    letter-spacing: -0.035em;
    line-height: 1.1;
    text-wrap: balance;
}

.search-header > p[b-i74929j6h3] {
    margin: 0.75rem auto 1.5rem;
    color: var(--cmp-search-page-muted, var(--bhogi-text-muted));
    font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
    line-height: 1.6;
}

.search-box[b-i74929j6h3] {
    display: flex;
    align-items: center;
    min-height: 3.75rem;
    margin-inline: auto;
    padding: 0.375rem;
    border: 1px solid var(--cmp-search-page-box-border, var(--bhogi-border));
    border-radius: var(--cmp-search-page-box-radius, var(--bhogi-radius-lg));
    background: var(--cmp-search-page-box-bg, var(--bhogi-surface));
    box-shadow: var(--cmp-search-page-box-shadow, var(--bhogi-shadow-sm));
    transition: border-color var(--bhogi-transition-fast) var(--bhogi-ease),
                box-shadow var(--bhogi-transition-fast) var(--bhogi-ease);
}

.search-box:focus-within[b-i74929j6h3] {
    border-color: var(--cmp-search-page-box-focus-border, var(--bhogi-primary));
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--bhogi-primary) 14%, transparent), var(--bhogi-shadow-md);
}

.search-leading-icon[b-i74929j6h3] {
    flex: 0 0 auto;
    margin-inline: 0.75rem 0.25rem;
    color: var(--cmp-search-page-muted, var(--bhogi-text-muted));
}

.search-box input[b-i74929j6h3] {
    min-width: 0;
    flex: 1;
    padding: 0.75rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--bhogi-text);
    font-size: 1rem;
}

.search-box input[b-i74929j6h3]::placeholder {
    color: var(--bhogi-text-muted);
    opacity: 0.82;
}

.search-box button[b-i74929j6h3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    min-height: 3rem;
    padding-inline: 1.25rem;
    border: 0;
    border-radius: calc(var(--cmp-search-page-box-radius, var(--bhogi-radius-lg)) - 0.3rem);
    background: var(--cmp-search-page-btn-bg, var(--bhogi-gradient-primary));
    color: var(--cmp-search-page-btn-fg, var(--bhogi-surface));
    font-weight: 700;
    cursor: pointer;
    transition: filter var(--bhogi-transition-fast) var(--bhogi-ease),
                transform var(--bhogi-transition-fast) var(--bhogi-ease);
}

@media (hover: hover) and (pointer: fine) {
    .search-box button:hover[b-i74929j6h3] {
        filter: brightness(1.06);
        transform: translateY(-1px);
    }
}

.search-box button:focus-visible[b-i74929j6h3] {
    outline: 3px solid color-mix(in srgb, var(--bhogi-primary) 35%, transparent);
    outline-offset: 3px;
}

.results-info[b-i74929j6h3] {
    margin: 0 0 var(--space-lg);
    color: var(--cmp-search-page-muted, var(--bhogi-text-muted));
    font-size: 0.9375rem;
}

.results-info strong[b-i74929j6h3] {
    color: var(--bhogi-text);
}

.loading-state[b-i74929j6h3],
.empty-state[b-i74929j6h3] {
    display: grid;
    min-height: 18rem;
    place-items: center;
    align-content: center;
    gap: var(--space-sm);
    padding: var(--space-xl);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-xl);
    background: var(--bhogi-surface);
    color: var(--cmp-search-page-muted, var(--bhogi-text-muted));
    text-align: center;
}

.loading-state i[b-i74929j6h3] {
    color: var(--bhogi-primary);
    font-size: 1.75rem;
}

.loading-state p[b-i74929j6h3],
.empty-state p[b-i74929j6h3],
.empty-state h3[b-i74929j6h3] {
    margin: 0;
}

.empty-state > i[b-i74929j6h3] {
    margin-bottom: var(--space-sm);
    color: var(--cmp-search-page-empty-icon, var(--bhogi-border));
    font-size: 3rem;
}

.empty-state h3[b-i74929j6h3] {
    color: var(--bhogi-text);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 1.5rem;
}

.empty-state .btn[b-i74929j6h3] {
    min-height: var(--storefront-touch-target);
    margin-top: var(--space-base);
    padding: 0.75rem 1.25rem;
    border-radius: var(--bhogi-radius-full);
}

.sr-only[b-i74929j6h3] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (max-width: 575.98px) {
    .search-box[b-i74929j6h3] {
        min-height: 3.5rem;
    }

    .search-leading-icon[b-i74929j6h3] {
        margin-inline-start: 0.5rem;
    }

    .search-box input[b-i74929j6h3] {
        font-size: 1rem;
        padding-inline: 0.5rem;
    }

    .search-box button[b-i74929j6h3] {
        min-width: 3rem;
        padding-inline: 0.75rem;
    }

    .search-box button span[b-i74929j6h3] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }
}

@media (prefers-reduced-motion: reduce) {
    .search-box[b-i74929j6h3],
    .search-box button[b-i74929j6h3] {
        transition: none;
    }
}
/* /Components/Pages/ShippingReturns.razor.rz.scp.css */
.policy-page[b-iswmwdikos] {
    --policy-surface: var(--bhogi-surface-premium);
    --policy-border: var(--bhogi-border-light);
    --policy-text: var(--bhogi-text);
    --policy-muted: var(--bhogi-text-muted);
    --policy-accent: var(--bhogi-primary);
    min-height: 60vh;
    color: var(--policy-text);
    background: var(--bhogi-surface);
}

.policy-container[b-iswmwdikos] { width: min(1180px, calc(100% - 3rem)); margin-inline: auto; }

.policy-breadcrumb[b-iswmwdikos] { border-bottom: 1px solid var(--policy-border); background: var(--policy-surface); }
.policy-breadcrumb ol[b-iswmwdikos] { display: flex; gap: .55rem; margin: 0; padding: .9rem 0; list-style: none; color: var(--policy-muted); font-size: .8125rem; }
.policy-breadcrumb li + li[b-iswmwdikos]::before { content: '/'; margin-right: .55rem; opacity: .45; }
.policy-breadcrumb a[b-iswmwdikos] { color: inherit; text-decoration: none; }
.policy-breadcrumb a:hover[b-iswmwdikos] { color: var(--policy-accent); }

.policy-hero[b-iswmwdikos] {
    padding: clamp(3rem, 7vw, 6rem) 0;
    background:
        radial-gradient(circle at 85% 18%, color-mix(in srgb, var(--bhogi-gold) 20%, transparent), transparent 28%),
        linear-gradient(135deg, color-mix(in srgb, var(--policy-accent) 8%, var(--bhogi-surface)), var(--bhogi-surface) 58%);
}

.policy-hero-layout[b-iswmwdikos] { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); align-items: center; gap: clamp(2rem, 6vw, 5rem); }
.policy-eyebrow[b-iswmwdikos] { display: block; margin-bottom: .7rem; color: var(--policy-accent); font-size: .75rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.policy-hero h1[b-iswmwdikos] { max-width: 720px; margin: 0 0 1rem; font-family: var(--bhogi-font-display, inherit); font-size: clamp(2.35rem, 5.5vw, 4.5rem); font-weight: 700; line-height: 1.04; letter-spacing: -.04em; }
.policy-hero-layout > div > p[b-iswmwdikos] { max-width: 640px; margin: 0 0 1.75rem; color: var(--policy-muted); font-size: clamp(1rem, 2vw, 1.125rem); line-height: 1.7; }

.policy-hero-actions[b-iswmwdikos] { display: flex; gap: .75rem; }
.policy-hero-actions a[b-iswmwdikos],
.policy-contact-card > a[b-iswmwdikos] { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 3.1rem; padding: .75rem 1.25rem; border-radius: var(--bhogi-radius-lg); font-size: .875rem; font-weight: 700; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.policy-primary[b-iswmwdikos],
.policy-contact-card > a[b-iswmwdikos] { color: #fff; background: var(--bhogi-gradient-primary); box-shadow: var(--bhogi-shadow-md); }
.policy-primary:hover[b-iswmwdikos],
.policy-contact-card > a:hover[b-iswmwdikos] { color: #fff; transform: translateY(-2px); box-shadow: var(--bhogi-shadow-lg); }
.policy-secondary[b-iswmwdikos] { border: 1px solid color-mix(in srgb, var(--policy-accent) 35%, var(--policy-border)); color: var(--policy-accent); background: var(--policy-surface); }
.policy-secondary:hover[b-iswmwdikos] { color: var(--policy-accent); transform: translateY(-2px); box-shadow: var(--bhogi-shadow-sm); }

.policy-note[b-iswmwdikos] { display: flex; align-items: flex-start; gap: 1rem; padding: 1.5rem; border: 1px solid color-mix(in srgb, var(--bhogi-gold) 34%, var(--policy-border)); border-radius: 1.25rem; background: color-mix(in srgb, var(--policy-surface) 94%, transparent); box-shadow: var(--bhogi-shadow-lg); }
.policy-note > span[b-iswmwdikos] { display: grid; flex: 0 0 auto; place-items: center; width: 2.75rem; height: 2.75rem; border-radius: 50%; color: var(--policy-accent); background: color-mix(in srgb, var(--policy-accent) 10%, var(--policy-surface)); }
.policy-note strong[b-iswmwdikos] { display: block; margin-bottom: .4rem; font-size: .95rem; }
.policy-note p[b-iswmwdikos] { margin: 0; color: var(--policy-muted); font-size: .8rem; line-height: 1.6; }

.policy-jump[b-iswmwdikos] { position: sticky; top: 0; z-index: 20; border-block: 1px solid var(--policy-border); background: color-mix(in srgb, var(--policy-surface) 96%, transparent); backdrop-filter: blur(12px); }
.policy-jump .policy-container[b-iswmwdikos] { display: flex; justify-content: center; overflow-x: auto; scrollbar-width: none; }
.policy-jump .policy-container[b-iswmwdikos]::-webkit-scrollbar { display: none; }
.policy-jump a[b-iswmwdikos] { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .45rem; padding: 1rem 1.25rem; color: var(--policy-muted); font-size: .78rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.policy-jump a:hover[b-iswmwdikos] { color: var(--policy-accent); }

.policy-section[b-iswmwdikos] { scroll-margin-top: 3.5rem; padding: clamp(3.5rem, 8vw, 6rem) 0; }
.policy-section-alt[b-iswmwdikos] { border-block: 1px solid var(--policy-border); background: color-mix(in srgb, var(--policy-accent) 3%, var(--policy-surface)); }
.policy-section-layout[b-iswmwdikos] { display: grid; grid-template-columns: minmax(260px, .75fr) minmax(0, 1.25fr); align-items: start; gap: clamp(2rem, 8vw, 7rem); }
.policy-section-reverse .policy-section-intro[b-iswmwdikos] { order: 2; }
.policy-section-number[b-iswmwdikos] { display: block; margin-bottom: .5rem; color: color-mix(in srgb, var(--bhogi-gold) 65%, var(--policy-accent)); font-family: var(--bhogi-font-display, inherit); font-size: 3.5rem; font-weight: 700; line-height: 1; opacity: .5; }
.policy-section-intro h2[b-iswmwdikos],
.policy-heading h2[b-iswmwdikos] { margin: 0 0 .75rem; font-size: clamp(1.8rem, 3.6vw, 2.65rem); letter-spacing: -.03em; }
.policy-section-intro > p[b-iswmwdikos],
.policy-heading > p[b-iswmwdikos] { margin: 0 0 1.2rem; color: var(--policy-muted); line-height: 1.7; }
.policy-section-intro > a[b-iswmwdikos] { color: var(--policy-accent); font-size: .85rem; font-weight: 700; text-decoration: none; }
.policy-section-intro > a i[b-iswmwdikos] { margin-left: .3rem; }

.policy-steps[b-iswmwdikos] { display: grid; gap: .85rem; margin: 0; padding: 0; list-style: none; }
.policy-steps li[b-iswmwdikos] { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; padding: 1.35rem; border: 1px solid var(--policy-border); border-radius: var(--bhogi-radius-lg); background: var(--policy-surface); box-shadow: var(--bhogi-shadow-sm); }
.policy-steps li > span[b-iswmwdikos] { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: .75rem; color: var(--policy-accent); background: color-mix(in srgb, var(--policy-accent) 10%, var(--policy-surface)); }
.policy-steps strong[b-iswmwdikos] { display: block; margin-bottom: .3rem; font-size: .92rem; }
.policy-steps p[b-iswmwdikos] { margin: 0; color: var(--policy-muted); font-size: .8rem; line-height: 1.55; }

.policy-prepare[b-iswmwdikos] { scroll-margin-top: 3.5rem; padding: clamp(3.5rem, 8vw, 5.5rem) 0; }
.policy-heading[b-iswmwdikos] { max-width: 680px; margin-bottom: 1.75rem; }
.policy-prepare-grid[b-iswmwdikos] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.policy-prepare-grid article[b-iswmwdikos] { padding: 1.35rem; border: 1px solid var(--policy-border); border-radius: var(--bhogi-radius-lg); background: var(--policy-surface); box-shadow: var(--bhogi-shadow-sm); }
.policy-prepare-grid article > span[b-iswmwdikos] { display: grid; place-items: center; width: 2.6rem; height: 2.6rem; margin-bottom: 1rem; border-radius: 50%; color: var(--policy-accent); background: color-mix(in srgb, var(--policy-accent) 10%, var(--policy-surface)); }
.policy-prepare-grid strong[b-iswmwdikos] { display: block; margin-bottom: .35rem; font-size: .9rem; }
.policy-prepare-grid p[b-iswmwdikos] { margin: 0; color: var(--policy-muted); font-size: .77rem; line-height: 1.55; }

.policy-faq[b-iswmwdikos] { scroll-margin-top: 3.5rem; padding: clamp(3.5rem, 8vw, 5.5rem) 0; border-block: 1px solid var(--policy-border); background: color-mix(in srgb, var(--policy-accent) 3%, var(--policy-surface)); }
.policy-faq-layout[b-iswmwdikos] { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); align-items: start; gap: clamp(2rem, 7vw, 6rem); }
.policy-faq-list[b-iswmwdikos] { display: grid; gap: .75rem; }
.policy-faq-list details[b-iswmwdikos] { border: 1px solid var(--policy-border); border-radius: var(--bhogi-radius-lg); background: var(--policy-surface); box-shadow: var(--bhogi-shadow-sm); }
.policy-faq-list summary[b-iswmwdikos] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 4.1rem; padding: 1rem 1.2rem; cursor: pointer; font-size: .9rem; font-weight: 700; list-style: none; }
.policy-faq-list summary[b-iswmwdikos]::-webkit-details-marker { display: none; }
.policy-faq-list summary i[b-iswmwdikos] { color: var(--policy-muted); font-size: .7rem; transition: transform .2s ease; }
.policy-faq-list details[open] summary i[b-iswmwdikos] { transform: rotate(45deg); }
.policy-faq-list details p[b-iswmwdikos] { margin: 0; padding: 0 1.2rem 1.2rem; color: var(--policy-muted); font-size: .82rem; line-height: 1.65; }
.policy-faq-list details a[b-iswmwdikos] { color: var(--policy-accent); font-weight: 700; }

.policy-contact[b-iswmwdikos] { padding: clamp(2.75rem, 6vw, 4.5rem) 0; }
.policy-contact-card[b-iswmwdikos] { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1.25rem; padding: clamp(1.5rem, 4vw, 2.25rem); border: 1px solid color-mix(in srgb, var(--bhogi-gold) 32%, var(--policy-border)); border-radius: 1.5rem; background: var(--policy-surface); box-shadow: var(--bhogi-shadow-md); }
.policy-contact-card > span[b-iswmwdikos] { display: grid; place-items: center; width: 3.5rem; height: 3.5rem; border-radius: 50%; color: var(--policy-accent); background: color-mix(in srgb, var(--policy-accent) 10%, var(--policy-surface)); }
.policy-contact-card h2[b-iswmwdikos] { margin: 0 0 .3rem; font-size: 1.2rem; }
.policy-contact-card p[b-iswmwdikos] { margin: 0; color: var(--policy-muted); font-size: .8rem; }

.policy-page a:focus-visible[b-iswmwdikos],
.policy-page summary:focus-visible[b-iswmwdikos] { outline: 3px solid color-mix(in srgb, var(--policy-accent) 28%, transparent); outline-offset: 3px; }

@media (max-width: 820px) {
    .policy-hero-layout[b-iswmwdikos],
    .policy-section-layout[b-iswmwdikos],
    .policy-faq-layout[b-iswmwdikos] { grid-template-columns: 1fr; }
    .policy-section-reverse .policy-section-intro[b-iswmwdikos] { order: initial; }
    .policy-prepare-grid[b-iswmwdikos] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .policy-jump .policy-container[b-iswmwdikos] { justify-content: flex-start; }
    .policy-contact-card[b-iswmwdikos] { grid-template-columns: auto 1fr; }
    .policy-contact-card > a[b-iswmwdikos] { grid-column: 1 / -1; }
}

@media (max-width: 520px) {
    .policy-container[b-iswmwdikos] { width: min(100% - 2rem, 1180px); }
    .policy-hero[b-iswmwdikos] { padding: 3rem 0; }
    .policy-hero h1[b-iswmwdikos] { font-size: 2.5rem; }
    .policy-hero-actions[b-iswmwdikos] { flex-direction: column; }
    .policy-hero-actions a[b-iswmwdikos] { width: calc(100% - 4rem); }
    .policy-note[b-iswmwdikos] { padding: 1.2rem; }
    .policy-jump .policy-container[b-iswmwdikos] { width: 100%; padding-inline: .5rem; }
    .policy-jump a[b-iswmwdikos] { padding-inline: .8rem; }
    .policy-prepare-grid[b-iswmwdikos] { grid-template-columns: 1fr; }
    .policy-contact-card[b-iswmwdikos] { grid-template-columns: 1fr; text-align: center; }
    .policy-contact-card > span[b-iswmwdikos] { margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .policy-hero-actions a[b-iswmwdikos],
    .policy-contact-card > a[b-iswmwdikos],
    .policy-faq-list summary i[b-iswmwdikos] { transition: none; }
}
/* /Components/Pages/SlugRouter.razor.rz.scp.css */
/* Slug Router Component - Premium Design */

/* ============================================
   Loading State
   ============================================ */
.slug-router-loading[b-u8svxm8v7d] {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f9fafb;
}

.loading-state[b-u8svxm8v7d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 3rem;
    text-align: center;
}

.loading-state i[b-u8svxm8v7d] {
    font-size: 2.5rem;
    color: #0d6efd;
}

.loading-state p[b-u8svxm8v7d] {
    font-size: 1rem;
    color: #6b7280;
    margin: 0;
}

/* ============================================
   Animations
   ============================================ */
@keyframes spin-b-u8svxm8v7d {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.loading-state i.fa-spin[b-u8svxm8v7d] {
    animation: spin-b-u8svxm8v7d 1s linear infinite;
}
/* /Components/Pages/TopicPage.razor.rz.scp.css */
/* ============================================================
   TOPIC PAGE — Enterprise Premium CMS Content
   Architecture: Breadcrumb strip → Container → Article/Empty
   ============================================================ */

/* ── Design Tokens ── */
.topic-page[b-jba1v6cihy] {
    --tp-bg: var(--cmp-topic-page-bg, #ffffff);
    --tp-surface: var(--cmp-topic-page-surface, #f8fafc);
    --tp-border: var(--cmp-topic-page-border, #e2e8f0);
    --tp-text: var(--cmp-topic-page-text, #334155);
    --tp-text-muted: var(--cmp-topic-page-text-muted, #64748b);
    --tp-heading: var(--cmp-topic-page-heading, #0f172a);
    --tp-accent: var(--cmp-topic-page-accent, #3b82f6);
    --tp-accent-soft: var(--cmp-topic-page-accent-soft, rgba(59,130,246,.08));
    --tp-radius: var(--cmp-topic-page-radius, 0.75rem);
    --tp-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--tp-bg);
}

/* ── Breadcrumb Strip ── */
.breadcrumb-strip[b-jba1v6cihy] {
    background: var(--tp-surface);
    border-bottom: 1px solid var(--tp-border);
    padding: 0.875rem 0;
}

.crumbs[b-jba1v6cihy] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--tp-text-muted);
}

.crumbs li + li[b-jba1v6cihy]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-jba1v6cihy] {
    color: var(--tp-text-muted);
    text-decoration: none;
    transition: color .2s var(--tp-ease);
}

.crumbs a:hover[b-jba1v6cihy] {
    color: var(--tp-accent);
}

.crumbs .active[b-jba1v6cihy] {
    color: var(--tp-heading);
    font-weight: 600;
}

/* ── Container ── */
.tp-container[b-jba1v6cihy] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Skeleton Loading ── */
.tp-skeleton[b-jba1v6cihy] {
    padding: 3rem 0 4rem;
    max-width: 800px;
}

.tp-skeleton > div[b-jba1v6cihy] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-jba1v6cihy 1.5s ease infinite;
    border-radius: 0.5rem;
}

.sk-title[b-jba1v6cihy] {
    height: 2.25rem;
    width: 55%;
    margin-bottom: 1rem;
}

.sk-intro[b-jba1v6cihy] {
    height: 1.25rem;
    width: 80%;
    margin-bottom: 2rem;
}

.sk-block[b-jba1v6cihy] {
    height: 8rem;
    width: 100%;
    margin-bottom: 1rem;
}

.sk-short[b-jba1v6cihy] {
    width: 65%;
    height: 5rem;
}

@keyframes sk-shimmer-b-jba1v6cihy {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty / Not-Found State ── */
.tp-empty[b-jba1v6cihy] {
    text-align: center;
    padding: 5rem 2rem;
    max-width: 420px;
    margin: 0 auto;
}

.tp-empty i[b-jba1v6cihy] {
    font-size: 3.5rem;
    color: var(--tp-border);
    margin-bottom: 1.25rem;
    display: block;
}

.tp-empty h2[b-jba1v6cihy] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--tp-heading);
    margin: 0 0 0.5rem;
}

.tp-empty p[b-jba1v6cihy] {
    font-size: 0.9375rem;
    color: var(--tp-text-muted);
    margin: 0 0 1.5rem;
    line-height: 1.6;
}

.tp-btn[b-jba1v6cihy] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--tp-accent);
    border-radius: var(--tp-radius);
    text-decoration: none;
    transition: background .2s var(--tp-ease), transform .15s var(--tp-ease);
}

.tp-btn:hover[b-jba1v6cihy] {
    background: #2563eb;
    transform: translateY(-1px);
}

/* ── Article ── */
.tp-article[b-jba1v6cihy] {
    padding: 2.5rem 0 4rem;
    animation: tp-fadeIn-b-jba1v6cihy .4s var(--tp-ease) both;
}

.tp-prose[b-jba1v6cihy] {
    max-width: 800px;
}

@keyframes tp-fadeIn-b-jba1v6cihy {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Header */
.tp-header[b-jba1v6cihy] {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--tp-border);
    position: relative;
}

.tp-header[b-jba1v6cihy]::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 80px;
    height: 2px;
    background: linear-gradient(90deg, var(--tp-accent), #818cf8);
    border-radius: 1px;
}

.tp-title[b-jba1v6cihy] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--tp-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    line-height: 1.25;
}

.tp-intro[b-jba1v6cihy] {
    font-size: 1.125rem;
    line-height: 1.7;
    color: var(--tp-text-muted);
    margin: 0;
}

/* Body — HTML content from CMS editor */
.tp-body[b-jba1v6cihy] {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--tp-text);
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.tp-body h1[b-jba1v6cihy],
.tp-body h2[b-jba1v6cihy],
.tp-body h3[b-jba1v6cihy],
.tp-body h4[b-jba1v6cihy],
.tp-body h5[b-jba1v6cihy],
.tp-body h6[b-jba1v6cihy] {
    color: var(--tp-heading);
    font-weight: 700;
    margin-top: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1.3;
}

.tp-body h2[b-jba1v6cihy] { font-size: 1.5rem; }
.tp-body h3[b-jba1v6cihy] { font-size: 1.25rem; }
.tp-body h4[b-jba1v6cihy] { font-size: 1.125rem; }

.tp-body p[b-jba1v6cihy] {
    margin-bottom: 1.25rem;
}

.tp-body a[b-jba1v6cihy] {
    color: var(--tp-accent);
    text-decoration: underline;
    text-decoration-color: rgba(59,130,246,.3);
    text-underline-offset: 3px;
    transition: text-decoration-color .2s;
}

.tp-body a:hover[b-jba1v6cihy] {
    text-decoration-color: var(--tp-accent);
}

.tp-body ul[b-jba1v6cihy],
.tp-body ol[b-jba1v6cihy] {
    padding-left: 1.5rem;
    margin-bottom: 1.25rem;
}

.tp-body li[b-jba1v6cihy] {
    margin-bottom: 0.375rem;
}

.tp-body blockquote[b-jba1v6cihy] {
    border-left: 3px solid var(--tp-accent);
    padding: 1rem 1.25rem;
    margin: 1.5rem 0;
    background: var(--tp-accent-soft);
    border-radius: 0 var(--tp-radius) var(--tp-radius) 0;
    color: var(--tp-heading);
    font-style: italic;
}

.tp-body img[b-jba1v6cihy] {
    max-width: 100%;
    height: auto;
    border-radius: var(--tp-radius);
    margin: 1rem 0;
}

.tp-body table[b-jba1v6cihy] {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5rem 0;
    font-size: 0.9375rem;
}

.tp-body th[b-jba1v6cihy],
.tp-body td[b-jba1v6cihy] {
    padding: 0.75rem 1rem;
    border: 1px solid var(--tp-border);
    text-align: left;
}

.tp-body th[b-jba1v6cihy] {
    background: var(--tp-surface);
    font-weight: 600;
    color: var(--tp-heading);
}

.tp-body pre[b-jba1v6cihy],
.tp-body code[b-jba1v6cihy] {
    font-family: 'Cascadia Code', 'Fira Code', monospace;
    font-size: 0.875rem;
}

.tp-body pre[b-jba1v6cihy] {
    background: #1e293b;
    color: #e2e8f0;
    padding: 1.25rem;
    border-radius: var(--tp-radius);
    overflow-x: auto;
    margin: 1.5rem 0;
}

.tp-body code[b-jba1v6cihy] {
    background: var(--tp-accent-soft);
    color: var(--tp-accent);
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
}

.tp-body pre code[b-jba1v6cihy] {
    background: none;
    color: inherit;
    padding: 0;
}

.tp-body hr[b-jba1v6cihy] {
    border: none;
    height: 1px;
    background: var(--tp-border);
    margin: 2rem 0;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .tp-container[b-jba1v6cihy] {
        padding: 0 1rem;
    }

    .tp-title[b-jba1v6cihy] {
        font-size: 1.5rem;
    }

    .tp-intro[b-jba1v6cihy] {
        font-size: 1rem;
    }

    .tp-article[b-jba1v6cihy] {
        padding: 1.5rem 0 3rem;
    }

    .tp-empty[b-jba1v6cihy] {
        padding: 3rem 1rem;
    }
}

/* ── Reduced Motion ── */
@media (prefers-reduced-motion: reduce) {
    .tp-article[b-jba1v6cihy] {
        animation: none;
    }

    .tp-skeleton > div[b-jba1v6cihy] {
        animation: none;
    }
}
/* /Components/Pages/TrendingPage.razor.rz.scp.css */
/* ============================================================
   TRENDING PAGE — Enterprise Premium Product Grid
   ============================================================ */

.newproducts-page[b-cpinvsj2ri] {
    --np-bg: #ffffff;
    --np-surface: #f8fafc;
    --np-border: #e2e8f0;
    --np-text: #334155;
    --np-text-muted: #64748b;
    --np-heading: #0f172a;
    --np-accent: #3b82f6;
    --np-accent-soft: rgba(59,130,246,.08);
    --np-sale: #ef4444;
    --np-new: #8b5cf6;
    --np-radius: 0.75rem;
    --np-ease: cubic-bezier(.4,0,.2,1);

    min-height: 60vh;
    background: var(--np-bg);
}

/* ── Breadcrumb ── */
.breadcrumb-strip[b-cpinvsj2ri] {
    background: var(--np-surface);
    border-bottom: 1px solid var(--np-border);
    padding: 0.875rem 0;
}

.crumbs[b-cpinvsj2ri] {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    color: var(--np-text-muted);
}

.crumbs li + li[b-cpinvsj2ri]::before {
    content: '\f054';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    font-size: 0.5625rem;
    margin-right: 0.5rem;
    opacity: .45;
}

.crumbs a[b-cpinvsj2ri] {
    color: var(--np-text-muted);
    text-decoration: none;
    transition: color .2s var(--np-ease);
}
.crumbs a:hover[b-cpinvsj2ri] { color: var(--np-accent); }
.crumbs .active[b-cpinvsj2ri] { color: var(--np-heading); font-weight: 600; }

/* ── Container ── */
.np-container[b-cpinvsj2ri] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* ── Header ── */
.np-header[b-cpinvsj2ri] {
    text-align: center;
    padding: 2.5rem 0 2rem;
    margin: 1.25rem 0 1.75rem;
    background: linear-gradient(180deg, rgba(239, 246, 255, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid rgba(59, 130, 246, 0.12);
    border-radius: 1.25rem;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
    animation: np-fadeIn-b-cpinvsj2ri .4s var(--np-ease) both;
}

.np-kicker[b-cpinvsj2ri] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.75rem;
    margin-bottom: 0.875rem;
    border-radius: 999px;
    background: rgba(59, 130, 246, 0.12);
    color: #1d4ed8;
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.np-title[b-cpinvsj2ri] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.np-title i[b-cpinvsj2ri] {
    color: var(--np-new);
    font-size: 1.5rem;
}

.np-subtitle[b-cpinvsj2ri] {
    font-size: 1.0625rem;
    color: var(--np-text-muted);
    margin: 0;
    line-height: 1.6;
}

.np-highlights[b-cpinvsj2ri] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.np-highlight[b-cpinvsj2ri] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: var(--np-heading);
    font-size: 0.75rem;
    font-weight: 700;
}

@keyframes np-fadeIn-b-cpinvsj2ri {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Product Grid ── */
.np-grid[b-cpinvsj2ri] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
    padding-bottom: 4rem;
    animation: np-fadeIn-b-cpinvsj2ri .5s var(--np-ease) .1s both;
}

/* ── Product Card ── */
.np-card[b-cpinvsj2ri] {
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--np-bg);
    border: 1px solid var(--np-border);
    border-radius: var(--np-radius);
    text-decoration: none;
    color: var(--np-text);
    overflow: hidden;
    transition: border-color .25s var(--np-ease), box-shadow .25s var(--np-ease), transform .2s var(--np-ease);
}

.np-card:hover[b-cpinvsj2ri] {
    border-color: var(--np-accent);
    box-shadow: 0 6px 24px rgba(59,130,246,.10);
    transform: translateY(-3px);
}

/* Badges */
.np-badge[b-cpinvsj2ri] {
    position: absolute;
    top: 0.75rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    z-index: 1;
}

.np-badge-new[b-cpinvsj2ri] {
    right: 0.75rem;
    background: var(--np-new);
    color: #fff;
}

.np-badge-sale[b-cpinvsj2ri] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
}

.np-badge-bestseller[b-cpinvsj2ri] {
    right: 0.75rem;
    background: #f59e0b;
    color: #fff;
}

.np-badge-trending[b-cpinvsj2ri] {
    right: 0.75rem;
    background: #8b5cf6;
    color: #fff;
}

.np-badge-discount[b-cpinvsj2ri] {
    left: 0.75rem;
    background: var(--np-sale);
    color: #fff;
    font-weight: 800;
}

/* Rating Stars */
.np-card-rating[b-cpinvsj2ri] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    color: #f59e0b;
}

.np-card-rating .rating-count[b-cpinvsj2ri] {
    color: var(--np-text-muted);
    font-size: 0.6875rem;
    margin-left: 0.125rem;
}

.np-price-from[b-cpinvsj2ri] {
    font-size: 0.75rem;
    color: var(--np-text-muted);
    font-weight: 500;
}

/* Card Image */
.np-card-img[b-cpinvsj2ri] {
    width: 100%;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: var(--np-surface);
}

.np-card-img img[b-cpinvsj2ri] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform .3s var(--np-ease);
}

.np-card:hover .np-card-img img[b-cpinvsj2ri] {
    transform: scale(1.05);
}

/* Card Body */
.np-card-body[b-cpinvsj2ri] {
    padding: 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.np-card-name[b-cpinvsj2ri] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.np-card-price[b-cpinvsj2ri] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-top: auto;
}

.np-price-current[b-cpinvsj2ri] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--np-heading);
}

.np-price-old[b-cpinvsj2ri] {
    font-size: 0.8125rem;
    color: var(--np-text-muted);
    text-decoration: line-through;
}

/* ── Skeleton ── */
.np-skeleton[b-cpinvsj2ri] {
    pointer-events: none;
}

.np-skeleton .sk-img[b-cpinvsj2ri] {
    width: 100%;
    aspect-ratio: 1;
    background: var(--np-surface);
}

.np-skeleton .sk-name[b-cpinvsj2ri] {
    height: 1rem;
    width: 75%;
    margin: 1rem 1rem 0.5rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-price[b-cpinvsj2ri] {
    height: 0.875rem;
    width: 35%;
    margin: 0 1rem 1rem;
    border-radius: 0.375rem;
}

.np-skeleton .sk-name[b-cpinvsj2ri],
.np-skeleton .sk-price[b-cpinvsj2ri] {
    background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);
    background-size: 200% 100%;
    animation: sk-shimmer-b-cpinvsj2ri 1.5s ease infinite;
}

@keyframes sk-shimmer-b-cpinvsj2ri {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty ── */
.np-empty[b-cpinvsj2ri] {
    text-align: center;
    padding: 4rem 2rem;
}

.np-empty i[b-cpinvsj2ri] {
    font-size: 3rem;
    color: var(--np-border);
    margin-bottom: 1rem;
    display: block;
}

.np-empty h2[b-cpinvsj2ri] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--np-heading);
    margin: 0 0 0.5rem;
}

.np-empty p[b-cpinvsj2ri] {
    font-size: 0.9375rem;
    color: var(--np-text-muted);
    margin: 0 0 1.5rem;
}

.np-btn[b-cpinvsj2ri] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #fff;
    background: var(--np-accent);
    border-radius: var(--np-radius);
    text-decoration: none;
    transition: background .2s var(--np-ease), transform .15s var(--np-ease);
}

.np-btn:hover[b-cpinvsj2ri] {
    background: #2563eb;
    transform: translateY(-1px);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .np-container[b-cpinvsj2ri] { padding: 0 1rem; }
    .np-header[b-cpinvsj2ri] { padding: 1.5rem 1rem 1.25rem; margin: 1rem 0 1.25rem; border-radius: 1rem; }
    .np-title[b-cpinvsj2ri] { font-size: 1.5rem; }
    .np-grid[b-cpinvsj2ri] { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 0.75rem; }
    .np-card-body[b-cpinvsj2ri] { padding: 0.75rem; }
    .np-highlights[b-cpinvsj2ri] { gap: 0.4rem; }
    .np-highlight[b-cpinvsj2ri] { font-size: 0.6875rem; padding: 0.35rem 0.625rem; }
}

@media (prefers-reduced-motion: reduce) {
    .np-header[b-cpinvsj2ri], .np-grid[b-cpinvsj2ri] { animation: none; }
    .np-skeleton .sk-name[b-cpinvsj2ri], .np-skeleton .sk-price[b-cpinvsj2ri] { animation: none; }
}

/* ============================================
   ARTLIST GRID SYSTEM - 4 Column Responsive Layout
   ============================================ */
.artlist[b-cpinvsj2ri] {
    --artlist-gap: 1.25rem;
}

.artlist-grid[b-cpinvsj2ri] {
    display: grid;
    gap: var(--artlist-gap);
}

.artlist-4-cols[b-cpinvsj2ri] {
    grid-template-columns: repeat(4, 1fr);
}

/* Mobile: 1 column */
@media (max-width: 767px) {
    .artlist-4-cols[b-cpinvsj2ri] {
        grid-template-columns: 1fr;
        --artlist-gap: 1rem;
    }
}

/* Tablet: 3 columns */
@media (min-width: 768px) and (max-width: 1199px) {
    .artlist-4-cols[b-cpinvsj2ri] {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Desktop: 4 columns (default) */
@media (min-width: 1200px) {
    .artlist-4-cols[b-cpinvsj2ri] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Components/Pages/Wishlist.razor.rz.scp.css */
/* Wishlist Page Styles */
.wishlist-page[b-m72rd0hey5] {
    padding-bottom: 4rem;
}

.wishlist-page .page-title[b-m72rd0hey5] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    font-weight: 800;
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.wishlist-page .page-title i[b-m72rd0hey5] {
    color: var(--bhogi-danger, #dc3545);
}

.wishlist-page .item-count[b-m72rd0hey5] {
    font-size: 1rem;
    font-weight: 400;
    color: var(--bhogi-text-muted, #6c757d);
}

.wishlist-page .loading-state[b-m72rd0hey5],
.wishlist-page .empty-state[b-m72rd0hey5] {
    text-align: center;
    padding: 4rem 2rem;
}

.wishlist-page .empty-state i[b-m72rd0hey5] {
    font-size: 4rem;
    color: #dee2e6;
    margin-bottom: 1rem;
    display: block;
}

.wishlist-page .empty-state h2[b-m72rd0hey5] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.wishlist-page .empty-state p[b-m72rd0hey5] {
    color: #6c757d;
    margin-bottom: 1.5rem;
}

/* Wishlist Grid */
.wishlist-grid[b-m72rd0hey5] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.wishlist-item[b-m72rd0hey5] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1rem;
    background: var(--bhogi-surface, #fff);
    border: 1px solid var(--bhogi-border-light, #e9ecef);
    border-radius: 0.875rem;
    box-shadow: var(--bhogi-shadow-xs, 0 1px 3px rgba(0, 0, 0, 0.05));
    transition: box-shadow 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

/* Only apply hover effects with a real pointer (mouse).
   On touch, :hover sticks while scrolling and the row visibly changes (shadow/color flicker). */
@media (hover: hover) {
    .wishlist-item:hover[b-m72rd0hey5] {
        border-color: color-mix(in srgb, var(--bhogi-primary) 24%, var(--bhogi-border-light));
        box-shadow: var(--bhogi-shadow-md, 0 8px 24px rgba(0, 0, 0, 0.1));
        transform: translateY(-1px);
    }
}

.wishlist-item .item-image[b-m72rd0hey5] {
    width: 90px;
    height: 90px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-premium, #f8f9fa);
    border-radius: 0.625rem;
    overflow: hidden;
}

.wishlist-item .item-image img[b-m72rd0hey5] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.wishlist-item .item-body[b-m72rd0hey5] {
    flex: 1;
    min-width: 0;
}

.wishlist-item .item-name[b-m72rd0hey5] {
    font-weight: 600;
    color: var(--bhogi-text, #212529);
    text-decoration: none;
    display: block;
    margin-bottom: 0.25rem;
}

@media (hover: hover) {
    .wishlist-item .item-name:hover[b-m72rd0hey5] {
        color: var(--bhogi-primary, #0d6efd);
    }
}

.wishlist-item .item-sku[b-m72rd0hey5] {
    display: block;
    font-size: 0.75rem;
    color: var(--bhogi-text-muted, #6c757d);
    margin-bottom: 0.25rem;
}

.wishlist-item .item-price[b-m72rd0hey5] {
    font-weight: 700;
    font-size: 1.125rem;
    color: var(--bhogi-primary, #e74c3c);
}

.wishlist-item .item-actions[b-m72rd0hey5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.wishlist-item .btn-remove[b-m72rd0hey5] {
    color: var(--bhogi-danger, #dc3545);
    border-color: color-mix(in srgb, var(--bhogi-danger, #dc3545) 55%, transparent);
    width: 2.5rem;
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (hover: hover) {
    .wishlist-item .btn-remove:hover[b-m72rd0hey5] {
        background: var(--bhogi-danger, #dc3545);
        color: #fff;
    }
}

.wishlist-actions[b-m72rd0hey5] {
    margin-top: 2rem;
}

/* Responsive */
@media (max-width: 767px) {
    .wishlist-page[b-m72rd0hey5] {
        padding-bottom: 6rem;
    }

    .wishlist-page .page-title[b-m72rd0hey5] {
        align-items: baseline;
        margin-bottom: 1.25rem;
    }

    .wishlist-item[b-m72rd0hey5] {
        display: grid;
        grid-template-columns: 84px minmax(0, 1fr);
        align-items: center;
        gap: 0.875rem;
        padding: 0.875rem;
        text-align: left;
    }

    .wishlist-item .item-image[b-m72rd0hey5] {
        width: 84px;
        height: 96px;
        grid-row: 1;
    }

    .wishlist-item .item-body[b-m72rd0hey5] {
        grid-column: 2;
        grid-row: 1;
    }

    .wishlist-item .item-name[b-m72rd0hey5] {
        line-height: 1.35;
    }

    .wishlist-item .item-price[b-m72rd0hey5] {
        display: block;
        margin-top: 0.35rem;
    }

    .wishlist-item .item-actions[b-m72rd0hey5] {
        grid-column: 1 / -1;
        width: 100%;
        justify-content: stretch;
    }

    .wishlist-item .item-actions .btn-primary[b-m72rd0hey5] {
        flex: 1;
        min-height: 2.75rem;
    }

    .wishlist-actions .btn[b-m72rd0hey5] {
        width: 100%;
        min-height: 2.75rem;
    }
}

@media (max-width: 360px) {
    .wishlist-page .item-count[b-m72rd0hey5] {
        display: block;
    }

    .wishlist-item[b-m72rd0hey5] {
        grid-template-columns: 72px minmax(0, 1fr);
    }

    .wishlist-item .item-image[b-m72rd0hey5] {
        width: 72px;
        height: 86px;
    }
}
/* /Components/Product/ProductAssociatedProducts.razor.rz.scp.css */
/* ============================================
   ASSOCIATED PRODUCTS — Enterprise E-Commerce
   Matches Bhogi.Web Product.AssociatedProduct.cshtml
   design system consistent with ProductBundle
   ============================================ */

/* Section Container */
.pd-assoc-section[b-88z1c0h2ze] {
    margin: 2rem 0;
}

/* Main Card */
.pd-assoc-card[b-88z1c0h2ze] {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

/* Header */
.pd-assoc-header[b-88z1c0h2ze] {
    background: #111827;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.pd-assoc-header-icon[b-88z1c0h2ze] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 0.5rem;
    flex-shrink: 0;
}

[b-88z1c0h2ze] .pd-assoc-header-icon i {
    font-size: 1rem;
    color: #ffffff;
}

.pd-assoc-title[b-88z1c0h2ze] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.025em;
}

.pd-assoc-count[b-88z1c0h2ze] {
    margin-left: auto;
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    flex-shrink: 0;
}

/* Items Container */
.pd-assoc-items[b-88z1c0h2ze] {
    padding: 0;
}

/* Individual Item Row */
.pd-assoc-item[b-88z1c0h2ze] {
    display: grid;
    grid-template-columns: 120px 1fr auto;
    gap: 1.5rem;
    padding: 1.5rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background-color 0.2s ease;
    align-items: start;
}

.pd-assoc-item:last-child[b-88z1c0h2ze] {
    border-bottom: none;
}

.pd-assoc-item:hover[b-88z1c0h2ze] {
    background: #f9fafb;
}

/* Item Image */
.pd-assoc-item-image[b-88z1c0h2ze] {
    width: 120px;
    height: 120px;
    flex-shrink: 0;
    background: #ffffff;
    border-radius: 0.75rem;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    position: relative;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.pd-assoc-item:hover .pd-assoc-item-image[b-88z1c0h2ze] {
    border-color: #d1d5db;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

[b-88z1c0h2ze] .pd-assoc-item-image a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

[b-88z1c0h2ze] .pd-assoc-item-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    transition: transform 0.3s ease;
}

.pd-assoc-item:hover[b-88z1c0h2ze]  .pd-assoc-item-image img {
    transform: scale(1.05);
}

/* Badges overlay on image */
.pd-assoc-badges[b-88z1c0h2ze] {
    position: absolute;
    top: 6px;
    left: 6px;
    display: flex;
    flex-direction: column;
    gap: 3px;
    z-index: 2;
}

.pd-assoc-badge[b-88z1c0h2ze] {
    font-size: 0.625rem;
    font-weight: 700;
    padding: 0.125rem 0.4rem;
    border-radius: 4px;
    color: #ffffff;
    background: #ef4444;
    line-height: 1.4;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* Item Info Column */
.pd-assoc-item-info[b-88z1c0h2ze] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-top: 0.125rem;
}

.pd-assoc-item-name[b-88z1c0h2ze] {
    font-size: 1rem;
    font-weight: 600;
    color: #111827;
    text-decoration: none;
    line-height: 1.4;
    transition: color 0.15s ease;
    display: block;
}

.pd-assoc-item-name:hover[b-88z1c0h2ze] {
    color: #2563eb;
}

.pd-assoc-item-desc[b-88z1c0h2ze] {
    font-size: 0.8125rem;
    color: #6b7280;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.pd-assoc-item-sku[b-88z1c0h2ze] {
    font-size: 0.75rem;
    color: #9ca3af;
    font-weight: 500;
}

/* Delivery & Stock Info */
.pd-assoc-item-meta[b-88z1c0h2ze] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.pd-assoc-delivery[b-88z1c0h2ze] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #374151;
    font-weight: 500;
}

.pd-assoc-delivery-dot[b-88z1c0h2ze] {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
    flex-shrink: 0;
}

.pd-assoc-stock[b-88z1c0h2ze] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
}

.pd-assoc-stock.in-stock[b-88z1c0h2ze] {
    color: #059669;
}

.pd-assoc-stock.out-of-stock[b-88z1c0h2ze] {
    color: #ef4444;
}

[b-88z1c0h2ze] .pd-assoc-stock i {
    font-size: 0.625rem;
}

/* Actions Column — Price & Cart */
.pd-assoc-item-actions[b-88z1c0h2ze] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 0.75rem;
    min-width: 160px;
    padding-top: 0.125rem;
}

/* Price Block */
.pd-assoc-price-block[b-88z1c0h2ze] {
    text-align: right;
}

.pd-assoc-price-current[b-88z1c0h2ze] {
    font-size: 1.25rem;
    font-weight: 800;
    color: #111827;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.pd-assoc-price-old-row[b-88z1c0h2ze] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 0.25rem;
}

.pd-assoc-price-old[b-88z1c0h2ze] {
    font-size: 0.8125rem;
    color: #9ca3af;
    text-decoration: line-through;
}

.pd-assoc-discount-badge[b-88z1c0h2ze] {
    font-size: 0.6875rem;
    font-weight: 700;
    color: #ffffff;
    background: #dc2626;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
    letter-spacing: 0.02em;
}

/* Add to Cart Button */
.pd-assoc-cart-btn[b-88z1c0h2ze] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: #111827;
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.pd-assoc-cart-btn:hover:not(:disabled)[b-88z1c0h2ze] {
    background: #1f2937;
    box-shadow: 0 4px 12px rgba(17, 24, 39, 0.2);
}

.pd-assoc-cart-btn:active:not(:disabled)[b-88z1c0h2ze] {
    transform: translateY(0);
}

.pd-assoc-cart-btn:disabled[b-88z1c0h2ze] {
    opacity: 0.4;
    cursor: not-allowed;
    background: #9ca3af;
}

[b-88z1c0h2ze] .pd-assoc-cart-btn i {
    font-size: 0.8125rem;
}

/* ============================================
   EMPTY STATE
   ============================================ */
.pd-assoc-empty[b-88z1c0h2ze] {
    padding: 3rem 1.5rem;
    text-align: center;
    color: #9ca3af;
    font-size: 0.875rem;
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */

@media (max-width: 768px) {
    .pd-assoc-item[b-88z1c0h2ze] {
        grid-template-columns: 90px 1fr;
        gap: 1rem;
    }

    .pd-assoc-item-image[b-88z1c0h2ze] {
        width: 90px;
        height: 90px;
    }

    .pd-assoc-item-actions[b-88z1c0h2ze] {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        min-width: 0;
        padding-top: 0;
        padding-left: 0;
        border-top: 1px solid #f3f4f6;
        padding-top: 0.75rem;
    }

    .pd-assoc-price-block[b-88z1c0h2ze] {
        text-align: left;
    }

    .pd-assoc-price-old-row[b-88z1c0h2ze] {
        justify-content: flex-start;
    }

    .pd-assoc-count[b-88z1c0h2ze] {
        display: none;
    }
}

@media (max-width: 576px) {
    .pd-assoc-section[b-88z1c0h2ze] {
        margin: 1rem 0;
    }

    .pd-assoc-header[b-88z1c0h2ze] {
        padding: 1rem 1.25rem;
    }

    .pd-assoc-title[b-88z1c0h2ze] {
        font-size: 1.125rem;
    }

    .pd-assoc-item[b-88z1c0h2ze] {
        grid-template-columns: 1fr;
        gap: 0.875rem;
        padding: 1rem 1.25rem;
    }

    .pd-assoc-item-image[b-88z1c0h2ze] {
        width: 96px;
        height: 96px;
        padding: 6px;
        margin: 0 auto;
    }

    .pd-assoc-item-info[b-88z1c0h2ze] {
        gap: 0.4375rem;
        padding-top: 0;
    }

    .pd-assoc-item-meta[b-88z1c0h2ze] {
        gap: 0.5rem;
    }

    .pd-assoc-item-actions[b-88z1c0h2ze] {
        grid-column: auto;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 0.75rem;
        padding-top: 0.75rem;
    }

    .pd-assoc-price-block[b-88z1c0h2ze] {
        text-align: left;
    }

    .pd-assoc-price-old-row[b-88z1c0h2ze] {
        justify-content: flex-start;
    }

    .pd-assoc-item-name[b-88z1c0h2ze] {
        font-size: 0.9375rem;
    }

    .pd-assoc-price-current[b-88z1c0h2ze] {
        font-size: 1.125rem;
    }

    .pd-assoc-cart-btn[b-88z1c0h2ze] {
        padding: 0.5rem 1rem;
        font-size: 0.75rem;
        justify-content: center;
        width: 100%;
    }
}
/* /Components/Product/ProductAvailability.razor.rz.scp.css */
/* ============================================
   Product Availability — Clean & Functional
   ============================================ */

.pdp-availability[b-um1zq42yqm] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.pdp-stock-indicator[b-um1zq42yqm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pdp-stock-dot[b-um1zq42yqm] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.pdp-availability.in-stock .pdp-stock-dot[b-um1zq42yqm] {
    background: var(--bhogi-success, #059669);
    box-shadow: 0 0 0 3px rgba(5, 150, 105, 0.15);
}

.pdp-availability.out-of-stock .pdp-stock-dot[b-um1zq42yqm] {
    background: var(--bhogi-danger, #dc2626);
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);
}

.pdp-stock-text[b-um1zq42yqm] {
    font-size: 0.8125rem;
    font-weight: 600;
}

.pdp-availability.in-stock .pdp-stock-text[b-um1zq42yqm] {
    color: var(--bhogi-success, #059669);
}

.pdp-availability.out-of-stock .pdp-stock-text[b-um1zq42yqm] {
    color: var(--bhogi-danger, #dc2626);
}

/* Urgency Alert */
.pdp-urgency[b-um1zq42yqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #92400e;
}

.pdp-urgency i[b-um1zq42yqm] {
    color: #f59e0b;
    animation: flicker-b-um1zq42yqm 1.5s ease-in-out infinite;
}

@keyframes flicker-b-um1zq42yqm {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}
/* /Components/Product/ProductBreadcrumb.razor.rz.scp.css */
/* ============================================
   Product Breadcrumb — Clean & Minimal
   ============================================ */

.pdp-breadcrumb[b-inzzclb62g] {
    background: transparent;
    padding: 0 0 0.5rem;
}

.pdp-breadcrumb-list[b-inzzclb62g] {
    display: flex;
    align-items: center;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.8125rem;
    flex-wrap: wrap;
}

.pdp-breadcrumb-item[b-inzzclb62g] {
    display: flex;
    align-items: center;
}

.pdp-breadcrumb-item[b-inzzclb62g]::after {
    content: "\203A";
    color: #d1d5db;
    margin: 0 0.5rem;
    font-size: 1rem;
    line-height: 1;
}

.pdp-breadcrumb-item:last-child[b-inzzclb62g]::after {
    display: none;
}

.pdp-breadcrumb-item a[b-inzzclb62g] {
    color: var(--bhogi-text-muted, #94a3b8);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: color 0.15s var(--bhogi-ease, ease);
    font-weight: 400;
}

.pdp-breadcrumb-item a:hover[b-inzzclb62g] {
    color: var(--bhogi-text, #0f172a);
}

.pdp-breadcrumb-item a i[b-inzzclb62g] {
    font-size: 0.75rem;
}

.pdp-breadcrumb-item.active span[b-inzzclb62g] {
    color: #374151;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-breadcrumb-list[b-inzzclb62g] {
        font-size: 0.75rem;
    }
}
/* /Components/Product/ProductBundle.razor.rz.scp.css */
/* ============================================
   PRODUCT BUNDLE — Clean Modern Design

   NOTE: Using ::deep for descendant elements 
   in Blazor CSS isolation
   ============================================ */

/* Bundle thumbnails (ResponsiveImage wrappers replace inline-styled <img>) */
.pd-bundle-thumb[b-nfcehzphv5] {
    display: inline-block;
    width: 48px;
    height: 48px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    background: #fff;
}

.pd-bundle-thumb[b-nfcehzphv5]  picture,
.pd-bundle-thumb[b-nfcehzphv5]  img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
}

.pd-bundle-item-thumb[b-nfcehzphv5] {
    display: block;
    width: 100px;
    height: 100px;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    background: #fff;
    flex-shrink: 0;
}

.pd-bundle-item-thumb[b-nfcehzphv5]  picture,
.pd-bundle-item-thumb[b-nfcehzphv5]  img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
}

[b-nfcehzphv5] .pd-variant-box-img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
}

/* Bundle Section Container */
.pd-bundle-section[b-nfcehzphv5] {
    margin: 2rem 0;
}

/* Main Bundle Card */
.pd-bundle-card[b-nfcehzphv5] {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

/* Bundle Header */
.pd-bundle-header[b-nfcehzphv5] {
    background: #111827;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

[b-nfcehzphv5] .pd-bundle-header svg {
    flex-shrink: 0;
    color: #ffffff;
}

.pd-bundle-title[b-nfcehzphv5] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.025em;
}

/* Bundle Summary Container */
.pd-bundle-summary-container[b-nfcehzphv5] {
    padding: 1.5rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

/* Thumbnail Strip */
.pd-bundle-summary[b-nfcehzphv5] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.pd-bundle-summary-item[b-nfcehzphv5] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.pd-bundle-summary-item:not(:last-child)[b-nfcehzphv5]::after {
    content: "+";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #9ca3af;
}

/* Quantity Badge */
.pd-bundle-summary-qty[b-nfcehzphv5] {
    position: absolute;
    top: -6px;
    left: -6px;
    background: #111827;
    color: #ffffff;
    font-size: 0.625rem;
    font-weight: 700;
    width: 1.25rem;
    height: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    z-index: 2;
}

/* Thumbnail Container */
.pd-bundle-summary-link[b-nfcehzphv5],
.pd-bundle-summary-img[b-nfcehzphv5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 0.5rem;
    overflow: hidden;
    background: #ffffff;
    border: 2px solid #e5e7eb;
    transition: all 0.2s ease;
    padding: 4px;
}

.pd-bundle-summary-link:hover[b-nfcehzphv5] {
    border-color: #9ca3af;
}

/* CRITICAL: Use ::deep for child img elements */
[b-nfcehzphv5] .pd-bundle-summary-link img,
[b-nfcehzphv5] .pd-bundle-summary-img img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Bundle Price Badge */
.pd-bundle-price-info[b-nfcehzphv5] {
    flex-shrink: 0;
}

.pd-bundle-price-alert[b-nfcehzphv5] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #ecfdf5;
    color: #059669;
    padding: 0.625rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    border: 1px solid #a7f3d0;
}

.pd-bundle-price-icon[b-nfcehzphv5] {
    width: 1.25rem;
    height: 1.25rem;
    background: #10b981;
    color: #ffffff;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
}

.pd-bundle-price-value[b-nfcehzphv5] {
    font-weight: 700;
    font-size: 1.125rem;
    color: #111827;
}

.pd-bundle-price-old[b-nfcehzphv5] {
    color: #6b7280;
    text-decoration: line-through;
    font-size: 0.875rem;
    margin-left: 0.25rem;
}

/* Bundle Items Grid */
.pd-bundle-items[b-nfcehzphv5] {
    padding: 0;
}

/* Individual Bundle Item */
.pd-bundle-item[b-nfcehzphv5] {
    padding: 1.5rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background-color 0.2s ease;
}

.pd-bundle-item:last-child[b-nfcehzphv5] {
    border-bottom: none;
}

.pd-bundle-item:hover[b-nfcehzphv5] {
    background: #f9fafb;
}

/* Item Content Layout */
.pd-bundle-item-content[b-nfcehzphv5] {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 1.25rem;
    align-items: start;
}

/* Item Image - FIXED SIZE */
.pd-bundle-item-image[b-nfcehzphv5] {
    width: 100px;
    height: 100px;
    flex-shrink: 0;
    background: #ffffff;
    border-radius: 0.5rem;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}

/* CRITICAL: Use ::deep for descendant img */
[b-nfcehzphv5] .pd-bundle-item-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

[b-nfcehzphv5] .pd-bundle-item-image a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

/* Item Body */
.pd-bundle-item-body[b-nfcehzphv5] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Item Name */
.pd-bundle-item-name[b-nfcehzphv5] {
    font-size: 1rem;
    font-weight: 600;
    color: #111827;
    margin: 0;
    line-height: 1.4;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.pd-bundle-item-qty[b-nfcehzphv5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #111827;
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
}

.pd-bundle-item-link[b-nfcehzphv5] {
    color: #111827;
    text-decoration: none;
    transition: color 0.15s ease;
}

.pd-bundle-item-link:hover[b-nfcehzphv5] {
    color: #2563eb;
}

/* Item Description */
.pd-bundle-item-description[b-nfcehzphv5] {
    font-size: 0.875rem;
    color: #6b7280;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Item Price Row */
.pd-bundle-item-price[b-nfcehzphv5] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.pd-bundle-item-price-current[b-nfcehzphv5] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #111827;
}

.pd-bundle-item-price-old[b-nfcehzphv5] {
    font-size: 0.875rem;
    color: #9ca3af;
    text-decoration: line-through;
}

.pd-bundle-item-discount[b-nfcehzphv5] {
    font-size: 0.6875rem;
    font-weight: 700;
    color: #ffffff;
    background: #ef4444;
    padding: 0.25rem 0.5rem;
    border-radius: 9999px;
    text-transform: uppercase;
}

/* Stock & Delivery */
.pd-bundle-item-stock[b-nfcehzphv5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.pd-bundle-item-stock-available[b-nfcehzphv5],
.pd-bundle-item-stock-unavailable[b-nfcehzphv5] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
}

.pd-bundle-item-stock-available[b-nfcehzphv5] {
    color: #059669;
}

.pd-bundle-item-stock-unavailable[b-nfcehzphv5] {
    color: #ef4444;
}

.pd-stock-dot[b-nfcehzphv5] {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
    display: inline-block;
    flex-shrink: 0;
}

/* Variant Attributes Section */
.pd-bundle-item-variants[b-nfcehzphv5] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #f3f4f6;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.pd-bundle-item-variant[b-nfcehzphv5] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.pd-variant-label[b-nfcehzphv5] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #374151;
    margin: 0;
}

.pd-variant-label.required[b-nfcehzphv5]::after {
    content: " *";
    color: #ef4444;
}

/* Variant Boxes */
.pd-variant-boxes[b-nfcehzphv5] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.pd-variant-box[b-nfcehzphv5] {
    width: 32px;
    height: 32px;
    border-radius: 0.375rem;
    border: 2px solid #e5e7eb;
    padding: 0;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #ffffff;
}

.pd-variant-box:hover[b-nfcehzphv5] {
    border-color: #9ca3af;
}

.pd-variant-box.selected[b-nfcehzphv5] {
    border-color: #111827;
    box-shadow: 0 0 0 2px #111827;
}

.pd-variant-box.unavailable[b-nfcehzphv5] {
    opacity: 0.35;
    cursor: not-allowed;
}

[b-nfcehzphv5] .pd-variant-box img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}

.pd-variant-box-text[b-nfcehzphv5] {
    width: auto;
    min-width: 32px;
    padding: 0.375rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: #374151;
}

.pd-variant-box-text.selected[b-nfcehzphv5] {
    background: #111827;
    color: #ffffff;
    border-color: #111827;
}

/* Variant Dropdown */
.pd-variant-select[b-nfcehzphv5] {
    width: 100%;
    max-width: 240px;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    border: 2px solid #e5e7eb;
    border-radius: 0.5rem;
    background: #ffffff;
    color: #374151;
    cursor: pointer;
}

.pd-variant-select:focus[b-nfcehzphv5] {
    outline: none;
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

/* Variant Radio Buttons */
.pd-variant-radios[b-nfcehzphv5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.pd-variant-radio[b-nfcehzphv5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    color: #374151;
}

[b-nfcehzphv5] .pd-variant-radio input[type="radio"] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: #0d6efd;
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */

@media (max-width: 768px) {
    .pd-bundle-summary-container[b-nfcehzphv5] {
        flex-direction: column;
        align-items: flex-start;
    }

    .pd-bundle-price-alert[b-nfcehzphv5] {
        width: 100%;
        justify-content: center;
    }

    .pd-bundle-item-content[b-nfcehzphv5] {
        grid-template-columns: 80px 1fr;
    }

    .pd-bundle-item-image[b-nfcehzphv5] {
        width: 80px;
        height: 80px;
    }
}

@media (max-width: 576px) {
    .pd-bundle-section[b-nfcehzphv5] {
        margin: 1rem 0;
    }

    .pd-bundle-header[b-nfcehzphv5] {
        padding: 1rem;
    }

    .pd-bundle-title[b-nfcehzphv5] {
        font-size: 1.125rem;
    }

    .pd-bundle-summary-container[b-nfcehzphv5] {
        padding: 1rem;
        align-items: stretch;
    }

    .pd-bundle-summary[b-nfcehzphv5] {
        justify-content: center;
    }

    .pd-bundle-summary-link[b-nfcehzphv5],
    .pd-bundle-summary-img[b-nfcehzphv5] {
        width: 44px;
        height: 44px;
    }

    .pd-bundle-summary-item:not(:last-child)[b-nfcehzphv5]::after {
        width: 1rem;
        height: 1rem;
        font-size: 0.75rem;
        margin-left: 0.375rem;
    }

    .pd-bundle-price-alert[b-nfcehzphv5] {
        padding: 0.625rem 1rem;
        font-size: 0.875rem;
        border-radius: 0.5rem;
    }

    .pd-bundle-price-value[b-nfcehzphv5] {
        font-size: 1rem;
    }

    .pd-bundle-item[b-nfcehzphv5] {
        padding: 1rem;
    }

    .pd-bundle-item-content[b-nfcehzphv5] {
        grid-template-columns: 1fr;
        gap: 0.875rem;
    }

    .pd-bundle-item-image[b-nfcehzphv5] {
        width: 96px;
        height: 96px;
        margin: 0 auto;
    }

    .pd-bundle-item-body[b-nfcehzphv5] {
        gap: 0.625rem;
    }

    .pd-bundle-item-price[b-nfcehzphv5] {
        gap: 0.375rem;
    }

    .pd-bundle-item-name[b-nfcehzphv5] {
        font-size: 0.9375rem;
    }

    .pd-bundle-item-price-current[b-nfcehzphv5] {
        font-size: 1rem;
    }

    .pd-variant-box[b-nfcehzphv5] {
        width: 28px;
        height: 28px;
    }

    .pd-variant-box-text[b-nfcehzphv5] {
        min-width: 28px;
        padding: 0.25rem 0.5rem;
        font-size: 0.75rem;
    }
}
/* /Components/Product/ProductCartNotification.razor.rz.scp.css */
/* ============================================
   Cart Notification — Clean Success Alert
   ============================================ */

.pdp-cart-notification[b-fnpxtintgq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 8px;
    animation: slideIn-b-fnpxtintgq 0.25s ease-out;
}

@keyframes slideIn-b-fnpxtintgq {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pdp-notif-content[b-fnpxtintgq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #059669;
    font-weight: 600;
    font-size: 0.875rem;
}

.pdp-notif-content i[b-fnpxtintgq] {
    font-size: 1.125rem;
}

.pdp-notif-link[b-fnpxtintgq] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: #059669;
    color: white;
    text-decoration: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 600;
    transition: background 0.15s ease;
    white-space: nowrap;
}

.pdp-notif-link:hover[b-fnpxtintgq] {
    background: #047857;
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-cart-notification[b-fnpxtintgq] {
        flex-direction: column;
        text-align: center;
    }

    .pdp-notif-link[b-fnpxtintgq] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Product/ProductGallery.razor.rz.scp.css */
/* ============================================
   Product Gallery — Enterprise Clean
   ============================================ */

.pdp-gallery[b-kwp6d2m73x] {
    position: sticky;
    top: 2rem;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 1rem;
    max-width: 760px;
    outline: none;
}

.pdp-gallery:focus-visible[b-kwp6d2m73x] {
    outline: 2px solid var(--bhogi-primary, #2563eb);
    outline-offset: 4px;
    border-radius: var(--bhogi-radius-xl, 1rem);
}

.pdp-gallery-main[b-kwp6d2m73x] {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
}

/* Main Image — uses aspect-ratio for a guaranteed square box, no math fragility. */
.pdp-main-image-wrapper[b-kwp6d2m73x] {
    position: relative;
    background: linear-gradient(180deg, #fff 0%, var(--bhogi-surface-raised, #f8fafc) 100%);
    border-radius: 0.75rem;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--bhogi-border-light, #f1f5f9) 78%, var(--bhogi-primary) 8%);
    transition: box-shadow 0.25s var(--bhogi-ease, ease);
    width: 100%;
    aspect-ratio: 4 / 5;
    min-height: min(72vh, 640px);
}

.pdp-main-image-wrapper:hover[b-kwp6d2m73x] {
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0,0,0,0.06));
}

.pdp-badge-sale[b-kwp6d2m73x] {
    position: absolute;
    top: 0.875rem;
    left: 0.875rem;
    background: var(--bhogi-danger, #dc2626);
    color: #fff;
    padding: 0.25rem 0.75rem;
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    font-weight: 700;
    font-size: 0.6875rem;
    z-index: 10;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

/* Zoom layer fills the square wrapper exactly — no min/max-height math. */
.pdp-image-zoom[b-kwp6d2m73x] {
    cursor: zoom-in;
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(0.75rem, 2vw, 1.75rem);
    overflow: hidden;
}

.pdp-image-zoom[b-kwp6d2m73x]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, var(--bhogi-surface-raised, #f8fafc) 8%, #fff 24%, var(--bhogi-surface-raised, #f8fafc) 40%);
    background-size: 200% 100%;
    animation: pdp-image-shimmer-b-kwp6d2m73x 1.35s linear infinite;
}

.pdp-image-zoom.loaded[b-kwp6d2m73x]::before {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

/* Picture wrapper from ResponsiveImage — block-level box that fills the zoom area.
   !important needed to beat the global `picture { height:auto }` rule in app.css. */
[b-kwp6d2m73x] picture {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

/* Main image fills the picture box using contain — image is NEVER cropped. */
[b-kwp6d2m73x] .pdp-main-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    opacity: 1;
    transition: opacity 0.25s ease, transform 0.35s var(--bhogi-ease-spring, cubic-bezier(0.16, 1, 0.3, 1));
}

[b-kwp6d2m73x] .pdp-main-image.loading {
    opacity: 0;
}

[b-kwp6d2m73x] .pdp-main-image.zoomed {
    transform: scale(1.5);
    cursor: zoom-out;
}

.pdp-image-status[b-kwp6d2m73x] {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transform: translateX(-50%);
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: var(--bhogi-shadow-sm, 0 2px 8px rgba(0,0,0,0.06));
    color: var(--bhogi-text-secondary, #475569);
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.pdp-image-status-error[b-kwp6d2m73x] {
    color: var(--bhogi-danger, #dc2626);
}

.pdp-image-spinner[b-kwp6d2m73x],
.pdp-thumb-loader[b-kwp6d2m73x] {
    display: inline-block;
    border-radius: 50%;
    border: 2px solid color-mix(in srgb, var(--bhogi-primary, #2563eb) 20%, transparent);
    border-top-color: var(--bhogi-primary, #2563eb);
    animation: pdp-image-spin-b-kwp6d2m73x 0.8s linear infinite;
}

.pdp-image-spinner[b-kwp6d2m73x] {
    width: 0.875rem;
    height: 0.875rem;
}

/* Zoom Hint */
.pdp-zoom-hint[b-kwp6d2m73x] {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(15, 23, 42, 0.92);
    color: white;
    padding: 0.375rem 0.875rem;
    border-radius: var(--bhogi-radius-sm, 0.375rem);
    font-size: 0.6875rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    opacity: 0;
    transition: opacity 0.2s var(--bhogi-ease, ease), transform 0.2s var(--bhogi-ease, ease);
    transform: translateX(-50%) translateY(4px);
    letter-spacing: 0.02em;
}

.pdp-main-image-wrapper:hover .pdp-zoom-hint[b-kwp6d2m73x] {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.pdp-gallery-nav[b-kwp6d2m73x] {
    position: absolute;
    top: 50%;
    z-index: 9;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid color-mix(in srgb, var(--bhogi-border, #e2e8f0) 70%, transparent);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: var(--bhogi-text, #0f172a);
    cursor: pointer;
    transform: translateY(-50%);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12);
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.pdp-gallery-nav:hover[b-kwp6d2m73x] {
    background: var(--bhogi-text, #0f172a);
    color: #fff;
    transform: translateY(-50%) scale(1.04);
}

.pdp-gallery-prev[b-kwp6d2m73x] {
    left: 1rem;
}

.pdp-gallery-next[b-kwp6d2m73x] {
    right: 1rem;
}

.pdp-image-count[b-kwp6d2m73x] {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    z-index: 8;
    padding: 0.375rem 0.625rem;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.82);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

/* Thumbnails */
.pdp-thumbnail-progress[b-kwp6d2m73x] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin: 0 0 0.5rem;
    color: var(--bhogi-text-muted, #64748b);
    font-size: 0.6875rem;
    font-weight: 600;
}

.pdp-thumbnail-progress-track[b-kwp6d2m73x] {
    display: block;
    width: min(160px, 40vw);
    height: 3px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--bhogi-border-light, #f1f5f9);
}

.pdp-thumbnail-progress-track > span[b-kwp6d2m73x] {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--bhogi-primary, #2563eb);
    transition: width 0.2s ease;
}

.pdp-thumbnails[b-kwp6d2m73x] {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-wrap: nowrap;
    max-height: min(72vh, 640px);
    overflow-y: auto;
    padding-right: 0.25rem;
    scrollbar-width: thin;
}

.pdp-thumb[b-kwp6d2m73x] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 92px;
    padding: 4px;
    border: 1.5px solid var(--bhogi-border, #e2e8f0);
    border-radius: 0.5rem;
    overflow: hidden;
    cursor: pointer;
    background: var(--bhogi-surface, #fff);
    transition: all 0.2s var(--bhogi-ease, ease);
    box-sizing: border-box;
    appearance: none;
    -webkit-appearance: none;
    flex-shrink: 0;
}

.pdp-thumb-loader[b-kwp6d2m73x] {
    position: absolute;
    width: 1rem;
    height: 1rem;
}

.pdp-thumb-error[b-kwp6d2m73x] {
    position: absolute;
    color: var(--bhogi-text-muted, #94a3b8);
    font-size: 1rem;
}

/* Fixed thumbnail images (image wrapped in <picture> by ResponsiveImage) */
.pdp-thumb[b-kwp6d2m73x]  picture {
    display: block;
    width: 100%;
    height: 100%;
}

.pdp-thumb[b-kwp6d2m73x]  img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain !important;
}

.pdp-thumb:hover[b-kwp6d2m73x] {
    border-color: var(--bhogi-text-muted, #94a3b8);
}

.pdp-thumb.active[b-kwp6d2m73x] {
    border-color: var(--bhogi-text, #0f172a);
    box-shadow: inset 0 0 0 1px var(--bhogi-text, #0f172a), 0 8px 18px rgba(15, 23, 42, 0.1);
}

.pdp-thumb-overlay[b-kwp6d2m73x] {
    position: absolute;
    inset: 0;
    background: transparent;
    transition: background 0.2s;
    pointer-events: none;
}

.pdp-thumb:hover .pdp-thumb-overlay[b-kwp6d2m73x] {
    background: rgba(0, 0, 0, 0.02);
}

@keyframes pdp-image-spin-b-kwp6d2m73x {
    to { transform: rotate(360deg); }
}

@keyframes pdp-image-shimmer-b-kwp6d2m73x {
    to { background-position-x: -200%; }
}

/* Responsive */
@media (max-width: 992px) {
    .pdp-gallery[b-kwp6d2m73x] {
        position: static;
        max-width: 100%;
    }
}

@media (max-width: 576px) {
    .pdp-gallery[b-kwp6d2m73x] {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
        overflow: hidden;
    }

    .pdp-gallery-main[b-kwp6d2m73x] {
        width: 100%;
        max-width: 100%;
    }

    .pdp-main-image-wrapper[b-kwp6d2m73x] {
        border-left: 0;
        border-right: 0;
        border-radius: 0;
        aspect-ratio: 3 / 4;
        min-height: min(74vh, 560px);
        max-width: 100%;
    }

    .pdp-thumbnails[b-kwp6d2m73x] {
        flex-direction: row;
        overflow-x: auto;
        overflow-y: hidden;
        max-height: none;
        padding: 0 0.75rem 0.25rem;
        max-width: 100%;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .pdp-thumbnails[b-kwp6d2m73x]::-webkit-scrollbar {
        display: none;
    }

    .pdp-thumb[b-kwp6d2m73x] {
        width: 58px;
        height: 74px;
        scroll-snap-align: start;
    }

    .pdp-image-zoom[b-kwp6d2m73x] {
        padding: 0.75rem;
    }

    .pdp-gallery-nav[b-kwp6d2m73x] {
        width: 36px;
        height: 36px;
    }

    .pdp-gallery-prev[b-kwp6d2m73x] {
        left: 0.75rem;
    }

    .pdp-gallery-next[b-kwp6d2m73x] {
        right: 0.75rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pdp-image-zoom[b-kwp6d2m73x]::before,
    .pdp-image-spinner[b-kwp6d2m73x],
    .pdp-thumb-loader[b-kwp6d2m73x] {
        animation: none;
    }
}
/* /Components/Product/ProductGiftCard.razor.rz.scp.css */
/* Product Gift Card Component */

.pdp-giftcard[b-5jx4j9kmfd] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    margin: 1.25rem 0;
}

/* ── Header ── */

.pdp-giftcard-header[b-5jx4j9kmfd] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
}

.pdp-giftcard-icon[b-5jx4j9kmfd] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #111827;
    color: #fff;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.pdp-giftcard-title-block[b-5jx4j9kmfd] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.pdp-giftcard-title[b-5jx4j9kmfd] {
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 0.9375rem;
    font-weight: 650;
    color: #111827;
    margin: 0;
    letter-spacing: -0.01em;
}

.pdp-giftcard-subtitle[b-5jx4j9kmfd] {
    font-size: 0.8125rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}

/* ── Form ── */

.pdp-giftcard-form[b-5jx4j9kmfd] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.pdp-giftcard-section[b-5jx4j9kmfd] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.pdp-giftcard-section-label[b-5jx4j9kmfd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #374151;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pdp-giftcard-section-label i[b-5jx4j9kmfd] {
    font-size: 0.75rem;
    color: #9ca3af;
}

.pdp-giftcard-optional[b-5jx4j9kmfd] {
    font-weight: 400;
    text-transform: none;
    letter-spacing: normal;
    color: #9ca3af;
    font-size: 0.75rem;
}

/* ── Fields Grid ── */

.pdp-giftcard-fields[b-5jx4j9kmfd] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
}

.pdp-giftcard-fields--two[b-5jx4j9kmfd] {
    grid-template-columns: 1fr 1fr;
}

.pdp-giftcard-field[b-5jx4j9kmfd] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    position: relative;
}

.pdp-giftcard-label[b-5jx4j9kmfd] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #374151;
}

.pdp-giftcard-required[b-5jx4j9kmfd] {
    color: #dc2626;
    font-weight: 600;
}

/* ── Inputs ── */

.pdp-giftcard-input[b-5jx4j9kmfd] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 0.875rem;
    color: #111827;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pdp-giftcard-input[b-5jx4j9kmfd]::placeholder {
    color: #9ca3af;
}

.pdp-giftcard-input:hover[b-5jx4j9kmfd] {
    border-color: #9ca3af;
}

.pdp-giftcard-input:focus[b-5jx4j9kmfd] {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

/* ── Textarea ── */

.pdp-giftcard-textarea[b-5jx4j9kmfd] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-family: 'Inter', -apple-system, sans-serif;
    font-size: 0.875rem;
    color: #111827;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    outline: none;
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pdp-giftcard-textarea[b-5jx4j9kmfd]::placeholder {
    color: #9ca3af;
}

.pdp-giftcard-textarea:hover[b-5jx4j9kmfd] {
    border-color: #9ca3af;
}

.pdp-giftcard-textarea:focus[b-5jx4j9kmfd] {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.pdp-giftcard-charcount[b-5jx4j9kmfd] {
    font-size: 0.6875rem;
    color: #9ca3af;
    text-align: right;
    margin-top: 0.125rem;
}

/* ── Responsive ── */

@media (max-width: 576px) {
    .pdp-giftcard-header[b-5jx4j9kmfd] {
        padding: 0.875rem 1rem;
    }

    .pdp-giftcard-form[b-5jx4j9kmfd] {
        padding: 1rem;
    }

    .pdp-giftcard-fields--two[b-5jx4j9kmfd] {
        grid-template-columns: 1fr;
    }

    .pdp-giftcard-icon[b-5jx4j9kmfd] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }
}
/* /Components/Product/ProductHeader.razor.rz.scp.css */
/* ============================================
   Product Header — Enterprise Clean
   ============================================ */

.pdp-header[b-4s8mj0bib7] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* SKU */
.pdp-sku[b-4s8mj0bib7] {
    font-size: 0.6875rem;
    color: var(--bhogi-text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 500;
    display: inline-flex;
    width: fit-content;
    padding: 0.25rem 0.625rem;
    border-radius: var(--bhogi-radius-full);
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 7%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
}

/* Title */
.pdp-title[b-4s8mj0bib7] {
    font-family: 'Playfair Display', Georgia, serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    line-height: 1.3;
    margin: 0;
    letter-spacing: -0.025em;
}

/* Rating Row */
.pdp-rating-row[b-4s8mj0bib7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    font-size: 0.8125rem;
    margin-top: 0.25rem;
}

.pdp-stars[b-4s8mj0bib7] {
    display: flex;
    gap: 0.0625rem;
}

.pdp-stars i[b-4s8mj0bib7] {
    color: var(--bhogi-border, #e2e8f0);
    font-size: 0.8125rem;
}

.pdp-stars i.filled[b-4s8mj0bib7] {
    color: var(--bhogi-gold-deep, #DAA520);
}

.pdp-rating-score[b-4s8mj0bib7] {
    font-weight: 700;
    color: var(--bhogi-primary-hover, #0d6b5a);
    font-size: 0.8125rem;
}

.pdp-review-link[b-4s8mj0bib7] {
    color: var(--bhogi-text-secondary, #475569);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s var(--bhogi-ease, ease);
}

.pdp-review-link:hover[b-4s8mj0bib7] {
    color: var(--bhogi-primary, #2563eb);
    text-decoration: underline;
}

.pdp-divider[b-4s8mj0bib7] {
    color: color-mix(in srgb, var(--bhogi-maroon, #8B0000) 24%, var(--bhogi-border, #e2e8f0));
    font-size: 0.75rem;
}

.pdp-write-review[b-4s8mj0bib7] {
    color: var(--bhogi-text-secondary, #475569);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.15s var(--bhogi-ease, ease);
}

.pdp-write-review:hover[b-4s8mj0bib7] {
    color: var(--bhogi-primary, #2563eb);
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-title[b-4s8mj0bib7] {
        font-size: 1.375rem;
    }
}
/* /Components/Product/ProductNotFound.razor.rz.scp.css */
/* ============================================
   Product Not Found — Clean & Helpful
   ============================================ */

.product-not-found[b-ep135y3loi] {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    background: #fafafa;
}

.not-found-content[b-ep135y3loi] {
    text-align: center;
    max-width: 440px;
}

.not-found-icon[b-ep135y3loi] {
    font-size: 4rem;
    color: #d1d5db;
    margin-bottom: 1.5rem;
}

.not-found-content h1[b-ep135y3loi] {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.75rem;
}

.not-found-content p[b-ep135y3loi] {
    color: #6b7280;
    font-size: 1rem;
    margin-bottom: 2rem;
    line-height: 1.6;
}

.not-found-actions[b-ep135y3loi] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    flex-wrap: wrap;
}

.not-found-actions .btn-primary[b-ep135y3loi],
.not-found-actions .btn-secondary[b-ep135y3loi] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.875rem;
    text-decoration: none;
    transition: all 0.15s ease;
}

.not-found-actions .btn-primary[b-ep135y3loi] {
    background: #111827;
    color: white;
    border: none;
}

.not-found-actions .btn-primary:hover[b-ep135y3loi] {
    background: #1f2937;
    box-shadow: 0 4px 12px rgba(17, 24, 39, 0.2);
}

.not-found-actions .btn-secondary[b-ep135y3loi] {
    background: transparent;
    color: #374151;
    border: 1px solid #e5e7eb;
}

.not-found-actions .btn-secondary:hover[b-ep135y3loi] {
    border-color: #d1d5db;
    background: #f9fafb;
}
/* /Components/Product/ProductPincodeCheck.razor.rz.scp.css */
/* Delivery pincode / ETA checker, styled to match this page's existing .pdp-delivery / .pdp-offer-card blocks. */

.pdp-pincode-check[b-35rtvhgq9x] {
    margin: 0.25rem 0 0.5rem;
}

.pdp-pincode-row[b-35rtvhgq9x] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.pdp-pincode-row > i[b-35rtvhgq9x] {
    color: var(--bhogi-primary, #0f7a66);
    font-size: 0.875rem;
    flex-shrink: 0;
}

.pdp-pincode-input[b-35rtvhgq9x] {
    flex: 1;
    max-width: 200px;
    padding: 0.5rem 0.75rem;
    border: 1px solid color-mix(in srgb, var(--bhogi-border-light, #f1f5f9) 82%, var(--bhogi-primary, #0f7a66) 10%);
    border-radius: 0.5rem;
    font-size: 0.875rem;
    color: var(--bhogi-text, #0f172a);
    background: #fff;
    letter-spacing: 0.02em;
}

.pdp-pincode-input:focus[b-35rtvhgq9x] {
    outline: none;
    border-color: var(--bhogi-primary, #0f7a66);
}

.pdp-pincode-input:disabled[b-35rtvhgq9x] {
    opacity: 0.6;
}

.pdp-pincode-btn[b-35rtvhgq9x] {
    padding: 0.5rem 0.9rem;
    border: none;
    border-radius: 0.5rem;
    background: var(--bhogi-primary, #0f7a66);
    color: #fff;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
}

.pdp-pincode-btn:disabled[b-35rtvhgq9x] {
    opacity: 0.55;
    cursor: not-allowed;
}

.pdp-pincode-result[b-35rtvhgq9x] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.5rem;
    font-size: 0.8125rem;
    line-height: 1.4;
}

.pdp-pincode-ok[b-35rtvhgq9x] {
    background: color-mix(in srgb, var(--bhogi-primary, #0f7a66) 10%, transparent);
    color: var(--bhogi-primary, #0f7a66);
}

.pdp-pincode-ok i[b-35rtvhgq9x] {
    color: var(--bhogi-primary, #0f7a66);
}

.pdp-pincode-fail[b-35rtvhgq9x] {
    background: rgba(220, 38, 38, 0.08);
    color: #b91c1c;
}

.pdp-pincode-fail i[b-35rtvhgq9x] {
    color: #dc2626;
}

@media (max-width: 480px) {
    .pdp-pincode-input[b-35rtvhgq9x] {
        max-width: none;
    }
}
/* /Components/Product/ProductPrice.razor.rz.scp.css */
/* ============================================
   Product Price — Enterprise Clean
   ============================================ */

.pdp-price-block[b-tvh4etagwy] {
    padding: 1rem 0;
    border-top: 1px solid color-mix(in srgb, var(--bhogi-gold) 28%, var(--bhogi-border-light));
    border-bottom: 1px solid color-mix(in srgb, var(--bhogi-primary) 12%, transparent);
}

/* Main Price Display */
.pdp-price-main[b-tvh4etagwy] {
    display: flex;
    align-items: baseline;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.pdp-current-price[b-tvh4etagwy] {
    font-size: 1.875rem;
    font-weight: 800;
    color: var(--bhogi-primary-hover, #0d6b5a);
    line-height: 1;
    letter-spacing: -0.025em;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.pdp-old-price[b-tvh4etagwy] {
    font-size: 1rem;
    color: var(--bhogi-text-muted, #94a3b8);
}

.pdp-old-price del[b-tvh4etagwy] {
    text-decoration: line-through;
}

.pdp-savings[b-tvh4etagwy] {
    background: var(--bhogi-gradient-gold);
    color: #15211d;
    padding: 0.25rem 0.625rem;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    box-shadow: var(--bhogi-shadow-gold);
}

/* Price Info */
.pdp-price-info[b-tvh4etagwy] {
    margin-top: 0.375rem;
}

.pdp-tax-info[b-tvh4etagwy] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted, #94a3b8);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.pdp-tax-info i[b-tvh4etagwy] {
    font-size: 0.6875rem;
}

/* From label */
.pdp-from-label[b-tvh4etagwy] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bhogi-text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Call for price */
.pdp-call-for-price[b-tvh4etagwy] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--bhogi-maroon, #8B0000);
}

/* Lowest price */
.pdp-lowest-price[b-tvh4etagwy] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted, #94a3b8);
    margin-top: 0.25rem;
}

/* Base price when variant adjustment is active */
.pdp-base-price[b-tvh4etagwy] {
    display: block;
    width: 100%;
    font-size: 0.75rem;
    color: var(--bhogi-text-muted, #94a3b8);
    margin-top: 0.125rem;
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-current-price[b-tvh4etagwy] {
        font-size: 1.625rem;
    }

    .pdp-old-price[b-tvh4etagwy] {
        font-size: 0.875rem;
    }
}
/* /Components/Product/ProductPurchaseSection.razor.rz.scp.css */
/* ============================================
   Purchase Section — Enterprise Clean
   ============================================ */

.pdp-purchase-section[b-tj6yrzp2g4] {
    padding: 1.5rem 0;
    border-top: 1px solid var(--bhogi-border-light, #f1f5f9);
    border-bottom: 1px solid color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}

/* Quantity Row */
.pdp-quantity-row[b-tj6yrzp2g4] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.pdp-qty-label[b-tj6yrzp2g4] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bhogi-text, #0f172a);
    min-width: 55px;
}

.pdp-quantity-control[b-tj6yrzp2g4] {
    display: flex;
    align-items: center;
    background: linear-gradient(180deg, var(--bhogi-surface-raised, #f8fafc) 0%, var(--bhogi-surface-premium, #f5f5f5) 100%);
    border-radius: var(--bhogi-radius, 0.5rem);
    overflow: hidden;
    border: 1px solid var(--bhogi-border, #e2e8f0);
    transition: border-color 0.15s var(--bhogi-ease, ease);
}

.pdp-quantity-control:focus-within[b-tj6yrzp2g4] {
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 3px var(--bhogi-primary-glow, rgba(37, 99, 235, 0.08));
}

.pdp-qty-btn[b-tj6yrzp2g4] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--bhogi-text, #0f172a);
    cursor: pointer;
    transition: all 0.15s var(--bhogi-ease, ease);
    font-size: 0.75rem;
}

.pdp-qty-btn:hover:not(:disabled)[b-tj6yrzp2g4] {
    background: var(--bhogi-gradient-primary);
    color: white;
}

.pdp-qty-btn:disabled[b-tj6yrzp2g4] {
    opacity: 0.35;
    cursor: not-allowed;
}

.pdp-qty-input[b-tj6yrzp2g4] {
    width: 48px;
    height: 40px;
    text-align: center;
    border: none;
    background: var(--bhogi-surface, #fff);
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
}

.pdp-qty-input[b-tj6yrzp2g4]::-webkit-outer-spin-button,
.pdp-qty-input[b-tj6yrzp2g4]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.pdp-qty-input[type=number][b-tj6yrzp2g4] {
    -moz-appearance: textfield;
}

/* Action Buttons */
.pdp-action-buttons[b-tj6yrzp2g4] {
    display: flex;
    gap: 0.75rem;
}

.pdp-btn-cart[b-tj6yrzp2g4],
.pdp-btn-buy[b-tj6yrzp2g4] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    border: none;
    border-radius: var(--bhogi-radius, 0.5rem);
    font-size: 0.9375rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s var(--bhogi-ease, ease);
    letter-spacing: 0.01em;
}

.pdp-btn-cart[b-tj6yrzp2g4] {
    background: linear-gradient(135deg, var(--bhogi-text, #15211d) 0%, var(--bhogi-primary-hover, #0d6b5a) 100%);
    color: white;
}

.pdp-btn-cart:hover:not(:disabled)[b-tj6yrzp2g4] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover, #0d6b5a) 0%, var(--bhogi-primary, #0f7a66) 100%);
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0,0,0,0.12));
}

.pdp-btn-cart.loading[b-tj6yrzp2g4] {
    pointer-events: none;
    opacity: 0.7;
}

.pdp-btn-cart.added[b-tj6yrzp2g4] {
    background: linear-gradient(135deg, var(--bhogi-success, #1f8a70) 0%, var(--bhogi-primary, #0f7a66) 100%);
}

.pdp-btn-buy[b-tj6yrzp2g4] {
    background: var(--bhogi-gradient-gold);
    color: #15211d;
}

.pdp-btn-buy:hover:not(:disabled)[b-tj6yrzp2g4] {
    background: linear-gradient(135deg, var(--bhogi-gold-hover, #F4C430) 0%, var(--bhogi-gold, #FFD700) 45%, var(--bhogi-gold-deep, #DAA520) 100%);
    box-shadow: var(--bhogi-shadow-gold, 0 10px 24px rgba(218, 165, 32, 0.18));
}

.pdp-btn-cart:disabled[b-tj6yrzp2g4],
.pdp-btn-buy:disabled[b-tj6yrzp2g4] {
    opacity: 0.4;
    cursor: not-allowed;
    box-shadow: none;
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-purchase-section[b-tj6yrzp2g4] {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1850;
        display: grid;
        grid-template-columns: auto minmax(0, 1fr);
        align-items: center;
        gap: 0.625rem;
        padding: 0.625rem max(0.75rem, env(safe-area-inset-left)) calc(0.625rem + env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-right));
        border-top: 1px solid var(--bhogi-border, #e2e8f0);
        border-bottom: 0;
        background: color-mix(in srgb, var(--bhogi-surface, #fff) 96%, transparent);
        box-shadow: 0 -10px 30px rgba(15, 23, 42, 0.14);
        -webkit-backdrop-filter: blur(14px);
        backdrop-filter: blur(14px);
    }

    .pdp-action-buttons[b-tj6yrzp2g4] {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.82fr);
        gap: 0.5rem;
    }

    .pdp-quantity-row[b-tj6yrzp2g4] {
        margin: 0;
        gap: 0;
    }

    .pdp-qty-label[b-tj6yrzp2g4] {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    .pdp-qty-btn[b-tj6yrzp2g4],
    .pdp-qty-input[b-tj6yrzp2g4] {
        height: 38px;
    }

    .pdp-qty-btn[b-tj6yrzp2g4] {
        width: 32px;
    }

    .pdp-qty-input[b-tj6yrzp2g4] {
        width: 34px;
    }

    .pdp-btn-cart[b-tj6yrzp2g4],
    .pdp-btn-buy[b-tj6yrzp2g4] {
        min-width: 0;
        padding: 0.75rem 0.55rem;
        font-size: 0.8125rem;
        white-space: nowrap;
    }
}

/* Extra-narrow phones and split-screen browser panels need two rows. */
@media (max-width: 359.98px) {
    .pdp-purchase-section[b-tj6yrzp2g4] {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.5rem;
    }

    .pdp-quantity-row[b-tj6yrzp2g4] {
        justify-content: center;
    }

    .pdp-action-buttons[b-tj6yrzp2g4] {
        grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    }

    .pdp-btn-cart[b-tj6yrzp2g4],
    .pdp-btn-buy[b-tj6yrzp2g4] {
        padding-inline: 0.4rem;
    }

    .pdp-btn-cart i[b-tj6yrzp2g4],
    .pdp-btn-buy i[b-tj6yrzp2g4] {
        display: none;
    }
}
/* /Components/Product/ProductQuickActions.razor.rz.scp.css */
/* ============================================
   Quick Actions — Subtle & Functional
   ============================================ */

.pdp-quick-actions[b-rmcrdt4us3] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.pdp-action-btn[b-rmcrdt4us3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: var(--bhogi-radius, 0.5rem);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--bhogi-text-secondary, #475569);
    cursor: pointer;
    transition: all 0.15s var(--bhogi-ease, ease);
}

.pdp-action-btn:hover[b-rmcrdt4us3] {
    border-color: var(--bhogi-border, #d1d5db);
    color: var(--bhogi-text, #0f172a);
    background: var(--bhogi-surface-raised, #f8fafc);
}

.pdp-action-btn.wishlist:hover[b-rmcrdt4us3] {
    border-color: #fecaca;
    color: var(--bhogi-danger, #dc2626);
    background: #fef2f2;
}

.pdp-action-btn.wishlist:hover i[b-rmcrdt4us3] {
    color: var(--bhogi-danger, #dc2626);
}

.pdp-action-btn i[b-rmcrdt4us3] {
    font-size: 0.8125rem;
}

/* Share Menu */
.pdp-share-menu[b-rmcrdt4us3] {
    display: flex;
    gap: 0.375rem;
    padding: 0.5rem;
    background: var(--bhogi-surface, #fff);
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: var(--bhogi-radius, 0.5rem);
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0,0,0,0.08));
    animation: fadeIn-b-rmcrdt4us3 0.15s ease-out;
}

@keyframes fadeIn-b-rmcrdt4us3 {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.share-option[b-rmcrdt4us3] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.875rem;
}

.share-option:nth-child(1)[b-rmcrdt4us3] {
    background: #1877f2;
    color: white;
}

.share-option:nth-child(2)[b-rmcrdt4us3] {
    background: #000000;
    color: white;
}

.share-option:nth-child(3)[b-rmcrdt4us3] {
    background: #25d366;
    color: white;
}

.share-option:nth-child(4)[b-rmcrdt4us3] {
    background: #2563eb;
    color: white;
}

.share-option:hover[b-rmcrdt4us3] {
    transform: scale(1.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* Responsive */
@media (max-width: 576px) {
    .pdp-quick-actions[b-rmcrdt4us3] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-content: stretch;
    }

    .pdp-action-btn[b-rmcrdt4us3] {
        justify-content: center;
        min-width: 0;
        width: 100%;
        white-space: nowrap;
    }

    .pdp-action-btn.share[b-rmcrdt4us3] {
        grid-column: 1 / -1;
    }
}
/* /Components/Product/ProductRelated.razor.rz.scp.css */
/* ============================================
   Related Products Section
   ============================================ */

.pdp-related-section[b-l8il9qk1wz] {
    padding: 3rem 0;
    background: var(--bhogi-surface-raised, #f8fafc);
    margin-top: 1rem;
    width: 100%;
}

/* Match the category product grid container. */
.pdp-related-section > .container[b-l8il9qk1wz] {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding-inline: 1.5rem;
    box-sizing: border-box;
}

.pdp-related-section .artlist-grid[b-l8il9qk1wz] {
    width: 100%;
    margin: 0;
}

/* Prevent any grid child from overflowing its column. */
.artlist-grid > *[b-l8il9qk1wz] {
    min-width: 0;
    max-width: 100%;
}

.pdp-related-title[b-l8il9qk1wz] {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    margin: 0 0 1.5rem 0;
    letter-spacing: -0.025em;
}

.pdp-related-price[b-l8il9qk1wz] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-wrap: wrap;
}

.pdp-related-current[b-l8il9qk1wz] {
    font-weight: 700;
    color: #111827;
    font-size: 1rem;
}

.pdp-related-old[b-l8il9qk1wz] {
    font-size: 0.8125rem;
    color: #9ca3af;
    text-decoration: line-through;
}

.pdp-related-from[b-l8il9qk1wz] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Responsive */
@media (max-width: 1024px) {
    .pdp-related-grid[b-l8il9qk1wz] {
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    }

    .pdp-related-image[b-l8il9qk1wz] {
        height: 160px;
    }
}

@media (max-width: 768px) {
    .pdp-related-grid[b-l8il9qk1wz] {
        grid-template-columns: repeat(3, 1fr);
        gap: 0.75rem;
    }

    .pdp-related-title[b-l8il9qk1wz] {
        font-size: 1.25rem;
    }

    .pdp-related-image[b-l8il9qk1wz] {
        height: 140px;
    }

    .pdp-related-section[b-l8il9qk1wz] {
        padding: 2rem 0;
    }
}

@media (max-width: 576px) {
    .pdp-related-grid[b-l8il9qk1wz] {
        grid-template-columns: repeat(2, 1fr);
    }

    .pdp-related-image[b-l8il9qk1wz] {
        height: 120px;
        padding: 0.75rem;
    }

    .pdp-related-info[b-l8il9qk1wz] {
        padding: 0.625rem 0.75rem;
    }

    .pdp-related-name[b-l8il9qk1wz] {
        font-size: 0.8125rem;
    }

    .pdp-related-current[b-l8il9qk1wz] {
        font-size: 0.9375rem;
    }
}

/* ============================================
   ARTLIST GRID SYSTEM - 4 Column Responsive Layout
   ============================================ */
.artlist[b-l8il9qk1wz] {
    --artlist-gap: 1.25rem;
}

.artlist-grid[b-l8il9qk1wz] {
    display: grid;
    gap: var(--artlist-gap);
}

.artlist-4-cols[b-l8il9qk1wz] {
    grid-template-columns: repeat(4, 1fr);
}

/* Mobile: 2 columns, matching homepage and category product grids. */
@media (max-width: 767px) {
    .pdp-related-section[b-l8il9qk1wz] {
        padding: 2rem 0;
    }

    .pdp-related-section > .container[b-l8il9qk1wz] {
        padding-inline: 1rem;
    }

    .pdp-related-title[b-l8il9qk1wz] {
        margin-bottom: 0.875rem;
        font-size: 1.125rem;
    }

    .artlist-4-cols[b-l8il9qk1wz] {
        grid-template-columns: repeat(2, 1fr);
        --artlist-gap: 0.625rem;
    }
}

/* Tablet: 3 columns */
@media (min-width: 768px) and (max-width: 1199px) {
    .artlist-4-cols[b-l8il9qk1wz] {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Desktop: 4 columns (default) */
@media (min-width: 1200px) {
    .artlist-4-cols[b-l8il9qk1wz] {
        grid-template-columns: repeat(4, 1fr);
    }
}
/* /Components/Product/ProductReviewsSummary.razor.rz.scp.css */
/* Product Reviews Summary Component */



.pdp-reviews-summary[b-jigpfzrdne] {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 2rem;

    padding: 1.25rem 1.5rem;

    background: linear-gradient(180deg, var(--bhogi-surface-raised) 0%, var(--bhogi-surface-premium) 100%);

    border-radius: var(--bhogi-radius-md);

    margin-bottom: 1.5rem;

    border: 1px solid var(--bhogi-border-light);

}



.pdp-rating-large[b-jigpfzrdne] {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 0.375rem;

}



.pdp-rating-number[b-jigpfzrdne] {

    font-family: 'Inter', -apple-system, sans-serif;

    font-size: 2.75rem;

    font-weight: 700;

    color: var(--bhogi-text);

    line-height: 1;

    letter-spacing: -0.025em;

}



.pdp-rating-stars[b-jigpfzrdne] {

    display: flex;

    gap: 0.2rem;

}



.pdp-rating-stars i[b-jigpfzrdne] {

    font-size: 1.125rem;

    color: var(--bhogi-gold-deep);

}



.pdp-rating-stars i.fa-regular[b-jigpfzrdne] {

    color: var(--bhogi-border);

}



.pdp-rating-count[b-jigpfzrdne] {

    font-size: 0.8125rem;

    color: var(--bhogi-text-muted);

}



.pdp-write-review-btn[b-jigpfzrdne] {

    display: flex;

    align-items: center;

    gap: 0.5rem;

    padding: 0.75rem 1.25rem;

    background: var(--bhogi-gradient-primary);

    color: var(--bhogi-surface);

    border: none;

    border-radius: var(--bhogi-radius-sm);

    font-size: 0.875rem;

    font-weight: 600;

    cursor: pointer;

    transition: background 0.15s ease, opacity 0.15s ease;

}



.pdp-write-review-btn:hover[b-jigpfzrdne] {

    background: linear-gradient(135deg, var(--bhogi-primary-hover) 0%, var(--bhogi-primary) 100%);

}



.pdp-no-reviews[b-jigpfzrdne] {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 0.75rem;

    padding: 2.5rem 2rem;

    text-align: center;

    color: var(--bhogi-text-muted);

}



.pdp-no-reviews i[b-jigpfzrdne] {

    font-size: 2.5rem;

    opacity: 0.4;

}



.pdp-no-reviews p[b-jigpfzrdne] {

    font-size: 0.9375rem;

    margin: 0;

    max-width: 280px;

    line-height: 1.5;

}



@media (max-width: 576px) {

    .pdp-reviews-summary[b-jigpfzrdne] {

        flex-direction: column;

        text-align: center;

        padding: 1rem;

    }



    .pdp-rating-number[b-jigpfzrdne] {

        font-size: 2.25rem;

    }



    .pdp-write-review-btn[b-jigpfzrdne] {

        width: 100%;

        justify-content: center;

    }

}



/* Write-a-review modal */

.write-review-backdrop[b-jigpfzrdne] {
    position: fixed;
    inset: 0;
    background: rgba(20, 18, 14, 0.45);
    z-index: 1000;
}

.write-review-modal[b-jigpfzrdne] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    width: min(420px, calc(100vw - 2rem));
    max-height: calc(100vh - 4rem);
    overflow-y: auto;
    background: var(--bhogi-surface);
    border-radius: var(--bhogi-radius-md);
    padding: 2rem 1.75rem 1.75rem;
    box-shadow: 0 20px 60px rgba(20, 18, 14, 0.25);
}

.write-review-close[b-jigpfzrdne] {
    position: absolute;
    top: 0.9rem;
    right: 0.9rem;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--bhogi-text-muted);
    cursor: pointer;
    font-size: 0.9rem;
}

.write-review-close:hover[b-jigpfzrdne] {
    background: var(--bhogi-surface-raised);
    color: var(--bhogi-text);
}

.write-review-heading[b-jigpfzrdne] {
    margin: 0 0 1.25rem;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--bhogi-text);
}

.write-review-stars[b-jigpfzrdne] {
    display: flex;
    gap: 0.4rem;
    margin-bottom: 1rem;
}

.write-review-star-btn[b-jigpfzrdne] {
    background: none;
    border: none;
    padding: 0.15rem;
    cursor: pointer;
    line-height: 1;
}

.write-review-star-btn i[b-jigpfzrdne] {
    font-size: 1.5rem;
    color: var(--bhogi-gold-deep);
}

.write-review-star-btn i.fa-regular[b-jigpfzrdne] {
    color: var(--bhogi-border);
}

.write-review-input[b-jigpfzrdne],
.write-review-textarea[b-jigpfzrdne] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.7rem 0.9rem;
    margin-bottom: 0.85rem;
    border: 1px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-sm);
    font-size: 0.9rem;
    font-family: inherit;
    color: var(--bhogi-text);
    background: var(--bhogi-surface);
}

.write-review-textarea[b-jigpfzrdne] {
    resize: vertical;
    min-height: 6rem;
}

.write-review-input:focus[b-jigpfzrdne],
.write-review-textarea:focus[b-jigpfzrdne] {
    outline: none;
    border-color: var(--bhogi-primary);
}

.write-review-error[b-jigpfzrdne] {
    margin: 0 0 0.85rem;
    font-size: 0.85rem;
    color: #b23a3a;
}

.write-review-primary-btn[b-jigpfzrdne] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.75rem 1.25rem;
    background: var(--bhogi-gradient-primary);
    color: var(--bhogi-surface);
    border: none;
    border-radius: var(--bhogi-radius-sm);
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    box-sizing: border-box;
}

.write-review-primary-btn:hover[b-jigpfzrdne] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover) 0%, var(--bhogi-primary) 100%);
}

.write-review-submit-btn:disabled[b-jigpfzrdne] {
    opacity: 0.6;
    cursor: default;
}

.write-review-state[b-jigpfzrdne] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
    padding: 1rem 0;
}

.write-review-state i[b-jigpfzrdne] {
    font-size: 2.25rem;
    color: var(--bhogi-gold-deep);
}

.write-review-state p[b-jigpfzrdne] {
    margin: 0;
    color: var(--bhogi-text-muted);
    font-size: 0.9375rem;
    line-height: 1.5;
}

.write-review-state .write-review-primary-btn[b-jigpfzrdne] {
    width: auto;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
}
/* /Components/Product/ProductShippingInfo.razor.rz.scp.css */
/* Product Shipping Info Component */

.pdp-shipping-item[b-ktqimp5fow] {
    display: flex;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bhogi-surface, #fff);
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: var(--bhogi-radius, 0.5rem);
    transition: background 0.15s var(--bhogi-ease, ease), border-color 0.15s var(--bhogi-ease, ease);
}

.pdp-shipping-item:hover[b-ktqimp5fow] {
    background: linear-gradient(135deg, var(--bhogi-surface-raised, #fcfcfc) 0%, color-mix(in srgb, var(--bhogi-gold) 8%, var(--bhogi-surface)) 100%);
    border-color: var(--bhogi-border, #d1d5db);
}

.pdp-shipping-item i[b-ktqimp5fow] {
    font-size: 1.25rem;
    color: var(--bhogi-primary);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.pdp-shipping-item div[b-ktqimp5fow] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.pdp-shipping-item h4[b-ktqimp5fow] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--bhogi-text, #0f172a);
    margin: 0;
}

.pdp-shipping-item p[b-ktqimp5fow] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-secondary, #475569);
    margin: 0;
    line-height: 1.5;
}

@media (max-width: 576px) {
    .pdp-shipping-item[b-ktqimp5fow] {
        padding: 0.875rem;
    }

    .pdp-shipping-item i[b-ktqimp5fow] {
        font-size: 1.125rem;
    }

    .pdp-shipping-item h4[b-ktqimp5fow] {
        font-size: 0.875rem;
    }

    .pdp-shipping-item p[b-ktqimp5fow] {
        font-size: 0.75rem;
    }
}
/* /Components/Product/ProductShortDescription.razor.rz.scp.css */
/* ============================================
   Short Description — Readable
   ============================================ */

.pdp-short-desc[b-9hf27hsjkr] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--bhogi-text-secondary);
}

.pdp-short-desc p[b-9hf27hsjkr] {
    margin: 0 0 0.5rem 0;
}

.pdp-short-desc p:last-child[b-9hf27hsjkr] {
    margin-bottom: 0;
}

.pdp-short-desc ul[b-9hf27hsjkr],
.pdp-short-desc ol[b-9hf27hsjkr] {
    padding-left: 1.25rem;
    margin: 0.5rem 0;
}

.pdp-short-desc li[b-9hf27hsjkr] {
    margin-bottom: 0.25rem;
}

.pdp-short-desc strong[b-9hf27hsjkr] {
    color: var(--bhogi-text);
    font-weight: 600;
}

.pdp-short-desc a[b-9hf27hsjkr] {
    color: var(--bhogi-primary);
    text-decoration: none;
}

.pdp-short-desc a:hover[b-9hf27hsjkr] {
    text-decoration: underline;
}
/* /Components/Product/ProductSkeleton.razor.rz.scp.css */
/* ============================================
   Product Skeleton — Smooth Loading
   ============================================ */

.pdp-skeleton[b-pp83pj3jyw] {
    padding: 2.5rem 0;
}

.pdp-skeleton-grid[b-pp83pj3jyw] {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 3.5rem;
}

.pdp-skeleton-gallery[b-pp83pj3jyw] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.skeleton-image[b-pp83pj3jyw] {
    aspect-ratio: 1;
    background: linear-gradient(110deg, var(--bhogi-border-light) 30%, var(--bhogi-surface-premium) 50%, var(--bhogi-border-light) 70%);
    background-size: 200% 100%;
    border-radius: 16px;
    animation: shimmer-b-pp83pj3jyw 1.5s ease-in-out infinite;
}

.skeleton-thumbs[b-pp83pj3jyw] {
    display: flex;
    gap: 0.5rem;
}

.skeleton-thumb[b-pp83pj3jyw] {
    width: 72px;
    height: 72px;
    background: linear-gradient(110deg, var(--bhogi-border-light) 30%, var(--bhogi-surface-premium) 50%, var(--bhogi-border-light) 70%);
    background-size: 200% 100%;
    border-radius: 10px;
    animation: shimmer-b-pp83pj3jyw 1.5s ease-in-out infinite;
}

.pdp-skeleton-info[b-pp83pj3jyw] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.skeleton-line[b-pp83pj3jyw] {
    height: 1rem;
    background: linear-gradient(110deg, var(--bhogi-border-light) 30%, var(--bhogi-surface-premium) 50%, var(--bhogi-border-light) 70%);
    background-size: 200% 100%;
    border-radius: 4px;
    animation: shimmer-b-pp83pj3jyw 1.5s ease-in-out infinite;
}

.skeleton-sku[b-pp83pj3jyw] {
    width: 80px;
    height: 0.75rem;
}

.skeleton-title[b-pp83pj3jyw] {
    width: 70%;
    height: 1.75rem;
}

.skeleton-rating[b-pp83pj3jyw] {
    width: 200px;
}

.skeleton-price[b-pp83pj3jyw] {
    width: 150px;
    height: 2rem;
}

.skeleton-block[b-pp83pj3jyw] {
    height: 80px;
    border-radius: 8px;
}

.skeleton-desc[b-pp83pj3jyw] {
    width: 100%;
}

.skeleton-buttons[b-pp83pj3jyw] {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.skeleton-btn[b-pp83pj3jyw] {
    flex: 1;
    height: 46px;
    background: linear-gradient(110deg, var(--bhogi-border-light) 30%, var(--bhogi-surface-premium) 50%, var(--bhogi-border-light) 70%);
    background-size: 200% 100%;
    border-radius: 10px;
    animation: shimmer-b-pp83pj3jyw 1.5s ease-in-out infinite;
}

@keyframes shimmer-b-pp83pj3jyw {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.pulse[b-pp83pj3jyw] {
    animation: pulse-b-pp83pj3jyw 1.5s ease-in-out infinite;
}

@keyframes pulse-b-pp83pj3jyw {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Responsive */
@media (max-width: 768px) {
    .pdp-skeleton-grid[b-pp83pj3jyw] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Product/ProductTabs.razor.rz.scp.css */
/* ============================================
   Product Tabs — Clean & Organized
   ============================================ */

.pdp-tabs-section[b-t9c13g6s8r] {
    background: var(--bhogi-surface);
    padding: 3rem 0;
    margin-top: 1rem;
}

.pdp-tabs[b-t9c13g6s8r] {
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border-radius: var(--bhogi-radius-xl);
    overflow: hidden;
    border: 1px solid var(--bhogi-border-light);
}

/* Tab Navigation */
.pdp-tab-nav[b-t9c13g6s8r] {
    display: flex;
    border-bottom: 1px solid var(--bhogi-border-light);
    background: var(--bhogi-surface-raised);
    overflow-x: auto;
}

.pdp-tab-btn[b-t9c13g6s8r] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    border: none;
    background: transparent;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text-muted);
    cursor: pointer;
    transition: color 0.15s ease, background 0.15s ease;
    white-space: nowrap;
    position: relative;
}

.pdp-tab-btn[b-t9c13g6s8r]::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: transparent;
    transition: background 0.15s ease;
}

.pdp-tab-btn:hover[b-t9c13g6s8r] {
    color: var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
}

.pdp-tab-btn.active[b-t9c13g6s8r] {
    color: var(--bhogi-text);
    background: var(--bhogi-surface);
}

.pdp-tab-btn.active[b-t9c13g6s8r]::after {
    background: linear-gradient(90deg, var(--bhogi-primary) 0%, var(--bhogi-gold) 100%);
}

.pdp-tab-btn i[b-t9c13g6s8r] {
    font-size: 0.8125rem;
}

/* Tab Content */
.pdp-tab-content[b-t9c13g6s8r] {
    padding: 2rem;
    min-height: 250px;
}

/* Description Content */
.pdp-description-content[b-t9c13g6s8r] {
    font-size: 0.9375rem;
    line-height: 1.8;
    color: var(--bhogi-text-secondary);
}

.pdp-description-content h2[b-t9c13g6s8r],
.pdp-description-content h3[b-t9c13g6s8r],
.pdp-description-content h4[b-t9c13g6s8r] {
    color: var(--bhogi-text);
    margin: 1.5rem 0 0.75rem 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-weight: 700;
}

.pdp-description-content h2:first-child[b-t9c13g6s8r],
.pdp-description-content h3:first-child[b-t9c13g6s8r],
.pdp-description-content h4:first-child[b-t9c13g6s8r] {
    margin-top: 0;
}

.pdp-description-content p[b-t9c13g6s8r] {
    margin-bottom: 1rem;
}

.pdp-description-content ul[b-t9c13g6s8r],
.pdp-description-content ol[b-t9c13g6s8r] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.pdp-description-content li[b-t9c13g6s8r] {
    margin-bottom: 0.375rem;
}

/* Materials & Care Content */
.pdp-materials-content[b-t9c13g6s8r] {
    font-size: 0.9375rem;
    line-height: 1.8;
    color: var(--bhogi-text-secondary);
}

.pdp-materials-block[b-t9c13g6s8r] {
    margin-bottom: 1.5rem;
}

.pdp-materials-block:last-child[b-t9c13g6s8r] {
    margin-bottom: 0;
}

.pdp-materials-block h3[b-t9c13g6s8r] {
    color: var(--bhogi-text);
    margin: 0 0 0.5rem 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-weight: 700;
    font-size: 1rem;
}

.pdp-materials-body[b-t9c13g6s8r]  p {
    margin-bottom: 0.75rem;
}

.pdp-materials-body[b-t9c13g6s8r]  ul,
.pdp-materials-body[b-t9c13g6s8r]  ol {
    padding-left: 1.5rem;
    margin-bottom: 0.75rem;
    list-style-position: outside;
}

.pdp-materials-body[b-t9c13g6s8r]  ul {
    list-style-type: disc;
}

.pdp-materials-body[b-t9c13g6s8r]  ol {
    list-style-type: decimal;
}

.pdp-materials-body[b-t9c13g6s8r]  li {
    margin-bottom: 0.25rem;
}

.pdp-materials-body[b-t9c13g6s8r]  strong,
.pdp-materials-body[b-t9c13g6s8r]  b {
    color: var(--bhogi-text);
    font-weight: 700;
}

/* Specifications Table */
.pdp-specs-content[b-t9c13g6s8r] {
    overflow-x: auto;
}

.pdp-specs-table[b-t9c13g6s8r] {
    width: 100%;
    border-collapse: collapse;
}

.pdp-specs-table th[b-t9c13g6s8r],
.pdp-specs-table td[b-t9c13g6s8r] {
    padding: 0.875rem 1rem;
    text-align: left;
    border-bottom: 1px solid var(--bhogi-border-light);
    font-size: 0.875rem;
}

.pdp-specs-table th[b-t9c13g6s8r] {
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    background: var(--bhogi-surface-raised);
    width: 200px;
}

.pdp-specs-table td[b-t9c13g6s8r] {
    color: var(--bhogi-text-muted);
}

.pdp-specs-table tr:last-child th[b-t9c13g6s8r],
.pdp-specs-table tr:last-child td[b-t9c13g6s8r] {
    border-bottom: none;
}

/* Shipping Content */
.pdp-shipping-content[b-t9c13g6s8r] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Responsive */
@media (max-width: 768px) {
    .pdp-tabs-section[b-t9c13g6s8r] {
        padding: 2rem 0;
    }

    .pdp-tab-btn[b-t9c13g6s8r] {
        padding: 0.75rem 1rem;
        font-size: 0.8125rem;
    }

    .pdp-tab-btn span[b-t9c13g6s8r] {
        display: inline;
    }

    .pdp-tab-btn[b-t9c13g6s8r] {
        flex-shrink: 0;
        min-height: 44px;
    }

    .pdp-tab-btn i[b-t9c13g6s8r] {
        font-size: 1rem;
    }

    .pdp-tab-content[b-t9c13g6s8r] {
        padding: 1.5rem;
    }

    .pdp-specs-table th[b-t9c13g6s8r] {
        width: 120px;
    }
}

@media (max-width: 576px) {
    .pdp-tab-content[b-t9c13g6s8r] {
        padding: 1rem;
    }

    .pdp-specs-table th[b-t9c13g6s8r],
    .pdp-specs-table td[b-t9c13g6s8r] {
        padding: 0.625rem 0.75rem;
        font-size: 0.8125rem;
    }
}
/* /Components/Product/ProductTrustBadges.razor.rz.scp.css */
/* ============================================
   Trust Badges — Understated Confidence
   ============================================ */

.pdp-trust-badges[b-fs0pns3by5] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
    padding: 1.25rem 0;
    border-top: 1px solid var(--bhogi-border-light);
}

.pdp-badge[b-fs0pns3by5] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    text-align: left;
}

.pdp-badge i[b-fs0pns3by5] {
    font-size: 1.125rem;
    color: var(--bhogi-primary);
    flex-shrink: 0;
}

.pdp-badge-text[b-fs0pns3by5] {
    display: flex;
    flex-direction: column;
    gap: 0.0625rem;
}

.pdp-badge-text strong[b-fs0pns3by5] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
}

.pdp-badge-text span[b-fs0pns3by5] {
    font-size: 0.6875rem;
    color: var(--bhogi-text-muted);
}

/* Responsive */
@media (max-width: 768px) {
    .pdp-trust-badges[b-fs0pns3by5] {
        grid-template-columns: 1fr;
        gap: 0.625rem;
    }
}

@media (max-width: 576px) {
    .pdp-trust-badges[b-fs0pns3by5] {
        padding: 1rem 0;
    }
}
/* /Components/Product/ProductVariants.razor.rz.scp.css */
/* ============================================
   Product Variants — Clean Selection Controls
   ============================================ */

.pd-variants[b-1mlgihej3w] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 1rem 0;
}

/* Variant Group */
.pd-variant-group[b-1mlgihej3w] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.pd-variant-label[b-1mlgihej3w] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    letter-spacing: 0.01em;
}

.pd-variant-label.required[b-1mlgihej3w]::after {
    content: " *";
    color: var(--bhogi-maroon);
    font-weight: 700;
}

.pd-variant-label-row[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
}

.pd-variant-selected[b-1mlgihej3w] {
    margin-right: auto;
    color: var(--bhogi-text, #0f172a);
    font-size: 0.8125rem;
    font-weight: 700;
}

.pd-size-guide-link[b-1mlgihej3w] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    background: transparent;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bhogi-primary, #0f7a66);
    text-decoration: underline;
    cursor: pointer;
}

.pd-size-guide-link:hover[b-1mlgihej3w] {
    color: var(--bhogi-text);
}

.pd-variant-description[b-1mlgihej3w] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted);
    line-height: 1.5;
}

.pd-variant-control[b-1mlgihej3w] {
    position: relative;
}

/* ============================================
   Choice Boxes (Color/Image Swatches)
   ============================================ */

.choice-boxes[b-1mlgihej3w] {
    display: inline-flex;
}

.choice-box-group[b-1mlgihej3w] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.choice-box-item[b-1mlgihej3w] {
    display: block;
}

.choice-box[b-1mlgihej3w] {
    position: relative;
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    appearance: none;
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.15s ease;
}

.choice-box:focus-visible[b-1mlgihej3w] {
    outline: 3px solid color-mix(in srgb, var(--bhogi-primary, #0f7a66) 25%, transparent);
    outline-offset: 3px;
}

.choice-box-content[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.choice-box-element[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 2px solid var(--bhogi-border-light);
    background-size: cover;
    background-position: center;
    transition: all 0.15s ease;
}

.choice-box:hover .choice-box-element[b-1mlgihej3w] {
    border-color: var(--bhogi-border-strong);
}

.choice-box.selected .choice-box-element[b-1mlgihej3w] {
    border-color: var(--bhogi-primary);
    box-shadow: 0 0 0 2px var(--bhogi-primary);
}

.choice-box.unavailable[b-1mlgihej3w] {
    opacity: 0.35;
    cursor: not-allowed;
}

.choice-box.unavailable .choice-box-element[b-1mlgihej3w]::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--bhogi-maroon);
    transform: rotate(-45deg);
}

.choice-box-text[b-1mlgihej3w] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--bhogi-text-muted);
    padding: 0 0.25rem;
    text-align: center;
    line-height: 1.2;
    max-width: 36px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.choice-box.selected .choice-box-text[b-1mlgihej3w] {
    color: var(--bhogi-text);
}

/* ============================================
   Dropdown Select
   ============================================ */

.pd-variant-select[b-1mlgihej3w] {
    display: block;
    width: 100%;
    max-width: 300px;
    padding: 0.5rem 2.25rem 0.5rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    background-color: var(--bhogi-surface);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border: 1px solid var(--bhogi-border-light);
    border-radius: 8px;
    appearance: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    cursor: pointer;
}

.pd-variant-select:hover[b-1mlgihej3w] {
    border-color: var(--bhogi-border);
}

.pd-variant-select:focus[b-1mlgihej3w] {
    border-color: var(--bhogi-primary);
    box-shadow: var(--bhogi-focus-ring);
    outline: none;
}

/* ============================================
   Radio List
   ============================================ */

.pd-variant-radios[b-1mlgihej3w] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.pd-variant-radio[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    padding: 0.5rem 0.625rem;
    border-radius: 8px;
    transition: background-color 0.15s ease;
    font-size: 0.875rem;
    color: var(--bhogi-text-secondary);
}

.pd-variant-radio:hover[b-1mlgihej3w] {
    background-color: var(--bhogi-surface-raised);
}

.pd-variant-radio input[type="radio"][b-1mlgihej3w] {
    appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid var(--bhogi-border);
    border-radius: 50%;
    background: var(--bhogi-surface);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
    position: relative;
}

.pd-variant-radio input[type="radio"]:checked[b-1mlgihej3w] {
    border-color: var(--bhogi-primary);
    background: var(--bhogi-primary);
}

.pd-variant-radio input[type="radio"]:checked[b-1mlgihej3w]::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bhogi-surface);
}

.pd-variant-radio-mark[b-1mlgihej3w] {
    display: none;
}

.pd-variant-radio-label[b-1mlgihej3w] {
    font-weight: 500;
}

/* ============================================
   Checkboxes
   ============================================ */

.pd-variant-checkboxes[b-1mlgihej3w] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.pd-variant-checkbox[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    padding: 0.5rem 0.625rem;
    border-radius: 8px;
    transition: background-color 0.15s ease;
    font-size: 0.875rem;
    color: var(--bhogi-text-secondary);
}

.pd-variant-checkbox:hover[b-1mlgihej3w] {
    background-color: var(--bhogi-surface-raised);
}

.pd-variant-checkbox input[type="checkbox"][b-1mlgihej3w] {
    appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid var(--bhogi-border);
    border-radius: 4px;
    background: var(--bhogi-surface);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
    position: relative;
}

.pd-variant-checkbox input[type="checkbox"]:checked[b-1mlgihej3w] {
    border-color: var(--bhogi-primary);
    background: var(--bhogi-primary);
}

.pd-variant-checkbox input[type="checkbox"]:checked[b-1mlgihej3w]::after {
    content: "";
    position: absolute;
    top: 1px;
    left: 5px;
    width: 5px;
    height: 9px;
    border: solid var(--bhogi-surface);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.pd-variant-check-mark[b-1mlgihej3w] {
    display: none;
}

.pd-variant-check-label[b-1mlgihej3w] {
    font-weight: 500;
}

/* ============================================
   Text Inputs
   ============================================ */

.pd-variant-text[b-1mlgihej3w],
.pd-variant-textarea[b-1mlgihej3w],
.pd-variant-date[b-1mlgihej3w] {
    display: block;
    width: 100%;
    max-width: 300px;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    background-color: var(--bhogi-surface);
    border: 1px solid var(--bhogi-border-light);
    border-radius: 8px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pd-variant-text:hover[b-1mlgihej3w],
.pd-variant-textarea:hover[b-1mlgihej3w],
.pd-variant-date:hover[b-1mlgihej3w] {
    border-color: var(--bhogi-border);
}

.pd-variant-text:focus[b-1mlgihej3w],
.pd-variant-textarea:focus[b-1mlgihej3w],
.pd-variant-date:focus[b-1mlgihej3w] {
    border-color: var(--bhogi-primary);
    box-shadow: var(--bhogi-focus-ring);
    outline: none;
}

.pd-variant-textarea[b-1mlgihej3w] {
    resize: vertical;
    min-height: 80px;
}

/* ============================================
   Responsive
   ============================================ */

@media (max-width: 575.98px) {
    .pd-variant-select[b-1mlgihej3w],
    .pd-variant-text[b-1mlgihej3w],
    .pd-variant-textarea[b-1mlgihej3w],
    .pd-variant-date[b-1mlgihej3w] {
        max-width: 100%;
    }
}

/* Size guide modal */

.pd-size-guide-backdrop[b-1mlgihej3w] {
    position: fixed;
    inset: 0;
    background: rgba(20, 18, 14, 0.45);
    z-index: 1000;
}

.pd-size-guide-modal[b-1mlgihej3w] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1001;
    width: min(560px, calc(100vw - 2rem));
    max-height: calc(100vh - 4rem);
    overflow-y: auto;
    background: var(--bhogi-surface);
    border-radius: var(--bhogi-radius-md);
    padding: 1.5rem 1.75rem 1.75rem;
    box-shadow: 0 20px 60px rgba(20, 18, 14, 0.25);
}

.pd-size-guide-header[b-1mlgihej3w] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.pd-size-guide-header h3[b-1mlgihej3w] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--bhogi-text);
}

.pd-size-guide-close[b-1mlgihej3w] {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--bhogi-text-muted);
    cursor: pointer;
    flex-shrink: 0;
}

.pd-size-guide-close:hover[b-1mlgihej3w] {
    background: var(--bhogi-surface-raised);
    color: var(--bhogi-text);
}

.pd-size-guide-body[b-1mlgihej3w] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--bhogi-text-secondary);
    overflow-x: auto;
}

.pd-size-guide-body table[b-1mlgihej3w] {
    width: 100%;
    border-collapse: collapse;
}

.pd-size-guide-body th[b-1mlgihej3w],
.pd-size-guide-body td[b-1mlgihej3w] {
    padding: 0.5rem 0.75rem;
    text-align: left;
    border-bottom: 1px solid var(--bhogi-border-light);
    font-size: 0.875rem;
}

.pd-size-guide-body th[b-1mlgihej3w] {
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    background: var(--bhogi-surface-raised);
}
/* /Components/Product/QuickAddModal.razor.rz.scp.css */
/* ============================================
   Quick Add Modal — Amazon-style variant picker
   Desktop: centered dialog. Mobile: bottom sheet.
   ============================================ */

.quick-add-backdrop[b-h3gqlno9wh] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.55);
    z-index: 10000;
    animation: quick-add-fade-in-b-h3gqlno9wh 0.15s ease;
}

.quick-add-sheet[b-h3gqlno9wh] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 420px;
    max-width: 92vw;
    max-height: 85vh;
    overflow-y: auto;
    background: var(--bhogi-surface, #fff);
    border-radius: var(--bhogi-radius-lg, 1rem);
    box-shadow: var(--bhogi-shadow-lg, 0 20px 48px rgba(0, 0, 0, 0.22));
    z-index: 10001;
    padding: 1.5rem;
    animation: quick-add-pop-in-b-h3gqlno9wh 0.18s ease;
}

.quick-add-close[b-h3gqlno9wh] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    background: var(--bhogi-surface-raised, #f1f5f9);
    color: var(--bhogi-text, #0f172a);
    cursor: pointer;
    font-size: 0.875rem;
    transition: background 0.15s var(--bhogi-ease, ease);
    z-index: 1;
}

.quick-add-close:hover[b-h3gqlno9wh] {
    background: var(--bhogi-border, #e2e8f0);
}

.quick-add-loading[b-h3gqlno9wh] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
    font-size: 1.5rem;
    color: var(--bhogi-primary, #0f7a66);
}

.quick-add-error[b-h3gqlno9wh] {
    padding: 2rem 0;
    text-align: center;
    color: var(--bhogi-text-muted, #64748b);
}

.quick-add-retry[b-h3gqlno9wh] {
    margin-top: 0.75rem;
    padding: 0.5rem 1.25rem;
    border: 1px solid var(--bhogi-border, #e2e8f0);
    border-radius: var(--bhogi-radius, 0.5rem);
    background: var(--bhogi-surface, #fff);
    cursor: pointer;
    font-weight: 600;
}

.quick-add-header[b-h3gqlno9wh] {
    display: flex;
    gap: 0.875rem;
    margin-bottom: 0.5rem;
    padding-right: 1.5rem;
}

.quick-add-thumb[b-h3gqlno9wh] {
    width: 64px;
    height: 64px;
    border-radius: var(--bhogi-radius, 0.5rem);
    object-fit: cover;
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    flex-shrink: 0;
    background: var(--bhogi-surface-raised, #f8fafc);
}

.quick-add-title-block[b-h3gqlno9wh] {
    min-width: 0;
}

.quick-add-title[b-h3gqlno9wh] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--bhogi-text, #0f172a);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.3;
}

.quick-add-colour[b-h3gqlno9wh] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-muted, #64748b);
    margin-top: 0.25rem;
}

.quick-add-view-details[b-h3gqlno9wh] {
    display: inline-block;
    font-size: 0.8125rem;
    color: var(--bhogi-primary, #0f7a66);
    text-decoration: underline;
    margin-top: 0.25rem;
}

.quick-add-variants[b-h3gqlno9wh] {
    margin: 0.75rem 0;
    padding-top: 0.75rem;
    border-top: 1px solid var(--bhogi-border-light, #f1f5f9);
}

.quick-add-price-row[b-h3gqlno9wh] {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0.75rem 0;
    padding-top: 0.75rem;
    border-top: 1px solid var(--bhogi-border-light, #f1f5f9);
}

.quick-add-price-current[b-h3gqlno9wh] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
}

.quick-add-price-old[b-h3gqlno9wh] {
    font-size: 0.8125rem;
    color: var(--bhogi-text-muted, #64748b);
    text-decoration: line-through;
}

.quick-add-discount[b-h3gqlno9wh] {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--bhogi-success, #1f8a70);
}

.quick-add-validation[b-h3gqlno9wh] {
    font-size: 0.8125rem;
    color: var(--bhogi-danger, #dc2626);
    background: var(--bhogi-danger-bg, #fef2f2);
    border-radius: var(--bhogi-radius, 0.5rem);
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.75rem;
}

.quick-add-submit[b-h3gqlno9wh] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    border: none;
    border-radius: var(--bhogi-radius, 0.5rem);
    font-size: 0.9375rem;
    font-weight: 700;
    color: white;
    cursor: pointer;
    background: linear-gradient(135deg, var(--bhogi-text, #15211d) 0%, var(--bhogi-primary-hover, #0d6b5a) 100%);
    transition: all 0.2s var(--bhogi-ease, ease);
    letter-spacing: 0.01em;
}

.quick-add-submit:hover:not(:disabled)[b-h3gqlno9wh] {
    background: linear-gradient(135deg, var(--bhogi-primary-hover, #0d6b5a) 0%, var(--bhogi-primary, #0f7a66) 100%);
    box-shadow: var(--bhogi-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));
}

.quick-add-submit.loading[b-h3gqlno9wh] {
    pointer-events: none;
    opacity: 0.7;
}

.quick-add-submit.added[b-h3gqlno9wh] {
    background: linear-gradient(135deg, var(--bhogi-success, #1f8a70) 0%, var(--bhogi-primary, #0f7a66) 100%);
}

.quick-add-submit:disabled[b-h3gqlno9wh] {
    opacity: 0.4;
    cursor: not-allowed;
    box-shadow: none;
}

@keyframes quick-add-fade-in-b-h3gqlno9wh {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes quick-add-pop-in-b-h3gqlno9wh {
    from { opacity: 0; transform: translate(-50%, -46%) scale(0.97); }
    to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

/* Mobile: bottom sheet, matching the Amazon app's slide-up panel */
@media (max-width: 640px) {
    .quick-add-sheet[b-h3gqlno9wh] {
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;
        transform: none;
        width: 100%;
        max-width: 100%;
        max-height: 85vh;
        border-radius: 1rem 1rem 0 0;
        padding: 1.25rem 1rem 1.5rem;
        animation: quick-add-slide-up-b-h3gqlno9wh 0.2s ease;
    }

    @keyframes quick-add-slide-up-b-h3gqlno9wh {
        from { transform: translateY(100%); }
        to { transform: translateY(0); }
    }
}
/* /Components/Shared/AiChatWidget.razor.rz.scp.css */
/* Stack the assistant above the theme control so floating actions use one predictable edge
   instead of covering primary page actions on both sides of the viewport. */

.ai-chat-widget[b-tovjrhaax0] {
    position: fixed;
    right: 1.5rem;
    bottom: 5.75rem;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.ai-chat-bubble[b-tovjrhaax0] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.375rem;
    color: #fff;
    background: linear-gradient(135deg, var(--bhogi-primary, #2563eb), var(--bhogi-primary-hover, #1d4ed8));
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.ai-chat-bubble:hover[b-tovjrhaax0] {
    transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
}

.ai-chat-bubble-open[b-tovjrhaax0] {
    background: var(--bhogi-surface, #ffffff);
    color: var(--bhogi-text, #1e293b);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
}

.ai-chat-panel[b-tovjrhaax0] {
    display: flex;
    flex-direction: column;
    width: min(360px, calc(100vw - 2rem));
    height: min(520px, calc(100vh - 8rem));
    margin-bottom: 0.875rem;
    border-radius: 16px;
    overflow: hidden;
    background: var(--bhogi-surface, #ffffff);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.22);
}

.ai-chat-header[b-tovjrhaax0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: linear-gradient(135deg, var(--bhogi-primary, #2563eb), var(--bhogi-primary-hover, #1d4ed8));
    color: #fff;
}

.ai-chat-header-info[b-tovjrhaax0] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    min-width: 0;
}

.ai-chat-header-icon[b-tovjrhaax0] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ai-chat-title[b-tovjrhaax0] {
    font-weight: 600;
    font-size: 0.9375rem;
    line-height: 1.2;
}

.ai-chat-subtitle[b-tovjrhaax0] {
    font-size: 0.75rem;
    opacity: 0.85;
    line-height: 1.2;
}

.ai-chat-close[b-tovjrhaax0] {
    background: transparent;
    border: none;
    color: #fff;
    opacity: 0.85;
    cursor: pointer;
    font-size: 1rem;
    padding: 0.25rem;
    flex-shrink: 0;
}

.ai-chat-close:hover[b-tovjrhaax0] {
    opacity: 1;
}

.ai-chat-messages[b-tovjrhaax0] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    background: var(--bhogi-bg, #f8fafc);
}

.ai-chat-message[b-tovjrhaax0] {
    display: flex;
}

.ai-chat-message-user[b-tovjrhaax0] {
    justify-content: flex-end;
}

.ai-chat-message-assistant[b-tovjrhaax0] {
    justify-content: flex-start;
}

.ai-chat-bubble-text[b-tovjrhaax0] {
    max-width: 82%;
    padding: 0.625rem 0.875rem;
    border-radius: 14px;
    font-size: 0.875rem;
    line-height: 1.45;
    white-space: pre-wrap;
    word-break: break-word;
}

.ai-chat-message-assistant .ai-chat-bubble-text[b-tovjrhaax0] {
    background: var(--bhogi-surface, #ffffff);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    color: var(--bhogi-text, #1e293b);
    border-bottom-left-radius: 4px;
}

.ai-chat-message-user .ai-chat-bubble-text[b-tovjrhaax0] {
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
    border-bottom-right-radius: 4px;
}

.ai-chat-typing[b-tovjrhaax0] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0.75rem 0.875rem;
}

.ai-chat-typing span[b-tovjrhaax0] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--bhogi-text-muted, #94a3b8);
    animation: ai-chat-typing-bounce-b-tovjrhaax0 1.2s infinite ease-in-out;
}

.ai-chat-typing span:nth-child(2)[b-tovjrhaax0] {
    animation-delay: 0.15s;
}

.ai-chat-typing span:nth-child(3)[b-tovjrhaax0] {
    animation-delay: 0.3s;
}

@keyframes ai-chat-typing-bounce-b-tovjrhaax0 {
    0%, 60%, 100% {
        transform: translateY(0);
        opacity: 0.5;
    }
    30% {
        transform: translateY(-4px);
        opacity: 1;
    }
}

.ai-chat-input-row[b-tovjrhaax0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem;
    border-top: 1px solid var(--bhogi-border-light, #e2e8f0);
    background: var(--bhogi-surface, #ffffff);
}

.ai-chat-input[b-tovjrhaax0] {
    flex: 1;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 999px;
    padding: 0.5rem 0.9rem;
    font-size: 0.875rem;
    color: var(--bhogi-text, #1e293b);
    background: var(--bhogi-bg, #f8fafc);
}

.ai-chat-input:focus[b-tovjrhaax0] {
    outline: none;
    border-color: var(--bhogi-primary, #2563eb);
}

.ai-chat-input:disabled[b-tovjrhaax0] {
    opacity: 0.6;
}

.ai-chat-send[b-tovjrhaax0] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: none;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
    cursor: pointer;
    font-size: 0.875rem;
}

.ai-chat-send:disabled[b-tovjrhaax0] {
    opacity: 0.5;
    cursor: not-allowed;
}

@media (max-width: 640px) {
    .ai-chat-widget[b-tovjrhaax0] {
        right: max(1rem, env(safe-area-inset-right));
        bottom: max(1rem, env(safe-area-inset-bottom));
    }

    .ai-chat-bubble[b-tovjrhaax0] {
        width: 48px;
        height: 48px;
        font-size: 1.125rem;
    }

    .ai-chat-panel[b-tovjrhaax0] {
        width: calc(100vw - 2rem);
        height: min(480px, calc(100vh - 7rem));
    }
}
/* /Components/Shared/ComponentThemeEditor.razor.rz.scp.css */
/* ============================================
   COMPONENT THEME EDITOR — compact sibling of ThemePicker's Theme Studio,
   scoped to a single section instead of the whole page.
   ============================================ */

.cte-panel[b-vcwg3rn7jp] {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    width: 300px;
    max-width: calc(100vw - 2rem);
    background: var(--bhogi-surface, #ffffff);
    border-radius: 1rem;
    box-shadow: 0 30px 80px rgba(0,0,0,0.22), 0 12px 32px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.06);
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    padding: 0.875rem 0.875rem 0.75rem;
    animation: cte-slide-down-b-vcwg3rn7jp 0.2s cubic-bezier(0.22, 1, 0.36, 1);
    z-index: 60;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

[data-theme="dark"] .cte-panel[b-vcwg3rn7jp] {
    background: var(--bhogi-surface-raised, #1e293b);
    border-color: var(--bhogi-border, #334155);
    box-shadow: 0 30px 80px rgba(0,0,0,0.5), 0 12px 32px rgba(0,0,0,0.3);
}

/* AnchorFixed mode (see the parameter's doc comment) — escapes an ancestor's overflow:hidden by
   positioning against the viewport instead of the nearest positioned ancestor. Anchored to the
   left edge with a fixed top offset rather than "under the button" because the one caller that
   needs this (MobileNav's drawer, which is itself pinned to the viewport's left edge) has a
   variable width (max-width: 88vw) that a right-edge anchor can't reliably clear. */
.cte-panel--fixed[b-vcwg3rn7jp] {
    position: fixed;
    top: 7rem;
    left: 1rem;
    right: auto;
    max-height: calc(100vh - 8rem);
    overflow-y: auto;
    z-index: 2100;
}

@keyframes cte-slide-down-b-vcwg3rn7jp {
    from { opacity: 0; transform: translateY(-8px) scale(0.98); }
    to   { opacity: 1; transform: translateY(0)    scale(1);    }
}

/* ── Header ── */
.cte-header[b-vcwg3rn7jp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--bhogi-border-light, #f1f5f9);
}
[data-theme="dark"] .cte-header[b-vcwg3rn7jp] { border-bottom-color: var(--bhogi-border, #334155); }

.cte-header-left[b-vcwg3rn7jp] { display: flex; align-items: center; gap: 0.5rem; }
.cte-header-icon[b-vcwg3rn7jp] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-primary, #2563eb) 12%, transparent);
    color: var(--bhogi-primary, #2563eb);
    border-radius: 0.45rem;
    font-size: 0.78rem;
}
.cte-header h5[b-vcwg3rn7jp] {
    margin: 0;
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
}
[data-theme="dark"] .cte-header h5[b-vcwg3rn7jp] { color: var(--bhogi-text, #f1f5f9); }

.cte-close-btn[b-vcwg3rn7jp] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-raised, #f8fafc);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 0.45rem;
    cursor: pointer;
    color: var(--bhogi-text-muted, #64748b);
    font-size: 0.72rem;
}
.cte-close-btn:hover[b-vcwg3rn7jp] { color: var(--bhogi-text, #0f172a); }

/* ── Tabs ── */
.cte-tabs[b-vcwg3rn7jp] {
    display: flex;
    gap: 0.3rem;
    background: var(--bhogi-surface-raised, #f8fafc);
    padding: 0.25rem;
    border-radius: 0.6rem;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
}
[data-theme="dark"] .cte-tabs[b-vcwg3rn7jp] { background: rgba(255,255,255,0.05); border-color: var(--bhogi-border, #334155); }

.cte-tab[b-vcwg3rn7jp] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.4rem 0.5rem;
    background: transparent;
    border: none;
    border-radius: 0.4rem;
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary, #475569);
}
.cte-tab.active[b-vcwg3rn7jp] {
    background: var(--bhogi-surface, #ffffff);
    color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}
[data-theme="dark"] .cte-tab[b-vcwg3rn7jp] { color: var(--bhogi-text-muted, #94a3b8); }
[data-theme="dark"] .cte-tab.active[b-vcwg3rn7jp] {
    background: color-mix(in srgb, var(--bhogi-primary) 22%, var(--bhogi-surface-overlay));
    color: var(--bhogi-text, #f1f5f9);
}

/* ── Scroll area ── */
.cte-scroll[b-vcwg3rn7jp] {
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
}

.cte-loading[b-vcwg3rn7jp] {
    font-size: 0.75rem;
    color: var(--bhogi-text-muted, #64748b);
    padding: 0.5rem 0.25rem;
}

/* ── Presets grid ── */
.cte-preset-grid[b-vcwg3rn7jp] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.4rem;
}
.cte-preset-option[b-vcwg3rn7jp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    padding: 0.5rem 0.3rem;
    background: color-mix(in srgb, var(--bhogi-surface-raised, #f8fafc) 94%, transparent);
    border: 1.5px solid transparent;
    border-radius: 0.7rem;
    cursor: pointer;
}
.cte-preset-option:hover[b-vcwg3rn7jp] {
    border-color: color-mix(in srgb, var(--bhogi-primary) 32%, transparent);
}
.cte-preset-option.active[b-vcwg3rn7jp] {
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 1px var(--bhogi-primary, #2563eb);
}
[data-theme="dark"] .cte-preset-option[b-vcwg3rn7jp] { background: rgba(255,255,255,0.05); }

.cte-preset-swatch[b-vcwg3rn7jp] {
    display: flex;
    width: 100%;
    height: 22px;
    border-radius: 0.5rem;
    overflow: hidden;
}
.cte-preset-swatch span:nth-child(1)[b-vcwg3rn7jp] { flex: 5; }
.cte-preset-swatch span:nth-child(2)[b-vcwg3rn7jp] { flex: 4; }
.cte-preset-swatch span:nth-child(3)[b-vcwg3rn7jp] { flex: 2; }

.cte-preset-name[b-vcwg3rn7jp] {
    font-size: 0.62rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary, #475569);
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}
[data-theme="dark"] .cte-preset-name[b-vcwg3rn7jp] { color: var(--bhogi-text-muted, #94a3b8); }

/* ── Custom tab / color rows ── */
.cte-role-section[b-vcwg3rn7jp] { margin-bottom: 0.6rem; }
.cte-role-label[b-vcwg3rn7jp] {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--bhogi-text-muted, #94a3b8);
    margin-bottom: 0.4rem;
}

.cte-role-row[b-vcwg3rn7jp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.3rem 0;
}
.cte-role-name[b-vcwg3rn7jp] {
    font-size: 0.72rem;
    color: var(--bhogi-text-secondary, #475569);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
[data-theme="dark"] .cte-role-name[b-vcwg3rn7jp] { color: var(--bhogi-text-muted, #94a3b8); }

.cte-color-input[b-vcwg3rn7jp] {
    width: 32px;
    height: 26px;
    padding: 0;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 0.35rem;
    cursor: pointer;
    background: none;
    flex-shrink: 0;
}
.cte-text-input[b-vcwg3rn7jp] {
    width: 110px;
    height: 26px;
    padding: 0 0.4rem;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 0.35rem;
    font-size: 0.68rem;
    color: var(--bhogi-text, #0f172a);
    background: var(--bhogi-surface, #ffffff);
    flex-shrink: 0;
}
[data-theme="dark"] .cte-text-input[b-vcwg3rn7jp] {
    background: var(--bhogi-surface-overlay, #0f172a);
    color: var(--bhogi-text, #f1f5f9);
    border-color: var(--bhogi-border, #334155);
}

/* ── Footer ── */
.cte-footer[b-vcwg3rn7jp] {
    display: flex;
    gap: 0.5rem;
    padding-top: 0.6rem;
    border-top: 1px solid var(--bhogi-border-light, #f1f5f9);
}
[data-theme="dark"] .cte-footer[b-vcwg3rn7jp] { border-top-color: var(--bhogi-border, #334155); }

.cte-reset-btn[b-vcwg3rn7jp],
.cte-save-btn[b-vcwg3rn7jp] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.45rem 0.5rem;
    border-radius: 0.5rem;
    font-size: 0.72rem;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
}
.cte-reset-btn[b-vcwg3rn7jp] {
    background: var(--bhogi-surface-raised, #f8fafc);
    color: var(--bhogi-text-secondary, #475569);
}
.cte-save-btn[b-vcwg3rn7jp] {
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
    border-color: transparent;
}
.cte-reset-btn:disabled[b-vcwg3rn7jp],
.cte-save-btn:disabled[b-vcwg3rn7jp] {
    opacity: 0.6;
    cursor: default;
}

/* ── Backdrop (click-outside-close) ── */
.cte-backdrop[b-vcwg3rn7jp] {
    position: fixed;
    inset: 0;
    z-index: 50;
    background: transparent;
}

/* Mobile/small-screen editor: escape the component's overflow boundary and
   reserve a fixed viewport-safe area for the action footer. Only the preset/
   custom content scrolls, so Reset and Save always remain reachable. */
@media (max-width: 767.98px), (max-height: 640px) {
    .cte-panel[b-vcwg3rn7jp],
    .cte-panel--fixed[b-vcwg3rn7jp] {
        position: fixed;
        top: max(8px, env(safe-area-inset-top));
        bottom: auto;
        max-height: calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
        overflow: hidden;
        z-index: 2201;
    }

    .cte-header[b-vcwg3rn7jp],
    .cte-tabs[b-vcwg3rn7jp],
    .cte-footer[b-vcwg3rn7jp] {
        flex: 0 0 auto;
    }

    .cte-scroll[b-vcwg3rn7jp] {
        flex: 1 1 auto;
        min-height: 0;
        max-height: none;
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .cte-footer[b-vcwg3rn7jp] {
        position: relative;
        z-index: 1;
        background: var(--bhogi-surface, #ffffff);
    }

    [data-theme="dark"] .cte-footer[b-vcwg3rn7jp] {
        background: var(--bhogi-surface-raised, #1e293b);
    }

    .cte-backdrop[b-vcwg3rn7jp] {
        z-index: 2200;
    }

    .cms-theme-toggle-wrap:has(.cte-panel)[b-vcwg3rn7jp],
    .home-page-theme-toggle-wrap:has(.cte-panel)[b-vcwg3rn7jp],
    .cte-chrome-toggle-wrap:has(.cte-panel)[b-vcwg3rn7jp] {
        z-index: 2200;
    }
}

@media (max-width: 767.98px) {
    .cte-panel[b-vcwg3rn7jp],
    .cte-panel--fixed[b-vcwg3rn7jp] {
        left: max(8px, env(safe-area-inset-left));
        right: max(8px, env(safe-area-inset-right));
        width: auto;
        max-width: none;
    }
}

@media (min-width: 768px) and (max-height: 640px) {
    .cte-panel[b-vcwg3rn7jp],
    .cte-panel--fixed[b-vcwg3rn7jp] {
        left: auto;
        right: 8px;
        width: min(320px, calc(100vw - 16px));
        max-width: calc(100vw - 16px);
    }
}
.cte-theme-source[b-vcwg3rn7jp] {
    margin: 0;
    padding: 0.65rem 1rem;
    font-size: 0.8rem;
    color: var(--bhogi-text-secondary);
    background: var(--bhogi-surface-raised);
}
/* /Components/Shared/EmptyState.razor.rz.scp.css */
/* ============================================
   EMPTY STATE - Professional UX Component
   Bhogi Brand: Emerald Green + Gold
   ============================================ */

.empty-state[b-p3jwqgirp6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 3rem 1.5rem;
    min-height: 300px;
    background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-xl);
    box-shadow: var(--bhogi-shadow-sm);
}

/* Icon/Illustration */
.empty-state-icon[b-p3jwqgirp6] {
    margin-bottom: 1.5rem;
    animation: fadeInScale-b-p3jwqgirp6 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.empty-illustration[b-p3jwqgirp6] {
    width: 120px;
    height: 120px;
    filter: drop-shadow(0 10px 18px color-mix(in srgb, var(--bhogi-primary) 12%, transparent));
    animation: float-b-p3jwqgirp6 3s ease-in-out infinite;
}

@keyframes float-b-p3jwqgirp6 {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes fadeInScale-b-p3jwqgirp6 {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Content */
.empty-state-content[b-p3jwqgirp6] {
    max-width: 400px;
    animation: fadeInUp-b-p3jwqgirp6 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s both;
}

@keyframes fadeInUp-b-p3jwqgirp6 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.empty-state-title[b-p3jwqgirp6] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin-bottom: 0.5rem;
    line-height: 1.4;
}

.empty-state-message[b-p3jwqgirp6] {
    font-size: 0.9375rem;
    color: var(--bhogi-text-secondary);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.empty-state-action[b-p3jwqgirp6] {
    margin-top: 1.5rem;
}

.empty-state-action .btn[b-p3jwqgirp6] {
    border-radius: var(--bhogi-radius-sm);
    padding: 0.75rem 2rem;
    font-weight: 600;
    font-size: 0.9375rem;
    box-shadow: var(--bhogi-shadow-sm);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.empty-state-action .btn:hover[b-p3jwqgirp6] {
    transform: translateY(-2px);
    box-shadow: var(--bhogi-shadow-md);
}

.empty-state-action .btn:active[b-p3jwqgirp6] {
    transform: translateY(0);
}

/* Mobile Optimizations */
@media (max-width: 767.98px) {
    .empty-state[b-p3jwqgirp6] {
        padding: 2rem 1rem;
        min-height: 250px;
    }

    .empty-illustration[b-p3jwqgirp6] {
        width: 100px;
        height: 100px;
    }

    .empty-state-title[b-p3jwqgirp6] {
        font-size: 1.125rem;
    }

    .empty-state-message[b-p3jwqgirp6] {
        font-size: 0.875rem;
    }

    .empty-state-action .btn[b-p3jwqgirp6] {
        width: 100%;
        padding: 0.875rem 1.5rem;
    }
}

/* Desktop Enhancements */
@media (min-width: 768px) {
    .empty-state[b-p3jwqgirp6] {
        padding: 4rem 2rem;
    }

    .empty-illustration[b-p3jwqgirp6] {
        width: 140px;
        height: 140px;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .empty-illustration[b-p3jwqgirp6],
    .empty-state-icon[b-p3jwqgirp6],
    .empty-state-content[b-p3jwqgirp6] {
        animation: none;
    }

    .empty-state-action .btn:hover[b-p3jwqgirp6] {
        transform: none;
    }
}

/* Dark Mode Support */
[data-theme="dark"] .empty-state-title[b-p3jwqgirp6] {
    color: var(--bhogi-text);
}

[data-theme="dark"] .empty-state-message[b-p3jwqgirp6] {
    color: var(--bhogi-text-secondary);
}
/* /Components/Shared/MyAccountLayout.razor.rz.scp.css */
/* ============================================
   MY ACCOUNT LAYOUT — Enterprise Mobile-First Design
   ============================================ */

.page-myaccount[b-4kwj9a0net] {
    padding-bottom: 0;
}

.page-myaccount .page-body[b-4kwj9a0net] {
    padding-top: 0;
}

/* ============================================
   MOBILE: Profile Header Card
   ============================================ */
.account-header-mobile[b-4kwj9a0net] {
    background: linear-gradient(135deg, var(--bhogi-primary) 0%, var(--bhogi-primary-dark) 72%, var(--bhogi-maroon) 100%);
    padding: 1.5rem 1rem 2rem;
    margin: 0 -0.75rem;
    margin-bottom: 0;
    position: relative;
}

.account-profile-card[b-4kwj9a0net] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.profile-avatar[b-4kwj9a0net] {
    flex-shrink: 0;
}

.avatar-circle[b-4kwj9a0net] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--bhogi-surface) 20%, transparent);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid color-mix(in srgb, var(--bhogi-surface) 30%, transparent);
}

.avatar-circle i[b-4kwj9a0net] {
    font-size: 1.75rem;
    color: var(--bhogi-surface);
}

.profile-info[b-4kwj9a0net] {
    flex: 1;
    min-width: 0;
}

.profile-name[b-4kwj9a0net] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bhogi-surface);
    margin: 0;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.profile-email[b-4kwj9a0net] {
    font-size: 0.875rem;
    color: color-mix(in srgb, var(--bhogi-surface) 90%, transparent);
    margin: 0.25rem 0 0;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ============================================
   MOBILE: Horizontal Tab Navigation
   ============================================ */
.account-tabs-mobile[b-4kwj9a0net] {
    background: var(--bhogi-surface);
    margin: 0 -0.75rem;
    padding: 0;
    border-bottom: 1px solid var(--bhogi-border);
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: var(--bhogi-shadow-sm);
}

.tabs-scroll-wrapper[b-4kwj9a0net] {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.tabs-scroll-wrapper[b-4kwj9a0net]::-webkit-scrollbar {
    display: none;
}

.nav-tabs-mobile[b-4kwj9a0net] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    width: 100%;
    padding: 0;
    border-bottom: none;
}

.nav-tab[b-4kwj9a0net] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.75rem 0.25rem;
    min-width: 0;
    text-decoration: none;
    color: var(--bhogi-text-muted);
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
    border-bottom: 2px solid transparent;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    background: var(--bhogi-surface);
}

.nav-tab i[b-4kwj9a0net] {
    font-size: 1.25rem;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-tab span[b-4kwj9a0net] {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-tab:hover[b-4kwj9a0net] {
    color: var(--bhogi-primary);
    background: linear-gradient(135deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
}

.nav-tab:hover i[b-4kwj9a0net] {
    transform: scale(1.1);
    color: var(--bhogi-primary);
}

.nav-tab:hover span[b-4kwj9a0net] {
    font-weight: 600;
}

.nav-tab.active[b-4kwj9a0net] {
    color: var(--bhogi-primary);
    border-bottom-color: var(--bhogi-gold);
    font-weight: 600;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-primary) 8%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 16%, transparent) 100%);
}

.nav-tab.active i[b-4kwj9a0net] {
    transform: scale(1.15);
    color: var(--bhogi-primary);
}

/* ============================================
   DESKTOP: Sidebar Account Menu
   ============================================ */
.my-account-menu[b-4kwj9a0net] {
    border: 1px solid var(--bhogi-border);
    border-radius: var(--bhogi-radius-xl);
    overflow: hidden;
    box-shadow: var(--bhogi-shadow-sm);
    margin-bottom: 1.5rem;
    position: sticky;
    top: 1rem;
}

.account-header[b-4kwj9a0net] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--bhogi-primary) 0%, var(--bhogi-primary-dark) 72%, var(--bhogi-maroon) 100%);
    border-bottom: none;
}

.account-avatar[b-4kwj9a0net] {
    flex-shrink: 0;
}

.avatar-circle-desktop[b-4kwj9a0net] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--bhogi-surface) 20%, transparent);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid color-mix(in srgb, var(--bhogi-surface) 30%, transparent);
}

.avatar-circle-desktop i[b-4kwj9a0net] {
    font-size: 1.5rem;
    color: var(--bhogi-surface);
}

.account-info[b-4kwj9a0net] {
    min-width: 0;
    flex: 1;
}

.account-name[b-4kwj9a0net] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--bhogi-surface);
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-email[b-4kwj9a0net] {
    font-size: 0.8125rem;
    color: color-mix(in srgb, var(--bhogi-surface) 90%, transparent);
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 0.125rem;
}

/* Navigation items */
.my-account-menu .list-group-item[b-4kwj9a0net] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bhogi-text-secondary);
    border: none;
    border-bottom: 1px solid var(--bhogi-border-light);
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    text-decoration: none;
    background: var(--bhogi-surface);
}

.my-account-menu .list-group-item:last-child[b-4kwj9a0net] {
    border-bottom: none;
}

.my-account-menu .list-group-item i[b-4kwj9a0net] {
    color: var(--bhogi-text-muted);
    font-size: 1rem;
    width: 1.25rem;
    text-align: center;
    flex-shrink: 0;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.my-account-menu .list-group-item span[b-4kwj9a0net] {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.my-account-menu .list-group-item:hover[b-4kwj9a0net] {
    background: linear-gradient(90deg, var(--bhogi-primary-light) 0%, color-mix(in srgb, var(--bhogi-gold) 14%, transparent) 100%);
    color: var(--bhogi-primary);
    transform: translateX(4px);
    border-left: 3px solid var(--bhogi-gold);
    padding-left: calc(1.25rem - 3px);
}

.my-account-menu .list-group-item:hover i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
    transform: scale(1.15);
}

.my-account-menu .list-group-item:hover span[b-4kwj9a0net] {
    font-weight: 600;
}

.my-account-menu .list-group-item.active[b-4kwj9a0net] {
    background: linear-gradient(90deg, color-mix(in srgb, var(--bhogi-primary) 9%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 18%, transparent) 100%);
    color: var(--bhogi-primary);
    border-left: 4px solid var(--bhogi-gold);
    font-weight: 600;
    padding-left: calc(1.25rem - 4px);
}

.my-account-menu .list-group-item.active i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
    transform: scale(1.1);
}

/* ============================================
   PAGE CONTENT AREA
   ============================================ */
.page-title[b-4kwj9a0net] {
    margin-bottom: 1.5rem;
    padding-top: 0;
}

.page-heading[b-4kwj9a0net] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--bhogi-text);
    margin: 0;
    display: none; /* Hide on mobile (shown in tabs), visible on desktop */
}

.page-content[b-4kwj9a0net] {
    padding-bottom: 2rem;
}

/* Mobile spacing */
@media (max-width: 767.98px) {
    .page-title[b-4kwj9a0net] {
        display: block;
        margin: 0;
        padding: 1rem 0.75rem 0;
    }

    .page-heading[b-4kwj9a0net] {
        display: block;
        font-family: 'Playfair Display', Georgia, serif;
        font-size: 1.35rem;
        font-weight: 750;
    }

    .page-content[b-4kwj9a0net] {
        padding: 1rem 0.75rem 1.5rem;
    }
}

/* Desktop title */
@media (min-width: 768px) {
    .page-heading[b-4kwj9a0net] {
        display: block;
    }

    .page-title[b-4kwj9a0net] {
        padding-top: 0;
        margin-bottom: 1.5rem;
    }

    .page-myaccount .page-body[b-4kwj9a0net] {
        padding-top: 1.5rem;
    }

    .page-myaccount[b-4kwj9a0net] {
        padding-bottom: 3rem;
    }
}

/* ============================================
   ENHANCED FORM STYLING FOR MOBILE
   ============================================ */
@media (max-width: 767.98px) {
    /* Make fieldsets cards on mobile */
    .page-myaccount fieldset.content-group[b-4kwj9a0net] {
        background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
        border: 1px solid var(--bhogi-border);
        border-radius: var(--bhogi-radius-lg);
        padding: 1.25rem;
        margin-bottom: 1rem;
        box-shadow: var(--bhogi-shadow-sm);
    }

    .page-myaccount .fieldset-legend[b-4kwj9a0net] {
        font-size: 1rem;
        font-weight: 600;
        color: var(--bhogi-text);
        margin-bottom: 1rem;
        padding-bottom: 0.75rem;
        border-bottom: 1px solid var(--bhogi-border-light);
    }

    /* Stack form labels and inputs */
    .page-myaccount .row.mb-3[b-4kwj9a0net] {
        margin-bottom: 1rem !important;
    }

    .page-myaccount .row.mb-3 .col-lg-3[b-4kwj9a0net],
    .page-myaccount .row.mb-3 .col-lg-9[b-4kwj9a0net] {
        padding-left: 0;
        padding-right: 0;
    }

    .page-myaccount .col-form-label[b-4kwj9a0net] {
        font-size: 0.875rem;
        font-weight: 600;
        color: var(--bhogi-text-secondary);
        margin-bottom: 0.375rem;
        padding-bottom: 0;
    }

    /* Enhanced input styling */
    .page-myaccount .form-control[b-4kwj9a0net] {
        border-radius: var(--bhogi-radius-sm);
        border: 1px solid var(--bhogi-border);
        padding: 0.625rem 0.875rem;
        font-size: 0.9375rem;
    }

    .page-myaccount .form-control:focus[b-4kwj9a0net] {
        border-color: var(--bhogi-primary);
        box-shadow: var(--bhogi-focus-ring);
    }

    /* Button styling */
    .page-myaccount .btn[b-4kwj9a0net] {
        border-radius: var(--bhogi-radius-sm);
        padding: 0.75rem 1.5rem;
        font-weight: 600;
        font-size: 0.9375rem;
    }

    .page-myaccount .btn-primary[b-4kwj9a0net] {
        width: 100%;
        margin-top: 0.5rem;
    }
}

/* ============================================
   ENHANCED ALERT STYLING
   ============================================ */
@media (max-width: 767.98px) {
    .page-myaccount .alert[b-4kwj9a0net] {
        border-radius: var(--bhogi-radius-lg);
        padding: 1rem;
        margin-bottom: 1rem;
        font-size: 0.875rem;
        border: none;
        box-shadow: var(--bhogi-shadow-sm);
    }

    .page-myaccount .alert-success[b-4kwj9a0net] {
        background: linear-gradient(135deg, color-mix(in srgb, var(--bhogi-success) 10%, transparent) 0%, color-mix(in srgb, var(--bhogi-primary) 10%, transparent) 100%);
        color: var(--bhogi-success);
    }

    .page-myaccount .alert-danger[b-4kwj9a0net] {
        background: linear-gradient(135deg, var(--bhogi-maroon-soft) 0%, color-mix(in srgb, var(--bhogi-gold) 10%, white) 100%);
        color: var(--bhogi-maroon-deep);
    }

    .page-myaccount .alert-warning[b-4kwj9a0net] {
        background: color-mix(in srgb, var(--bhogi-gold) 18%, transparent);
        color: var(--bhogi-gold-dark);
    }
}

/* ============================================
   ENHANCED CARDS (Orders, Addresses, etc.)
   ============================================ */
@media (max-width: 767.98px) {
    .page-myaccount .card[b-4kwj9a0net] {
        border-radius: var(--bhogi-radius-lg);
        border: 1px solid var(--bhogi-border);
        box-shadow: var(--bhogi-shadow-sm);
        overflow: hidden;
    }

    .page-myaccount .card-body[b-4kwj9a0net] {
        padding: 1.25rem;
    }

    .page-myaccount .card-title[b-4kwj9a0net] {
        font-size: 1rem;
        font-weight: 700;
        color: var(--bhogi-text);
        margin-bottom: 1rem;
        padding-bottom: 0.75rem;
        border-bottom: 1px solid var(--bhogi-border-light);
    }

    /* Order list items */
    .page-myaccount .order-item[b-4kwj9a0net] {
        margin-bottom: 1rem;
    }

    .page-myaccount .order-item .badge[b-4kwj9a0net] {
        padding: 0.375rem 0.75rem;
        font-size: 0.75rem;
        font-weight: 600;
        border-radius: 0.375rem;
    }

    /* Address cards */
    .page-myaccount .address-list .card[b-4kwj9a0net] {
        height: auto;
    }

    .page-myaccount .address-field[b-4kwj9a0net] {
        font-size: 0.875rem;
        color: var(--bhogi-text-muted);
        margin-bottom: 0.375rem;
    }

    .page-myaccount .address-field .field-label[b-4kwj9a0net] {
        font-weight: 600;
        color: var(--bhogi-text-secondary);
    }
}

/* ============================================
   LOADING STATE
   ============================================ */
.loading-state[b-4kwj9a0net] {
    padding: 3rem 1rem !important;
}

.loading-state i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
}

.loading-state p[b-4kwj9a0net] {
    color: var(--bhogi-text-muted);
    font-size: 0.875rem;
    margin-top: 0.75rem;
}

/* ============================================
   RESPONSIVE GRID FOR ADDRESS/ORDER CARDS
   ============================================ */
@media (max-width: 767.98px) {
    .page-myaccount .row.card-grid[b-4kwj9a0net] {
        margin-left: 0;
        margin-right: 0;
    }

    .page-myaccount .row.card-grid > .col[b-4kwj9a0net] {
        padding-left: 0;
        padding-right: 0;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */
@media print {
    .account-header-mobile[b-4kwj9a0net],
    .account-tabs-mobile[b-4kwj9a0net],
    .my-account-menu[b-4kwj9a0net] {
        display: none !important;
    }

    .page-myaccount .col-md-8[b-4kwj9a0net] {
        width: 100%;
    }
}

.my-account-menu .list-group-item:hover i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
    transform: scale(1.1);
}

.my-account-menu .list-group-item.active[b-4kwj9a0net] {
    background-color: var(--bhogi-primary-light);
    color: var(--bhogi-primary);
    font-weight: 600;
    border-left: 3px solid var(--bhogi-primary);
    padding-left: calc(1.25rem - 3px);
}

.my-account-menu .list-group-item.active i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
}

/* Page title */
.page-myaccount .page-title[b-4kwj9a0net] {
    margin-bottom: 1.5rem;
}

.page-myaccount .page-title h1[b-4kwj9a0net] {
    font-weight: 600;
    color: var(--bhogi-text);
    margin: 0;
}

/* Responsive: Mobile stacking */
@media (max-width: 767.98px) {
    .my-account-menu[b-4kwj9a0net] {
        margin-bottom: 1rem;
    }

    .account-header[b-4kwj9a0net] {
        padding: 0.75rem 1rem;
    }

    .my-account-menu .list-group-item[b-4kwj9a0net] {
        padding: 0.5rem 1rem;
        font-size: 0.8125rem;
    }
}

/* ============================================
   DARK MODE
   ============================================ */

[data-theme="dark"] .my-account-menu[b-4kwj9a0net] {
    border-color: var(--bhogi-border-light);
    background: var(--bhogi-surface-premium);
}

[data-theme="dark"] .account-header[b-4kwj9a0net] {
    background: linear-gradient(135deg, var(--bhogi-primary) 0%, var(--bhogi-primary-dark) 72%, var(--bhogi-maroon) 100%);
    border-bottom-color: var(--bhogi-border-light);
}

[data-theme="dark"] .account-name[b-4kwj9a0net] {
    color: var(--bhogi-text);
}

[data-theme="dark"] .account-email[b-4kwj9a0net] {
    color: var(--bhogi-text-secondary);
}

[data-theme="dark"] .account-avatar[b-4kwj9a0net] {
    color: var(--bhogi-text-secondary);
}

[data-theme="dark"] .my-account-menu .list-group-item[b-4kwj9a0net] {
    color: var(--bhogi-text-secondary);
    border-bottom-color: var(--bhogi-border-light);
    background: transparent;
}

[data-theme="dark"] .my-account-menu .list-group-item i[b-4kwj9a0net] {
    color: var(--bhogi-text-muted);
}

[data-theme="dark"] .my-account-menu .list-group-item:hover[b-4kwj9a0net] {
    background-color: color-mix(in srgb, var(--bhogi-primary) 12%, transparent);
    color: var(--bhogi-text);
}

[data-theme="dark"] .my-account-menu .list-group-item:hover i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
}

[data-theme="dark"] .my-account-menu .list-group-item.active[b-4kwj9a0net] {
    background: linear-gradient(90deg, color-mix(in srgb, var(--bhogi-primary) 18%, transparent) 0%, color-mix(in srgb, var(--bhogi-gold) 12%, transparent) 100%);
    color: var(--bhogi-primary);
    border-left-color: var(--bhogi-gold);
}

[data-theme="dark"] .my-account-menu .list-group-item.active i[b-4kwj9a0net] {
    color: var(--bhogi-primary);
}

[data-theme="dark"] .page-myaccount .page-title h1[b-4kwj9a0net] {
    color: var(--bhogi-text);
}
/* /Components/Shared/OrderFilters.razor.rz.scp.css */
/* ============================================
   ORDER FILTERS - Enterprise Functionality
   Bhogi Emerald Green Brand
   ============================================ */

.order-filters[b-9h0ay659w4] {
    margin-bottom: 1.5rem;
}

/* Mobile: Filter Button */
.filter-mobile[b-9h0ay659w4] {
    margin-bottom: 1rem;
}

.filter-mobile .btn[b-9h0ay659w4] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    font-weight: 600;
    font-size: 0.9375rem;
    border: 1.5px solid var(--bhogi-border);
    color: var(--bhogi-text-secondary);
}

.filter-mobile .btn:hover[b-9h0ay659w4] {
    background: var(--bhogi-surface-raised);
    border-color: var(--bhogi-primary);
    color: var(--bhogi-primary);
}

.filter-mobile .badge[b-9h0ay659w4] {
    background: var(--bhogi-gradient-primary);
    border-radius: 1rem;
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
}

/* Filter Panel */
.filter-panel[b-9h0ay659w4] {
    position: relative;
}

/* Mobile: Slide-up Panel */
@media (max-width: 767.98px) {
    .filter-panel[b-9h0ay659w4] {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1050;
        pointer-events: none;
    }

    .filter-panel.filter-panel-open[b-9h0ay659w4] {
        pointer-events: auto;
    }

    .filter-overlay[b-9h0ay659w4] {
        position: fixed;
        inset: 0;
        background: color-mix(in srgb, var(--bhogi-text) 34%, transparent);
        opacity: 0;
        transition: opacity 0.3s ease;
        pointer-events: none;
    }

    .filter-panel-open .filter-overlay[b-9h0ay659w4] {
        opacity: 1;
        pointer-events: auto;
    }

    .filter-content[b-9h0ay659w4] {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background: var(--bhogi-surface);
        border-radius: 1rem 1rem 0 0;
        max-height: 80vh;
        transform: translateY(100%);
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        box-shadow: var(--bhogi-shadow-lg);
        display: flex;
        flex-direction: column;
    }

    .filter-panel-open .filter-content[b-9h0ay659w4] {
        transform: translateY(0);
    }

    .filter-header[b-9h0ay659w4] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1.25rem 1.5rem;
        border-bottom: 1px solid var(--bhogi-border-light);
        flex-shrink: 0;
    }

    .filter-title[b-9h0ay659w4] {
        font-size: 1.125rem;
        font-weight: 700;
        color: var(--bhogi-text);
        margin: 0;
    }

    .filter-body[b-9h0ay659w4] {
        flex: 1;
        overflow-y: auto;
        padding: 1.5rem;
    }

    .filter-footer[b-9h0ay659w4] {
        display: flex;
        gap: 0.75rem;
        padding: 1rem 1.5rem;
        border-top: 1px solid var(--bhogi-border-light);
        background: var(--bhogi-surface-raised);
        flex-shrink: 0;
    }

    .filter-footer .btn[b-9h0ay659w4] {
        flex: 1;
        border-radius: 0.5rem;
        padding: 0.75rem 1rem;
        font-weight: 600;
    }

    .filter-footer .btn-outline-secondary[b-9h0ay659w4] {
        background: var(--bhogi-surface);
    }
}

/* Desktop: Always Visible */
@media (min-width: 768px) {
    .filter-mobile[b-9h0ay659w4] {
        display: none;
    }

    .filter-panel[b-9h0ay659w4] {
        background: linear-gradient(180deg, var(--bhogi-surface) 0%, var(--bhogi-surface-premium) 100%);
        border: 1px solid var(--bhogi-border-light);
        border-radius: var(--bhogi-radius-lg);
        padding: 1.5rem;
        box-shadow: var(--bhogi-shadow-sm);
    }

    .filter-content[b-9h0ay659w4] {
        display: block;
    }

    .filter-body[b-9h0ay659w4] {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 1rem;
    }
}

/* Filter Groups */
.filter-group[b-9h0ay659w4] {
    margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
    .filter-group[b-9h0ay659w4] {
        margin-bottom: 0;
    }
}

.filter-label[b-9h0ay659w4] {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary);
    margin-bottom: 0.5rem;
}

.filter-label i[b-9h0ay659w4] {
    color: var(--bhogi-primary);
    font-size: 0.9375rem;
}

/* Form Controls */
.filter-group .form-select[b-9h0ay659w4],
.filter-group .form-control[b-9h0ay659w4] {
    border-radius: var(--bhogi-radius-sm);
    border: 1.5px solid var(--bhogi-border);
    padding: 0.625rem 0.875rem;
    font-size: 0.9375rem;
    color: var(--bhogi-text);
    transition: all 0.2s ease;
}

.filter-group .form-select:focus[b-9h0ay659w4],
.filter-group .form-control:focus[b-9h0ay659w4] {
    border-color: var(--bhogi-primary);
    box-shadow: var(--bhogi-focus-ring);
    outline: none;
}

.filter-group .form-select[b-9h0ay659w4] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%230d6b5a' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 12px;
    padding-right: 2.5rem;
}

/* Active Filter Indicator */
.filter-panel.has-filters[b-9h0ay659w4] {
    border-color: var(--bhogi-primary);
}

.filter-panel.has-filters[b-9h0ay659w4]::before {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    height: 3px;
    background: linear-gradient(90deg, var(--bhogi-primary) 0%, var(--bhogi-gold) 100%);
    border-radius: var(--bhogi-radius-lg) var(--bhogi-radius-lg) 0 0;
}

@media (max-width: 767.98px) {
    .filter-panel.has-filters[b-9h0ay659w4]::before {
        display: none;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .filter-content[b-9h0ay659w4],
    .filter-overlay[b-9h0ay659w4] {
        transition: none;
    }
}
/* /Components/Shared/PullToRefresh.razor.rz.scp.css */
/* ============================================
   PULL-TO-REFRESH - Native Mobile UX
   Bhogi Emerald Green Branding
   ============================================ */

.ptr-wrapper[b-8z7edl84bt] {
    position: relative;
    overflow: hidden;
    min-height: 100%;
}

/* Indicator */
.ptr-indicator[b-8z7edl84bt] {
    position: absolute;
    top: -80px;
    left: 0;
    right: 0;
    height: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: linear-gradient(180deg, color-mix(in srgb, var(--bhogi-surface) 95%, transparent) 0%, var(--bhogi-surface) 100%);
    z-index: 1000;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
}

.ptr-wrapper.ptr-refreshing .ptr-indicator[b-8z7edl84bt] {
    top: 0;
    transform: translateY(0) !important;
    opacity: 1 !important;
}

/* Spinner Container */
.ptr-spinner[b-8z7edl84bt] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Logo Spinner (Bhogi Green) */
.ptr-logo-spinner[b-8z7edl84bt] {
    width: 32px;
    height: 32px;
    color: var(--bhogi-primary);
}

.ptr-spinner-circle[b-8z7edl84bt] {
    stroke-dasharray: 126;
    stroke-dashoffset: 0;
    transform-origin: center;
    animation: ptr-spin-b-8z7edl84bt 1.5s linear infinite;
}

@keyframes ptr-spin-b-8z7edl84bt {
    0% {
        stroke-dashoffset: 126;
        transform: rotate(0deg);
    }
    50% {
        stroke-dashoffset: 31.5;
        transform: rotate(720deg);
    }
    100% {
        stroke-dashoffset: 126;
        transform: rotate(1080deg);
    }
}

/* Pull Arrow */
.ptr-arrow[b-8z7edl84bt] {
    width: 24px;
    height: 24px;
    color: var(--bhogi-primary);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Status Text */
.ptr-text[b-8z7edl84bt] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--bhogi-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Content */
.ptr-content[b-8z7edl84bt] {
    position: relative;
    z-index: 1;
    background: var(--bhogi-surface);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.ptr-wrapper.ptr-refreshing .ptr-content[b-8z7edl84bt] {
    transform: translateY(80px);
}

/* Mobile Only */
@media (min-width: 768px) {
    .ptr-wrapper[b-8z7edl84bt] {
        overflow: visible;
    }
    
    .ptr-indicator[b-8z7edl84bt] {
        display: none;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .ptr-indicator[b-8z7edl84bt],
    .ptr-content[b-8z7edl84bt],
    .ptr-arrow[b-8z7edl84bt] {
        transition: none;
    }
    
    .ptr-spinner-circle[b-8z7edl84bt] {
        animation: none;
        stroke-dasharray: none;
    }
}
/* /Components/Shared/RoutePageErrorBoundary.razor.rz.scp.css */
.route-error-fallback[b-a91hapri14] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 4rem 1.5rem;
    max-width: 480px;
    margin: 2rem auto;
}

.route-error-fallback__icon[b-a91hapri14] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #fff4e5;
    color: #b5651d;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
}

.route-error-fallback__title[b-a91hapri14] {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #1f2d3d;
}

.route-error-fallback__message[b-a91hapri14] {
    color: #6b6b6b;
    margin-bottom: 1.5rem;
}

.route-error-fallback__actions[b-a91hapri14] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: center;
}
/* /Components/Shared/SkeletonLoader.razor.rz.scp.css */
/* ============================================
   SKELETON LOADER - Enterprise Loading States
   ============================================ */

.skeleton[b-m9nut9a1gp] {
    display: block;
    background: var(--bhogi-surface);
}

/* Shimmer Animation */
.skeleton-shimmer[b-m9nut9a1gp] {
    background: linear-gradient(
        90deg,
        var(--bhogi-border-light) 0%,
        var(--bhogi-border) 20%,
        var(--bhogi-border-light) 40%,
        var(--bhogi-border-light) 100%
    );
    background-size: 200% 100%;
    animation: shimmer-b-m9nut9a1gp 1.5s infinite ease-in-out;
    border-radius: 0.375rem;
}

@keyframes shimmer-b-m9nut9a1gp {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* Profile Header Skeleton */
.skeleton-profile-header[b-m9nut9a1gp] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem 1rem;
    background: var(--bhogi-gradient-primary);
}

.skeleton-avatar[b-m9nut9a1gp] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    flex-shrink: 0;
    background: color-mix(in srgb, var(--bhogi-surface) 20%, transparent) !important;
}

.skeleton-info[b-m9nut9a1gp] {
    flex: 1;
    min-width: 0;
}

.skeleton-line[b-m9nut9a1gp] {
    display: block;
    height: 1rem;
    border-radius: 0.25rem;
}

/* Order Card Skeleton */
.skeleton-order-card[b-m9nut9a1gp] {
    background: var(--bhogi-surface-raised);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-lg);
    overflow: hidden;
    margin-bottom: 1rem;
}

.skeleton-header[b-m9nut9a1gp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background: var(--bhogi-surface);
    border-bottom: 1px solid var(--bhogi-border-light);
}

.skeleton-badge[b-m9nut9a1gp] {
    border-radius: 0.375rem;
}

.skeleton-body[b-m9nut9a1gp] {
    padding: 1.25rem;
    background: var(--bhogi-surface);
}

.skeleton-row[b-m9nut9a1gp] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.875rem;
}

.skeleton-row:last-child[b-m9nut9a1gp] {
    margin-bottom: 0;
}

.skeleton-footer[b-m9nut9a1gp] {
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--bhogi-border-light);
    background: var(--bhogi-surface);
}

.skeleton-button[b-m9nut9a1gp] {
    height: 2.5rem;
    width: 100%;
    border-radius: 0.5rem;
}

/* Address Card Skeleton */
.skeleton-address-card[b-m9nut9a1gp] {
    background: var(--bhogi-surface);
    border: 1px solid var(--bhogi-border-light);
    border-radius: var(--bhogi-radius-lg);
    padding: 1.25rem;
}

/* List Item Skeleton */
.skeleton-list-item[b-m9nut9a1gp] {
    margin-bottom: 1rem;
}

.skeleton-list-item:last-child[b-m9nut9a1gp] {
    margin-bottom: 0;
}

/* Mobile Optimizations */
@media (max-width: 767.98px) {
    .skeleton-profile-header[b-m9nut9a1gp] {
        margin: 0 -0.75rem;
    }
    
    .skeleton-order-card[b-m9nut9a1gp] {
        margin-bottom: 0.875rem;
    }
}

/* Desktop Optimizations */
@media (min-width: 768px) {
    .skeleton-order-card[b-m9nut9a1gp] {
        margin-bottom: 1.5rem;
    }
    
    .skeleton-body[b-m9nut9a1gp] {
        padding: 1.5rem;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .skeleton-shimmer[b-m9nut9a1gp] {
        animation: none;
        background: var(--bhogi-border-light);
    }
}
/* /Components/Shared/ThemePicker.razor.rz.scp.css */
/* ============================================
   THEME PICKER — Premium scrollable panel
   ============================================ */

/* ── Wrapper ── */
.theme-picker[b-cloc6d1qh1] {
    position: relative;
    z-index: var(--z-popover, 2000);
}

/* ── Palette toggle button ── */
.theme-toggle[b-cloc6d1qh1] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
    border: none;
    border-radius: 9999px;
    cursor: pointer;
    font-size: 1.2rem;
    transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
    box-shadow: 0 4px 18px color-mix(in srgb, var(--bhogi-primary, #2563eb) 40%, transparent);
}
.theme-toggle:hover[b-cloc6d1qh1] {
    background: var(--bhogi-primary-hover, #1d4ed8);
    transform: scale(1.08);
    box-shadow: 0 6px 24px color-mix(in srgb, var(--bhogi-primary, #2563eb) 52%, transparent);
}
.theme-picker.open .theme-toggle[b-cloc6d1qh1] {
    background: #d1d5db;
    transform: scale(1.04) rotate(15deg);
}

@media (max-width: 640px) {
    .theme-toggle[b-cloc6d1qh1] {
        width: 48px;
        height: 48px;
        font-size: 1.125rem;
    }
}

/* ── Panel ──
   Right-side slide-in drawer, same overlay + transform-transition + "active" class mechanic as
   MobileNav.razor.css (.mobile-nav-overlay / .mobile-nav) and the category page's mobile
   Sort/Filter sheets -- stays mounted at all times so both the open AND close animation play,
   and applies at every viewport width (not gated behind a mobile-only media query), so desktop
   and mobile both get the same popup feel instead of an instant-appearing dropdown. */
.theme-panel[b-cloc6d1qh1] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(380px, 92vw);
    background: var(--bhogi-surface, #ffffff);
    border-radius: 1.375rem 0 0 1.375rem;
    box-shadow: 0 40px 100px rgba(0,0,0,0.22), 0 16px 40px rgba(0,0,0,0.12), 0 4px 12px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04);
    border: 1px solid var(--bhogi-border-light, #f1f5f9);
    border-right: none;
    padding: 1.25rem 1.25rem 1rem;
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: var(--z-popover, 2000);
    display: flex;
    flex-direction: column;
    gap: 0;
}

.theme-panel.active[b-cloc6d1qh1] {
    transform: translateX(0);
}

[data-theme="dark"] .theme-panel[b-cloc6d1qh1] {
    background: var(--bhogi-surface-raised, #1e293b);
    border-color: var(--bhogi-border, #334155);
    box-shadow: 0 40px 100px rgba(0,0,0,0.58), 0 16px 40px rgba(0,0,0,0.36), 0 4px 12px rgba(0,0,0,0.22);
}

/* ── Panel Header ── */
.theme-panel-header[b-cloc6d1qh1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding-bottom: 0.875rem;
    border-bottom: 1px solid var(--bhogi-border-light, #f1f5f9);
}
[data-theme="dark"] .theme-panel-header[b-cloc6d1qh1] {
    border-bottom-color: var(--bhogi-border, #334155);
}

.tp-header-left[b-cloc6d1qh1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.tp-header-icon[b-cloc6d1qh1] {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--bhogi-primary, #2563eb) 12%, transparent);
    color: var(--bhogi-primary, #2563eb);
    border-radius: 0.5rem;
    font-size: 0.875rem;
}
.theme-panel-header h4[b-cloc6d1qh1] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--bhogi-text, #0f172a);
    letter-spacing: -0.01em;
}
[data-theme="dark"] .theme-panel-header h4[b-cloc6d1qh1] {
    color: var(--bhogi-text, #f1f5f9);
}

.close-btn[b-cloc6d1qh1] {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-surface-raised, #f8fafc);
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
    border-radius: 0.5rem;
    cursor: pointer;
    color: var(--bhogi-text-muted, #64748b);
    font-size: 0.8rem;
    transition: all 150ms ease;
}
.close-btn:hover[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 8%, var(--bhogi-surface-raised));
    color: var(--bhogi-text, #0f172a);
    border-color: var(--bhogi-border, #e2e8f0);
}
[data-theme="dark"] .close-btn[b-cloc6d1qh1] {
    background: rgba(255,255,255,0.06);
    border-color: var(--bhogi-border, #334155);
    color: var(--bhogi-text-muted, #94a3b8);
}
[data-theme="dark"] .close-btn:hover[b-cloc6d1qh1] {
    background: rgba(255,255,255,0.12);
    color: var(--bhogi-text, #f1f5f9);
}

/* ── Section label ── */
.theme-section[b-cloc6d1qh1] {
    margin-bottom: 1rem;
}

.tp-section-label[b-cloc6d1qh1] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.625rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--bhogi-text-secondary, #475569);
}
[data-theme="dark"] .tp-section-label[b-cloc6d1qh1] {
    color: var(--bhogi-text-muted, #94a3b8);
}
.tp-section-label i[b-cloc6d1qh1] {
    font-size: 0.75rem;
    color: var(--bhogi-primary, #2563eb);
    opacity: 0.8;
}
.tp-count[b-cloc6d1qh1] {
    margin-left: auto;
    background: color-mix(in srgb, var(--bhogi-primary, #2563eb) 14%, transparent);
    color: var(--bhogi-primary, #2563eb);
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.45rem;
    border-radius: 9999px;
}

/* ── Mode Toggle ── */
.mode-toggle[b-cloc6d1qh1] {
    display: flex;
    gap: 0.375rem;
    background: var(--bhogi-surface-raised, #f8fafc);
    padding: 0.3rem;
    border-radius: 0.75rem;
    border: 1px solid var(--bhogi-border-light, #e2e8f0);
}
[data-theme="dark"] .mode-toggle[b-cloc6d1qh1] {
    background: rgba(255,255,255,0.05);
    border-color: var(--bhogi-border, #334155);
}
.mode-btn[b-cloc6d1qh1] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.55rem 0.625rem;
    background: transparent;
    border: none;
    border-radius: 0.5rem;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary, #475569);
    transition: all 150ms ease;
}
.mode-btn:hover[b-cloc6d1qh1] {
    color: var(--bhogi-text, #0f172a);
    background: color-mix(in srgb, var(--bhogi-primary) 6%, transparent);
}
.mode-btn.active[b-cloc6d1qh1] {
    background: var(--bhogi-surface, #ffffff);
    color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
}
[data-theme="dark"] .mode-btn[b-cloc6d1qh1] { color: var(--bhogi-text-muted, #94a3b8); }
[data-theme="dark"] .mode-btn:hover[b-cloc6d1qh1] { color: var(--bhogi-text, #f1f5f9); background: rgba(255,255,255,0.08); }
[data-theme="dark"] .mode-btn.active[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 22%, var(--bhogi-surface-overlay));
    color: var(--bhogi-text, #f1f5f9);
    box-shadow: 0 2px 10px rgba(0,0,0,0.28);
}

/* ── Scroll area ── */
.theme-scroll-area[b-cloc6d1qh1] {
    max-height: 370px;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-right: 5px;
    scrollbar-width: thin;
    scrollbar-color: color-mix(in srgb, var(--bhogi-primary, #2563eb) 28%, transparent) transparent;
}
.theme-scroll-area[b-cloc6d1qh1]::-webkit-scrollbar        { width: 5px; }
.theme-scroll-area[b-cloc6d1qh1]::-webkit-scrollbar-track  { background: color-mix(in srgb, var(--bhogi-primary,#2563eb) 4%, transparent); border-radius: 9999px; }
.theme-scroll-area[b-cloc6d1qh1]::-webkit-scrollbar-thumb  {
    background: color-mix(in srgb, var(--bhogi-primary, #2563eb) 30%, transparent);
    border-radius: 9999px;
}
.theme-scroll-area[b-cloc6d1qh1]::-webkit-scrollbar-thumb:hover {
    background: color-mix(in srgb, var(--bhogi-primary, #2563eb) 58%, transparent);
}

/* ── Group label ── */
.tp-group-label[b-cloc6d1qh1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--bhogi-text-muted, #94a3b8);
    margin-bottom: 0.5rem;
    padding: 0 0.125rem;
    white-space: nowrap;
}
.tp-group-label[b-cloc6d1qh1]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, color-mix(in srgb, var(--bhogi-primary,#2563eb) 18%, transparent), transparent);
    border-radius: 9999px;
}

/* ── Theme Grid ── */
.theme-grid[b-cloc6d1qh1] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
}

/* ── Theme Option card ── */
.theme-option[b-cloc6d1qh1] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    padding: 0.625rem 0.375rem 0.5rem;
    background: color-mix(in srgb, var(--bhogi-surface-raised, #f8fafc) 94%, transparent);
    border: 1.5px solid transparent;
    border-radius: 0.875rem;
    cursor: pointer;
    transition: background 160ms ease, border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}
.theme-option:hover[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 7%, var(--bhogi-surface-raised));
    border-color: color-mix(in srgb, var(--bhogi-primary) 32%, transparent);
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}
.theme-option.active[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 1px var(--bhogi-primary, #2563eb), 0 0 0 4px color-mix(in srgb, var(--bhogi-primary) 16%, transparent), 0 4px 14px rgba(0,0,0,0.10);
}
[data-theme="dark"] .theme-option[b-cloc6d1qh1] {
    background: rgba(255,255,255,0.05);
}
[data-theme="dark"] .theme-option:hover[b-cloc6d1qh1] {
    background: rgba(255,255,255,0.10);
    border-color: color-mix(in srgb, var(--bhogi-primary) 40%, var(--bhogi-border-strong, #64748b));
    box-shadow: 0 6px 18px rgba(0,0,0,0.28);
}
[data-theme="dark"] .theme-option.active[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 20%, transparent);
    border-color: var(--bhogi-primary, #2563eb);
    box-shadow: 0 0 0 1px var(--bhogi-primary, #2563eb), 0 0 0 4px color-mix(in srgb, var(--bhogi-primary) 20%, transparent);
}

/* ── 3-strip swatch ── */
.theme-swatch[b-cloc6d1qh1] {
    display: flex;
    width: 100%;
    height: 32px;
    border-radius: 0.625rem;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.16), inset 0 1px 0 rgba(255,255,255,0.22);
}
.swatch-primary[b-cloc6d1qh1] { flex: 5; }
.swatch-accent[b-cloc6d1qh1]  { flex: 4; }
.swatch-dark[b-cloc6d1qh1]    { flex: 2; }

/* ── Theme name label ── */
.theme-name[b-cloc6d1qh1] {
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--bhogi-text-secondary, #475569);
    text-align: center;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}
[data-theme="dark"] .theme-name[b-cloc6d1qh1] { color: var(--bhogi-text-muted, #94a3b8); }
.theme-option.active .theme-name[b-cloc6d1qh1] { color: var(--bhogi-primary, #2563eb); font-weight: 700; }

/* ── Active check badge ── */
.tp-active-badge[b-cloc6d1qh1] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bhogi-primary, #2563eb);
    color: #fff;
    border-radius: 9999px;
    font-size: 0.55rem;
}

/* ── Active theme info strip ── */
.theme-info-strip[b-cloc6d1qh1] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-top: 0.75rem;
    padding: 0.7rem 0.75rem 0.7rem 0.875rem;
    background: color-mix(in srgb, var(--bhogi-primary) 5%, var(--bhogi-surface-raised));
    border: 1px solid color-mix(in srgb, var(--bhogi-primary) 18%, transparent);
    border-radius: 0.875rem;
    border-left: 3px solid var(--bhogi-primary, #2563eb);
    box-shadow: 0 2px 10px color-mix(in srgb, var(--bhogi-primary) 10%, transparent);
}
[data-theme="dark"] .theme-info-strip[b-cloc6d1qh1] {
    background: color-mix(in srgb, var(--bhogi-primary) 10%, rgba(255,255,255,0.03));
    border-color: color-mix(in srgb, var(--bhogi-primary) 22%, transparent);
    border-left-color: var(--bhogi-primary, #2563eb);
}
.tip-swatches[b-cloc6d1qh1] {
    display: flex;
    gap: 2px;
    flex-shrink: 0;
}
.tip-swatches span[b-cloc6d1qh1] {
    width: 12px;
    height: 28px;
    border-radius: 0.25rem;
    display: block;
}
.tip-swatches span:first-child[b-cloc6d1qh1] { border-radius: 0.35rem 0.1rem 0.1rem 0.35rem; }
.tip-swatches span:last-child[b-cloc6d1qh1]  { border-radius: 0.1rem 0.35rem 0.35rem 0.1rem; }

.tip-text[b-cloc6d1qh1] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}
.tip-text strong[b-cloc6d1qh1] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--bhogi-primary, #2563eb);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tip-text span[b-cloc6d1qh1] {
    font-size: 0.68rem;
    color: var(--bhogi-text-muted, #64748b);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Precious Luxury group — shimmer cards ── */
.tp-group.tp-precious .tp-group-label[b-cloc6d1qh1] {
    color: #C9A84C;
    letter-spacing: 0.14em;
}
.tp-group.tp-precious .tp-group-label[b-cloc6d1qh1]::after {
    background: linear-gradient(90deg, rgba(201,168,76,0.40), transparent);
}
.tp-group.tp-precious .theme-option[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #C9A84C 8%, var(--bhogi-surface-raised, #f8fafc)),
        color-mix(in srgb, #C9A84C 4%, var(--bhogi-surface-raised, #f8fafc)));
    border-color: color-mix(in srgb, #C9A84C 22%, transparent);
}
.tp-group.tp-precious .theme-option:hover[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #C9A84C 16%, var(--bhogi-surface-raised, #f8fafc)),
        color-mix(in srgb, #E8D070 10%, var(--bhogi-surface-raised, #f8fafc)));
    border-color: rgba(201,168,76,0.62);
    box-shadow: 0 6px 22px rgba(201,168,76,0.18);
    transform: translateY(-2px);
}
.tp-group.tp-precious .theme-option.active[b-cloc6d1qh1] {
    border-color: #C9A84C;
    box-shadow: 0 0 0 1px #C9A84C, 0 0 0 4px rgba(201,168,76,0.20), 0 6px 20px rgba(201,168,76,0.18);
}
.tp-group.tp-precious .tp-active-badge[b-cloc6d1qh1] {
    background: linear-gradient(135deg, #C9A84C 0%, #F5D060 100%);
    color: #3A2800;
}
.tp-group.tp-precious .theme-swatch[b-cloc6d1qh1] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.20), inset 0 1px 0 rgba(255,255,255,0.28);
}
[data-theme="dark"] .tp-group.tp-precious .theme-option[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #C9A84C 12%, rgba(255,255,255,0.05)),
        color-mix(in srgb, #C9A84C 6%, rgba(255,255,255,0.03)));
    border-color: rgba(201,168,76,0.28);
}
[data-theme="dark"] .tp-group.tp-precious .theme-option:hover[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #C9A84C 20%, rgba(255,255,255,0.08)),
        color-mix(in srgb, #E8D070 12%, rgba(255,255,255,0.06)));
    border-color: rgba(201,168,76,0.55);
}

/* ── Indian Pastel group ── */
.tp-group.tp-indian-pastel .tp-group-label[b-cloc6d1qh1] {
    color: #C4607A;
    letter-spacing: 0.12em;
}
.tp-group.tp-indian-pastel .tp-group-label[b-cloc6d1qh1]::after {
    background: linear-gradient(90deg, rgba(232,160,176,0.50), rgba(244,185,66,0.30), transparent);
}
.tp-group.tp-indian-pastel .theme-option[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #E8A0B0 10%, var(--bhogi-surface-raised, #f8fafc)),
        color-mix(in srgb, #F4B942 6%, var(--bhogi-surface-raised, #f8fafc)));
    border-color: color-mix(in srgb, #E8A0B0 28%, transparent);
}
.tp-group.tp-indian-pastel .theme-option:hover[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #E8A0B0 20%, var(--bhogi-surface-raised, #f8fafc)),
        color-mix(in srgb, #F4B942 14%, var(--bhogi-surface-raised, #f8fafc)));
    border-color: rgba(232,160,176,0.65);
    box-shadow: 0 6px 22px rgba(232,160,176,0.22);
    transform: translateY(-2px);
}
.tp-group.tp-indian-pastel .theme-option.active[b-cloc6d1qh1] {
    border-color: #C4607A;
    box-shadow: 0 0 0 1px #C4607A, 0 0 0 4px rgba(196,96,122,0.18), 0 6px 20px rgba(244,185,66,0.16);
}
.tp-group.tp-indian-pastel .tp-active-badge[b-cloc6d1qh1] {
    background: linear-gradient(135deg, #E8A0B0 0%, #F4B942 100%);
    color: #5A1A28;
}
[data-theme="dark"] .tp-group.tp-indian-pastel .theme-option[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #E8A0B0 14%, rgba(255,255,255,0.05)),
        color-mix(in srgb, #F4B942 8%, rgba(255,255,255,0.03)));
    border-color: rgba(232,160,176,0.28);
}
[data-theme="dark"] .tp-group.tp-indian-pastel .theme-option:hover[b-cloc6d1qh1] {
    background: linear-gradient(145deg,
        color-mix(in srgb, #E8A0B0 24%, rgba(255,255,255,0.08)),
        color-mix(in srgb, #F4B942 14%, rgba(255,255,255,0.06)));
    border-color: rgba(232,160,176,0.55);
}


/* Same dim/blur recipe as MobileNav's .mobile-nav-overlay, so opening the theme picker reads
   as the same kind of popup as the site's mobile hamburger menu -- fades in/out via the
   "active" class instead of the old backdrop that just appeared/vanished instantly. */
.theme-picker-overlay[b-cloc6d1qh1] {
    position: fixed;
    inset: 0;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.8) 100%);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    z-index: calc(var(--z-popover, 2000) - 1);
}

.theme-picker-overlay.active[b-cloc6d1qh1] {
    opacity: 1;
    visibility: visible;
}
/* /Components/Shared/ThemeProvider.razor.rz.scp.css */
/* Theme Provider Component - CSS Isolation */

/* 
   Note: ThemeProvider is primarily a logic component that
   provides theme context to child components. Minimal CSS
   is needed here as theming is handled via CSS variables.

   IMPORTANT: Do NOT add global ::deep * transition rules here.
   Broad transitions on every child element cause perceptible
   render flicker on initial load. Theme-switch transitions
   should be applied per-component in their own *.razor.css files.
*/
