/* === Product List - Out of stock button === */
/* Base state */
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:hover,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:focus,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:active,
/* Override parent hover states from theme */
#js-product-list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable,
.tvproduct-wrapper .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable,
.tvproduct-wrapper.catelog .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable,
.tvproduct-wrapper.list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable {
    background-color: #818181 !important;
    border-color: #818181 !important;
}

/* Label color */
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable .tvproduct-add-to-cart-label,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:hover .tvproduct-add-to-cart-label,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:focus .tvproduct-add-to-cart-label,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:active .tvproduct-add-to-cart-label,
/* Override parent hover states from theme */
#js-product-list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable .tvproduct-add-to-cart-label,
.tvproduct-wrapper .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable .tvproduct-add-to-cart-label,
.tvproduct-wrapper.catelog .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable .tvproduct-add-to-cart-label,
.tvproduct-wrapper.list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable .tvproduct-add-to-cart-label {
    color: #ffffff !important;
}

/* SVG Add Cart Icon Stroke */
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.add-cart path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:hover svg.add-cart path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:focus svg.add-cart path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:active svg.add-cart path,
/* Override parent hover states from theme */
#js-product-list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.add-cart path,
.tvproduct-wrapper .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.add-cart path,
.tvproduct-wrapper.catelog .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.add-cart path,
.tvproduct-wrapper.list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.add-cart path {
    stroke: #ffffff !important;
    fill: none !important;
}

/* SVG Out of Stock Icon Fill */
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.out-of-stock path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:hover svg.out-of-stock path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:focus svg.out-of-stock path,
.tvproduct-add-to-cart.tvproduct-out-of-stock.disable:active svg.out-of-stock path,
/* Override parent hover states from theme */
#js-product-list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.out-of-stock path,
.tvproduct-wrapper .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.out-of-stock path,
.tvproduct-wrapper.catelog .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.out-of-stock path,
.tvproduct-wrapper.list .tvproduct-cart-btn:hover .tvproduct-add-to-cart.tvproduct-out-of-stock.disable svg.out-of-stock path {
    fill: #ffffff !important;
}

/* === Ukrycie krótkiego opisu na liście produktów === */
.tv-product-desc {
    display: none !important;
}

/* === Mobile: Wymuszenie widoku katalogowego poniżej 770px === */
@media (max-width: 769px) {
    /* Ukrycie przełącznika widoków na mobile */
    .tvcmsproduct-grid-list {
        display: none !important;
    }
    
    /* Wymuszenie layoutu katalogowego dla wszystkich widoków */
    .tvproduct-wrapper.catelog .tvproduct-catalog-wrapper,
    .tvproduct-wrapper.grid .tvproduct-catalog-wrapper,
    .tvproduct-wrapper.grid-2 .tvproduct-catalog-wrapper,
    .tvproduct-wrapper.list .tvproduct-catalog-wrapper,
    .tvproduct-wrapper.list-2 .tvproduct-catalog-wrapper {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }
    
    /* Ukrycie innych wrapperów widoków na mobile */
    .tvproduct-wrapper.grid .tvproduct-grid-wrapper,
    .tvproduct-wrapper.grid-2 .tvproduct-grid-wrapper,
    .tvproduct-wrapper.list .tvproduct-list-wrapper,
    .tvproduct-wrapper.list-2 .tvproduct-list-wrapper {
        display: none !important;
    }
    
    /* Layout kolumn w widoku katalogowym na mobile */
    .tvproduct-wrapper .tvproduct-catalog-wrapper > div[class*="col-"] {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        padding: 0.5rem !important;
    }
    
    /* Obrazek produktu na mobile */
    .tvproduct-wrapper .tvproduct-catalog-wrapper .tvproduct-image {
        flex: 0 0 30% !important;
        max-width: 30% !important;
    }
    
    /* Nazwa i gwiazdki */
    .tvproduct-wrapper .tvproduct-catalog-wrapper .tvcms-product-name-star {
        flex: 0 0 70% !important;
        max-width: 70% !important;
    }
    
    /* Cena */
    .tvproduct-wrapper .tvproduct-catalog-wrapper .tvproduct-catalog-price {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
    
    /* Przyciski */
    .tvproduct-wrapper .tvproduct-catalog-wrapper .tv-product-catalog-btn {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
    
    /* Flexbox dla układu produktu na mobile */
    .tvproduct-wrapper .tvproduct-catalog-wrapper {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
        padding: 1rem 0.5rem !important;
        border-bottom: 1px solid #e0e0e0 !important;
    }
}
