/*
 * Nargil Product Click Zoom 2.1.0
 * Independent gallery UI. The visible gallery below is owned by the plugin,
 * not by Flatsome/FlexSlider. The native WooCommerce gallery stays in the DOM
 * only for compatibility with WooCommerce/variation scripts.
 */

body.single-product .ntpz2-gallery-shell,
body.single-product .ntpz2-gallery-shell * {
    box-sizing: border-box !important;
}

/* Native WooCommerce/FlexSlider remains alive for compatibility but is removed
 * from visual flow after the independent gallery has been mounted. */
body.single-product .woocommerce-product-gallery.ntpz2-native-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    min-height: 1px !important;
    max-width: 1px !important;
    max-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    white-space: nowrap !important;
}

/* Stop old theme/native overlays from showing above our gallery. */
body.single-product .roght-img-sepid-product > .onsale,
body.single-product .roght-img-sepid-product > .woocommerce-product-gallery__trigger,
body.single-product .woocommerce-product-gallery.ntpz2-native-hidden .woocommerce-product-gallery__trigger,
body.single-product .woocommerce-product-gallery.ntpz2-native-hidden .zoomImg {
    display: none !important;
}

/* Desktop layout bridge.
 * v2.0.4 changes ONLY the two main product columns: the gallery column gets
 * more room and the information column gets a little less. The independent
 * gallery internals, arrows, thumbnails and action dock remain untouched. */
body.single-product .first-sepid-product-box.ntpz2-top-layout,
body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1,
body.single-product .first-sepid-product-box.ntpz2-top-layout > .left-sepoid-product {
    box-sizing: border-box !important;
    min-width: 0 !important;
}

body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1.ntpz2-gallery-column,
body.single-product .right-new-123-1.ntpz2-gallery-column,
body.single-product .right-new-123-1.ntpz2-gallery-column > .roght-img-sepid-product,
body.single-product .right-sepoid-product.ntpz2-gallery-column,
body.single-product .right-sepoid-product.ntpz2-gallery-column > .roght-img-sepid-product {
    overflow: visible !important;
}

body.single-product .right-new-123-1.ntpz2-gallery-column > .roght-img-sepid-product,
body.single-product .right-sepoid-product.ntpz2-gallery-column > .roght-img-sepid-product {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    position: relative !important;
}

@media (min-width: 1200px) {
    body.single-product .first-sepid-product-box.ntpz2-top-layout {
        display: flex !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 22px !important;
        width: 100% !important;
    }

    /* Gallery: larger than before, but capped so the product info stays usable. */
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1.ntpz2-gallery-column {
        flex: 0 0 42.5% !important;
        width: 42.5% !important;
        max-width: 590px !important;
        min-width: 400px !important;
        margin: 0 !important;
    }

    /* Product title / price / cart / warranty side: slightly narrower. */
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .left-sepoid-product {
        flex: 1 1 57.5% !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
    }
}

@media (min-width: 1400px) {
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1.ntpz2-gallery-column {
        flex-basis: 45% !important;
        width: 45% !important;
        max-width: 625px !important;
    }

    body.single-product .first-sepid-product-box.ntpz2-top-layout > .left-sepoid-product {
        flex-basis: 55% !important;
    }
}

@media (min-width: 1700px) {
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1.ntpz2-gallery-column {
        flex-basis: 46% !important;
        width: 46% !important;
        max-width: 660px !important;
    }

    body.single-product .first-sepid-product-box.ntpz2-top-layout > .left-sepoid-product {
        flex-basis: 54% !important;
    }
}

/* Plugin-owned frame */
body.single-product .ntpz2-gallery-shell {
    --ntpz-border: #dfe5ec;
    --ntpz-text: #263648;
    --ntpz-soft: #f5f7fa;
    --ntpz-dark: #143b45;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 14px 14px 12px !important;
    border: 1px solid var(--ntpz-border) !important;
    border-radius: 14px !important;
    background: #fff !important;
    overflow: visible !important;
    isolation: isolate !important;
    box-shadow: none !important;
    direction: rtl !important;
}

body.single-product .ntpz2-stage {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    min-height: 390px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #fff !important;
    overflow: hidden !important;
    cursor: pointer !important;
    outline: none !important;
    text-align: initial !important;
    box-shadow: none !important;
    touch-action: manipulation !important;
}

body.single-product .ntpz2-stage:focus-visible {
    outline: 2px solid #7aa7b3 !important;
    outline-offset: 2px !important;
}

body.single-product .ntpz2-image-wrap {
    position: absolute !important;
    inset: 4% 12% 4% 4% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

body.single-product .ntpz2-main-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
    pointer-events: none !important;
}


body.single-product .ntpz2-open-badge {
    position: absolute !important;
    z-index: 9 !important;
    inset-inline-start: 12px !important;
    bottom: 12px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 32px !important;
    padding: 5px 9px !important;
    border: 1px solid rgba(20, 59, 69, .12) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.92) !important;
    color: #40505f !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    opacity: 0 !important;
    transform: translateY(4px) !important;
    transition: opacity .18s ease, transform .18s ease !important;
    pointer-events: none !important;
    backdrop-filter: blur(6px);
}

body.single-product .ntpz2-stage:hover .ntpz2-open-badge,
body.single-product .ntpz2-stage:focus-visible .ntpz2-open-badge {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

body.single-product .ntpz2-open-badge svg {
    width: 15px !important;
    height: 15px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body.single-product .ntpz2-open-badge span {
    display: inline !important;
}

body.single-product .ntpz2-arrow {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: absolute !important;
    z-index: 12 !important;
    top: 50% !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 0 3px !important;
    border: 1px solid var(--ntpz-border) !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.94) !important;
    color: var(--ntpz-text) !important;
    box-shadow: 0 3px 12px rgba(26, 42, 58, .08) !important;
    font: 400 25px/1 Arial, sans-serif !important;
    cursor: pointer !important;
    transform: translateY(-50%) !important;
}

body.single-product .ntpz2-arrow:hover {
    background: var(--ntpz-soft) !important;
}

body.single-product .ntpz2-arrow svg {
    display: block !important;
    width: 19px !important;
    height: 19px !important;
    margin: 0 !important;
    padding: 0 !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    pointer-events: none !important;
    direction: ltr !important;
}

body.single-product .ntpz2-next { right: 68px !important; left: auto !important; }
body.single-product .ntpz2-prev { left: 8px !important; right: auto !important; }

body.single-product .ntpz2-thumbs {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 86px !important;
    margin: 0 !important;
    padding: 12px 6px 2px !important;
    border-top: 1px solid #e7ebf0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: thin !important;
    direction: ltr !important;
}

body.single-product .ntpz2-thumb {
    appearance: none !important;
    -webkit-appearance: none !important;
    flex: 0 0 64px !important;
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid transparent !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
    cursor: pointer !important;
    overflow: hidden !important;
}

body.single-product .ntpz2-thumb:hover,
body.single-product .ntpz2-thumb.is-active {
    border-color: #93a9b0 !important;
    background: #fafcfd !important;
}

body.single-product .ntpz2-thumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    pointer-events: none !important;
}

body.single-product .ntpz2-sale-badge {
    display: none !important;
}

/* Plugin-owned action dock. The real wishlist / compare / share controls are
   moved here by JS, while the theme's visual wrappers are left behind. */
body.single-product .ntpz2-source-toolbar-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-width: 1px !important;
    min-height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-dock {
    position: absolute !important;
    z-index: 60 !important;
    top: 30px !important;
    right: 26px !important;
    bottom: auto !important;
    left: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f2f5f9 !important;
    box-shadow: 0 4px 16px rgba(38,54,72,.05) !important;
    overflow: hidden !important;
    direction: rtl !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action {
    all: unset !important;
    box-sizing: border-box !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #3d4b5f !important;
    cursor: pointer !important;
    overflow: hidden !important;
    text-decoration: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
    box-shadow: none !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action:hover,
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action:focus-visible {
    background: #fff !important;
    color: #143b45 !important;
    outline: none !important;
    box-shadow: 0 3px 10px rgba(38,54,72,.08) !important;
}

/* Hide every theme-provided label/icon inside the moved controls. Our icon is
   appended as the final child and is the only visible child. */
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action > *:not(.ntpz2-action-icon) {
    display: none !important;
    visibility: hidden !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action::before,
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action::after {
    content: none !important;
    display: none !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: currentColor !important;
    pointer-events: none !important;
    visibility: visible !important;
}

body.single-product .ntpz2-gallery-shell .ntpz2-action-icon svg {
    display: block !important;
    width: 21px !important;
    height: 21px !important;
    margin: 0 !important;
    padding: 0 !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    overflow: visible !important;
}

/* Prevent any old media-column badge from sitting on top of our independent frame. */
body.single-product .roght-img-sepid-product.ntpz2-media-owned > .off-box-asli,
body.single-product .roght-img-sepid-product.ntpz2-media-owned > .off-asli,
body.single-product .roght-img-sepid-product.ntpz2-media-owned > .discount-percent {
    display: none !important;
}

@media (max-width: 1199px) {
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .right-new-123-1.ntpz2-gallery-column,
    body.single-product .first-sepid-product-box.ntpz2-top-layout > .left-sepoid-product,
    body.single-product .right-new-123-1.ntpz2-gallery-column,
    body.single-product .right-sepoid-product.ntpz2-gallery-column,
    body.single-product .right-new-123-1.ntpz2-gallery-column > .roght-img-sepid-product,
    body.single-product .right-sepoid-product.ntpz2-gallery-column > .roght-img-sepid-product {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    body.single-product .ntpz2-gallery-shell {
        width: 100% !important;
        max-width: 620px !important;
        margin-inline: auto !important;
    }

    body.single-product .ntpz2-stage {
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
    }
}

@media (max-width: 640px) {
    body.single-product .ntpz2-gallery-shell {
        padding: 10px 10px 9px !important;
        border-radius: 12px !important;
    }

    body.single-product .ntpz2-image-wrap {
        inset: 5% 17% 5% 5% !important;
    }

    body.single-product .ntpz2-gallery-shell .ntpz2-action-dock {
        top: 22px !important;
        right: 18px !important;
        width: 46px !important;
        min-width: 46px !important;
        max-width: 46px !important;
        padding: 4px !important;
        gap: 3px !important;
    }

    body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
    }

    body.single-product .ntpz2-arrow {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
    }

    /* RTL: right = next, left = previous */
    body.single-product .ntpz2-next { right: 58px !important; left: auto !important; }
    body.single-product .ntpz2-prev { left: 6px !important; right: auto !important; }

    body.single-product .ntpz2-thumbs {
        justify-content: flex-start !important;
        min-height: 76px !important;
        padding-top: 10px !important;
    }

    body.single-product .ntpz2-thumb {
        flex-basis: 56px !important;
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
        min-height: 56px !important;
    }

    body.single-product .ntpz2-open-badge {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.single-product .ntpz2-main-image,
    body.single-product .ntpz2-open-badge {
        transition: none !important;
    }
}


/* Share modal compatibility: the plugin owns the click binding safely. */
body.single-product #sharem[aria-hidden="true"] {
    display: none !important;
}


/* v2.0.3: compare proxy must remain visible regardless of compare-plugin CSS. */
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action-compare,
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action-compare .ntpz2-action-icon,
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action-compare svg {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body.single-product .ntpz2-gallery-shell .ntpz2-action-dock .ntpz2-action-compare svg {
    stroke-width: 2.1 !important;
}


/* =========================================================
 * v2.1.0 — plugin-owned full-resolution lightbox
 * Inspired by the familiar large product-gallery experience: clicking the
 * product image opens a dedicated, viewport-sized viewer. No in-frame zoom.
 * ========================================================= */
html.ntpz2-lightbox-open,
body.ntpz2-lightbox-open {
    overflow: hidden !important;
    overscroll-behavior: none !important;
}

body.single-product .ntpz2-lightbox,
body.single-product .ntpz2-lightbox * {
    box-sizing: border-box !important;
}

body.single-product .ntpz2-lightbox[hidden] {
    display: none !important;
}

body.single-product .ntpz2-lightbox {
    position: fixed !important;
    z-index: 2147483000 !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 22px !important;
    background: rgba(20, 28, 38, .58) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .16s ease, visibility .16s ease !important;
    direction: rtl !important;
    isolation: isolate !important;
}

body.single-product .ntpz2-lightbox.is-open {
    opacity: 1 !important;
    visibility: visible !important;
}

body.single-product .ntpz2-lightbox-panel {
    position: relative !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    width: min(1180px, calc(100vw - 44px)) !important;
    height: min(900px, calc(100vh - 44px)) !important;
    min-height: 520px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(218, 224, 232, .95) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 24px 70px rgba(14, 25, 38, .22) !important;
    overflow: hidden !important;
    transform: translateY(8px) scale(.995) !important;
    transition: transform .16s ease !important;
}

body.single-product .ntpz2-lightbox.is-open .ntpz2-lightbox-panel {
    transform: translateY(0) scale(1) !important;
}

body.single-product .ntpz2-lightbox-header {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    min-height: 68px !important;
    padding: 12px 18px !important;
    border-bottom: 1px solid #edf0f4 !important;
    background: #fff !important;
}

body.single-product .ntpz2-lightbox-title {
    min-width: 0 !important;
    margin: 0 !important;
    color: #29384a !important;
    font: inherit !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.8 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body.single-product .ntpz2-lightbox-close {
    appearance: none !important;
    -webkit-appearance: none !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f5f7fa !important;
    color: #33465a !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

body.single-product .ntpz2-lightbox-close:hover,
body.single-product .ntpz2-lightbox-close:focus-visible {
    background: #edf1f5 !important;
    outline: 2px solid #91aeb6 !important;
    outline-offset: 2px !important;
}

body.single-product .ntpz2-lightbox-close svg,
body.single-product .ntpz2-lightbox-arrow svg {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    pointer-events: none !important;
}

body.single-product .ntpz2-lightbox-viewer {
    position: relative !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    padding: 18px 74px 12px !important;
    background: #fff !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
}

body.single-product .ntpz2-lightbox-image-wrap {
    position: relative !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

body.single-product .ntpz2-lightbox-image {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
    box-shadow: none !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
}

body.single-product .ntpz2-lightbox-arrow {
    appearance: none !important;
    -webkit-appearance: none !important;
    position: absolute !important;
    z-index: 8 !important;
    top: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #dfe5ec !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.97) !important;
    color: #2d4053 !important;
    box-shadow: 0 5px 18px rgba(31, 48, 65, .10) !important;
    cursor: pointer !important;
    transform: translateY(-50%) !important;
}

body.single-product .ntpz2-lightbox-arrow:hover,
body.single-product .ntpz2-lightbox-arrow:focus-visible {
    background: #f5f7fa !important;
    outline: 2px solid #91aeb6 !important;
    outline-offset: 2px !important;
}

/* RTL visual convention preserved: right button = next; left button = previous. */
body.single-product .ntpz2-lightbox-next { right: 18px !important; left: auto !important; }
body.single-product .ntpz2-lightbox-prev { left: 18px !important; right: auto !important; }

body.single-product .ntpz2-lightbox-counter {
    position: absolute !important;
    z-index: 7 !important;
    right: 50% !important;
    bottom: 10px !important;
    transform: translateX(50%) !important;
    min-height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: rgba(245,247,250,.94) !important;
    color: #536273 !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    pointer-events: none !important;
}

body.single-product .ntpz2-lightbox-thumbs {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 98px !important;
    padding: 11px 18px 14px !important;
    border-top: 1px solid #edf0f4 !important;
    background: #fff !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    direction: ltr !important;
    scrollbar-width: thin !important;
}

body.single-product .ntpz2-lightbox-thumb {
    appearance: none !important;
    -webkit-appearance: none !important;
    flex: 0 0 68px !important;
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    min-height: 68px !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid #e2e7ed !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
    cursor: pointer !important;
    overflow: hidden !important;
}

body.single-product .ntpz2-lightbox-thumb.is-active,
body.single-product .ntpz2-lightbox-thumb:hover,
body.single-product .ntpz2-lightbox-thumb:focus-visible {
    border-color: #7899a4 !important;
    background: #f8fafb !important;
    outline: none !important;
}

body.single-product .ntpz2-lightbox-thumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    object-fit: contain !important;
    pointer-events: none !important;
}

@media (max-width: 700px) {
    body.single-product .ntpz2-lightbox {
        padding: 0 !important;
        background: #fff !important;
    }

    body.single-product .ntpz2-lightbox-panel {
        width: 100vw !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    body.single-product .ntpz2-lightbox-header {
        min-height: 60px !important;
        padding: 9px 12px !important;
    }

    body.single-product .ntpz2-lightbox-title {
        font-size: 13px !important;
    }

    body.single-product .ntpz2-lightbox-close {
        flex-basis: 40px !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
    }

    body.single-product .ntpz2-lightbox-viewer {
        padding: 10px 48px 8px !important;
    }

    body.single-product .ntpz2-lightbox-arrow {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
    }

    body.single-product .ntpz2-lightbox-next { right: 6px !important; }
    body.single-product .ntpz2-lightbox-prev { left: 6px !important; }

    body.single-product .ntpz2-lightbox-thumbs {
        justify-content: flex-start !important;
        min-height: 82px !important;
        padding: 8px 10px 10px !important;
    }

    body.single-product .ntpz2-lightbox-thumb {
        flex-basis: 58px !important;
        width: 58px !important;
        height: 58px !important;
        min-width: 58px !important;
        min-height: 58px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.single-product .ntpz2-lightbox,
    body.single-product .ntpz2-lightbox-panel {
        transition: none !important;
    }
}
