/* ==========================================================================
   Infinity — kategorie „Według problemu” + filtry w lewej kolumnie archiwum
   Plik: assets/infinity-filtry.css (ładowany tylko na listach produktów)
   ========================================================================== */

/* Długa kolumna z filtrami nie może być „przyklejona” — inaczej dół filtrów
   byłby nieosiągalny na niższych ekranach. */
.custom-archive-landing aside.archive-sidebar.inf-has-filters {
    position: static !important;
}

/* Tytuł: „Kategorie” na desktopie, „Kategorie i filtry” w przycisku mobilnym */
.custom-archive-landing .inf-t-mobile { display: none !important; }
@media (max-width: 991px) {
    .custom-archive-landing .inf-t-desktop { display: none; }
    .custom-archive-landing .inf-t-mobile { display: inline !important; }
    .custom-archive-landing .inf-badge.inf-t-mobile { display: inline-flex !important; }
}

.custom-archive-landing .inf-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    margin-left: 6px;
    border-radius: 9px;
    background: var(--color-navy-light, #B88A44);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    line-height: 1;
    vertical-align: middle;
}

/* Liczniki przy kategoriach i opcjach */
.custom-archive-landing .inf-count {
    color: #A39C93;
    font-size: 11.5px;
    font-weight: 300;
    margin-left: 4px;
}

/* --- Kategorie (krótka lista z bieżącego poziomu) ---------------------- */
.custom-archive-landing .inf-cat-menu li { padding: 8px 0 !important; }
.custom-archive-landing .inf-cat-menu li a { text-transform: none !important; }
.custom-archive-landing .inf-cat-menu li.inf-cat-back > a {
    font-size: 11.5px !important;
    letter-spacing: .06em;
    text-transform: uppercase !important;
    color: var(--text-light) !important;
}
.custom-archive-landing .inf-cat-menu li.inf-cat-all > a {
    font-weight: 500 !important;
    color: var(--color-navy-dark) !important;
}
.custom-archive-landing .inf-cat-menu li.current-cat > a {
    color: var(--color-navy-light, #B88A44) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}
.custom-archive-landing .inf-catbox .inf-more { display: none !important; }
.custom-archive-landing .inf-catbox.is-expanded .inf-more { display: block !important; }
/* Stary styl rozwijał podkategorie po najechaniu — w krótkiej liście niepotrzebne */
.custom-archive-landing .inf-cat-menu ul.children { display: none !important; }

/* --- Panel filtrów ---------------------------------------------------- */
.custom-archive-landing .inf-filters {
    margin-top: 32px;
}
.custom-archive-landing .inf-filters__heading {
    margin-bottom: 10px !important;
}

/* Aktywne filtry (chipy) */
.custom-archive-landing .inf-active {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 14px;
}
.custom-archive-landing .inf-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    border: 1px solid var(--border-light);
    background: #fff;
    color: var(--color-navy-dark) !important;
    font-size: 12px;
    text-decoration: none !important;
    transition: border-color .2s;
}
.custom-archive-landing .inf-chip:hover { border-color: var(--color-navy-light, #B88A44); }
.custom-archive-landing .inf-chip span { color: var(--color-navy-light, #B88A44); font-size: 14px; line-height: 1; }
.custom-archive-landing .inf-clear,
.custom-archive-landing .inf-empty-clear a {
    align-self: center;
    font-size: 11.5px;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--text-light) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
    margin-left: 4px;
}

/* Grupa filtra */
.custom-archive-landing .inf-filter {
    border-bottom: 1px solid var(--border-light);
    padding: 14px 0;
}
.custom-archive-landing .inf-filter:first-of-type { border-top: 1px solid var(--border-light); }
.custom-archive-landing .inf-filter__title {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-navy-dark);
    user-select: none;
}
.custom-archive-landing .inf-filter__title::-webkit-details-marker { display: none; }
.custom-archive-landing .inf-filter__title::after {
    content: '';
    margin-left: auto;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .2s;
}
.custom-archive-landing .inf-filter[open] > .inf-filter__title::after {
    transform: rotate(-135deg) translateY(-2px);
}

.custom-archive-landing .inf-filter__list {
    list-style: none !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
}
.custom-archive-landing .inf-filter__item { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.custom-archive-landing .inf-filter__item a {
    display: flex !important;
    align-items: center;
    gap: 10px;
    padding: 5px 0 !important;
    font-size: 13.5px !important;
    font-weight: 300 !important;
    color: var(--text-light) !important;
    text-decoration: none !important;
    text-transform: none !important;
    transition: color .2s;
}
.custom-archive-landing .inf-filter__item a:hover { color: var(--color-navy-dark) !important; }
.custom-archive-landing .inf-filter__item .inf-label { flex: 1; }

/* Kwadracik „checkbox” */
.custom-archive-landing .inf-check {
    flex: 0 0 15px;
    width: 15px;
    height: 15px;
    border: 1px solid #CFC5B8;
    background: #fff;
    position: relative;
    transition: background .2s, border-color .2s;
}
.custom-archive-landing .inf-filter__item a:hover .inf-check { border-color: var(--color-navy-dark); }
.custom-archive-landing .inf-filter__item.is-active a { color: var(--color-navy-dark) !important; font-weight: 500 !important; }
.custom-archive-landing .inf-filter__item.is-active .inf-check {
    background: var(--color-navy-dark);
    border-color: var(--color-navy-dark);
}
.custom-archive-landing .inf-filter__item.is-active .inf-check::after {
    content: '';
    position: absolute;
    left: 4.5px;
    top: 1.5px;
    width: 4px;
    height: 8px;
    border-right: 1.5px solid #fff;
    border-bottom: 1.5px solid #fff;
    transform: rotate(45deg);
}

/* „Pokaż więcej” dla długich list (rodzaj, składnik, marka) */
.custom-archive-landing .inf-filter .inf-more { display: none !important; }
.custom-archive-landing .inf-filter.is-expanded .inf-more { display: block !important; }
.custom-archive-landing .inf-filter__more {
    background: none !important;
    border: 0 !important;
    padding: 6px 0 0 !important;
    margin: 0 !important;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 11.5px !important;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--color-navy-light, #B88A44) !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Kliknięty filtr — delikatny sygnał ładowania */
.custom-archive-landing.inf-loading .archive-products {
    opacity: .45;
    transition: opacity .2s;
    pointer-events: none;
}

@media (max-width: 991px) {
    .custom-archive-landing .inf-filters { margin-top: 25px; }
}

/* --- Filtr „Kategoria” (obszar → podkategorie) -------------------------- */
.custom-archive-landing .inf-filters--solo { margin-top: 0; }
.custom-archive-landing .inf-filters--solo .inf-filter:first-of-type { border-top: 0; padding-top: 0; }
.custom-archive-landing .inf-filter__item--child a { padding-left: 25px !important; font-size: 13px !important; }
.custom-archive-landing .inf-filter__item.is-parent a { color: var(--color-navy-dark) !important; font-weight: 500 !important; }
.custom-archive-landing .inf-filter__item.is-parent .inf-check { border-color: var(--color-navy-dark); }
.custom-archive-landing .inf-filter__item.is-parent .inf-check::after {
    content: ''; position: absolute; left: 3px; right: 3px; top: 6px; height: 1.5px; background: var(--color-navy-dark);
}

/* Podpowiedź pod filtrem „Kategoria” na listach mieszanych */
.custom-archive-landing .inf-filter__hint {
    margin: 10px 0 0 !important;
    padding: 10px 12px;
    background: var(--color-blue-soft, #F7F2EB);
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: var(--text-light) !important;
}

/* Kategoria — kolejne poziomy podkategorii (2.0) */
.custom-archive-landing .inf-filter__item.inf-lvl-2 a { padding-left: 45px !important; font-size: 12.5px !important; }
.custom-archive-landing .inf-filter__item.inf-lvl-3 a { padding-left: 65px !important; font-size: 12.5px !important; }
