/* WooCommerce Global Styles */

/* Typography */
b, strong {
    font-weight: 700 !important;
}

/* Sale Badge Styles (from nutrisslim-suiteV2) */
span.onsale,
.nf-product-image-gallery span.onsale,
.woocommerce span.onsale,
.woocommerce-product-gallery span.onsale,
.elementor-widget-nf_product_image span.onsale,
.nf-product-image-discount-badge,
.nf-product-image-gallery .nf-product-image-discount-badge,
.elementor-widget-nf_product_image .nf-product-image-discount-badge {
    background-color: #de1528 !important;
    color: #fff !important;
    min-width: auto !important;
    min-height: auto !important;
    width: 90px !important;
    height: 90px !important;
    right: 0 !important;
    top: 0 !important;
    left: auto !important;
    font-size: 30px !important;
    font-family: "Fira Sans Condensed", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    position: absolute !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-radius: 100px !important;
    line-height: 1 !important;
    text-align: center !important;
    padding: 0 !important;
    z-index: 10 !important;
    margin: 0 !important;
}

/* onsalenew badge (percentage only) */
span.onsalenew,
.nf-product-image-gallery span.onsalenew,
.woocommerce span.onsalenew,
.woocommerce-product-gallery span.onsalenew,
.elementor-widget-nf_product_image span.onsalenew,
.nf-product-image-discount-badge {
    background-color: #de1528 !important;
    color: #fff !important;
    min-width: auto !important;
    min-height: auto !important;
    width: 90px !important;
    height: 90px !important;
    right: 0 !important;
    top: 0 !important;
    left: auto !important;
    font-size: 30px !important;
    font-family: "Fira Sans Condensed", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    position: absolute !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-radius: 100px !important;
    line-height: 1 !important;
    text-align: center !important;
    padding: 0 !important;
    z-index: 10 !important;
    margin: 0 !important;
}

/* Ensure parent container has position relative for absolute badge positioning */
.nf-product-image-gallery,
.nf-product-image-gallery .nf-product-image-wrapper,
.nf-product-image-gallery .swiper,
.nf-product-image-gallery .main-product-swiper-pp {
    position: relative !important;
}

.nf-product-image-wrapper {
    position: relative !important;
    display: block !important;
}

/* Unique discount badge class for NF Product Image widget */
.nf-product-image-discount-badge {
    background-color: #de1528 !important;
    color: #fff !important;
    min-width: 90px !important;
    min-height: 90px !important;
    width: 90px !important;
    height: 90px !important;
    right: 0 !important;
    top: 0 !important;
    left: auto !important;
    font-size: 30px !important;
    font-family: "Fira Sans Condensed", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    position: absolute !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border-radius: 100px !important;
    line-height: 1 !important;
    text-align: center !important;
    padding: 0 !important;
    z-index: 10 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 1380px) {
    span.onsale {
        width: 125px !important;
        height: 125px !important;
        font-size: 34px !important;
        min-height: auto !important;
        min-width: auto !important;
    }
    span.onsalenew {
        width: 125px !important;
        height: 125px !important;
        font-size: 34px !important;
        min-height: auto !important;
        min-width: auto !important;
    }
}

@media (max-width: 767px) {
    span.onsale {
        width: 45px !important;
        height: 45px !important;
        font-size: 18px !important;
    }
    span.onsalenew {
        width: 45px !important;
        height: 45px !important;
        font-size: 18px !important;
    }
}

.woocommerce span.onsale,
.nf-product-image-gallery .woocommerce span.onsale,
.elementor-widget-nf_product_image .woocommerce span.onsale {
    left: auto !important;
    font-size: 30px !important;
    width: 90px !important;
    height: 90px !important;
    right: 0 !important;
    background-color: #de1528 !important;
}

.woocommerce span.onsalenew,
.nf-product-image-gallery .woocommerce span.onsalenew,
.elementor-widget-nf_product_image .woocommerce span.onsalenew {
    left: auto !important;
    font-size: 30px !important;
    width: 90px !important;
    height: 90px !important;
    right: 0 !important;
    background-color: #de1528 !important;
}

@media (max-width: 767px) {
    .woocommerce span.onsale:not(#cartOffer span.onsale):not(.custom-product-swiper span.onsale):not(#checkoutOfferHolder span.onsale) {
        width: 90px !important;
        height: 90px !important;
        font-size: 32px !important;
    }
    .woocommerce span.onsalenew:not(#cartOffer span.onsalenew):not(.custom-product-swiper span.onsalenew):not(#checkoutOfferHolder span.onsalenew) {
        width: 90px !important;
        height: 90px !important;
        font-size: 32px !important;
    }
}

/* Product Gallery Thumbnails - Single Row with Slider */
.woocommerce-product-gallery .flex-control-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    scrollbar-color: #ccc transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
    cursor: grab !important;
    width: 100% !important;
}

.woocommerce-product-gallery .flex-control-thumbs:active {
    cursor: grabbing !important;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
    height: 6px !important;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-track {
    background: transparent !important;
}

.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-thumb {
    background-color: #ccc !important;
    border-radius: 3px !important;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    float: none !important;
    clear: none !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    list-style: none !important;
    margin: 0 !important;
    width: auto !important;
    min-width: 80px !important;
    max-width: 80px !important;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    opacity: 0.5 !important;
    cursor: pointer !important;
    transition: opacity 0.3s ease !important;
    pointer-events: auto !important;
}

.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li:hover img {
    opacity: 1 !important;
}

.woocommerce-product-gallery .flex-control-thumbs li.flex-active img,
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
    cursor: default !important;
    pointer-events: none !important;
}

.woocommerce-product-gallery .flex-control-thumbs li.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) {
    pointer-events: none !important;
    cursor: default !important;
}

.woocommerce-product-gallery .flex-control-thumbs li.flex-active a,
.woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) a {
    pointer-events: none !important;
    cursor: default !important;
}

/* Modern WooCommerce Gallery Thumbnails */
.woocommerce-product-gallery__thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    scrollbar-color: #ccc transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
    cursor: grab !important;
    width: 100% !important;
}

.woocommerce-product-gallery__thumbs:active {
    cursor: grabbing !important;
}

.woocommerce-product-gallery__thumbs::-webkit-scrollbar {
    height: 6px !important;
}

.woocommerce-product-gallery__thumbs::-webkit-scrollbar-track {
    background: transparent !important;
}

.woocommerce-product-gallery__thumbs::-webkit-scrollbar-thumb {
    background-color: #ccc !important;
    border-radius: 3px !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image {
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: auto !important;
    min-width: 80px !important;
    max-width: 80px !important;
    margin: 0 !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    opacity: 0.5 !important;
    cursor: pointer !important;
    transition: opacity 0.3s ease !important;
    pointer-events: auto !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image--active img,
.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image:hover img {
    opacity: 1 !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image--active img {
    cursor: default !important;
    pointer-events: none !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image--active {
    pointer-events: none !important;
    cursor: default !important;
}

.woocommerce-product-gallery__thumbs .woocommerce-product-gallery__image--active a {
    pointer-events: none !important;
    cursor: default !important;
}

/* Product Template Elementor Padding - Global */
.product-template-default .elementor-element > .e-con-inner {
    padding-block-start: 0px !important;
    padding-block-end: 0px !important;
}

/* Mobile: Move discount badge 20px more to center */
@media (max-width: 767px) {
    /* Override all base selectors for discount badge */
    span.nf-product-image-discount-badge.onsale,
    .nf-product-image-discount-badge.onsale,
    .nf-product-image-gallery span.nf-product-image-discount-badge.onsale,
    .nf-product-image-gallery .nf-product-image-discount-badge.onsale,
    .elementor-widget-nf_product_image span.nf-product-image-discount-badge.onsale,
    .elementor-widget-nf_product_image .nf-product-image-discount-badge.onsale,
    span.onsale.nf-product-image-discount-badge,
    .nf-product-image-gallery span.onsale.nf-product-image-discount-badge,
    .elementor-widget-nf_product_image span.onsale.nf-product-image-discount-badge {
        right: 20px !important;
    }
}

