/* ==========================================================================
   1. ІДЕАЛЬНА СІТКА КАРТКИ ТОВАРУ (Для комп'ютерів та ноутбуків)
   ========================================================================== */
.product-grid-item, 
.wd-product,
.elementor-widget-loop-grid .e-loop-item {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.product-grid-item .product-wrapper,
.wd-product .product-wrapper {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.product-grid-item .product-information,
.wd-product-info,
.elementor-widget-loop-grid .e-loop-item .e-con,
.elementor-widget-loop-grid .e-loop-item .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

/* ==========================================================================
   2. МІНІАТЮРА ТА НАЗВА ТОВАРУ (СУПЕР ФІКС ПРОПОРЦІЙ ФОТО)
   ========================================================================== */
.wd-product-wrapper {
    position: relative !important;
}

/* 1. Головний контейнер фото - жорстка рамка 210px */
body .mta-custom-img {
    display: block !important;
    width: 100% !important;
    height: 210px !important;
    min-height: 210px !important;
    max-height: 210px !important;
    position: relative !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    padding: 0 !important;
}

/* 2. Обгортки (і для головного фото, і для ховеру) - робимо їх АБСОЛЮТНО ідентичними */
body .mta-custom-img a.wd-product-img-link,
body .mta-custom-img .wd-product-img-hover,
body .mta-custom-img .hover-img {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important; 
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    margin: 0 !important;
    padding: 0 !important; /* Вбиваємо приховані відступи теми */
    border: none !important;
    transform: none !important; /* Вбиваємо анімацію масштабування від WoodMart */
}

body .mta-custom-img a.wd-product-img-link { z-index: 1 !important; }
body .mta-custom-img .wd-product-img-hover,
body .mta-custom-img .hover-img { z-index: 2 !important; pointer-events: none !important; }

/* 3. Самі зображення - ідеально вписуються в обгортку */
body .mta-custom-img a.wd-product-img-link img,
body .mta-custom-img .hover-img img,
body .mta-custom-img img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important; 
    max-height: 100% !important;
    object-fit: contain !important; /* Зберігаємо пропорції */
    object-position: center !important; /* Ставимо рівно по центру */
    padding: 5px !important; /* Однаковий відступ для обох фото */
    margin: 0 auto !important;
    box-sizing: border-box !important;
    background-color: transparent !important;
    transform: none !important; /* Подвійний захист від зуму при наведенні */
}

/* Назва товару */
.product-title,
.elementor-widget-woocommerce-product-title .product-title {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important; 
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    margin-bottom: 15px !important;
    margin-top: 10px !important;
}

/* Мобільна версія */
@media (max-width: 768px) {
    body .mta-custom-img {
        height: 170px !important;
        min-height: 170px !important;
        max-height: 170px !important;
    }
}
/* ==========================================================================
   ФІКС ПРОПОРЦІЙ ДЛЯ ПОВНОЕКРАННОЇ ГАЛЕРЕЇ (ПОПАП)
   ========================================================================== */
.pswp__img {
    object-fit: contain !important;
}

/* ==========================================================================
   3. БЛОК ЦІНИ ТА КНОПКИ (GRID)
   ========================================================================== */
.mta-price-container {
    display: grid !important;
    grid-template-columns: max-content max-content 1fr auto !important; 
    align-items: center !important;
    width: 100% !important;
    margin-top: auto !important;
    row-gap: 0px !important;
}

.mta-custom-price, 
.mta-custom-price .price {
    display: contents !important;
}

/* 1. Налаштування акційної ціни (зі знижкою) */
.mta-price-container del {
    grid-row: 1 !important;
    grid-column: 1 !important;
    margin-right: 4px !important; 
    line-height: 1 !important;
    margin-bottom: -2px !important;
}

.mta-price-container ins {
    grid-row: 2 !important;
    grid-column: 1 / span 2 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    margin-top: 0px !important;
}

.mta-price-container ins .woocommerce-Price-amount,
.mta-price-container ins * {
    color: #E62900 !important;
}

/* 2. Центрування звичайної ціни без знижки */
.mta-price-container .price > .amount,
.mta-price-container .price > .woocommerce-Price-amount,
.mta-price-container .price > span:not(del):not(ins) {
    grid-row: 1 / span 2 !important;
    align-self: center !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* 3. Кнопка кошика */
.mta-price-container .wd-add-btn-wrapp,
.mta-price-container .wd-action-btn,
.mta-price-container [class*="add-to-cart"] {
    grid-column: 4 !important;
    grid-row: 1 / span 2 !important;
    justify-self: end !important;
    align-self: center !important;
}

/* ==========================================================================
   4. КНОПКА КОШИКА: Базовий стан та анімація розгортання
   ========================================================================== */
.mta-btn a, 
.mta-btn button {
    max-width: 43px !important;
    min-width: 43px !important;
    height: 43px !important;
    padding: 0 !important;
    transition: all 0.3s ease-in-out !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 0 !important;
}

.mta-btn a::before,
.mta-btn a i,
.mta-btn a svg,
.mta-btn a .wd-add-cart-icon {
    font-size: 18px !important;
    display: inline-block !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.mta-btn a::after {
    content: "Купити" !important;
    font-size: 14px !important;
    color: #ffffff !important;
    font-family: 'Arial', sans-serif !important;
    font-weight: 600 !important;
    display: none !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease-in-out !important;
}

@media (min-width: 1025px) {
    .product:hover .mta-btn a,
    .wd-product:hover .mta-btn a,
    .mta-btn:hover a {
        max-width: 125px !important;
        min-width: 115px !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        justify-content: center !important;
    }

    .product:hover .mta-btn a::after,
    .wd-product:hover .mta-btn a::after,
    .mta-btn:hover a::after {
        display: inline-block !important;
        opacity: 1 !important;
        margin-left: 8px !important;
    }
}

/* ==========================================================================
   5. МІТКИ ЗНИЖКИ (БЕЙДЖІ)
   ========================================================================== */
.mta-custom-labels {
    grid-row: 1 !important;
    grid-column: 2 !important;
    display: inline-flex !important;
    position: static !important;
    margin: 0 !important;
}

body .mta-custom-labels .wd-label,
body .mta-custom-labels .wd-label.onsale,
.mta-custom-labels * {
    background-color: #E62900 !important;
    color: #ffffff !important;
    min-width: 26px !important;
    height: 22px !important;
    border-radius: 12px !important;
    padding: 0 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-transform: uppercase !important;
}

/* ==========================================================================
   6. ГЛОБАЛЬНІ НАЛАШТУВАННЯ КАТАЛОГУ WOODMART
   ========================================================================== */
.wd-toolbar, 
.woodmart-toolbar, 
.wd-sticky-toolbar {
    z-index: 99999 !important; 
}

/* ==========================================================================
   7. АДАПТИВ КІЛЬКОСТІ СТОВПЧИКІВ ТОВАРУ
   ========================================================================== */
@media (max-width: 1450px) and (min-width: 1280px) {
    div.products.wd-products.wd-grid-g {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        --wd-col-lg: 4 !important;
    }
}

@media (max-width: 1279px) and (min-width: 1025px) {
    div.products.wd-products.wd-grid-g {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        --wd-col-lg: 3 !important;
    }
}

/* ==========================================================================
   9. ЮВЕЛІРНИЙ ФІКС ДЛЯ МІНІ-КАРТОК (ПРАВИЙ БЛОК - ПК ВЕРСІЯ)
   ========================================================================== */
body .my-promo-mini-block,
body .my-promo-mini-block .product-grid-item,
body .my-promo-mini-block .wd-product {
    display: block !important;
    height: auto !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
}

body .my-promo-mini-block .product-wrapper,
body .my-promo-mini-block .wd-product .product-wrapper {
    height: 150px !important; 
    min-height: 150px !important;
    max-height: 150px !important;
    padding: 12px !important; 
    gap: 15px !important; 
    display: flex !important;  
    flex-direction: row !important; 
    align-items: center !important;
    box-sizing: border-box !important;
    position: relative !important;
    border: none !important;
    box-shadow: none !important;
}

body .my-promo-mini-block .product-element-top {
    flex: 0 0 110px !important; 
    max-width: 110px !important;
    height: 125px !important; 
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: visible !important;
    position: relative !important;
}

body .my-promo-mini-block .product-element-top img {
    width: 100% !important;
    height: 100% !important;
    max-height: 115px !important; 
    object-fit: contain !important;
}

body .my-promo-mini-block .product-element-top .star-rating,
body .my-promo-mini-block .product-element-top .wd-star-rating,
body .my-promo-mini-block .product-element-top .woocommerce-product-rating {
    display: none !important;
}

body .my-promo-mini-block .product-information,
body .my-promo-mini-block .wd-product-info,
body .my-promo-mini-block .product-element-bottom {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: 126px !important; 
    display: flex !important;
    flex-direction: column !important; 
    justify-content: flex-start !important;
    align-items: flex-start !important;
    text-align: left !important;
    padding: 0 !important;
    background: transparent !important;
}

body .my-promo-mini-block .wd-entities-title,
body .my-promo-mini-block .wd-product-title,
body .my-promo-mini-block .wd-product-info-inner {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important; 
    display: flex !important;
    flex-direction: column !important; 
    width: 100% !important;
}

body .my-promo-mini-block .product-title {
    height: auto !important;        
    min-height: 52px !important; 
    max-height: 52px !important;    
    padding-bottom: 0 !important; 
    margin-top: 8px !important; 
    margin-bottom: 4px !important; 
    flex: 0 0 auto !important;      
    overflow: hidden !important;
}

body .my-promo-mini-block .product-title a,
body .my-promo-mini-block .wd-entities-title a {
    font-size: 13px !important; 
    font-weight: 600 !important;    
    line-height: 1.3 !important;  
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important; 
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}

body .my-promo-mini-block .product-information .woocommerce-product-rating,
body .my-promo-mini-block .product-information .wd-product-rating,
body .my-promo-mini-block .product-information .star-rating {
    display: flex !important;
    flex-direction: row !important; 
    align-items: center !important; 
    justify-content: flex-start !important; 
    gap: 6px !important; 
    width: auto !important;
    margin-top: 0 !important;
    margin-bottom: auto !important; 
    height: 20px !important;
    min-height: 20px !important;
    position: static !important;
}

body .my-promo-mini-block .product-information .star-rating,
body .my-promo-mini-block .product-information .wd-star-rating {
    display: inline-block !important;
    width: 75px !important; 
    font-size: 14px !important; 
    margin: 0 !important; 
    flex: 0 0 auto !important;
}

body .my-promo-mini-block .product-information .star-rating span {
    display: block !important;
    height: 100% !important;
}

body .my-promo-mini-block .product-information .woocommerce-product-rating a,
body .my-promo-mini-block .product-information .woocommerce-review-link,
body .my-promo-mini-block .product-information .star-rating + a {
    font-size: 13px !important; 
    color: #888888 !important; 
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

body .my-promo-mini-block .mta-price-container,
body .my-promo-mini-block .price {
    height: 26px !important;        
    min-height: 26px !important;
    margin-top: auto !important; 
    margin-bottom: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: baseline !important;
    justify-content: flex-end !important; 
    flex-wrap: nowrap !important;
    gap: 6px !important; 
    width: 100% !important;
    padding-right: 2px !important; 
    background: transparent !important;
}

body .my-promo-mini-block .price del {
    font-size: 14px !important; 
    margin-right: 0 !important;
    display: inline-flex !important;
}

body .my-promo-mini-block .price ins,
body .my-promo-mini-block .price > span {
    font-size: 19px !important; 
    font-weight: 700 !important; 
    color: #E62900 !important; 
    text-decoration: none !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: baseline !important; 
}

body .my-promo-mini-block .price ins .woocommerce-Price-currencySymbol,
body .my-promo-mini-block .price > span > .woocommerce-Price-currencySymbol {
    font-size: 12px !important; 
    font-weight: 600 !important;        
    margin-left: -4px !important; 
    display: inline-block !important;
}

body .my-promo-mini-block .price del .woocommerce-Price-currencySymbol {
    font-size: 9px !important; 
    font-weight: 400 !important; 
    margin-left: -4px !important;        
    display: inline-block !important;
}

/* ==========================================================================
   10. АДАПТИВНІСТЬ ДЛЯ СМАРТФОНІВ (Мобільна версія)
   ========================================================================== */
@media (max-width: 768px) {
    .product-grid-item, 
    .wd-product,
    .elementor-widget-loop-grid .e-loop-item,
    .product-grid-item .product-wrapper,
    .wd-product .product-wrapper {
        height: auto !important; 
        min-height: 0 !important;
        display: block !important; 
    }

    .product-grid-item .product-information,
    .wd-product-info,
    .elementor-widget-loop-grid .e-loop-item .e-con,
    .elementor-widget-loop-grid .e-loop-item .e-con-inner {
        display: block !important;
        flex-grow: 0 !important;
        height: auto !important;
    }

    body .my-promo-mini-block,
    body .my-promo-mini-block .product-grid-item,
    body .my-promo-mini-block .wd-product {
        display: block !important;
        height: auto !important;
    }

    body .my-promo-mini-block .product-wrapper,
    body .my-promo-mini-block .wd-product .product-wrapper {
        height: 170px !important; 
        min-height: 170px !important;
        max-height: 170px !important;
        padding: 10px !important; 
        gap: 12px !important;      
        display: flex !important;  
        flex-direction: row !important;
    }

    body .my-promo-mini-block .product-element-top {
        flex: 0 0 155px !important;    
        max-width: 155px !important;
        height: 160px !important;      
        display: flex !important;
    }

    body .my-promo-mini-block .product-element-top img {
        max-height: 145px !important;  
    }

    body .my-promo-mini-block .product-information,
    body .my-promo-mini-block .wd-product-info {
        height: 170px !important;      
        min-height: 170px !important;
        max-height: 170px !important;
        display: flex !important;
        flex-direction: column !important; 
    }

    body .my-promo-mini-block .wd-entities-title,
    body .my-promo-mini-block .wd-product-title,
    body .my-promo-mini-block .wd-product-info-inner,
    body .my-promo-mini-block .product-element-bottom {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important; 
        display: flex !important;
        flex-direction: column !important;
    }

    body .my-promo-mini-block .product-title {
        height: auto !important;        
        min-height: 65px !important;   
        max-height: none !important;   
        padding-bottom: 8px !important; 
        margin-top: 0 !important;
        margin-bottom: auto !important; 
        flex: 0 0 auto !important;      
        overflow: visible !important;
    }

    body .my-promo-mini-block .product-title a,
    body .my-promo-mini-block .wd-entities-title a {
        font-size: 14px !important;    
        font-weight: 600 !important;   
        line-height: 1.2 !important;  
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    body .my-promo-mini-block .wrap-star-rating,
    body .my-promo-mini-block .wd-star-rating {
        display: flex !important;
        flex-direction: row !important; 
        align-items: center !important; 
        justify-content: flex-start !important; 
        gap: 5px !important;            
        width: 100% !important;
        margin-top: 0 !important;
        margin-bottom: 10px !important; 
    }

    body .my-promo-mini-block .wrap-star-rating > *,
    body .my-promo-mini-block .wd-star-rating > * {
        margin: 0 !important; 
        flex: 0 0 auto !important; 
    }

    body .my-promo-mini-block .mta-price-container {
        height: 28px !important;        
        min-height: 28px !important;
        margin-top: auto !important;   
    }

    body .my-promo-mini-block .price ins,
    body .my-promo-mini-block .price ins *,
    body .my-promo-mini-block .price > span {
        font-size: 20px !important;    
    }

    body .my-promo-mini-block .price del {
        font-size: 15px !important;    
    }

    body .my-promo-mini-block .product-labels,
    body .my-promo-mini-block .wd-labels {
        bottom: 10px !important;
        right: 10px !important;
    }
}

/* ==========================================================================
   11. ФІКС ДЛЯ ВКЛАДОК: Приховуємо мобільний повзунок
   ========================================================================== */
.wd-nav-wrapper::-webkit-scrollbar,
.wd-nav-tabs::-webkit-scrollbar,
.elementor-tabs-wrapper::-webkit-scrollbar,
.wd-scroll-content::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
}

.wd-nav-wrapper,
.wd-nav-tabs,
.elementor-tabs-wrapper,
.wd-scroll-content {
    -ms-overflow-style: none !important;  
    scrollbar-width: none !important;      
}

/* ==========================================================================
   12. ТОТАЛЬНИЙ ФІКС КУТИКІВ (АНТИ-БЛИМАННЯ ПРИ СКРОЛІ)
   ========================================================================== */
.my-promo-mini-block .swiper,
.my-promo-mini-block .swiper-container,
.my-promo-mini-block .swiper-wrapper,
.my-promo-mini-block .swiper-slide,
.my-promo-mini-block .e-loop-item,
.my-promo-mini-block .elementor-widget-container,
.my-promo-mini-block .owl-stage-outer,
.my-promo-mini-block .owl-stage,
.my-promo-mini-block .owl-item,
.my-promo-mini-block .wd-carousel-inner,
.elementor-widget-loop-carousel .swiper-slide {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

.my-promo-mini-block .swiper-slide,
.my-promo-mini-block .e-loop-item,
.my-promo-mini-block .owl-item,
.my-promo-mini-block .product-wrapper {
    -webkit-backface-visibility: hidden !important;
    backface-visibility: hidden !important;
    -webkit-transform: translate3d(0,0,0) !important;
    transform: translate3d(0,0,0) !important;
    will-change: transform !important;
}

.allo-tabs .nav-link-text:after {
    background-color: #e5001a !important; 
    height: 1px !important; 
}

/* ==========================================================================
   13. ГЛОБАЛЬНЕ ЗМЕНШЕННЯ ЗНАЧКА ГРИВНІ НА ВСЬОМУ САЙТІ
   ========================================================================== */
.woocommerce-Price-currencySymbol {
    font-size: 0.65em !important; 
    margin-left: -4px !important;  
    margin-right: 0 !important;    
    display: inline-block !important;
    vertical-align: baseline !important; 
    position: relative !important;
    top: 0 !important;
}

/* ==========================================================================
   14. СТИЛІЗАЦІЯ ЦІНИ ДЛЯ КАРТКИ ТОВАРУ (.allo-style-price)
   ========================================================================== */
.allo-style-price, 
.allo-style-price .price {
    font-family: 'Montserrat', sans-serif !important;
    display: flex !important;
    align-items: baseline !important; 
    line-height: 1 !important;
}

.allo-style-price .price > .amount,
.allo-style-price > .amount {
    color: #212121 !important; 
    font-size: 28px !important;
    font-weight: 700 !important;
}

.allo-style-price .price ins .amount {
    color: #E62900 !important; 
    font-size: 28px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.allo-style-price .price del,
.allo-style-price .price del .amount {
    color: #7E7878 !important; 
    font-size: 20px !important;
    font-weight: 600 !important;
    text-decoration: line-through !important; 
    margin-right: 12px !important;
}

/* ==========================================================================
   15. МІНІАТЮРИ ГАЛЕРЕЇ ТОВАРУ
   Загальний Allo-вигляд комірок. Не чіпає головне фото (§16) і не чіпає
   десктопну вертикальну колонку (thumbs-position-left ≥1025px, блок нижче).
   ========================================================================== */
@media (max-width: 1024px) {
    .allo-gallery .wd-gallery-thumb .wd-carousel-item,
    .allo-gallery .wd-gallery-thumbnails .wd-carousel-item {
        border: 1px solid #e0e0e0 !important;
        border-radius: 6px !important;
        background-color: #ffffff !important;
        padding: 6px !important;
        box-sizing: border-box !important;
        margin-bottom: 12px !important;
    }

    .allo-gallery .wd-gallery-thumb .wd-carousel-item.wd-thumb-active,
    .allo-gallery .wd-gallery-thumb .wd-carousel-item:hover,
    .allo-gallery .wd-gallery-thumbnails .wd-carousel-item.wd-thumb-active,
    .allo-gallery .wd-gallery-thumbnails .wd-carousel-item:hover {
        border-color: #2563eb !important;
    }

    .allo-gallery .wd-gallery-thumb .wd-carousel-item img,
    .allo-gallery .wd-gallery-thumbnails .wd-carousel-item img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }
}

@media (min-width: 1025px) {
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumb .wd-carousel-item,
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumbnails .wd-carousel-item {
        border: 1px solid #e0e0e0 !important;
        border-radius: 6px !important;
        background-color: #ffffff !important;
        padding: 6px !important;
        box-sizing: border-box !important;
        margin-bottom: 12px !important;
    }

    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumb .wd-carousel-item.wd-thumb-active,
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumb .wd-carousel-item:hover,
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumbnails .wd-carousel-item.wd-thumb-active,
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumbnails .wd-carousel-item:hover {
        border-color: #2563eb !important;
    }

    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumb .wd-carousel-item img,
    .allo-gallery:not(.thumbs-position-left) .wd-gallery-thumbnails .wd-carousel-item img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: contain !important;
        display: block !important;
        margin: 0 auto !important;
    }
}

/* ==========================================================================
   16. ГОЛОВНЕ ФОТО ГАЛЕРЕЇ ТОВАРУ
   ========================================================================== */
.allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-item,
.allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-item:hover,
.allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-item.wd-thumb-active {
    border-color: transparent !important;
    background-color: transparent !important;
    padding: 10px !important;
    margin-bottom: 0 !important;
}

/* Головне фото .allo-gallery: лише <a> і <img> всередині слайда WoodMart.
   Зовнішній .woocommerce-product-gallery не розтягуємо — це ламає сітку Elementor.
   KEEP: горизонтальний зсув через padding-left на <a> НЕ потрібен (після оновлення теми;
   раніше було 22px→…→0). Центр + contain, без padding-left / без 70px на слайді. */
.allo-gallery .woocommerce-product-gallery__image a {
    display: flex !important;
    justify-content: center !important; /* горизонтальний центр фото в слайді */
    align-items: center !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    box-sizing: border-box !important;
}

.allo-gallery .woocommerce-product-gallery__image a img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 650px !important;
    margin: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
}

.woocommerce-product-gallery .wd-gallery-thumb,
.woocommerce-product-gallery .swiper-slide {
    opacity: 1 !important;
    visibility: visible !important;
}

.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.wd-single-gallery,
.wd-carousel-inner,
.wd-carousel-container {
    opacity: 1 !important;
    visibility: visible !important;
    transition: none !important;
    animation: none !important;
}

.woocommerce-product-gallery__wrapper .wd-carousel-item,
.woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
    transition: none !important;
    animation: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body.single-product .allo-gallery img.wp-post-image,
html body.single-product .allo-gallery .woocommerce-product-gallery__image:first-child img {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Квадрат ще до Swiper: min-height:0 у flex з’їдав aspect-ratio і контейнер схлопувався. */
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper,
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper.wd-carousel {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 280px !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-inner,
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-wrap,
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-container,
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .swiper,
html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .swiper-wrapper {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
}

@media (max-width: 1024px) {
    html body.single-product .allo-gallery .woocommerce-product-gallery__image a {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper.wd-carousel,
    html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper {
        aspect-ratio: 1 / 1 !important;
        width: 100% !important;
        height: auto !important;
        max-height: 60vh !important;
        min-height: 220px !important;
        flex-shrink: 0 !important;
    }

    html body.single-product .allo-gallery .woocommerce-product-gallery__wrapper .wd-carousel-item,
    html body.single-product .allo-gallery .woocommerce-product-gallery__image {
        height: 100% !important;
        min-height: 100% !important;
        max-height: 60vh !important;
        position: relative !important;
        overflow: hidden !important;
    }

    html body.single-product .allo-gallery .woocommerce-product-gallery__image a img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 60vh !important;
        margin: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
}

@media (min-width: 1025px) {
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .woocommerce-product-gallery__wrapper .wd-carousel-item,
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .woocommerce-product-gallery__wrapper .wd-carousel-item figure,
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .woocommerce-product-gallery__wrapper .wd-carousel-item a {
        height: 100% !important;
        min-height: 100% !important;
    }

    .allo-gallery .woocommerce-product-gallery.thumbs-position-left .woocommerce-product-gallery__wrapper .wd-carousel-item figure {
        min-height: 100% !important;
    }
}

.allo-gallery .wd-gallery-thumbnails {
    position: relative !important;
    padding-top: 35px !important;
    padding-bottom: 35px !important;
}

.allo-gallery .wd-thumb-nav {
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important; 
    z-index: 10 !important;
}

.allo-gallery .wd-thumb-nav .wd-btn-arrow {
    pointer-events: auto !important; 
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    height: 30px !important;
}

.allo-gallery .wd-thumb-nav .wd-arrow-inner {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

.allo-gallery .wd-thumb-nav .wd-btn-arrow,
.allo-gallery .wd-thumb-nav .wd-btn-arrow:after,
.allo-gallery .wd-thumb-nav .wd-arrow-inner:after {
    color: #333333 !important;
}

.allo-gallery .wd-thumb-nav .wd-prev { top: 0 !important; }
.allo-gallery .wd-thumb-nav .wd-next { bottom: 0 !important; top: auto !important; }

.allo-gallery .wd-gallery-thumbnails .wd-carousel-wrap,
.allo-gallery .wd-gallery-thumbnails .swiper-wrapper {
    padding-top: 3px !important; 
}

.allo-gallery .wd-thumb-nav .wd-btn-arrow:after,
.allo-gallery .wd-thumb-nav .wd-arrow-inner:after {
    transition: all 0.2s ease-in-out !important; 
    display: inline-block !important; 
}

.allo-gallery .wd-thumb-nav .wd-btn-arrow:hover:after,
.allo-gallery .wd-thumb-nav .wd-arrow-inner:hover:after {
    color: #000000 !important; 
    font-weight: 900 !important; 
    transform: scale(1.4) !important; 
    cursor: pointer !important; 
}

.allo-gallery .wd-gallery-thumb .wd-carousel {
    height: calc(100% - 80px) !important;
    margin-top: 40px !important;
}

.allo-gallery .wd-gallery-thumb .wd-carousel-wrap {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
}

.allo-gallery .wd-gallery-thumb .wd-carousel,
.allo-gallery .wd-gallery-thumb .wd-carousel-wrap,
.allo-gallery .wd-gallery-thumb .wd-carousel-inner,
.allo-gallery .wd-gallery-thumb .swiper-container {
    border-radius: 0 !important;
}

.allo-gallery .wd-gallery-thumb .wd-carousel-item img,
.allo-gallery .wd-gallery-thumb .wd-carousel-item a {
    border-radius: 0 !important;
    clip-path: none !important; 
}

/* Бокові мініатюри як в Allo — лише десктоп, смартфон не чіпаємо.
   KEEP: комірка 64×72 фіксована; Стіл дає пропорційні 150×N — img НЕ розпирає слайд.
   Ізоляція: лише .wd-gallery-thumb (ліва стрічка). .wd-gallery-images (головне) НЕ чіпаємо. */
@media (min-width: 1025px) {
    :is(.woocommerce-product-gallery, .allo-gallery).thumbs-position-left {
        --wd-thumbs-width: 70px !important;
    }

    html body.single-product :is(.woocommerce-product-gallery, .allo-gallery).thumbs-position-left :is(.wd-gallery-thumb, .wd-thumbs-wrap) {
        flex: 0 0 70px !important;
        width: 70px !important;
        min-width: 70px !important;
        max-width: 70px !important;
        overflow: visible !important;
        box-sizing: content-box !important;
    }

    html body.single-product :is(.woocommerce-product-gallery, .allo-gallery).thumbs-position-left .wd-gallery-thumb :is(.wd-carousel, .wd-carousel-wrap, .wd-carousel-inner) {
        width: 70px !important;
        box-sizing: content-box !important;
    }

    /* Жорстка геометрія комірки лівої стрічки — не чіпає .wd-gallery-images. */
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item,
    html body.single-product .allo-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item {
        width: 64px !important;
        min-width: 64px !important;
        max-width: 64px !important;
        height: 72px !important;
        min-height: 72px !important;
        max-height: 72px !important;
        flex: 0 0 72px !important;
        flex-shrink: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        padding: 1px !important;
        margin-bottom: 8px !important;
        border: 1px solid #e5e5e5 !important;
        border-radius: 4px !important;
        background-color: transparent !important;
        box-shadow: none !important;
        transition: none !important;
        animation: none !important;
    }

    html body.single-product .woocommerce-product-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item.wd-thumb-active,
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item:hover,
    html body.single-product .allo-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item.wd-thumb-active,
    html body.single-product .allo-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item:hover {
        border: 1px solid #2563eb !important;
    }

    html body.single-product .woocommerce-product-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item > :is(a, div),
    html body.single-product .allo-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item > :is(a, div) {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    /* Легкі 150px зі Столу: contain у фіксованій комірці. НЕ для .wd-gallery-images. */
    html body.single-product .woocommerce-product-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item img,
    html body.single-product .allo-gallery.thumbs-position-left .wd-gallery-thumb .wd-carousel-item img {
        width: auto !important;
        height: auto !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;
        display: block !important;
        margin: auto !important;
        padding: 0 !important;
        aspect-ratio: auto !important;
        flex-shrink: 1 !important;
        mix-blend-mode: darken !important;
        transform: none !important;
    }
}

@media (max-width: 1024px) {
    html body.single-product .wd-gallery-thumb .wd-carousel-item img,
    html body.single-product .wd-gallery-thumbnails .wd-carousel-item img {
        width: 100% !important;
        height: auto !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 100% !important;
        max-height: none !important;
    }
}

.allo-gallery .product-labels,
.allo-gallery .wd-labels {
    top: 15px !important;    
    right: 15px !important;  
    left: auto !important;   
    z-index: 100 !important;
}

.allo-gallery .product-labels .onsale,
.allo-gallery .wd-labels .onsale,
.woocommerce-product-gallery .onsale {
    background-color: #E62900 !important; 
    color: #ffffff !important;               
    min-width: 30px !important;      
    height: 25px !important;        
    padding: 0 8px !important;      
    border-radius: 15px !important; 
    font-size: 14px !important;     
    font-weight: 600 !important;    
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

/* ==========================================================================
   17. МОБІЛЬНА АДАПТАЦІЯ ГАЛЕРЕЇ (СМАРТФОНИ)
   ========================================================================== */
@media (max-width: 768px) {
    .allo-gallery .wd-btn-arrow,
    .allo-gallery .wd-nav-arrows,
    .allo-gallery .wd-thumb-nav,
    .allo-gallery .swiper-button-next,
    .allo-gallery .swiper-button-prev,
    .allo-gallery .wrap-nav-arrows {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        height: 0 !important;
        width: 0 !important;
        pointer-events: none !important;
    }

    .allo-gallery .wd-gallery-thumbnails {
        padding-top: 15px !important; 
        padding-bottom: 0 !important;
    }

    .allo-gallery .wd-gallery-thumb .wd-carousel {
        height: 100% !important;
        margin-top: 0 !important;
    }

    .allo-gallery .wd-carousel-item,
    .allo-gallery .wd-gallery-thumb .wd-carousel-item,
    .allo-gallery .wd-gallery-thumbnails .wd-carousel-item {
        margin-bottom: 0 !important;
    }
}

/* ==========================================================================
   18. ПЕРЕМИКАЧ РАМОК МІНІАТЮР (ТІЛЬКИ НА МОБІЛЬНОМУ)
   ========================================================================== */
@media (max-width: 768px) {
    .allo-gallery .wd-gallery-thumb .wd-carousel-item {
        border-color: transparent !important; 
        box-shadow: none !important; 
    }

    .allo-gallery .wd-gallery-thumb .wd-carousel-item.wd-thumb-active {
        border-color: transparent !important; 
    }
}

/* ==========================================================================
   19. ЛИПКЕ МЕНЮ ДЛЯ СМАРТФОНІВ
   ========================================================================== */
@media (max-width: 767px) {
    .mobile-sticky-tabs {
        position: sticky !important;
        top: 43px !important;
        z-index: 150 !important; 
    }
}

/* ==========================================================================
   20. ПРИХОВУВАННЯ ПЛАШОК "РОЗПРОДАНО"
   ========================================================================== */
.wd-product-labels .out-of-stock,
.wd-product-labels .sold-out,
.wd-product-labels .wd-label-out-of-stock,
.wd-product-labels .wd-label-sold-out,
.wd-product-labels [class*="out-of-stock"],
.wd-product-labels [class*="sold-out"],
.product-labels .out-of-stock,
.product-labels .sold-out,
.product-label.out-of-stock,
.product-label.sold-out,
.wd-label.wd-out-of-stock,
.wd-label.wd-sold-out,
.wd-loop-product .out-of-stock,
.wd-loop-product .sold-out,
.product-grid-item .out-of-stock,
.product-grid-item .sold-out,
[class*="wd-loop"] [class*="sold-out"],
[class*="wd-loop"] [class*="out-of-stock"],
.product-element-top .out-of-stock,
.product-element-top .sold-out {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

/* ==========================================================================
   21. ЛОГІКА ОФОРМЛЕННЯ ВІДСУТНІХ ТОВАРІВ У КАТАЛОЗІ
   ========================================================================== */
.outofstock .mta-price-container,
.out-of-stock .mta-price-container {
    display: grid !important;
    grid-template-rows: auto auto auto !important; 
    row-gap: 2px !important; 
    align-items: center !important;
    position: relative !important;
}

.outofstock .mta-price-container::after,
.out-of-stock .mta-price-container::after {
    content: "∅ Немає в наявності" !important;
    grid-row: 3 !important; 
    grid-column: 1 / span 3 !important;
    font-size: 13px !important;
    color: #000000 !important; 
    font-weight: 400 !important;
    margin: 0 !important; 
    padding: 0 !important;
    display: block !important;
    text-align: left !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

.outofstock .mta-price-container ins,
.outofstock .mta-price-container del,
.outofstock .mta-price-container .amount,
.outofstock .mta-custom-labels,
.out-of-stock .mta-price-container ins,
.out-of-stock .mta-price-container del,
.out-of-stock .mta-price-container .amount,
.out-of-stock .mta-custom-labels {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.1 !important; 
    height: auto !important;
}

.outofstock .mta-price-container .amount,
.outofstock .mta-price-container .amount *,
.outofstock .mta-price-container ins,
.outofstock .mta-price-container ins *,
.out-of-stock .mta-price-container .amount,
.out-of-stock .mta-price-container .amount *,
.out-of-stock .mta-price-container ins,
.out-of-stock .mta-price-container ins * {
    font-size: 18px !important; 
    color: #999999 !important; 
}

.outofstock .mta-price-container .price del,
.outofstock .mta-price-container .price del *,
.out-of-stock .mta-price-container .price del,
.out-of-stock .mta-price-container .price del * {
    font-size: 11px !important;
    line-height: 1 !important;
    color: #b2b2b2 !important;
}

.outofstock .mta-custom-labels *,
.outofstock .wd-label.onsale,
.out-of-stock .mta-custom-labels *,
.out-of-stock .wd-label.onsale {
    background-color: #b5b5b5 !important; 
    color: #ffffff !important;
}

/* ==========================================================================
   22. АДАПТАЦІЯ СТАТУСУ "НЕМАЄ В НАЯВНОСТІ" ДЛЯ МОБІЛЬНИХ
   ========================================================================== */
@media (max-width: 768px) {
    .product-grid-item .stock.out-of-stock,
    .wd-product .stock.out-of-stock {
        font-size: 11px !important;
        letter-spacing: -0.3px !important;
        white-space: nowrap !important;
    }
    
    .product-grid-item .stock.out-of-stock::before,
    .wd-product .stock.out-of-stock::before {
        font-size: 12px !important;
        margin-right: 3px !important;
    }

    .outofstock .mta-price-container::after,
    .out-of-stock .mta-price-container::after {
        font-size: 10.5px !important; 
        letter-spacing: -0.4px !important; 
        line-height: 1 !important;
    }
}

/* ==========================================================================
   23. СТИЛІ ПОПАПУ ВХОДУ ТА СТОРІНКИ ТОВАРУ
   ========================================================================== */
.popup-login-wrapper {
    position: relative;
    width: 100%;
}

/* ПОСИЛАННЯ "ЗАРЕЄСТРУВАТИСЬ" (ОСНОВНИЙ СИНІЙ #2563eb) */
.popup-login-wrapper .custom-goto-reg-link {
    position: absolute;
    top: 6px; 
    right: 0; 
    font-size: 14px !important;
    color: #2563eb !important; 
    text-decoration: none !important;
    font-weight: 400 !important;
    z-index: 10;
}

.popup-login-wrapper .custom-goto-reg-link:hover {
    text-decoration: underline !important;
}

.popup-login-wrapper,
.popup-login-wrapper .u-column1,
.popup-login-wrapper .col-1,
.popup-login-wrapper .woocommerce-LoginForm,
.popup-login-wrapper form {
    overflow: visible !important;
}

.popup-login-wrapper h2,
.popup-login-wrapper .u-column1 h2,
.popup-login-wrapper .woocommerce-LoginForm h2,
.popup-login-wrapper .woocommerce-LoginForm-title,
.woodmart-popup-holder .woocommerce-LoginForm-title {
    padding-top: 10px !important; 
    padding-left: 4px !important; 
    margin-top: 0 !important;
    line-height: 1.4 !important;
    overflow: visible !important;
    display: block !important;
}

.popup-login-wrapper .u-column2,
.popup-login-wrapper .col-register,
.popup-login-wrapper .woocommerce-RegistrationForm {
    display: none !important;
}

.popup-login-wrapper .u-column1,
.popup-login-wrapper .col-login,
.popup-login-wrapper .woocommerce-LoginForm {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

.popup-login-wrapper .u-columns.col2-set {
    display: block !important;
}

.mfp-content:has(.popup-login-wrapper) {
    max-width: 360px !important;
}

/* Fallback: bare .popup-login-wrapper as direct mfp child (no white WoodMart shell) */
html body .mfp-content:has(> .popup-login-wrapper),
html body .mfp-wrap.tehnix-auth-mfp .mfp-content:has(> .popup-login-wrapper) {
    background: #ffffff !important;
    background-color: #ffffff !important;
    max-width: 360px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 40px 25px 25px 25px !important;
    box-sizing: border-box !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
}

.woodmart-popup-holder {
    max-width: 360px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 40px 25px 25px 25px !important;
}

.woodmart-popup-holder .wd-social-divider span,
.woodmart-popup-holder .woodmart-social-divider span {
    text-transform: none !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: #999999 !important;
    letter-spacing: 0 !important;
}

.woodmart-popup-holder .form-row {
    margin-bottom: 15px !important;
}

html body .popup-login-wrapper .woocommerce-error {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 10px 0 15px !important;
    list-style: none !important;
    border-radius: 0 !important;
    min-height: 0 !important;
}

html body .popup-login-wrapper .woocommerce-error::before,
html body .popup-login-wrapper .woocommerce-error::after,
html body .popup-login-wrapper .woocommerce-error li::before,
html body .popup-login-wrapper .woocommerce-error li::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

html body .popup-login-wrapper .woocommerce-error li {
    color: #dc2626 !important;
    background: transparent !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.popup-login-wrapper a[class*="google"],
.popup-login-wrapper a[href*="google"],
.popup-login-wrapper .social-google,
.popup-login-wrapper .wd-social-icon.social-google,
.popup-login-wrapper .social-btn-google,
.popup-login-wrapper .wd-social-login-btn.social-google {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    color: #333333 !important;
    font-size: 18px !important; 
    font-weight: 600 !important; 
    box-shadow: none !important;
    text-shadow: none !important;
}

.popup-login-wrapper a[class*="google"] span,
.popup-login-wrapper a[class*="google"] *,
.popup-login-wrapper .social-google span,
.popup-login-wrapper .social-google * {
    color: #333333 !important;
}

.popup-login-wrapper a[class*="google"]:hover,
.popup-login-wrapper a[href*="google"]:hover,
.popup-login-wrapper .social-google:hover,
.popup-login-wrapper .wd-social-icon.social-google:hover,
.popup-login-wrapper .social-btn-google:hover {
    background: #f7f7f7 !important;
    background-color: #f7f7f7 !important;
    border-color: #cccccc !important;
    color: #000000 !important;
}

body.instock .knopka-nayavnosti,
body:has(.single_add_to_cart_button) .knopka-nayavnosti,
body:has(.in-stock) .knopka-nayavnosti {
    display: none !important;
}

body.single-product .elementor-widget-wd_single_product_stock_status .stock.out-of-stock {
    color: #000000 !important; 
    font-size: 15px !important;
    font-weight: 400 !important; 
    text-transform: none !important;
    background: none !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.single-product .elementor-widget-wd_single_product_stock_status .stock.out-of-stock::before {
    content: "∅" !important;
    font-size: 16px !important;
    color: #000000 !important; 
    margin-right: 6px !important;
    font-weight: normal !important;
    display: inline-block !important;
}

body.single-product div.product.outofstock .price,
body.single-product div.product.outofstock .price *,
body.single-product div.product.out-of-stock .price,
body.single-product div.product.out-of-stock .price *,
body.single-product div.product.outofstock .allo-style-price .amount,
body.single-product div.product.out-of-stock .allo-style-price .amount {
    color: #b5b5b5 !important; 
}

body.single-product div.product.outofstock .price del,
body.single-product div.product.outofstock .price del *,
body.single-product div.product.out-of-stock .price del,
body.single-product div.product.out-of-stock .price del * {
    font-size: 12px !important; 
    line-height: 1 !important;
}

body.single-product .elementor-widget-wd_single_product_add_to_cart .stock,
body.single-product .elementor-widget-woocommerce-product-add-to-cart .stock,
body.single-product .elementor-widget-wd_single_product_add_to_cart .stock.in-stock,
body.single-product .elementor-widget-wd_single_product_add_to_cart .stock.out-of-stock {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
}

.knopka-nayavnosti { 
    display: none !important; 
}

body:not(.logged-in) .wd-wtl-form { 
    display: none !important; 
}

body:not(.logged-in) .outofstock .knopka-nayavnosti,
body:not(.logged-in) .out-of-stock .knopka-nayavnosti,
body:not(.logged-in) .type-product.outofstock .knopka-nayavnosti,
body:not(.logged-in) .type-product.out-of-stock .knopka-nayavnosti { 
    display: inline-flex !important; 
}

body.logged-in .knopka-nayavnosti { 
    display: none !important; 
}

body.logged-in .wd-wtl-form,
body.logged-in .wd-wtl-form-fields {
    display: block !important;
    background: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

body.logged-in .wd-wtl-form h4,
body.logged-in .wd-wtl-form-fields input[type="email"],
body.logged-in .wd-wtl-form-fields label,
body.logged-in .wd-wtl-form-fields br,
body.logged-in .wd-wtl-form p:not(.wd-wtl-success):not(.wd-wtl-error):not(.wd-notice):not([class*="response"]) {
    display: none !important;
}

body.logged-in .wd-wtl-form a,
body.logged-in .wd-wtl-form button,
body.logged-in .wd-wtl-subscribe,
body.logged-in .wd-wtl-unsubscribe {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    padding: 12px 24px !important;
    border-radius: 5px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
    cursor: pointer !important;
    height: auto !important;
    width: auto !important;
    font-size: 0 !important; 
}

body.logged-in .wd-wtl-form a::before,
body.logged-in .wd-wtl-form button::before {
    content: "" !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    margin-right: 10px !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    vertical-align: middle !important;
}

/* КНОПКА "ПОВІДОМИТИ ПРО НАЯВНІСТЬ" НА СТОРІНЦІ */
body.logged-in .wd-wtl-form .wd-wtl-subscribe,
body.logged-in .wd-wtl-form.custom-not-signed a,
body.logged-in .wd-wtl-form.custom-not-signed button {
    background-color: #4B7CC9 !important; 
    color: #ffffff !important; 
    border: 1px solid #4B7CC9 !important; 
}

body.logged-in .wd-wtl-form .wd-wtl-subscribe::before,
body.logged-in .wd-wtl-form.custom-not-signed a::before,
body.logged-in .wd-wtl-form.custom-not-signed button::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'%3E%3C/path%3E%3Cpolyline points='22,6 12,13 2,6'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

body.logged-in .wd-wtl-form .wd-wtl-subscribe::after,
body.logged-in .wd-wtl-form.custom-not-signed a::after,
body.logged-in .wd-wtl-form.custom-not-signed button::after {
    content: "Повідомити про наявність" !important;
    font-size: 15px !important;
    vertical-align: middle !important;
}

body.logged-in .wd-wtl-form[data-state="signed"] .wd-wtl-subscribe,
body.logged-in .wd-wtl-form .wd-wtl-unsubscribe,
body.logged-in .wd-wtl-form.custom-signed a,
body.logged-in .wd-wtl-form.custom-signed button {
    background-color: #ffffff !important;
    color: #4B7CC9 !important;
    border: 1px solid #4B7CC9 !important;
}

body.logged-in .wd-wtl-form[data-state="signed"] .wd-wtl-subscribe::before,
body.logged-in .wd-wtl-form .wd-wtl-unsubscribe::before,
body.logged-in .wd-wtl-form.custom-signed a::before,
body.logged-in .wd-wtl-form.custom-signed button::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234B7CC9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7.5h12c1.1 0 2 .9 2 2v9.5c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V9.5c0-1.1.9-2 2-2z'%3E%3C/path%3E%3Cpolyline points='16.5,8.5 9,13.5 1.5,8.5'%3E%3C/polyline%3E%3Cline x1='17' y1='0.5' x2='23.5' y2='7'%3E%3C/line%3E%3Cline x1='23.5' y1='0.5' x2='17' y2='7'%3E%3C/line%3E%3C/svg%3E") !important;
}

body.logged-in .wd-wtl-form[data-state="signed"] .wd-wtl-unsubscribe::after,
body.logged-in .wd-wtl-form .wd-wtl-unsubscribe::after,
body.logged-in .wd-wtl-form.custom-signed a::after,
body.logged-in .wd-wtl-form.custom-signed button::after {
    content: "Не повідомляти про наявність" !important;
    font-size: 15px !important;
    vertical-align: middle !important;
}

body.logged-in .wd-wtl-form .wd-wtl-subscribe:hover,
body.logged-in .wd-wtl-form.custom-not-signed a:hover,
body.logged-in .wd-wtl-form.custom-not-signed button:hover {
    background-color: #3B69B2 !important;
    border-color: #3B69B2 !important;
}

body.logged-in .wd-wtl-form[data-state="signed"] .wd-wtl-subscribe:hover,
body.logged-in .wd-wtl-form .wd-wtl-unsubscribe:hover,
body.logged-in .wd-wtl-form.custom-signed a:hover,
body.logged-in .wd-wtl-form.custom-signed button:hover {
    background-color: #F2F3F5 !important;
}

body.logged-in .wd-wtl-success,
body.logged-in .wd-wtl-error,
body.logged-in .wd-wtl-event-response,
body.logged-in .wd-notice,
body.logged-in .wd-alert,
body.logged-in .woodmart-warning,
body.logged-in div[class*="response"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 485px !important; 
    width: 100% !important;
    padding: 10px 14px !important; 
    font-size: 13px !important; 
    margin: 12px 0 0 0 !important; 
    line-height: 1.4 !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
    height: auto !important;
}

body.logged-in .wd-wtl-success::before,
body.logged-in .wd-wtl-error::before,
body.logged-in .wd-wtl-event-response::before,
body.logged-in .wd-notice::before,
body.logged-in .wd-alert::before,
body.logged-in .woodmart-warning::before,
body.logged-in div[class*="response"]::before,
body.logged-in div[class*="response"] i,
body.logged-in div[class*="response"] svg {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
}

.wd-wtl-form { position: relative !important; }
.woodmart-waitlist-wrap, .wd-waitlist-wrap {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

body .wd-loader-overlay,
body .wd-wtl-form .loading,
body .wd-wtl-form [class*="loading"],
body .wd-wtl-form .loading::after,
body .wd-wtl-form button.loading::after,
body .wd-wtl-form a.loading::after {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    content: none !important;
    animation: none !important;
    background: none !important;
}

body.single-product .knopka-nayavnosti,
body.single-product .wd-wtl-subscribe,
body.single-product .wd-wtl-form a,
body.single-product .wd-wtl-form button {
    white-space: nowrap !important; 
    flex-shrink: 0 !important; 
    min-width: max-content !important; 
    width: auto !important;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart .elementor-add-to-cart,
body.single-product .wd-product-actions {
    flex-wrap: wrap !important;
}

body.single-product .elementor-widget-wd_single_product_stock_status .stock.in-stock,
body.single-product .stock.in-stock,
.wd-stock-status .in-stock,
.elementor-widget-wc-stock .in-stock {
    color: #333333 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    background: none !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    letter-spacing: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.single-product .elementor-widget-wd_single_product_stock_status .stock.in-stock::before,
body.single-product .stock.in-stock::before,
.wd-stock-status .in-stock::before,
.elementor-widget-wc-stock .in-stock::before {
    content: "✓" !important;
    font-size: 16px !important;
    color: #00a046 !important;
    margin-right: 6px !important;
    font-weight: 800 !important;
    display: inline-block !important;
}

.wd-sticky-btn .stock,
.wd-sticky-btn-wrapper .stock,
.woodmart-sticky-btn-wrapper .stock,
.wd-sticky-btn .in-stock,
.wd-sticky-btn-wrapper .in-stock,
.woodmart-sticky-btn-wrapper .in-stock,
[class*="sticky"] .stock,
[class*="sticky"] .in-stock {
    display: none !important;
}

/* ==========================================================================
   24. ФІКС ДЛЯ МІНІ-КАРТОК (ПРИХОВУВАННЯ МЕНЮ ТА ЧЕРВОНА ЗНИЖКА)
   ========================================================================== */
body .my-promo-mini-block .wd-buttons,
body .my-promo-mini-block .woodmart-buttons,
body .my-promo-mini-block .product-actions,
body .my-promo-mini-block .wd-product-actions {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

body .my-promo-mini-block .product-labels .onsale,
body .my-promo-mini-block .wd-labels .onsale,
body .my-promo-mini-block .wd-label.onsale,
body .my-promo-mini-block .product-label.onsale,
body .my-promo-mini-block .wd-label[class*="onsale"] {
    background-color: #E62900 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   25. ПЕРЕМИКАЧ ВИДИМОСТІ: КОШИК vs ПОПАП В КАТАЛОЗІ
   ========================================================================== */
.main-page-wrapper .mta-custom-popup,
.site-content .mta-custom-popup,
.main-page-wrapper .mta-price-container > *:has(.mta-custom-popup),
.site-content .mta-price-container > *:has(.mta-custom-popup) {
    display: none !important; 
}

.main-page-wrapper .outofstock .mta-custom-popup,
.site-content .outofstock .mta-custom-popup,
.main-page-wrapper .out-of-stock .mta-custom-popup,
.site-content .out-of-stock .mta-custom-popup,
.main-page-wrapper .outofstock .mta-price-container > *:has(.mta-custom-popup),
.site-content .outofstock .mta-price-container > *:has(.mta-custom-popup) {
    display: flex !important;
    grid-column: 4 !important;
    grid-row: 1 / span 3 !important;
    justify-self: end !important;
    align-self: center !important;
    margin: 0 !important;
}

.main-page-wrapper .outofstock .wd-add-btn-wrapp,
.site-content .outofstock .wd-add-btn-wrapp,
.main-page-wrapper .out-of-stock .wd-add-btn-wrapp,
.site-content .out-of-stock .wd-add-btn-wrapp {
    display: none !important;
}

/* КНОПКА СИНЬОГО КВАДРАТА В КАТАЛОЗІ */
.main-page-wrapper .mta-custom-popup,
.site-content .mta-custom-popup {
    width: 43px !important;
    min-width: 43px !important;
    max-width: 43px !important;
    height: 43px !important;
    padding: 0 !important;
    border-radius: 6px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    background-color: #4B7CC9 !important; 
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'%3E%3C/path%3E%3Cpolyline points='22,6 12,13 2,6'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 20px !important;
    color: transparent !important;
    font-size: 0 !important;
}

.main-page-wrapper .mta-custom-popup span,
.site-content .mta-custom-popup span,
.main-page-wrapper .mta-custom-popup::before,
.site-content .mta-custom-popup::before {
    display: none !important;
    opacity: 0 !important;
}

.main-page-wrapper .mta-custom-popup.is-subscribed,
.site-content .mta-custom-popup.is-subscribed {
    background-color: #F2F3F5 !important; 
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234B7CC9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7.5h12c1.1 0 2 .9 2 2v9.5c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V9.5c0-1.1.9-2 2-2z'%3E%3C/path%3E%3Cpolyline points='16.5,8.5 9,13.5 1.5,8.5'%3E%3C/polyline%3E%3Cline x1='17' y1='0.5' x2='23.5' y2='7'%3E%3C/line%3E%3Cline x1='23.5' y1='0.5' x2='17' y2='7'%3E%3C/line%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 22px !important;
}

.main-page-wrapper .mta-custom-popup,
.site-content .mta-custom-popup {
    transition: background-color 0.2s ease-in-out !important;
}

.main-page-wrapper .mta-custom-popup:not(.is-subscribed):hover,
.site-content .mta-custom-popup:not(.is-subscribed):hover {
    background-color: #3B69B2 !important;
}

.main-page-wrapper .mta-custom-popup.is-subscribed:hover,
.site-content .mta-custom-popup.is-subscribed:hover {
    background-color: #E0E2E6 !important;
}

/* ==========================================================================
   СТИЛІ ДЛЯ СПИСКУ ОЧІКУВАННЯ В ОСОБИСТОМУ КАБІНЕТІ
   ========================================================================== */
.woocommerce-MyAccount-content table.shop_table td.product-thumbnail {
    width: 90px !important;
    min-width: 90px !important;
    text-align: center !important;
}

.woocommerce-MyAccount-content table.shop_table td.product-thumbnail img {
    width: 70px !important; 
    height: 70px !important; 
    max-width: 70px !important; 
    object-fit: contain !important; 
    border-radius: 8px; 
    background-color: #ffffff; 
}

.woocommerce-MyAccount-content table.shop_table td.product-name a {
    font-size: 14px !important; 
    line-height: 1.4 !important; 
    font-weight: 500 !important; 
    color: #333333 !important; 
    display: inline-block !important; 
    max-width: 450px !important; 
}

.woocommerce-MyAccount-content table.shop_table td.product-name a:hover {
    color: #2563eb !important; 
}

@media (max-width: 768px) {
    .woocommerce-MyAccount-content table.shop_table td.product-name {
        padding-right: 35px !important; 
        position: relative !important;
    }
    
    .woocommerce-MyAccount-content table.shop_table td.product-name a {
        font-size: 13px !important; 
        max-width: 100% !important; 
    }
}

/* ==========================================================================
   КОМПЛЕКСНИЙ БЛОК ВАРІАЦІЙ
   ========================================================================== */
.mta-only-color .wd-linked-variation:nth-child(n+2),
.mta-only-color table.variations tbody tr:nth-child(n+2) {
    display: none !important;
}

.mta-only-memory .wd-linked-variation:nth-child(1),
.mta-only-memory table.variations tbody tr:nth-child(1) {
    display: none !important;
}

.mta-only-color .wd-linked-variation,
.mta-only-memory .wd-linked-variation,
.mta-only-color table.variations tbody tr,
.mta-only-memory table.variations tbody tr {
    margin-bottom: 0 !important;
    border: none !important;
}

body.single-product .mta-only-color .wd-swatches-product,
body.single-product .mta-only-color .wd-swatches-wrap,
body.single-product .mta-only-memory .wd-swatches-product,
body.single-product .mta-only-memory .wd-swatches-wrap,
body.single-product table.variations .wd-swatches-product,
body.single-product table.variations .wd-swatches-wrap,
body.single-product .wd-linked-variation .wd-swatches-product,
body.single-product .wd-linked-variation .wd-swatches-wrap {
    justify-content: flex-start !important;
}

.allo-attr-box:not(:has(.wd-linked-variation)):not(:has(table.variations)):not(:has(.variations_form)) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.wd-swatches-product,
.wd-swatches-grid,
.wd-swatches-wrap {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important; 
    gap: 10px !important; 
    align-items: center !important;
    width: 100% !important;
}

.wd-swatch {
    margin: 0 !important; 
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.wd-swatch.wd-text {
    border: 1px solid #e5e5e5 !important;
    border-radius: 4px !important;
    padding: 6px 14px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
    background-color: #fff !important;
    min-width: 60px !important;
    box-shadow: none !important;
    text-decoration: none !important;
    transition: 0.2s ease !important;
}
.wd-swatch.wd-text:hover { border-color: #999 !important; }
.wd-swatch.wd-text.wd-active { border-color: #2563eb !important; color: #2563eb !important; }
.wd-swatch.wd-text:after, .wd-swatch.wd-text::after { display: none !important; content: none !important; }

.wd-swatch.wd-bg {
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    padding: 3px !important;
    background-clip: content-box !important; 
    border: 1px solid #e5e5e5 !important;
    box-shadow: none !important;
}
.wd-swatch.wd-bg.wd-active { border-color: #333 !important; }

.wd-swatch .wd-swatch-bg {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
}

body .wd-swatch.wd-bg[style*="ffffff" i],
body .wd-swatch.wd-bg[style*="#fff" i],
body .wd-swatch.wd-bg[style*="255, 255, 255" i],
body .wd-swatch.wd-bg[style*="255,255,255" i],
body .wd-swatch.wd-bg[style*="white" i],
body .wd-swatch[data-color*="#fff" i],
body .wd-swatch[data-color*="ffffff" i],
body .wd-swatch .wd-swatch-bg[style*="ffffff" i],
body .wd-swatch .wd-swatch-bg[style*="#fff" i],
body .wd-swatch .wd-swatch-bg[style*="255, 255, 255" i],
body .wd-swatch .wd-swatch-bg[style*="255,255,255" i],
body .wd-swatch .wd-swatch-bg[style*="white" i],
body .wd-swatch .wd-swatch-bg[data-bg*="ffffff" i],
body .wd-swatch .wd-swatch-bg[data-bg*="#fff" i] {
    background-color: #f8f9fa !important;
    box-shadow: inset 0 0 0 1px #cbd5e1 !important;
}

body .my-promo-mini-block .custom-linked-colors-container,
body .my-promo-mini-block .wd-swatches-product,
body .my-promo-mini-block .wd-swatches-grid {
    display: none !important;
}

/* ==========================================================================
   КНОПКИ ТОВАРУ ТА КОШИКА
   ========================================================================== */
body.single-product form.cart,
body.single-product .elementor-widget-woocommerce-product-add-to-cart form.cart {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    align-items: stretch !important;
    width: 100% !important;
}

body.single-product form.cart .quantity {
    display: none !important;
}

.allo-btn-style .single_add_to_cart_button,
.allo-btn-style .wd-buy-now-btn {
    flex: 1 1 50% !important; 
    height: 48px !important;
    border-radius: 4px !important;
    padding: 0 15px !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.allo-btn-style .single_add_to_cart_button {
    background-color: #E62900 !important;
    border: 1px solid #E62900 !important;
    color: #ffffff !important;
    transition: all 0.2s ease-in-out !important;
}

.allo-btn-style .wd-buy-now-btn {
    background-color: #ffffff !important;
    border: 1px solid #E62900 !important;
    color: #E62900 !important;
    transition: all 0.2s ease-in-out !important;
}

.allo-btn-style .single_add_to_cart_button:hover {
    background-color: #FC6645 !important;
    border-color: #FC6645 !important;
    box-shadow: 0 2px 10px rgba(230, 41, 0, 0.35) !important;
    transform: translateY(-2px) !important;
}

.allo-btn-style .single_add_to_cart_button:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 6px rgba(230, 41, 0, 0.2) !important;
}

.allo-btn-style .wd-buy-now-btn:hover {
    background-color: #FFF0F1 !important; 
    border-color: #FC6645 !important; 
    color: #FC6645 !important; 
    box-shadow: 0 2px 10px rgba(230, 41, 0, 0.18) !important; 
    transform: translateY(-2px) !important; 
}

.allo-btn-style .wd-buy-now-btn:active {
    transform: translateY(0) !important; 
    box-shadow: 0 2px 6px rgba(230, 41, 0, 0.1) !important;
}

body.single-product .single_add_to_cart_button.added,
body.product-in-cart .single_add_to_cart_button {
    background-color: #FF7A8A !important;
    border-color: #FF7A8A !important;
    color: #ffffff !important;
}

.single_add_to_cart_button .check-circle,
body.single-product .single_add_to_cart_button.added .check-circle,
body.product-in-cart .single_add_to_cart_button .check-circle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    margin-right: 8px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
    transform: translateY(-1px) !important;
}

body.single-product .single_add_to_cart_button.added:hover,
body.product-in-cart .single_add_to_cart_button:hover {
    background-color: #ff6075 !important;
    border-color: #ff6075 !important;
    box-shadow: 0 2px 10px rgba(255, 122, 138, 0.4) !important;
}

body.single-product:not(.product-in-cart) .single_add_to_cart_button:not(.added)::before {
    content: "" !important;
    display: inline-block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
    position: relative !important;
    font-size: 0 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'%3E%3C/circle%3E%3Ccircle cx='20' cy='21' r='1'%3E%3C/circle%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'%3E%3C/path%3E%3C/svg%3E") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    transform: translateY(-2px) !important;
}

.single-product .instock .knopka-nayavnosti,
.single-product .type-product.instock .knopka-nayavnosti,
.single-product .instock .mta-custom-popup,
.single-product .type-product.instock .mta-custom-popup,
.single-product .instock .wd-waitlist-btn,
.single-product .instock .wd-subscribe-btn,
.single-product .instock .wd-wtl-form,
body.instock .knopka-nayavnosti,
body.instock .mta-custom-popup {
    display: none !important;
}

@media (max-width: 768px) {
    html body.single-product form.cart,
    html body.single-product .allo-btn-style form.cart,
    body.single-product form.cart,
    body.single-product .allo-btn-style form.cart,
    body.single-product .elementor-widget-woocommerce-product-add-to-cart form.cart {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 12px !important;
        width: 100% !important;
    }

    html body.single-product .allo-btn-style .wd-buy-now-btn,
    html body.single-product form.cart .wd-buy-now-btn,
    body.single-product .allo-btn-style .wd-buy-now-btn,
    body.single-product form.cart .wd-buy-now-btn,
    .allo-btn-style .wd-buy-now-btn {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        height: 46px !important;
        margin: 0 !important;
        position: relative !important;
        top: auto !important;
        transform: none !important;
    }

    html body.single-product .allo-btn-style .single_add_to_cart_button,
    html body.single-product form.cart .single_add_to_cart_button,
    body.single-product .allo-btn-style .single_add_to_cart_button {
        width: 100% !important;
        flex: 0 0 auto !important;
        height: 46px !important;
        margin: 0 !important;
        position: relative !important;
        top: auto !important;
        transform: none !important;
    }
}

body a.scrollToTop,
body .scrollToTop,
body .wd-back-btn,
body .wd-sidebar-opener,
body .wd-sticky-add-to-cart,
body .wd-sticky-btn-wrapper,
body .wd-sticky-btn,
body .wd-floating-btn,
body .woodmart-floating-btn,
body .wd-sticky-social,
body .woodmart-sticky-social,
body .wd-sticky-action-btn,
body [class*="wd-floating-"],
body [class*="wd-sticky-action"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
    z-index: -9999 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: none !important;
    background: transparent !important;
}

@media (max-width: 767px) {
    body .elementor-element.allo-sticky-bar,
    body .e-con.allo-sticky-bar {
        bottom: 60px !important; 
    }
}

body.single-product .allo-sticky-bar form.cart .wd-buy-now-btn,
body.single-product .allo-sticky-bar form.cart .woodmart-buy-now-btn,
body .allo-sticky-bar .wd-buy-now-btn,
body .allo-sticky-bar .woodmart-buy-now-btn {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    z-index: -999 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ==========================================================================
   БАНЕР-БІГУЧИЙ РЯДОК
   ========================================================================== */
.top-marquee-wrapper {
    width: 100%;
    overflow: hidden !important;
    white-space: nowrap !important;
    background-color: #cc0000 !important;
    padding: 6px 0 !important;
    box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.2);
}

.top-marquee-text {
    display: inline-block !important;
    white-space: nowrap !important;
    animation: topMarqueeAnimation 30s linear infinite !important;
    will-change: transform;
}

.marquee-item {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    letter-spacing: 0.6px !important;
    padding: 0 120px !important;
    display: inline-block !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

@keyframes topMarqueeAnimation {
    0% { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-50%, 0, 0); }
}

.top-marquee-wrapper:hover .top-marquee-text {
    animation-play-state: paused !important;
}

.single_add_to_cart_button .wd-cart-icon,
.single_add_to_cart_button > i,
.single_add_to_cart_button > svg {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

body.single-product .single_add_to_cart_button::before,
.allo-sticky-bar .single_add_to_cart_button::before {
    border-radius: 0 !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    mask: none !important;
    -webkit-mask: none !important;
    background-clip: border-box !important;
    overflow: visible !important;
}

/* ==========================================================================
   RICH CONTENT ВІД ЮГ-КОНТРАКТ
   ========================================================================== */
.yug-b2b-content { 
    width: 100%; 
    background: transparent !important; 
    font-family: Roboto, sans-serif; 
    overflow: hidden; 
}
.yug-b2b-content * { box-sizing: border-box; }

.yug-b2b-content .bootstrap-style { 
    max-width: 1110px; 
    margin: 0 auto; 
    width: 100%; 
    background-color: transparent !important;
}

.yug-b2b-content .section {
    position: relative;
    background-size: cover !important;
    background-position: center !important; 
    background-repeat: no-repeat !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    margin: 0 auto !important;
    max-width: 1110px;
    background-color: #040404; 
    padding: 40px 50px !important; 
    min-height: 461px; 
    border: none !important;
}
.yug-b2b-content .section.vert01 { min-height: 500px; }

@media (min-width: 992px) {
    .yug-b2b-content .section { 
        padding: 50px 80px !important; 
    }
    .yug-b2b-content .section.vert01 { min-height: 809px; }
}

.yug-b2b-content .row { 
    display: flex; 
    flex-wrap: wrap; 
    margin-left: -15px; 
    margin-right: -15px; 
    width: calc(100% + 30px);
}
.yug-b2b-content [class*="col-"] { 
    position: relative; 
    width: 100%; 
    padding-right: 15px; 
    padding-left: 15px; 
}
.yug-b2b-content .col-12 { flex: 0 0 100%; max-width: 100%; }
.yug-b2b-content .col-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
.yug-b2b-content .col-6 { flex: 0 0 50%; max-width: 50%; }

@media (min-width: 992px) {
    .yug-b2b-content .col-lg-12 { flex: 0 0 100%; max-width: 100%; }
    .yug-b2b-content .col-lg-10 { flex: 0 0 83.333333%; max-width: 83.333333%; margin: 0 auto; }
    .yug-b2b-content .col-lg-6 { flex: 0 0 50%; max-width: 50%; }
    .yug-b2b-content .col-lg-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
}
@media (min-width: 1200px) {
    .yug-b2b-content .col-xl-5 { flex: 0 0 41.666667%; max-width: 41.666667%; }
    .yug-b2b-content .col-xl-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
}

.yug-b2b-content .pull-right { 
    margin-left: auto !important; 
    margin-top: 60px !important; 
}
.yug-b2b-content .text-center { text-align: center !important; }

.yug-b2b-content .js-start { 
    justify-content: flex-start !important; 
    padding-top: 30px !important; 
}
.yug-b2b-content .js-end { 
    justify-content: flex-end !important; 
    padding-bottom: 30px !important; 
}
.yug-b2b-content .js-center { 
    justify-content: center !important; 
    align-items: center !important; 
}

.yug-b2b-content .section *, .yug-b2b-content .dark * { color: #fff !important; }
.yug-b2b-content .title {
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.2;
    text-transform: uppercase;
    text-shadow: 0 2px 4px rgba(0,0,0,0.8);
}
.yug-b2b-content .title.f40 { font-size: clamp(24px, 4vw, 40px); }
.yug-b2b-content .title.f30 { font-size: clamp(20px, 3vw, 30px); }
.yug-b2b-content .text {
    font-size: 16px;
    line-height: 1.5;
    text-shadow: 0 2px 4px rgba(0,0,0,0.8);
}

.yug-b2b-content .mb-0 { margin-bottom: 0 !important; }
.yug-b2b-content .mb-6 { margin-bottom: 24px !important; display: block; width: 100%; }
.yug-b2b-content .mb-12 { margin-bottom: 48px !important; display: block; width: 100%; }

.yug-b2b-content img { max-width: 100%; height: auto; box-shadow: none !important; }

.yug-b2b-content ul.type-none {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.yug-b2b-content ul.type-none li {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}
.yug-b2b-content ul.type-none li::before { display: none !important; }

.product-video-container {
    max-width: 1110px !important;
    margin: 20px auto 0 auto !important; 
    display: block;
}

@media (min-width: 768px) {
    .yug-b2b-content .hidden-xs { display: flex !important; }
    .yug-b2b-content .hidden-xs:not(.section) { display: block !important; }
    .yug-b2b-content .hidden-sm { display: none !important; }
    .yug-b2b-content .visible-xs, .yug-b2b-content .visible-sm { display: none !important; }
}

@media (max-width: 767px) {
    .yug-b2b-content .pull-right { margin-top: 0 !important; } 
    
    .yug-b2b-content .section { 
        padding: 10px 15px !important; 
        width: 100% !important; 
        height: auto !important; 
        min-height: unset !important; 
        max-height: unset !important; 
        aspect-ratio: 8 / 5 !important; 
        background-size: 100% 100% !important; 
        background-position: center !important; 
        background-color: transparent !important; 
        overflow: hidden !important; 
    }

    .yug-b2b-content .section.vert,
    .yug-b2b-content .section.vert01 {
        aspect-ratio: 4 / 3 !important;
    }

    .yug-b2b-content .section[style*="7_mob"] {
        aspect-ratio: 5 / 1 !important; 
    }

    .yug-b2b-content .section[style*="20_40_mob"] {
        aspect-ratio: 1 / 1 !important; 
    }

    .yug-b2b-content .js-start { justify-content: flex-start !important; padding-top: 5px !important; }
    .yug-b2b-content .js-end { justify-content: flex-end !important; padding-bottom: 0px !important; }
    .yug-b2b-content .js-center { justify-content: center !important; padding-top: 5px !important; padding-bottom: 5px !important; }
    
    .yug-b2b-content .title.f40 { font-size: 16px !important; margin-bottom: 0 !important; line-height: 1.15 !important; }
    .yug-b2b-content .title.f30 { font-size: 14px !important; margin-bottom: 0 !important; line-height: 1.15 !important; }
    
    .yug-b2b-content .text { font-size: 12px !important; line-height: 1.25 !important; margin-top: 2px !important; margin-bottom: 0 !important; }
    
    .yug-b2b-content .mb-6 { margin-bottom: 0 !important; display: block; width: 100%; }
    .yug-b2b-content .mb-12 { margin-bottom: 0 !important; display: block; width: 100%; }
    
    .yug-b2b-content p, 
    .yug-b2b-content [class*="col-"] { margin-bottom: 4px !important; }
    .yug-b2b-content .row { row-gap: 0 !important; margin-bottom: 0 !important; }
    .yug-b2b-content ul.type-none { gap: 4px !important; margin-bottom: 0 !important; }
    
    .yug-b2b-content .section img { max-width: 50% !important; margin: 0 auto; display: block; }

    .yug-b2b-content .hidden-xs, .yug-b2b-content .hidden-sm { display: none !important; }
    .yug-b2b-content .visible-xs { display: flex !important; }
    .yug-b2b-content .visible-xs:not(.section) { display: block !important; }
}

/* ==========================================================================
   1-3. БАЗОВА СТРУКТУРА, ЧЕКБОКСИ ТА ЛІЧИЛЬНИКИ (БЕЗ ДУБЛЮВАННЯ ДУЖОК)
   ========================================================================== */

/* 1. Головний контейнер пункту фільтра */
body .wpc-filters-main-wrap .wpc-term-item-content-wrapper {
    display: block !important;
    position: relative !important;
    padding-left: 26px !important;
    padding-right: 0 !important; /* <--- Вбиваємо невидимий відступ справа */
    margin-right: 0 !important;
    cursor: pointer !important;
}

/* 2. Позиціонування чекбоксів та радіокнопок */
body .wpc-filters-main-wrap input[type="checkbox"],
body .wpc-filters-main-wrap input[type="radio"] {
    position: absolute !important;
    left: 0 !important;
    margin: 0 !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    border: 1.5px solid #dcdfe6 !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    z-index: 2 !important;
    transition: border-color 0.15s ease, background-color 0.15s ease !important;
}

/* Висота для комп'ютерів та ноутбуків (ПК) */
@media (min-width: 769px) {
    body .wpc-filters-main-wrap input[type="checkbox"],
    body .wpc-filters-main-wrap input[type="radio"] {
        top: 2px !important; /* Налаштування висоти для ПК */
    }
}

/* Висота для смартфонів (Мобільні пристрої) */
@media (max-width: 768px) {
    body .wpc-filters-main-wrap input[type="checkbox"],
    body .wpc-filters-main-wrap input[type="radio"] {
        top: 3px !important; /* Налаштування висоти для Смартфонів */
    }
}

body .wpc-filters-main-wrap input[type="checkbox"] { border-radius: 4px !important; }
body .wpc-filters-main-wrap input[type="radio"] { border-radius: 50% !important; }

body .wpc-filters-main-wrap .wpc-term-item:hover input { border-color: #e62900 !important; }

body .wpc-filters-main-wrap input[type="checkbox"]:checked {
    background-color: #e62900 !important;
    border-color: #e62900 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5L6.5 12L13 4.5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
}

body .wpc-filters-main-wrap input[type="radio"]:checked {
    background-color: #ffffff !important;
    border: 5px solid #e62900 !important;
}

body .wpc-filters-main-wrap input::after { display: none !important; }

/* 3. Текст назви */
body .wpc-filters-main-wrap .wpc-term-item label,
body .wpc-filters-main-wrap .wpc-term-item a.wpc-filter-link,
body .wpc-filters-main-wrap .wpc-term-name {
    display: inline !important;
    max-width: 100% !important; /* <--- Знімаємо обмеження ширини від теми */
    width: auto !important;
    font-family: 'Rubik', sans-serif !important; 
    font-size: 14px !important; 
    line-height: 1.35 !important;
    color: #4b5563 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    white-space: normal !important;
    word-break: normal !important; /* Забороняємо рвати слова на частини */
}

/* 4. Лічильник (Без зайвих проміжків у дужках) */
body .wpc-filters-main-wrap .wpc-term-count,
body .wpc-filters-main-wrap .wpc-term-count *,
body .wpc-filters-main-wrap .wpc-term-count-brackets-open,
body .wpc-filters-main-wrap .wpc-term-count-brackets-close {
    display: inline !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 13px !important; 
    color: #999999 !important; 
    font-weight: 400 !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    opacity: 1 !important;
    filter: none !important;
    position: relative !important;
    top: -0.7px !important;
}

/* Відступ від тексту тільки перед відкриваючою дужкою */
body .wpc-filters-main-wrap .wpc-term-count-brackets-open {
    margin-left: 6px !important;
    margin-right: 0px !important;
}

/* Підтягуємо закриваючу дужку впритул до цифри */
body .wpc-filters-main-wrap .wpc-term-count-brackets-close {
    margin-left: 0px !important;
}

/* Прибираємо штучно згенеровані дужки */
body .wpc-filters-main-wrap .wpc-term-count::before,
body .wpc-filters-main-wrap .wpc-term-count::after {
    display: none !important;
    content: none !important;
}

/* Приховуємо лише логотипи брендів */
body .wpc-filters-main-wrap .wpc-term-image-wrapper {
    display: none !important;
}

/* ==========================================================================
   4. КОЛЬОРОВІ СТАНИ (ХОВЕР ТА АКТИВНІ ПУНКТИ)
   ========================================================================== */

/* Стан тексту при наведенні курсора */
body .wpc-filters-main-wrap .wpc-term-item:hover label,
body .wpc-filters-main-wrap .wpc-term-item:hover a.wpc-filter-link,
body .wpc-filters-main-wrap .wpc-term-item:hover .wpc-term-name {
    color: #e62900 !important;
    transition: color 0.15s ease-in-out;
}

/* Вибраний активний фільтр */
body .wpc-filters-main-wrap .wpc-term-item.wpc-term-selected label,
body .wpc-filters-main-wrap .wpc-term-item.wpc-term-selected a.wpc-filter-link,
body .wpc-filters-main-wrap .wpc-term-item.wpc-term-selected .wpc-term-name,
body .wpc-filters-main-wrap .wpc-term-item input:checked ~ label,
body .wpc-filters-main-wrap .wpc-term-item input:checked ~ label .wpc-term-name {
    color: #e62900 !important;
    font-weight: 500 !important;
}

/* ==========================================================================
   5. ПОЛЕ ПОШУКУ (ЛУПА)
   ========================================================================== */

/* Поле введення */
body .wpc-filters-main-wrap input.wpc-filter-search-field {
    font-family: 'Rubik', sans-serif !important;
    font-size: 14px !important;
    color: #212529 !important;
    font-weight: 400 !important;
    height: 38px !important;
    line-height: 38px !important;
    padding: 0 32px 0 36px !important; /* Відступи під лупу зліва та хрестик справа */
    border: 1px solid #dcdfe6 !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
}

/* Підказка (placeholder) */
body .wpc-filters-main-wrap input.wpc-filter-search-field::placeholder {
    color: #4b5563 !important;
    font-size: 14px !important;
    opacity: 1 !important;
}

/* Іконка лупи по центру */
body .wpc-filters-main-wrap .wpc-search-icon {
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    left: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Кнопка очищення поля (хрестик) по центру */
body .wpc-filters-main-wrap .wpc-search-clear {
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 8px !important;
}

/* ==========================================================================
   6. ВІДСТУПИ, ЗАГОЛОВКИ ТА ЕЛЕМЕНТИ УПРАВЛІННЯ (УНІФІКОВАНО)
   ========================================================================== */

/* Фіксований однаковий відступ для ВСІХ секцій */
body .wpc-filters-main-wrap .wpc-filters-section {
    margin-top: 0 !important;
    margin-bottom: 14px !important; /* Робимо єдину акуратну відстань для всіх */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Заголовки фільтрів: прибираємо великі літери */
body .wpc-filters-main-wrap .wpc-filter-header,
body .wpc-filters-main-wrap .widget-title.wpc-filter-title,
body .wpc-filters-main-wrap .wpc-filter-header button,
body .wpc-filters-main-wrap .wpc-wrap-icons {
    text-transform: none !important;
}

/* Примусово однакова висота, нульові відступи, колір та жирність заголовків */
body .wpc-filters-main-wrap .wpc-filter-header,
body .wpc-filters-main-wrap .widget-title.wpc-filter-title,
body .wpc-filters-main-wrap .wpc-filter-header button,
body .wpc-filters-main-wrap .wpc-filter-title {
    color: #374151 !important;
    font-weight: 600 !important; /* <--- ТУТ НАЛАШТОВУЄТЬСЯ ЖИРНІСТЬ */
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 20px !important;
    height: auto !important;
    line-height: 1.35 !important;
}

/* Відступ під заголовком з'являється ТІЛЬКИ коли фільтр розгорнуто */
body .wpc-filters-main-wrap .wpc-opened .wpc-filter-header {
    margin-bottom: 6px !important;
}

/* Відступ тексту від стрілочки */
body .wpc-filters-main-wrap .wpc-wrap-icons {
    padding-right: 14px !important;
    box-sizing: border-box !important;
}

/* Внутрішній список */
body .wpc-filters-main-wrap .wpc-filter-content,
body .wpc-filters-main-wrap .wpc-filters-ul-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 2px !important;
    padding-left: 2px !important;
    padding-bottom: 0 !important;
}

/* Відступ між чекбоксами */
body .wpc-filters-main-wrap .wpc-filters-ul-list li.wpc-term-item {
    margin-bottom: 8px !important;
    padding-right: 0 !important; /* <--- Додали це */
}

body .wpc-filters-main-wrap .wpc-filters-ul-list li.wpc-term-item:last-child {
    margin-bottom: 0 !important;
}

/* Відступ під інпутом пошуку */
body .wpc-filters-main-wrap .wpc-filter-search-wrapper {
    margin-bottom: 10px !important;
}

/* Кнопка «Показати більше / менше» */
body .wpc-filters-main-wrap .wpc-toggle-a,
body .wpc-filters-main-wrap .wpc-see-more-control,
body .wpc-filters-main-wrap .wpc-see-less-control {
    color: #2563eb !important;
    border-bottom-color: #2563eb !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 13px !important;
    margin-top: 8px !important;
    transition: color 0.15s ease, border-color 0.15s ease !important;
}

body .wpc-filters-main-wrap .wpc-toggle-a:hover,
body .wpc-filters-main-wrap .wpc-see-more-control:hover,
body .wpc-filters-main-wrap .wpc-see-less-control:hover {
    color: #1d4ed8 !important;
    border-bottom-color: #1d4ed8 !important;
}

/* ==========================================================================
   8. СТИЛІЗАЦІЯ ОБРАНИХ ФІЛЬТРІВ / ЧІПСІВ (MTA STYLE: КОМПАКТНІ)
   ========================================================================== */

/* 1. Загальний контейнер плашок */
body .wpc-filter-chips-list {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 4px !important; /* Зменшена відстань між плашками */
    margin-bottom: 20px !important;
    padding: 0 !important;
}

/* 2. Компактна плашка (Ніжно-блакитний прямокутник) */
body .wpc-filter-chips-list li.wpc-filter-chip a {
    display: flex !important;
    align-items: center !important;
    background-color: #ebf3fe !important;
    border: 1px solid #d4e5fc !important;
    border-radius: 4px !important;
    color: #1e293b !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 12px !important; /* Зменшений шрифт */
    font-weight: 400 !important;
    padding: 2px 6px !important; /* Робимо плашки мініатюрними */
    line-height: 1.2 !important;
    text-transform: none !important; /* Скасовуємо примусові великі літери */
    text-decoration: none !important;
    transition: all 0.15s ease !important;
}

/* Ховер плашки */
body .wpc-filter-chips-list li.wpc-filter-chip a:hover {
    background-color: #dbeafe !important;
    border-color: #bfdbfe !important;
    color: #0f172a !important;
}

/* 3. Зменшений хрестик закриття всередині плашки */
body .wpc-filter-chips-list li.wpc-filter-chip .wpc-chip-remove-icon {
    color: #475569 !important;
    margin-left: 4px !important;
    font-size: 12px !important; /* Пропорційно менший хрестик */
    font-weight: 500 !important;
    display: flex !important;
    align-items: center !important;
}

/* ==========================================================================
   4. Кнопка "Скинути всі" (Скидаємо стилі плашки і робимо синім текстом)
   ========================================================================== */
body .wpc-filter-chips-list li.wpc-chip-reset-all {
    width: 100% !important;
    margin-top: 10px !important;
    order: 99 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

/* Обнуляємо стилі для посилання та всіх вкладених span */
body .wpc-filter-chips-list li.wpc-chip-reset-all a,
body .wpc-filter-chips-list li.wpc-chip-reset-all .wpc-chip-content {
    display: inline-block !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #2563eb !important; /* Синій колір */
    font-family: 'Rubik', sans-serif !important;
    font-size: 13px !important;
    text-transform: none !important;
    text-decoration: none !important; /* Прибираємо стандартне підкреслення */
    box-shadow: none !important;
}

/* Робимо пунктир саме через border-bottom, як у "Показати більше" */
body .wpc-filter-chips-list li.wpc-chip-reset-all .wpc-chip-content {
    border-bottom: 1px dashed #2563eb !important;
    line-height: 1.2 !important;
    transition: color 0.15s ease, border-color 0.15s ease !important;
}

/* Ховер */
body .wpc-filter-chips-list li.wpc-chip-reset-all a:hover,
body .wpc-filter-chips-list li.wpc-chip-reset-all a:hover .wpc-chip-content {
    color: #1d4ed8 !important;
    background: transparent !important;
    background-color: transparent !important;
}

body .wpc-filter-chips-list li.wpc-chip-reset-all a:hover .wpc-chip-content {
    border-bottom-color: #1d4ed8 !important;
}

/* Ховаємо хрестик x */
body .wpc-filter-chips-list li.wpc-chip-reset-all .wpc-chip-remove-icon {
    display: none !important;
}
/* ==========================================================================
   9. СТРУКТУРА ЗГРУПОВАНИХ ПЛАШОК (MTA STYLE - ДОПОВНЕННЯ)
   ========================================================================== */

/* Скасовуємо flex для головного контейнера, оскільки тепер там блоки */
body .wpc-filter-chips-list {
    display: block !important; 
}

/* Відступ між різними групами плашок */
body .mta-chip-group {
    margin-bottom: 12px !important;
}

/* Стиль нових заголовків (Виробники, Колір) */
body .mta-chip-title {
    font-family: 'Rubik', sans-serif !important;
    font-size: 13px !important;
    color: #4b5563 !important; /* Сірий, щоб не відволікав увагу */
    margin-bottom: 6px !important;
    display: block !important;
}

/* Контейнер для самих плашок всередині групи */
body .mta-chip-items {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Захист від зміщень для li */
body .mta-chip-items li.wpc-filter-chip {
    list-style: none !important;
    margin: 0 !important;
}

/* Кнопка скидання залишається гарантовано внизу */
body .wpc-filter-chips-list li.wpc-chip-reset-all {
    display: block !important;
    width: 100% !important;
    margin-top: 10px !important;
}
/* ==========================================================================
   10. ПРИХОВУВАННЯ ТЕКСТУ ВИБРАНИХ АТРИБУТІВ У ЗГОРНУТИХ ФІЛЬТРАХ
   ========================================================================== */
body .wpc-filters-main-wrap .wpc-filter-selected-values {
    display: none !important;
}
/* ==========================================================================
   11. ПРИХОВУВАННЯ ПОРОЖНЬОГО БЛОКУ ОБРАНИХ ФІЛЬТРІВ (ОНОВЛЕНО)
   ========================================================================== */
/* Приховуємо блок обраних фільтрів, якщо в ньому немає плашок або стоїть клас порожнечі */
body .wpc-filter-chips-list.wpc-empty-chips-container,
body .wpc-filter-chips-list:not(:has(.wpc-filter-chip)),
body .wpc-custom-selected-terms:not(:has(.wpc-filter-chip)),
body .wpc-filters-widget-top-container:not(:has(.wpc-filter-chip)) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* ==========================================================================
   12. ГОЛОВНИЙ ЗАГОЛОВОК "ОБРАНІ ФІЛЬТРИ"
   ========================================================================== */
body .wpc-filter-chips-list::before {
    content: "Обрані фільтри";
    display: block !important;
    width: 100% !important;
    font-family: 'Rubik', sans-serif !important;
    font-size: 18px !important; /* Розмір підігнаний під загальну стилістику */
    font-weight: 600 !important; /* Жирність як у заголовка "Фільтри" нижче */
    color: #212529 !important;
    margin-bottom: 14px !important;
}
/* ГОЛОВНИЙ ЗАГОЛОВОК "ФІЛЬТРИ" */
body .wpc-filter-set-widget-title h2.widgettitle,
body .wpc-filter-set-widget-title .widgettitle {
    font-family: 'Rubik', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #212529 !important;
    text-transform: none !important;
    margin-top: 2px !important;
    margin-bottom: 0 !important; /* <--- ВАЖЛИВО: прибрали зовнішній відступ */
    padding: 0 0 16px 0 !important; /* Відстань від слова "Фільтри" до лінії */
    border-bottom: 1px solid #ebebeb !important;
    width: 100% !important;
    display: block !important;
    line-height: 1.2 !important;
}
/* ==========================================================================
   13. ВНУТРІШНІЙ СКРОЛ ДЛЯ ФІЛЬТРІВ (ПК: ЗАКРІПЛЕНА ШАПКА + СТРІЛОЧКИ)
   ========================================================================== */
@media (min-width: 1025px) {
    /* 1. Скасовуємо скрол для всього віджета (щоб шапка не їздила) */
    body .wpc-filters-main-wrap {
        max-height: none !important;
        overflow: visible !important;
        padding-right: 0 !important;
    }

    /* 2. Застосовуємо скрол ТІЛЬКИ до списку самих фільтрів */
    body .wpc-filters-scroll-container {
        max-height: calc(100vh - 220px) !important; 
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding-top: 16px !important;
        padding-right: 6px !important;
    }

    /* 3. Тонкий скролбар для Firefox */
    @-moz-document url-prefix() {
        body .wpc-filters-scroll-container {
            scrollbar-width: thin !important;
            scrollbar-color: #cbd5e1 transparent !important;
        }
    }

    /* 4. Стилізація скролбара для Chrome, Safari, Edge */
    body .wpc-filters-scroll-container::-webkit-scrollbar {
        width: 10px !important; /* Ширина достатня для стрілочок */
    }
    
    body .wpc-filters-scroll-container::-webkit-scrollbar-track {
        background: transparent !important;
    }
    
    /* Сам бігунок (повзунок) */
    body .wpc-filters-scroll-container::-webkit-scrollbar-thumb {
        background-color: #cbd5e1 !important;
        border-radius: 10px !important;
        border: 3px solid #ffffff !important; /* Робить бігунок візуально тонким (4px) на фоні 10px */
    }

    body .wpc-filters-scroll-container::-webkit-scrollbar-thumb:hover {
        background-color: #94a3b8 !important;
    }

    /* 5. МАЛЮЄМО СУЧАСНІ СТРІЛОЧКИ (ШЕВРОНИ) */
    body .wpc-filters-scroll-container::-webkit-scrollbar-button:single-button {
        display: block !important;
        background-color: transparent !important;
        height: 16px !important;
        background-size: 8px !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        border-radius: 4px !important;
    }

    /* Стрілочка вгору */
    body .wpc-filters-scroll-container::-webkit-scrollbar-button:single-button:vertical:decrement {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 10l4-4 4 4'/></svg>") !important;
    }

    /* Стрілочка вниз */
    body .wpc-filters-scroll-container::-webkit-scrollbar-button:single-button:vertical:increment {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M4 6l4 4 4-4'/></svg>") !important;
    }
    
    /* Ефект при наведенні на стрілочку */
    body .wpc-filters-scroll-container::-webkit-scrollbar-button:single-button:hover {
        background-color: #f1f5f9 !important;
    }
}
/* ==========================================================================
   14. СТИЛІ ДЛЯ КАСТОМНОЇ КНОПКИ ЗГОРТАННЯ (ІДЕАЛЬНА КОПІЯ 1 В 1 + ХОВЕР)
   ========================================================================== */
body .wpc-filters-main-wrap button.mta-custom-toggle {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    text-align: left !important;
    box-shadow: none !important;
    color: inherit !important;
    font-family: inherit !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    min-height: 24px !important; /* Рівняємо висоту кнопки під рідні кнопки плагіна */
    line-height: 1 !important;
    outline: none !important;
}

body .wpc-filters-main-wrap button.mta-custom-toggle .wpc-wrap-icons {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    position: relative !important;
    padding-right: 14px !important; 
    box-sizing: border-box !important;
    line-height: 1.35 !important;
}

/* БАЗОВИЙ СТАН (Згорнуто - стрілочка вниз) */
body .wpc-filters-main-wrap button.mta-custom-toggle .wpc-open-icon {
    position: absolute !important;
    right: 2.9px !important;
    top: 50% !important;
    margin-top: -6px !important;
    width: 9px !important;
    height: 9px !important;
    display: block !important;
    background: transparent !important;
    
    border-left: 1px solid #a3a8af !important;
    border-top: 1px solid #a3a8af !important;
    border-right: none !important;
    border-bottom: none !important;
    
    transform: rotate(-135deg) !important; 
    transition: transform 0.2s ease-in-out, border-color 0.2s ease-in-out !important;
}

/* АКТИВНИЙ СТАН (Розгорнуто - стрілочка вгору) */
body .wpc-filters-main-wrap .wpc-opened button.mta-custom-toggle .wpc-open-icon {
    transform: rotate(45deg) !important;
    margin-top: -2px !important;
}

/* ЕФЕКТ ПРИ НАВЕДЕННІ */
body .wpc-filters-main-wrap button.mta-custom-toggle:hover .wpc-open-icon {
    border-left-color: #e62900 !important;
    border-top-color: #e62900 !important;
}
/* ==========================================================================
   18. ПРИХОВУВАННЯ ФІЛЬТРІВ НА ПОРОЖНІХ СТОРІНКАХ ТОВАРІВ
   ========================================================================== */
/* Якщо на сторінці з'являється плашка "Товарів не знайдено" — ховаємо фільтри та верхній блок */
body:has(.woocommerce-info) .wpc-filters-main-wrap,
body:has(.woocommerce-info) .wpc-filters-widget-top-container,
body:has(.woocommerce-no-products-found) .wpc-filters-main-wrap,
body:has(.woocommerce-no-products-found) .wpc-filters-widget-top-container {
    display: none !important;
}

/* Приховуємо окремі секції, якщо вони містять текст про відсутність термів */
body .wpc-filters-section:has(.wpc-empty-terms-message),
body .wpc-filters-section:has(.wpc-filter-terms-count-0) {
    display: none !important;
}
/* Примусово піднімаємо всі можливі типи оверлеїв та спінерів */
.wpc-posts-overlay,
.wpc-filters-overlay,
.wpc-posts-spinner,
.wpc-spinner,
.wd-loader-overlay,
.wd-shop-loader,
.blockUI.blockOverlay,
.products::before,
.products::after {
    z-index: 501 !important;
    position: absolute !important;
}

/* ==========================================================================
   ПРИБИРАЄМО ЗАТЕМНЕННЯ СТОРІНКИ ПРИ ФІЛЬТРАЦІЇ
   ========================================================================== */

/* 1. Робимо фон оверлеїв повністю прозорим */
.wpc-posts-overlay,
.wpc-filters-overlay,
.wpc-filter-overlay,
.blockUI.blockOverlay,
.wd-loader-overlay {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* 2. Вимикаємо сіру підкладку теми WoodMart */
.products.wd-loading::before,
.products.loading::before,
.wd-products-element.wd-loading::before,
.wd-products-element.loading::before {
    display: none !important;
}

/* 3. Забороняємо карткам товарів ставати напівпрозорими */
.products.wd-loading,
.products.loading,
.products.wd-loading .wd-product,
.products.loading .wd-product,
.wpc-posts-loading .wd-product {
    opacity: 1 !important;
}
/* ==========================================================================
   МОБІЛЬНА ШТОРКА ФІЛЬТРІВ (ОЧИЩЕНИЙ КОД: ЦЕНТРУВАННЯ ТА ПРИТИСКАННЯ)
   ========================================================================== */
@media (max-width: 1024px) {

    /* 1. Блокуємо скрол всієї сторінки, залишаємо тільки для шторки */
    body .wd-side-hidden {
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
        height: 100vh !important;
        padding: 0 !important;
    }

    /* 2. ШАПКА: Ідеальне вертикальне центрування та фіксована висота */
    body .wd-heading {
        flex: 0 0 54px !important; /* Жорстко фіксуємо висоту рівно 54px */
        display: flex !important;
        align-items: center !important; /* Центруємо текст і кнопку по вертикалі */
        justify-content: space-between !important;
        padding: 0 20px !important; /* Відступи тільки по боках, зверху/знизу 0 */
        margin: 0 !important;
        background-color: #ffffff !important;
        border-bottom: 1px solid #ebebeb !important;
        width: 100% !important;
        box-sizing: border-box !important;
        z-index: 10 !important;
    }

    /* Ховаємо старі заголовки */
    body .wd-heading > span.title,
    body .wpc-filter-set-widget-title {
        display: none !important;
    }

    /* Текст "Фільтри" (ліворуч) */
    body .wd-heading::before {
        content: "Фільтри" !important;
        font-family: 'Rubik', sans-serif !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        color: #212529 !important;
        line-height: 1 !important;
        display: block !important;
        margin: 0 !important;
    }

    /* Кнопка "Закрити" (праворуч) */
    body .wd-heading .close-side-widget {
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
    }

    /* 3. КОНТЕНТ ФІЛЬТРІВ: Скрол та нульовий відступ від шапки */
    body .wd-side-hidden .mta-fe-filters {
        flex: 1 1 auto !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 5px 20px 0 20px !important; /* Нуль зверху і знизу */
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* 4. ВБИВАЄМО ГЛИБОКІ ВІДСТУПИ ELEMENTOR ТА ВІДЖЕТІВ */
    body .wd-side-hidden .elementor-widget-container,
    body .wd-side-hidden .widget.wpc_filters_widget,
    body .wd-side-hidden .wpc-filters-widget-top-container {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* 5. НАДІЙНИЙ ВІДСТУП ЗНИЗУ ДЛЯ СМАРТФОНІВ (ЩОБ НЕ ХОВАЛОСЯ ПІД МЕНЮ) */
    body .wd-side-hidden .wpc-filters-main-wrap {
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 65px !important; /* <--- Гарантований відступ 90px в кінці скролу */
    }
}

/* =========================================================
   КОЛІР КНОПКИ "УВІЙТИ" (ФОРМА АВТОРИЗАЦІЇ)
========================================================= */
form.woocommerce-form-login .woocommerce-form-login__submit {
    background-color: #2563eb !important;
    background-image: none !important;
    border: none !important;
    border-color: #2563eb !important;
    box-shadow: none !important;
    width: 100% !important;
    min-height: 42px !important;
    height: 42px !important;
    border-radius: 35px !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 20px !important;
    margin: 0 !important;
}

form.woocommerce-form-login .woocommerce-form-login__submit:hover {
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
    color: #ffffff !important;
}

/* Спокійний стан - резервуємо прозору лінію */
.popup-login-wrapper a.woocommerce-LostPassword,
.popup-login-wrapper a.lost_password,
.woocommerce-form-login a.woocommerce-LostPassword,
.woocommerce-form-login a.lost_password {
    color: #2563eb !important;
    text-decoration: underline !important;
    text-decoration-color: transparent !important;
    text-underline-offset: 0.15em !important;
    transition: text-decoration-color 0.2s ease !important;
}

/* При наведенні - лінія стає видимою */
.popup-login-wrapper a.woocommerce-LostPassword:hover,
.popup-login-wrapper a.lost_password:hover,
.woocommerce-form-login a.woocommerce-LostPassword:hover,
.woocommerce-form-login a.lost_password:hover {
    text-decoration: underline !important;
    text-decoration-color: #2563eb !important;
}

/* =========================================================
   /my-account/: кнопка «Реєстрація» та Google для гостей
========================================================= */
html body form.woocommerce-form-register .form-row:has(button[name="register"]),
html body form.woocommerce-form-register .form-row:has(.woocommerce-form-register__submit) {
    text-align: center !important;
}

html body form.woocommerce-form-register button[name="register"],
html body form.woocommerce-form-register button.woocommerce-form-register__submit,
html body form.woocommerce-form-register .woocommerce-form-register__submit,
html body .woocommerce-form-register__submit {
    -webkit-appearance: none !important;
    appearance: none !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    width: fit-content !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 15px auto 0 !important;
    color: #2563eb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-decoration: underline !important;
    text-decoration-line: underline !important;
    text-decoration-style: solid !important;
    text-decoration-color: transparent !important;
    text-underline-offset: 0.15em !important;
    display: block !important;
    cursor: pointer !important;
    text-align: center !important;
}

html body form.woocommerce-form-register button[name="register"]::before,
html body form.woocommerce-form-register button[name="register"]::after,
html body form.woocommerce-form-register button.woocommerce-form-register__submit::before,
html body form.woocommerce-form-register button.woocommerce-form-register__submit::after,
html body .woocommerce-form-register__submit::before,
html body .woocommerce-form-register__submit::after {
    display: none !important;
    content: none !important;
}

html body form.woocommerce-form-register button[name="register"]:hover,
html body form.woocommerce-form-register button.woocommerce-form-register__submit:hover,
html body form.woocommerce-form-register .woocommerce-form-register__submit:hover,
html body .woocommerce-form-register__submit:hover {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    color: #2563eb !important;
    font-weight: 400 !important;
    text-decoration: underline !important;
    text-decoration-line: underline !important;
    text-decoration-style: solid !important;
    text-decoration-color: #2563eb !important;
    text-underline-offset: 0.15em !important;
    cursor: pointer !important;
}

.woocommerce-account .woocommerce-form-login .wd-social-login a,
.woocommerce-form-login .wd-social-login a {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border: 1px solid #000000 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
    color: #111827 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    text-shadow: none !important;
    transition: background-color 0.2s ease !important;
}

.woocommerce-account .woocommerce-form-login .wd-social-login a span,
.woocommerce-account .woocommerce-form-login .wd-social-login a *,
.woocommerce-form-login .wd-social-login a span,
.woocommerce-form-login .wd-social-login a * {
    color: #111827 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

.woocommerce-account .woocommerce-form-login .wd-social-login a:hover,
.woocommerce-form-login .wd-social-login a:hover {
    background: #f5f5f5 !important;
    background-color: #f5f5f5 !important;
    border-color: #000000 !important;
    color: #111827 !important;
}

.tehnix-login-mode-lost form.woocommerce-form-login,
.tehnix-login-mode-lost .wd-social-login,
.tehnix-login-mode-lost .woodmart-social-login,
.tehnix-login-mode-lost .wd-social-divider,
.tehnix-login-mode-lost .woodmart-social-divider,
.tehnix-login-mode-lost .custom-goto-reg-link,
.tehnix-login-mode-success form.woocommerce-form-login,
.tehnix-login-mode-success .wd-social-login,
.tehnix-login-mode-success .woodmart-social-login,
.tehnix-login-mode-success .wd-social-divider,
.tehnix-login-mode-success .woodmart-social-divider,
.tehnix-login-mode-success .custom-goto-reg-link,
.tehnix-login-mode-register form.woocommerce-form-login,
.tehnix-login-mode-register .wd-social-login,
.tehnix-login-mode-register .woodmart-social-login,
.tehnix-login-mode-register .wd-social-divider,
.tehnix-login-mode-register .woodmart-social-divider,
.tehnix-login-mode-register .custom-goto-reg-link,
.tehnix-login-mode-register .tehnix-lost-password-panel,
.tehnix-login-mode-register .tehnix-lost-password-success,
.tehnix-lost-password-panel,
.tehnix-lost-password-success,
.tehnix-register-panel {
    display: none !important;
}

.tehnix-login-mode-lost .tehnix-lost-password-panel,
.tehnix-login-mode-success .tehnix-lost-password-success,
.tehnix-login-mode-register .tehnix-register-panel {
    display: block !important;
}

.tehnix-lost-password-hint {
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: #666666 !important;
    margin: 0 0 15px !important;
}

.tehnix-lost-password-form .form-row-wide {
    margin-bottom: 4px !important;
}

.tehnix-lost-password-form .form-row:has(.tehnix-lost-password-submit),
.tehnix-lost-password-form p.form-row:last-child {
    margin: 4px 0 0 !important;
    text-align: center !important;
}

.tehnix-lost-password-submit,
.tehnix-lost-password-form button.tehnix-lost-password-submit,
.tehnix-lost-password-form .button.tehnix-lost-password-submit {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #dc2626 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    display: inline !important;
    cursor: pointer !important;
    text-align: center !important;
}

.tehnix-lost-password-submit:hover {
    background: none !important;
    color: #b91c1c !important;
    text-decoration: underline !important;
}

.tehnix-lost-password-back-wrap {
    margin: 12px 0 0 !important;
    text-align: left !important;
}

.tehnix-back-to-login {
    color: #2563eb !important;
    font-size: 13px !important;
    text-decoration: none !important;
}

.tehnix-back-to-login:hover {
    text-decoration: underline !important;
}

.tehnix-lost-password-success-text {
    color: #16a34a !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 0 12px !important;
}

.popup-login-wrapper input[type="text"],
.popup-login-wrapper input[type="email"],
.popup-login-wrapper input[type="password"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

.popup-login-wrapper input#username,
.popup-login-wrapper input[name="username"],
.popup-login-wrapper input.input-text {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

.popup-login-wrapper input:-webkit-autofill,
.popup-login-wrapper input:-webkit-autofill:hover,
.popup-login-wrapper input:-webkit-autofill:focus {
    -webkit-text-fill-color: #111827 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    transition: background-color 5000s ease-in-out 0s;
}

.popup-login-wrapper label,
.popup-login-wrapper .woocommerce-form-row label {
    color: #1f2937 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    margin-bottom: 6px !important;
    display: inline-block !important;
}

.popup-login-wrapper form.register .woocommerce-form-row:last-of-type,
.popup-login-wrapper .tehnix-register-form .form-row-wide:last-of-type,
.popup-login-wrapper .tehnix-register-form p.form-row:has(input[type="password"]) {
    margin-bottom: 5px !important;
}

.tehnix-register-form .form-row:has(.tehnix-register-submit),
.tehnix-register-form p.form-row:last-child {
    margin: 4px 0 0 !important;
    text-align: center !important;
}

html body .popup-login-wrapper button.tehnix-register-submit,
html body .popup-login-wrapper .tehnix-register-submit,
html body .popup-login-wrapper form.register button[type="submit"],
html body .popup-login-wrapper .tehnix-register-form button.tehnix-register-submit {
    -webkit-appearance: none !important;
    appearance: none !important;
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: #2563eb !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    display: inline-block !important;
    cursor: pointer !important;
    text-align: center !important;
}

html body .popup-login-wrapper button.tehnix-register-submit:hover,
html body .popup-login-wrapper .tehnix-register-submit:hover,
html body .popup-login-wrapper form.register button[type="submit"]:hover,
html body .popup-login-wrapper .tehnix-register-form button.tehnix-register-submit:hover {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    color: #2563eb !important;
    font-weight: 400 !important;
    text-decoration: underline !important;
    text-decoration-line: underline !important;
    text-decoration-style: solid !important;
    text-underline-offset: 0.15em !important;
    cursor: pointer !important;
}

.tehnix-register-form .password-input {
    position: relative !important;
    display: block !important;
}

.tehnix-register-back-wrap {
    margin: 12px 0 0 !important;
}

.popup-login-wrapper .tehnix-back-to-login,
.popup-login-wrapper a[href*="login"] {
    display: inline-block !important;
    margin-top: 12px !important;
    margin-bottom: 20px !important;
    line-height: 1.4 !important;
}

.tehnix-login-mode-success,
.tehnix-lost-password-success {
    overflow: visible !important;
    padding-bottom: 8px !important;
}

/* =========================================================
   ФІРМОВИЙ КОЛІР КНОПКИ ЗБЕРЕЖЕННЯ НОВОГО ПАРОЛЯ
========================================================= */
form.woocommerce-ResetPassword button[type="submit"].button,
form.woocommerce-ResetPassword button.woocommerce-Button,
form.lost_reset_password button[type="submit"] {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
    color: #ffffff !important;
    transition: background-color 0.2s ease, border-color 0.2s ease !important;
}

form.woocommerce-ResetPassword button[type="submit"].button:hover,
form.woocommerce-ResetPassword button.woocommerce-Button:hover,
form.lost_reset_password button[type="submit"]:hover {
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
}

/* =========================================================
   ЄДИНИЙ ТЕМНИЙ КОЛІР ТЕКСТУ В ДАШБОРДІ КАБІНЕТУ
========================================================= */
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-content p {
    color: #111827 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.woocommerce-MyAccount-content p strong,
.woocommerce-MyAccount-content p b {
    color: #111827 !important;
    font-weight: 600 !important;
}

/* =========================================================
   СКИДАННЯ ПОДВІЙНОЇ ПІДКЛАДКИ ДЛЯ ОРИГІНАЛЬНОГО ПОПАПУ
========================================================= */
.wp-block-wd-popup-content .popup-login-wrapper,
.popup-login-wrapper {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Плавне затемнення лише коли відкрито попап авторизації, не галерея/Quick View */
html body:has(.mfp-content .popup-login-wrapper) .mfp-bg,
html body:has(.mfp-wrap .popup-login-wrapper) .mfp-bg,
html body:has(.mfp-content .popup-login-wrapper) .wd-popup-bg,
html body .mfp-bg.tehnix-auth-mfp {
    background-color: #000000 !important;
    opacity: 0 !important;
    transition: opacity 2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body:has(.mfp-content .popup-login-wrapper) .mfp-bg.mfp-ready,
html body:has(.mfp-wrap .popup-login-wrapper) .mfp-bg.mfp-ready,
html body:has(.mfp-content .popup-login-wrapper) .wd-popup-bg.mfp-ready,
html body .mfp-bg.tehnix-auth-mfp.mfp-ready {
    opacity: 0.35 !important;
    background-color: #000000 !important;
    transition: opacity 2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

html body:has(.mfp-content .popup-login-wrapper) .mfp-bg.mfp-removing,
html body:has(.mfp-wrap .popup-login-wrapper) .mfp-bg.mfp-removing,
html body:has(.mfp-content .popup-login-wrapper) .mfp-bg.mfp-ready.mfp-removing,
html body .mfp-bg.tehnix-auth-mfp.mfp-removing,
html body .mfp-bg.tehnix-auth-mfp.mfp-ready.mfp-removing {
    opacity: 0 !important;
    background-color: #000000 !important;
    transition: opacity 2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Затемнення штатного оверлею WoodMart при меню профілю */
html body .wd-close-side.wd-close-side-opened,
html body .wd-close-side.wd-opened {
    opacity: 0.35 !important;
    background-color: #000000 !important;
    visibility: visible !important;
}

/*
 * First hover: dropdown is forced visible via :hover CSS, but theme JS may not
 * add .wd-opened to .wd-close-side until a later interaction. Dim immediately
 * whenever the account widget (or its menu) is hovered.
 */
html body.logged-in:has(.wd-header-my-account:hover) .wd-close-side,
html body.logged-in:has(.wd-header-my-account:focus-within) .wd-close-side,
html body.logged-in:has(.wd-dropdown-my-account:hover) .wd-close-side {
    opacity: 0.35 !important;
    background-color: #000000 !important;
    visibility: visible !important;
    z-index: 9990 !important;
    pointer-events: none !important;
}

/* =========================================================
   АКАУНТ У ШАПЦІ: hover-меню для logged-in, без попапу входу
   Біла картка має бути однаковою на каталозі та .single-product
========================================================= */
body.logged-in .wd-tools-element.wd-header-my-account:hover .wd-dropdown-my-account,
body.logged-in .wd-header-my-account:hover .wd-dropdown-my-account,
body.logged-in .wd-header-my-account:hover .wd-dropdown,
body.logged-in .wd-header-my-account:hover .sub-menu-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: block !important;
}

/* Біла підкладка + тінь: зовнішній контейнер і внутрішня обгортка (усі сторінки) */
html body.logged-in .whb-header .wd-dropdown-my-account,
html body.logged-in .whb-header .wd-header-my-account .wd-dropdown,
html body.logged-in .whb-header .wd-header-my-account .sub-menu-dropdown,
html body.logged-in .whb-header .wd-header-my-account .wd-dropdown-inner,
.whb-header .wd-dropdown-my-account,
.whb-header .wd-header-my-account .wd-dropdown,
.whb-header .wd-header-my-account .sub-menu-dropdown,
.whb-header .wd-header-my-account .wd-dropdown-inner {
    background-color: #ffffff !important;
    background: #ffffff !important;
    background-image: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    isolation: isolate !important;
}

html body.logged-in .whb-header .wd-dropdown-my-account,
html body.logged-in .whb-header .wd-header-my-account .wd-dropdown,
html body.logged-in .whb-header .wd-header-my-account .sub-menu-dropdown,
.whb-header .wd-dropdown-my-account,
.whb-header .wd-header-my-account .wd-dropdown,
.whb-header .wd-header-my-account .sub-menu-dropdown {
    border-radius: 8px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
    z-index: 10005 !important;
    overflow: visible !important;
}

/* Пункти меню не повинні бути прозорими / сірими поверх сторінки */
html body.logged-in .whb-header .wd-header-my-account .wd-dropdown a,
html body.logged-in .whb-header .wd-dropdown-my-account a,
html body.logged-in .whb-header .wd-header-my-account .sub-menu-dropdown a,
.whb-header .wd-header-my-account .wd-dropdown a,
.whb-header .wd-dropdown-my-account a,
.whb-header .wd-header-my-account .sub-menu-dropdown a {
    background-color: transparent !important;
    opacity: 1 !important;
    color: #242424 !important;
}

/* Невидимий міст між іконкою та меню */
body.logged-in .wd-dropdown-my-account::before,
body.logged-in .wd-header-my-account .wd-dropdown::before,
body.logged-in .wd-header-my-account .sub-menu-dropdown::before {
    content: "" !important;
    position: absolute !important;
    top: -15px !important;
    left: 0 !important;
    right: 0 !important;
    height: 15px !important;
    display: block !important;
    background: transparent !important;
    pointer-events: auto !important;
}

/* Оверлей нижче шапки; шапка вище затемнення на всіх сторінках */
html body.logged-in .wd-dropdown-backdrop,
html body.logged-in .wd-close-side,
html body.logged-in .wd-close-side.wd-close-side-opened,
html body.logged-in .wd-close-side.wd-opened {
	z-index: 9990 !important;
	pointer-events: none !important;
}

/*
 * .whb-header is often position:static (z-index ignored).
 * Theme stacks via .whb-main-header (position:relative) — raise it everywhere,
 * not only on .single-product (that mismatch made catalog/home look “unhighlighted”).
 */
html body.logged-in .whb-main-header,
html body.logged-in .whb-header .whb-main-header,
html body.logged-in .whb-clone .whb-main-header,
html body.logged-in .whb-sticked {
	z-index: 10001 !important;
}

html body.logged-in .wd-header-my-account,
html body.logged-in .whb-main-header .wd-header-my-account {
	z-index: 10002 !important;
	overflow: visible !important;
	position: relative !important;
}

html body.logged-in .whb-header .wd-dropdown-my-account,
html body.logged-in .whb-header .wd-header-my-account .wd-dropdown,
html body.logged-in .whb-header .wd-header-my-account .sub-menu-dropdown {
	z-index: 10005 !important;
}

body.logged-in .wd-header-my-account > a.login-side-opener,
body.logged-in .wd-header-my-account > a.wd-open-popup,
body.logged-in .wd-header-my-account > a.wd-open-login {
    cursor: pointer;
}

/* Кнопка «Переглянути відео»: форма YouTube Play */
html body.single-product .product-video-button.wd-action-btn > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 31px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background-color: #ff0000 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    overflow: hidden !important;
}
html body.single-product .product-video-button.wd-action-btn > a:hover,
html body.single-product .product-video-button.wd-action-btn > a:focus {
    width: max-content !important;
    max-width: none !important;
    min-width: 44px !important;
    gap: 5px !important;
    padding: 0 8px !important;
    border-radius: 10px !important;
    background-color: #cc0000 !important;
    color: #ffffff !important;
}
html body.single-product .product-video-button.wd-action-btn > a:hover .wd-action-text,
html body.single-product .product-video-button.wd-action-btn > a:focus .wd-action-text {
    display: inline-flex !important;
    align-items: center !important;
    max-width: none !important;
    width: auto !important;
    opacity: 1 !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}
html body.single-product .product-video-button .wd-action-icon,
html body.single-product .product-video-button .wd-action-icon::before,
html body.single-product .product-video-button .wd-action-icon::after,
html body.single-product .product-video-button .wd-action-text {
    color: #ffffff !important;
}
html body.single-product .product-video-button .wd-action-text {
    font-size: 10.5px !important;
    line-height: 1 !important;
    max-width: 0 !important;
    width: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}
html body.single-product .product-video-button .wd-action-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 23px !important;
    min-width: 23px !important;
    height: 23px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}
html body.single-product .product-video-button .wd-action-icon::after {
    content: none !important;
    display: none !important;
}
html body.single-product .product-video-button .wd-action-icon::before {
    color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='8,5 8,19 19,12' fill='%23ffffff'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 23px 23px !important;
}

@media (max-width: 768px) {
    html body.single-product .product-video-button.wd-action-btn > a:hover,
    html body.single-product .product-video-button.wd-action-btn > a:focus {
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        gap: 0 !important;
        padding: 0 !important;
        background-color: #ff0000 !important;
    }
    html body.single-product .product-video-button.wd-action-btn > a:hover .wd-action-text,
    html body.single-product .product-video-button.wd-action-btn > a:focus .wd-action-text {
        max-width: 0 !important;
        width: 0 !important;
        opacity: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}