/*
 * KA Blocs Theme - Poprawki dla motywu Blocs.io
 * ===============================================
 * Ten plik zawiera specjalne poprawki CSS dla motywu Blocs.io
 * które rozwiązują problemy z wyświetlaniem kolumn produktów
 */

/* ===================================================================
 * DETEKCJA MOTYWU BLOCS.IO
 * =================================================================== */

/* Sprawdź czy to motyw Blocs (na podstawie klas body) */
body[class*="blocs"],
body[class*="Blocs"],
.ka-creator-container {
    /* Wymuszenie stylów dla Blocs */
}

/* ===================================================================
 * POPRAWKI GŁÓWNE DLA BLOCS.IO
 * =================================================================== */

/* Resetowanie kontenera Blocs */
.ka-creator-container {
    /* Usunięcie stylów Blocs które mogą kolidować */
    overflow: visible !important;
    position: relative !important;
    float: none !important;
    clear: none !important;
}

/* Resetowanie wrappera WooCommerce w Blocs */
.ka-creator-container .woocommerce-content-wrapper {
    overflow: visible !important;
    position: relative !important;
    float: none !important;
    clear: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ===================================================================
 * POPRAWKI SIATKI PRODUKTÓW DLA BLOCS
 * =================================================================== */

/* Wymuszenie flexbox dla listy produktów w Blocs */
.ka-creator-container .woocommerce ul.products,
.ka-creator-container ul.products {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: var(--ka-archive-gap, 20px) !important;
    margin: 0 !important; /* Usunięto margin: 0 auto - nie ogranicza szerokości */
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    /* Usunięto max-width: 1200px - nie ogranicza szerokości */
    /* Resetowanie stylów Blocs */
    float: none !important;
    clear: none !important;
    position: static !important;
    overflow: visible !important;
}

/* Wymuszenie prawidłowej szerokości kolumn dla Blocs */
.ka-creator-container .woocommerce ul.products.columns-1 li.product,
.ka-creator-container ul.products.columns-1 li.product {
    width: 100% !important;
    flex: 0 0 100% !important;
    float: none !important;
    clear: none !important;
}

.ka-creator-container .woocommerce ul.products.columns-2 li.product,
.ka-creator-container ul.products.columns-2 li.product {
    width: calc((100% - var(--ka-archive-gap, 20px)) / 2) !important;
    flex: 0 0 calc((100% - var(--ka-archive-gap, 20px)) / 2) !important;
    float: none !important;
    clear: none !important;
}

.ka-creator-container .woocommerce ul.products.columns-3 li.product,
.ka-creator-container ul.products.columns-3 li.product {
    width: calc((100% - 2 * var(--ka-archive-gap, 20px)) / 3) !important;
    flex: 0 0 calc((100% - 2 * var(--ka-archive-gap, 20px)) / 3) !important;
    float: none !important;
    clear: none !important;
}

.ka-creator-container .woocommerce ul.products.columns-4 li.product,
.ka-creator-container ul.products.columns-4 li.product {
    width: calc((100% - 3 * var(--ka-archive-gap, 20px)) / 4) !important;
    flex: 0 0 calc((100% - 3 * var(--ka-archive-gap, 20px)) / 4) !important;
    float: none !important;
    clear: none !important;
}

.ka-creator-container .woocommerce ul.products.columns-5 li.product,
.ka-creator-container ul.products.columns-5 li.product {
    width: calc((100% - 4 * var(--ka-archive-gap, 20px)) / 5) !important;
    flex: 0 0 calc((100% - 4 * var(--ka-archive-gap, 20px)) / 5) !important;
    float: none !important;
    clear: none !important;
}

.ka-creator-container .woocommerce ul.products.columns-6 li.product,
.ka-creator-container ul.products.columns-6 li.product {
    width: calc((100% - 5 * var(--ka-archive-gap, 20px)) / 6) !important;
    flex: 0 0 calc((100% - 5 * var(--ka-archive-gap, 20px)) / 6) !important;
    float: none !important;
    clear: none !important;
}

/* Resetowanie stylów produktów dla Blocs */
.ka-creator-container .woocommerce ul.products li.product,
.ka-creator-container ul.products li.product {
    margin: 0 !important;
    box-sizing: border-box !important;
    transition: box-shadow .2s !important;
    width: auto !important;
    max-width: none !important;
    flex-basis: auto !important;
    /* Resetowanie stylów Blocs */
    float: none !important;
    clear: none !important;
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ===================================================================
 * NAPRAWIANIE PROBLEMÓW Z PUSTYMI KOLUMNAMI
 * =================================================================== */

/* Ukryj puste produkty */
.ka-creator-container .woocommerce ul.products li.product:empty,
.ka-creator-container ul.products li.product:empty {
    display: none !important;
}

/* Wymuszenie wyświetlania produktów */
.ka-creator-container .woocommerce ul.products li.product:not(:empty),
.ka-creator-container ul.products li.product:not(:empty) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ===================================================================
 * POPRAWKI DLA ELEMENTÓW PRODUKTU W BLOCS
 * =================================================================== */

/* Wymuszenie prawidłowego wyświetlania obrazków w Blocs */
.ka-creator-container .woocommerce ul.products li.product img,
.ka-creator-container ul.products li.product img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Naprawienie problemu z linkami w Blocs */
.ka-creator-container .woocommerce ul.products li.product a,
.ka-creator-container ul.products li.product a {
    text-decoration: none !important;
    /* USUNIĘTO: color: inherit !important; - powodowało konflikt z przyciskami */
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Wymuszenie wyświetlania cen w Blocs */
.ka-creator-container .woocommerce ul.products li.product .price,
.ka-creator-container ul.products li.product .price {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Naprawienie problemu z przyciskami w Blocs */
.ka-creator-container .woocommerce ul.products li.product .button,
.ka-creator-container ul.products li.product .button {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    /* Wymuszenie kolorów z kreatora dla przycisków */
    color: inherit !important;
}

/* Dodatkowe zabezpieczenie: wykluczenie przycisków z reguły color: inherit */
.ka-creator-container .woocommerce ul.products li.product a.button,
.ka-creator-container .woocommerce ul.products li.product a.button[class*="bloc-button"],
.ka-creator-container .woocommerce ul.products li.product a.button[class*="btn"],
.ka-creator-container .woocommerce ul.products li.product a.button[class*="przycisk"],
.ka-creator-container ul.products li.product a.button,
.ka-creator-container ul.products li.product a.button[class*="bloc-button"],
.ka-creator-container ul.products li.product a.button[class*="btn"],
.ka-creator-container ul.products li.product a.button[class*="przycisk"] {
    /* Przyciski nie dziedziczą koloru - używają własnych stylów */
    color: initial !important;
}

/* ===================================================================
 * POPRAWKA: PRIORYTET KLAS Z KREATORA DLA BLOCS.IO
 * =================================================================== */

/* Wymuszenie priorytetu klas z kreatora nad klasami WooCommerce w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button[class*="bloc-button"],
.ka-creator-container .woocommerce ul.products li.product a.button[class*="btn"],
.ka-creator-container .woocommerce ul.products li.product a.button[class*="przycisk"],
.ka-creator-container ul.products li.product a.button[class*="bloc-button"],
.ka-creator-container ul.products li.product a.button[class*="btn"],
.ka-creator-container ul.products li.product a.button[class*="przycisk"],
.ka-creator-container .woocommerce ul.products li.product button.button[class*="bloc-button"],
.ka-creator-container .woocommerce ul.products li.product button.button[class*="btn"],
.ka-creator-container .woocommerce ul.products li.product button.button[class*="przycisk"],
.ka-creator-container ul.products li.product button.button[class*="bloc-button"],
.ka-creator-container ul.products li.product button.button[class*="btn"],
.ka-creator-container ul.products li.product button.button[class*="przycisk"] {
    /* Resetowanie stylów WooCommerce */
    background: inherit !important;
    color: inherit !important;
    border: inherit !important;
    padding: inherit !important;
    border-radius: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-shadow: none !important;
    box-shadow: none !important;
    text-transform: inherit !important;
    font-size: inherit !important;
    display: inherit !important;
    width: inherit !important;
    height: inherit !important;
    margin: inherit !important;
    float: inherit !important;
    position: inherit !important;
    transition: inherit !important;
}

/* Specjalne style dla klas Blocs w kontenerze ka-creator-container */
.ka-creator-container .woocommerce ul.products li.product a.button.bloc-button,
.ka-creator-container ul.products li.product a.button.bloc-button,
.ka-creator-container .woocommerce ul.products li.product button.button.bloc-button,
.ka-creator-container ul.products li.product button.button.bloc-button {
    /* Style dla klasy bloc-button */
    background: var(--swatch-var-5240) !important;
    color: var(--swatch-var-2835) !important;
    border-color: var(--swatch-var-2835) !important;
    border-radius: 20px !important;
    border-width: 3px !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    transition: transform .3s ease-in-out !important;
}

.ka-creator-container .woocommerce ul.products li.product a.button.bloc-button:hover,
.ka-creator-container ul.products li.product a.button.bloc-button:hover,
.ka-creator-container .woocommerce ul.products li.product button.button.bloc-button:hover,
.ka-creator-container ul.products li.product button.button.bloc-button:hover {
    transform: scale(1.2) !important;
    background-color: var(--swatch-var-5240) !important;
    color: var(--swatch-var-2835) !important;
}

/* Style dla klas btn (Bootstrap-style) w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.btn,
.ka-creator-container ul.products li.product a.button.btn,
.ka-creator-container .woocommerce ul.products li.product button.button.btn,
.ka-creator-container ul.products li.product button.button.btn {
    display: inline-block !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: center !important;
    vertical-align: middle !important;
    cursor: pointer !important;
    user-select: none !important;
    border: 1px solid transparent !important;
    padding: 0.375rem 0.75rem !important;
    font-size: 1rem !important;
    border-radius: 0.25rem !important;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out !important;
}

/* Style dla klas btn-d (dark button) w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.btn-d,
.ka-creator-container ul.products li.product a.button.btn-d,
.ka-creator-container .woocommerce ul.products li.product button.button.btn-d,
.ka-creator-container ul.products li.product button.button.btn-d {
    color: #fff !important;
    background-color: #212529 !important;
    border-color: #212529 !important;
}

.ka-creator-container .woocommerce ul.products li.product a.button.btn-d:hover,
.ka-creator-container ul.products li.product a.button.btn-d:hover,
.ka-creator-container .woocommerce ul.products li.product button.button.btn-d:hover,
.ka-creator-container ul.products li.product button.button.btn-d:hover {
    color: #fff !important;
    background-color: #1e2124 !important;
    border-color: #1a1e21 !important;
}

/* Style dla klas btn-lg (large button) w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.btn-lg,
.ka-creator-container ul.products li.product a.button.btn-lg,
.ka-creator-container .woocommerce ul.products li.product button.button.btn-lg,
.ka-creator-container ul.products li.product button.button.btn-lg {
    padding: 0.5rem 1rem !important;
    font-size: 1.25rem !important;
    border-radius: 0.3rem !important;
}

/* Style dla klas btn-rd (rounded button) w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.btn-rd,
.ka-creator-container ul.products li.product a.button.btn-rd,
.ka-creator-container .woocommerce ul.products li.product button.button.btn-rd,
.ka-creator-container ul.products li.product button.button.btn-rd {
    border-radius: 50px !important;
}

/* Style dla klas float-lg-end w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.float-lg-end,
.ka-creator-container ul.products li.product a.button.float-lg-end,
.ka-creator-container .woocommerce ul.products li.product button.button.float-lg-end,
.ka-creator-container ul.products li.product button.button.float-lg-end {
    float: right !important;
}

/* Style dla klasy przycisk w Blocs */
.ka-creator-container .woocommerce ul.products li.product a.button.przycisk,
.ka-creator-container ul.products li.product a.button.przycisk,
.ka-creator-container .woocommerce ul.products li.product button.button.przycisk,
.ka-creator-container ul.products li.product button.button.przycisk {
    /* Dodatkowe style dla klasy przycisk */
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Wymuszenie wyświetlania tytułów w Blocs */
.ka-creator-container .woocommerce ul.products li.product .woocommerce-loop-product__title,
.ka-creator-container ul.products li.product .woocommerce-loop-product__title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* ===================================================================
 * RESPONSYWNOŚĆ DLA BLOCS
 * =================================================================== */

@media (max-width: 767px) {
    .ka-creator-container .woocommerce ul.products,
    .ka-creator-container ul.products {
        display: block !important;
        gap: 0 !important;
        max-width: 100% !important; /* Pełna szerokość na mobile */
        margin: 0 !important; /* Usuń margin auto na mobile */
        width: 100% !important;
    }
    
    .ka-creator-container .woocommerce ul.products li.product,
    .ka-creator-container ul.products li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: block !important;
        float: none !important;
        margin: 0 !important;
        flex: none !important;
    }
    
    /* NADPISANIE WSZYSTKICH KLAS KOLUMN NA MOBILE DLA KA-CREATOR-CONTAINER */
    .ka-creator-container .woocommerce ul.products.columns-1 li.product,
    .ka-creator-container .woocommerce ul.products.columns-2 li.product,
    .ka-creator-container .woocommerce ul.products.columns-3 li.product,
    .ka-creator-container .woocommerce ul.products.columns-4 li.product,
    .ka-creator-container .woocommerce ul.products.columns-5 li.product,
    .ka-creator-container .woocommerce ul.products.columns-6 li.product,
    .ka-creator-container ul.products.columns-1 li.product,
    .ka-creator-container ul.products.columns-2 li.product,
    .ka-creator-container ul.products.columns-3 li.product,
    .ka-creator-container ul.products.columns-4 li.product,
    .ka-creator-container ul.products.columns-5 li.product,
    .ka-creator-container ul.products.columns-6 li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: none !important;
        flex-basis: 100% !important;
    }
    
    /* DODATKOWE NADPISANIE DLA WSZYSTKICH MOŻLIWYCH KOMBINACJI KLAS */
    .ka-creator-container ul.products[class*="columns-"] li.product,
    .ka-creator-container .woocommerce ul.products[class*="columns-"] li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: none !important;
        flex-basis: 100% !important;
        float: none !important;
        margin: 0 !important;
    }
}

/* ===================================================================
 * DODATKOWE ZABEZPIECZENIA DLA BLOCS
 * =================================================================== */

/* Wymuszenie box-sizing dla wszystkich elementów w Blocs */
.ka-creator-container * {
    box-sizing: border-box !important;
}

/* Naprawienie problemu z clearfix w Blocs */
.ka-creator-container .woocommerce ul.products::after,
.ka-creator-container ul.products::after {
    content: "" !important;
    display: table !important;
    clear: both !important;
}

/* Resetowanie stylów Blocs które mogą kolidować */
.ka-creator-container .woocommerce ul.products::before,
.ka-creator-container ul.products::before {
    content: none !important;
}

/* Wymuszenie wyświetlania dla wszystkich elementów produktu */
.ka-creator-container .woocommerce ul.products li.product * {
    visibility: visible !important;
    opacity: 1 !important;
}

/* ===================================================================
 * POPRAWKI SPECJALNE DLA KLASY KA-BLOCS-FIX
 * =================================================================== */

/* Dodatkowe zabezpieczenia dla klasy ka-blocs-fix */
.ka-blocs-fix.woocommerce ul.products,
.ka-blocs-fix ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: var(--ka-archive-gap, 20px) !important;
    margin: 0 !important; /* Usunięto margin: 0 auto - nie ogranicza szerokości */
    padding: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    /* Usunięto max-width: 1200px - nie ogranicza szerokości */
    /* Resetowanie stylów Blocs */
    float: none !important;
    clear: none !important;
    position: static !important;
    overflow: visible !important;
}

/* Wymuszenie prawidłowej szerokości dla ka-blocs-fix */
.ka-blocs-fix.woocommerce ul.products.columns-1 li.product,
.ka-blocs-fix ul.products.columns-1 li.product {
    width: 100% !important;
    flex: 0 0 100% !important;
    float: none !important;
    clear: none !important;
}

.ka-blocs-fix.woocommerce ul.products.columns-2 li.product,
.ka-blocs-fix ul.products.columns-2 li.product {
    width: calc((100% - var(--ka-archive-gap, 20px)) / 2) !important;
    flex: 0 0 calc((100% - var(--ka-archive-gap, 20px)) / 2) !important;
    float: none !important;
    clear: none !important;
}

.ka-blocs-fix.woocommerce ul.products.columns-3 li.product,
.ka-blocs-fix ul.products.columns-3 li.product {
    width: calc((100% - 2 * var(--ka-archive-gap, 20px)) / 3) !important;
    flex: 0 0 calc((100% - 2 * var(--ka-archive-gap, 20px)) / 3) !important;
    float: none !important;
    clear: none !important;
}

.ka-blocs-fix.woocommerce ul.products.columns-4 li.product,
.ka-blocs-fix ul.products.columns-4 li.product {
    width: calc((100% - 3 * var(--ka-archive-gap, 20px)) / 4) !important;
    flex: 0 0 calc((100% - 3 * var(--ka-archive-gap, 20px)) / 4) !important;
    float: none !important;
    clear: none !important;
}

.ka-blocs-fix.woocommerce ul.products.columns-5 li.product,
.ka-blocs-fix ul.products.columns-5 li.product {
    width: calc((100% - 4 * var(--ka-archive-gap, 20px)) / 5) !important;
    flex: 0 0 calc((100% - 4 * var(--ka-archive-gap, 20px)) / 5) !important;
    float: none !important;
    clear: none !important;
}

.ka-blocs-fix.woocommerce ul.products.columns-6 li.product,
.ka-blocs-fix ul.products.columns-6 li.product {
    width: calc((100% - 5 * var(--ka-archive-gap, 20px)) / 6) !important;
    flex: 0 0 calc((100% - 5 * var(--ka-archive-gap, 20px)) / 6) !important;
    float: none !important;
    clear: none !important;
}

/* Resetowanie produktów dla ka-blocs-fix */
.ka-blocs-fix.woocommerce ul.products li.product,
.ka-blocs-fix ul.products li.product {
    margin: 0 !important;
    box-sizing: border-box !important;
    transition: box-shadow .2s !important;
    width: auto !important;
    max-width: none !important;
    flex-basis: auto !important;
    /* Resetowanie stylów Blocs */
    float: none !important;
    clear: none !important;
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Naprawienie problemu z pustymi kolumnami dla ka-blocs-fix */
.ka-blocs-fix.woocommerce ul.products li.product:empty,
.ka-blocs-fix ul.products li.product:empty {
    display: none !important;
}

/* Wymuszenie wyświetlania produktów dla ka-blocs-fix */
.ka-blocs-fix.woocommerce ul.products li.product:not(:empty),
.ka-blocs-fix ul.products li.product:not(:empty) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Responsywność dla ka-blocs-fix */
@media (max-width: 767px) {
    .ka-blocs-fix.woocommerce ul.products,
    .ka-blocs-fix ul.products {
        display: block !important;
        gap: 0 !important;
        max-width: 100% !important; /* Pełna szerokość na mobile */
        margin: 0 !important; /* Usuń margin auto na mobile */
        width: 100% !important;
    }
    
    .ka-blocs-fix.woocommerce ul.products li.product,
    .ka-blocs-fix ul.products li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        display: block !important;
        float: none !important;
        margin: 0 !important;
        flex: none !important;
    }
    
    /* NADPISANIE WSZYSTKICH KLAS KOLUMN NA MOBILE DLA KA-BLOCS-FIX */
    .ka-blocs-fix.woocommerce ul.products.columns-1 li.product,
    .ka-blocs-fix.woocommerce ul.products.columns-2 li.product,
    .ka-blocs-fix.woocommerce ul.products.columns-3 li.product,
    .ka-blocs-fix.woocommerce ul.products.columns-4 li.product,
    .ka-blocs-fix.woocommerce ul.products.columns-5 li.product,
    .ka-blocs-fix.woocommerce ul.products.columns-6 li.product,
    .ka-blocs-fix ul.products.columns-1 li.product,
    .ka-blocs-fix ul.products.columns-2 li.product,
    .ka-blocs-fix ul.products.columns-3 li.product,
    .ka-blocs-fix ul.products.columns-4 li.product,
    .ka-blocs-fix ul.products.columns-5 li.product,
    .ka-blocs-fix ul.products.columns-6 li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: none !important;
        flex-basis: 100% !important;
    }
    
    /* DODATKOWE NADPISANIE DLA WSZYSTKICH MOŻLIWYCH KOMBINACJI KLAS */
    .ka-blocs-fix ul.products[class*="columns-"] li.product,
    .ka-blocs-fix.woocommerce ul.products[class*="columns-"] li.product,
    .ka-creator-container ul.products[class*="columns-"] li.product,
    .ka-creator-container .woocommerce ul.products[class*="columns-"] li.product {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: none !important;
        flex-basis: 100% !important;
        float: none !important;
        margin: 0 !important;
    }
} 