/* shopacc89 responsive locks extracted from index.php. Keep loaded near </body> to preserve cascade order. */
/* Extracted from index.php#legacy-ff-ui-last-word */
html body:not(.mobile-app-enabled) .sa-header,
html body:not(.mobile-app-enabled) .sa-header.sa-header-v3,
html body:not(.mobile-app-enabled) .shop-footer,
html body:not(.mobile-app-enabled) .mobile-app-header,
html body:not(.mobile-app-enabled) .mobile-bottom-nav,
html body:not(.mobile-app-enabled) .mobile-sheet-backdrop,
html body:not(.mobile-app-enabled) .mobile-action-sheet,
html body:not(.mobile-app-enabled) #myBtn{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
}
html body:not(.mobile-app-enabled) .legacy-ff-ui,
html body:not(.mobile-app-enabled) .legacy-ff-ui #menu,
html body:not(.mobile-app-enabled) .legacy-ff-ui #menu-mobile,
html body:not(.mobile-app-enabled) .legacy-ff-ui .legacy-ff-main,
html body:not(.mobile-app-enabled) #legacy-ff-footer{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
}
html body.mobile-app-enabled .legacy-ff-ui #menu,
html body.mobile-app-enabled .legacy-ff-ui #menu-mobile,
html body.mobile-app-enabled #legacy-ff-footer{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
}
html body{
    padding-top:0 !important;
    padding-bottom:0 !important;
}

/* Extracted from index.php#desktop-hamburger-menu-final-force */
@media (min-width: 993px){
    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3{
        height:132px !important;
        min-height:132px !important;
        overflow:visible !important;
        z-index:2147483000 !important;
    }

    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .container{
        height:132px !important;
        overflow:visible !important;
    }

    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .sa-header-desktop-nav{
        display:block !important;
        position:fixed !important;
        top:92px !important;
        left:0 !important;
        right:0 !important;
        width:100vw !important;
        height:40px !important;
        min-height:40px !important;
        opacity:1 !important;
        visibility:visible !important;
        overflow:visible !important;
        pointer-events:auto !important;
        background:#5b16a6 !important;
        border:0 !important;
        box-shadow:0 10px 24px rgba(18,4,45,.18) !important;
        z-index:2147483001 !important;
    }

    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .sa-menu{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:22px !important;
        width:100% !important;
        max-width:none !important;
        height:40px !important;
        min-height:40px !important;
        margin:0 !important;
        padding:0 !important;
        background:transparent !important;
        overflow:visible !important;
        pointer-events:auto !important;
    }

    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .sa-menu > li,
    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .sa-menu > li > a,
    body.mobile-app-enabled.desktop-menu-force-open .sa-header.sa-header-v3 .sa-menu > li > .sa-nav-dropdown-toggle{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        height:40px !important;
        line-height:40px !important;
        margin:0 !important;
        padding:0 4px !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        color:#fff !important;
        font-size:14px !important;
        font-weight:800 !important;
        letter-spacing:.02em !important;
        white-space:nowrap !important;
    }
}

/* Extracted from index.php#tablet-mobile-shell-hard-lock */
@media (min-width: 768px) and (max-width: 1023px){
    html body.mobile-app-enabled.shopacc68-tablet .sa-header,
    html body.mobile-app-enabled.shopacc68-tablet .sa-header.sa-header-v3{
        display:none !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
    }

    html body.mobile-app-enabled.shopacc68-tablet .mobile-app-header{
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }

    html body.mobile-app-enabled.shopacc68-tablet .mobile-bottom-nav{
        display:grid !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
    }
}

/* Extracted from index.php#flash-sale-flow-restore */
@media (min-width: 1024px){
    html body .home-flash-sale-grid,
    html body.mobile-app-enabled .home-flash-sale-grid{
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:stretch !important;
        grid-template-columns:none !important;
        grid-auto-flow:unset !important;
        gap:clamp(12px, 1.2vw, 16px) !important;
        width:100% !important;
        margin:0 !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        padding-bottom:2px !important;
        scroll-snap-type:x proximity !important;
    }

    html body .home-flash-sale-card,
    html body.mobile-app-enabled .home-flash-sale-card{
        flex:0 0 clamp(210px, 22vw, 246px) !important;
        width:clamp(210px, 22vw, 246px) !important;
        min-width:clamp(210px, 22vw, 246px) !important;
        max-width:clamp(210px, 22vw, 246px) !important;
        scroll-snap-align:start !important;
    }
}

@media (width: 1024px){
    html body .home-flash-sale-grid,
    html body.mobile-app-enabled .home-flash-sale-grid{
        display:flex !important;
        grid-template-columns:none !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
    }
}

/* Extracted from index.php#blindbag-grid-lock */
@media (min-width: 1024px){
    html body .blindbag-product-grid{
        display:grid !important;
        width:100% !important;
        margin:0 !important;
        grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
        grid-auto-rows:auto !important;
        grid-auto-flow:row !important;
        gap:clamp(12px, 1.2vw, 18px) !important;
        align-items:stretch !important;
    }

    html body .blindbag-product-item{
        float:none !important;
        clear:none !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
        margin:0 !important;
        grid-column:auto !important;
        grid-row:auto !important;
        order:0 !important;
    }

    html body .blindbag-product-grid > .blindbag-product-item:nth-child(1){
        grid-column:1 !important;
        grid-row:1 !important;
    }

    html body .blindbag-product-grid > .blindbag-product-item:nth-child(2){
        grid-column:2 !important;
        grid-row:1 !important;
    }

    html body .blindbag-product-grid > .blindbag-product-item:nth-child(3){
        grid-column:3 !important;
        grid-row:1 !important;
    }

    html body .blindbag-product-grid > .blindbag-product-item:nth-child(4){
        grid-column:4 !important;
        grid-row:1 !important;
    }
}

/* Extracted from index.php#mobile-product-fluid-and-nav-fix */
@media (max-width: 1023px){
    html body.mobile-app-enabled .blindbag-product-grid,
    html body.mobile-app-enabled .home-flash-sale-grid{
        display:grid !important;
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        grid-auto-flow:row !important;
        gap:clamp(12px, 2.8vw, 18px) !important;
        width:100% !important;
        margin:0 !important;
        overflow:visible !important;
    }

    html body.mobile-app-enabled .blindbag-product-item,
    html body.mobile-app-enabled .home-flash-sale-card{
        float:none !important;
        clear:none !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
        margin:0 !important;
        grid-column:auto !important;
        grid-row:auto !important;
        order:0 !important;
    }

    html body.mobile-app-enabled .blindbag-mother-group,
    html body.mobile-app-enabled .home-flash-sale{
        width:min(100%, 430px) !important;
        max-width:none !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    html body.mobile-app-enabled .blindbag-mother-group{
        padding:0 clamp(10px, 2.2vw, 16px) !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-mother-group{
        width:min(calc(100% - 2px), 438px) !important;
        padding:0 1px !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-grid{
        gap:8px 2px !important;
    }

    html body.mobile-app-enabled .home-flash-sale{
        padding:clamp(14px, 3vw, 18px) clamp(12px, 2.6vw, 18px) !important;
    }
}

@media (max-width: 767px){
    html body.mobile-app-enabled #home-blindbag-section .blindbag-mother-group{
        width:min(calc(100% - 2px), 438px) !important;
        padding:0 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .sllpbox{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-grid{
        width:100% !important;
        gap:8px 2px !important;
        margin:0 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .home-product-card{
        width:100% !important;
        max-width:none !important;
        min-height:auto !important;
        height:auto !important;
        padding-bottom:14px !important;
        margin:0 !important;
        overflow:hidden !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .home-product-card:hover,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .home-product-card:focus-within{
        transform:none !important;
        box-shadow:0 10px 24px rgba(10, 4, 22, 0.32) !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-float .sl-primg img,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-pulse .sl-primg img,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-spin .sl-primg img,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-tilt .sl-primg img,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-pulse .sl-primg::before,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .motion-tilt .sl-primg::before{
        animation:none !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-primg::before,
    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-primg::after{
        display:none !important;
        content:none !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prcode{
        min-height:40px !important;
        max-height:none !important;
        padding:8px 10px 6px !important;
        font-size:13px !important;
        line-height:1.28 !important;
        text-align:center !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prcode span{
        display:block !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-primg{
        aspect-ratio:16 / 9 !important;
        margin:0 0 10px !important;
        background:#111 !important;
        line-height:0 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-primg img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prifs{
        display:flex !important;
        flex-direction:column !important;
        justify-content:space-between !important;
        flex:1 1 auto !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prifs ul{
        gap:4px !important;
        margin:0 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prifs ul li{
        font-size:12px !important;
        line-height:1.4 !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prbot{
        margin-top:auto !important;
        padding:8px 10px 0 !important;
        min-height:40px !important;
        display:flex !important;
        align-items:flex-end !important;
        justify-content:center !important;
    }

    html body.mobile-app-enabled #home-blindbag-section .blindbag-product-item .sl-prbot img{
        width:88% !important;
        max-width:138px !important;
        height:auto !important;
    }

    html body.mobile-app-enabled .home-flash-sale-grid{
        display:flex !important;
        flex-wrap:nowrap !important;
        grid-template-columns:none !important;
        gap:12px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        scroll-snap-type:x proximity !important;
        -webkit-overflow-scrolling:touch !important;
        padding-bottom:2px !important;
    }

    html body.mobile-app-enabled .home-flash-sale-card{
        flex:0 0 clamp(150px, 42vw, 176px) !important;
        width:clamp(150px, 42vw, 176px) !important;
        min-width:clamp(150px, 42vw, 176px) !important;
        max-width:clamp(150px, 42vw, 176px) !important;
        scroll-snap-align:start !important;
    }
}

@media (min-width: 768px) and (max-width: 1023px){
    html body.mobile-app-enabled .home-flash-sale-grid{
        display:flex !important;
        flex-wrap:nowrap !important;
        grid-template-columns:none !important;
        gap:12px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        scroll-snap-type:x proximity !important;
        -webkit-overflow-scrolling:touch !important;
        padding-bottom:2px !important;
    }

    html body.mobile-app-enabled .home-flash-sale-card{
        flex:0 0 clamp(190px, 28vw, 230px) !important;
        width:clamp(190px, 28vw, 230px) !important;
        min-width:clamp(190px, 28vw, 230px) !important;
        max-width:clamp(190px, 28vw, 230px) !important;
        scroll-snap-align:start !important;
    }
}

@media (min-width: 431px) and (max-width: 1023px){
    html body.mobile-app-enabled .blindbag-mother-group,
    html body.mobile-app-enabled .home-flash-sale{
        width:min(calc(100% - 24px), clamp(430px, 88vw, 995px)) !important;
    }
}

@media (max-width: 1023px){
    html body.mobile-app-enabled .mobile-bottom-nav{
        z-index:4040 !important;
    }

    html body.mobile-app-enabled.notification-open .mobile-app-header,
    html body.mobile-app-enabled.notification-open .mobile-bottom-nav,
    html body.mobile-app-enabled.mobile-sheet-account-open .mobile-bottom-nav{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
        transform:none !important;
    }

    html body.mobile-app-enabled #notification{
        pointer-events:none !important;
        background:transparent !important;
    }

    html body.mobile-app-enabled #notification .modal-dialog,
    html body.mobile-app-enabled #notification .modal-content,
    html body.mobile-app-enabled #notification .close,
    html body.mobile-app-enabled #notification button,
    html body.mobile-app-enabled #notification a,
    html body.mobile-app-enabled #notification input{
        pointer-events:auto !important;
    }
}

/* Keep the mobile account sheet above the bottom nav/Safari bar so Logout is always reachable. */
@media (max-width: 1023px){
    html body.mobile-app-enabled.mobile-sheet-account-open .mobile-action-sheet[data-mobile-sheet-panel="account"].is-open{
        display:flex !important;
        flex-direction:column !important;
        position:fixed !important;
        left:6px !important;
        right:6px !important;
        top:auto !important;
        bottom:calc(88px + env(safe-area-inset-bottom, 0px)) !important;
        z-index:4050 !important;
        box-sizing:border-box !important;
        padding:18px 12px 14px !important;
        max-height:calc(100vh - 112px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
        max-height:calc(100dvh - 112px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
        border-radius:24px !important;
        background:linear-gradient(180deg, rgba(37, 20, 64, 0.99) 0%, rgba(23, 14, 42, 0.99) 100%) !important;
        border:1px solid rgba(196, 144, 255, 0.22) !important;
        box-shadow:0 16px 36px rgba(5, 4, 14, 0.34) !important;
        opacity:1 !important;
        visibility:visible !important;
        transform:translateY(0) !important;
        overflow:hidden !important;
    }

    html body.mobile-app-enabled.mobile-sheet-account-open .mobile-action-sheet[data-mobile-sheet-panel="account"] .mobile-sheet-body{
        min-height:0 !important;
        max-height:none !important;
        overflow-y:auto !important;
        overflow-x:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        overscroll-behavior:contain !important;
        padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    }

    html body.mobile-app-enabled.mobile-sheet-account-open .mobile-action-sheet[data-mobile-sheet-panel="account"] .mobile-account-menu{
        padding-bottom:calc(18px + env(safe-area-inset-bottom, 0px)) !important;
    }

    html body.mobile-app-enabled.mobile-sheet-account-open .mobile-action-sheet[data-mobile-sheet-panel="account"] .mobile-sheet-link-card.is-logout{
        margin-bottom:0 !important;
        scroll-margin-bottom:calc(110px + env(safe-area-inset-bottom, 0px)) !important;
    }
}
