/* MASTERBAR Catalog Sidebar 0.2.1 – COLLAPSIBLE TREE ARROWS */
.masterbar-catalog-sidebar-enabled #content > .ast-container,
.masterbar-catalog-sidebar-enabled .site-content > .ast-container {
  width: calc(100% - 48px) !important;
  max-width: 1560px !important;
  margin: 0 auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.masterbar-catalog-sidebar-enabled.ast-left-sidebar #secondary,
.masterbar-catalog-sidebar-enabled.ast-left-sidebar .widget-area.secondary {
  width: 330px !important;
  max-width: 330px !important;
  flex: 0 0 330px !important;
}
.masterbar-catalog-sidebar-enabled #secondary {
  margin: 0 34px 0 0 !important;
  padding: 0 !important;
  border-right: 1px solid #e5e9ee !important;
}
.masterbar-catalog-sidebar-enabled #secondary .sidebar-main,
.masterbar-catalog-sidebar-enabled #secondary .widget { margin:0 !important; padding:0 !important; }
.masterbar-catalog-sidebar-enabled.ast-left-sidebar #primary,
.masterbar-catalog-sidebar-enabled.ast-left-sidebar .content-area.primary {
  width: calc(100% - 364px) !important;
  max-width: calc(100% - 364px) !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding-left: 0 !important;
}

@media (min-width:1025px) {
  .masterbar-catalog-sidebar-enabled .masterbar-filter-toolbar,
  .masterbar-catalog-sidebar-enabled .masterbar-product-filters,
  .masterbar-catalog-sidebar-enabled .masterbar-filter-backdrop { display:none !important; }
  .masterbar-catalog-sidebar-enabled #primary ul.products { width:100% !important; }
}

/* 0.1.5: Astra potrafi zostawić lewy #secondary na wysokości samego widgetu.
   position:sticky wtedy kończy działanie razem z krótkim rodzicem.
   Rozciągamy kolumnę sidebara do wysokości prawej kolumny katalogu i
   zostawiamy overflow widoczny, aby .mbcs-wrap mógł być sticky do końca listingu. */
@media (min-width:1025px) {
  .masterbar-catalog-sidebar-enabled #content > .ast-container,
  .masterbar-catalog-sidebar-enabled .site-content > .ast-container {
    align-items: stretch !important;
    overflow: visible !important;
  }
  .masterbar-catalog-sidebar-enabled #secondary,
  .masterbar-catalog-sidebar-enabled .widget-area.secondary {
    align-self: stretch !important;
    height: auto !important;
    min-height: 100% !important;
    overflow: visible !important;
  }
  .masterbar-catalog-sidebar-enabled #secondary .sidebar-main,
  .masterbar-catalog-sidebar-enabled #secondary .widget {
    height: 100% !important;
    overflow: visible !important;
  }
  .masterbar-catalog-sidebar-enabled .mbcs-wrap {
    align-self: flex-start !important;
    z-index: 5;
  }
}

.mbcs-wrap {
  position: sticky;
  top: var(--mbcs-sticky-top, 92px);
  max-height: calc(100vh - var(--mbcs-sticky-top, 92px) - 14px);
  overflow: hidden;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.mbcs-tabs {
  position: sticky; top:0; z-index:4;
  display:grid; grid-template-columns:1fr 1fr;
  gap:4px; padding:6px 8px 7px 0;
  background:#fff; border-bottom:1px solid #edf0f3;
}
.mbcs-tab, button.mbcs-tab {
  display:flex !important; align-items:center !important; justify-content:center !important;
  width:100% !important; min-height:38px !important; margin:0 !important; padding:7px 8px !important;
  border:0 !important; border-radius:8px !important;
  background:#fff !important; color:#111827 !important; -webkit-text-fill-color:#111827 !important;
  font-size:13px !important; line-height:1.15 !important; font-weight:700 !important;
  box-shadow:none !important; opacity:1 !important; cursor:pointer;
}
.mbcs-tab.is-active, button.mbcs-tab.is-active {
  background:#eef2f5 !important; color:#0d3557 !important; -webkit-text-fill-color:#0d3557 !important;
}
.mbcs-panel {
  display:none; padding:14px 18px 18px 8px;
  overflow-y:auto; overflow-x:hidden;
  max-height:calc(100vh - var(--mbcs-sticky-top, 92px) - 60px);
  scrollbar-width:thin;
}
.mbcs-panel.is-active { display:block; }
/* Drzewo kategorii: czytelna hierarchia bez zmiany logiki. */
.mbcs-cat-list { list-style:none; margin:0; padding:0; }
.mbcs-cat-item { margin:0; padding:0; }
.mbcs-cat-item > a {
  display:block;
  position:relative;
  color:#111827;
  text-decoration:none;
  line-height:1.28;
  transition:background-color .14s ease, color .14s ease, box-shadow .14s ease;
}

/* Poziom 0 = główne działy katalogu. */
.mbcs-depth-0 > .mbcs-cat-item {
  margin:0 0 5px;
}
.mbcs-depth-0 > .mbcs-cat-item > a {
  padding:10px 12px;
  border-radius:7px;
  font-size:14px;
  font-weight:700;
  letter-spacing:-.01em;
}
.mbcs-depth-0 > .mbcs-cat-item > a:hover {
  background:#f6f8fa;
  color:#0d3557;
}
/* Główna kategoria będąca rodzicem aktualnej podkategorii. */
.mbcs-depth-0 > .mbcs-cat-item.is-path > a {
  background:#f3f6f8;
  color:#0d3557;
  box-shadow:inset 3px 0 0 #0d3557;
}
.mbcs-depth-0 > .mbcs-cat-item.is-current > a {
  background:#eaf0f4;
  color:#0b2f4e;
  box-shadow:inset 4px 0 0 #0d3557;
}

/* Poziom 1 = podkategorie. Są wyraźnie lżejsze i bardziej wcięte. */
.mbcs-depth-1 {
  margin:2px 0 8px 13px;
  padding:2px 0 2px 10px;
  border-left:1px solid #dde4ea;
}
.mbcs-depth-1 > .mbcs-cat-item {
  margin:1px 0;
}
.mbcs-depth-1 > .mbcs-cat-item > a {
  padding:7px 10px;
  border-radius:6px;
  font-size:12.8px;
  font-weight:500;
  color:#475569;
}
.mbcs-depth-1 > .mbcs-cat-item > a:hover {
  background:#f7f9fb;
  color:#0d3557;
}
.mbcs-depth-1 > .mbcs-cat-item.is-path > a {
  color:#0d3557;
  font-weight:600;
}
.mbcs-depth-1 > .mbcs-cat-item.is-current > a {
  background:#eaf0f4;
  color:#0b2f4e;
  font-weight:700;
  box-shadow:inset 3px 0 0 #0d3557;
}

/* Poziom 2+ = kolejne zagłębienia drzewa. */
.mbcs-depth-2,
.mbcs-depth-3,
.mbcs-depth-4 {
  margin:1px 0 5px 10px;
  padding-left:9px;
  border-left:1px dashed #e3e8ed;
}
.mbcs-depth-2 .mbcs-cat-item > a,
.mbcs-depth-3 .mbcs-cat-item > a,
.mbcs-depth-4 .mbcs-cat-item > a {
  padding:6px 9px;
  border-radius:5px;
  font-size:12.3px;
  font-weight:500;
  color:#64748b;
}
.mbcs-depth-2 .mbcs-cat-item > a:hover,
.mbcs-depth-3 .mbcs-cat-item > a:hover,
.mbcs-depth-4 .mbcs-cat-item > a:hover {
  background:#f8fafb;
  color:#0d3557;
}
.mbcs-depth-2 .mbcs-cat-item.is-current > a,
.mbcs-depth-3 .mbcs-cat-item.is-current > a,
.mbcs-depth-4 .mbcs-cat-item.is-current > a {
  background:#eef3f6;
  color:#0d3557;
  font-weight:700;
  box-shadow:inset 3px 0 0 #0d3557;
}

.mbcs-filter-section { padding:12px 0; border-bottom:1px solid #edf0f3; }
.mbcs-filter-section h4 { margin:0 0 9px; font-size:13px; color:#111827; }
.mbcs-check { display:flex; gap:8px; align-items:center; color:#111827; }
.mbcs-filter-section select,
.mbcs-filter-section input[type="number"] {
  width:100%; min-height:40px; border:1px solid #dfe5eb; border-radius:7px;
  padding:7px 9px; background:#fff; color:#111827;
}
.mbcs-price-row { display:grid; grid-template-columns:1fr auto 1fr; gap:7px; align-items:center; }
.mbcs-filter-actions { display:grid; gap:7px; padding-top:14px; }
.mbcs-apply {
  min-height:42px; border:0; border-radius:7px; background:#0d3557 !important;
  color:#fff !important; -webkit-text-fill-color:#fff !important; font-weight:700; cursor:pointer;
}
.mbcs-clear { text-align:center; padding:7px; text-decoration:none; }

@media (max-width:1199px) and (min-width:1025px) {
  .masterbar-catalog-sidebar-enabled.ast-left-sidebar #secondary,
  .masterbar-catalog-sidebar-enabled.ast-left-sidebar .widget-area.secondary { width:280px !important; max-width:280px !important; flex-basis:280px !important; }
  .masterbar-catalog-sidebar-enabled.ast-left-sidebar #primary,
  .masterbar-catalog-sidebar-enabled.ast-left-sidebar .content-area.primary { width:calc(100% - 308px) !important; max-width:calc(100% - 308px) !important; }
  .masterbar-catalog-sidebar-enabled #secondary { margin-right:28px !important; }
}

@media (max-width:1024px) {
  .masterbar-catalog-sidebar-enabled #content > .ast-container,
  .masterbar-catalog-sidebar-enabled .site-content > .ast-container {
    width:100% !important;
    max-width:100% !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  /* Na telefonie/tablecie korzystamy wyłącznie z mobilnego panelu filtrów
     MASTERBAR UI. Astra #secondary powodowała drugi zestaw filtrów pod listą. */
  .masterbar-catalog-sidebar-enabled #secondary,
  .masterbar-catalog-sidebar-enabled .widget-area.secondary {
    display:none !important;
    width:0 !important;
    max-width:0 !important;
    flex:0 0 0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }

  .masterbar-catalog-sidebar-enabled.ast-left-sidebar #primary,
  .masterbar-catalog-sidebar-enabled.ast-left-sidebar .content-area.primary {
    width:100% !important;
    max-width:100% !important;
    flex:1 1 100% !important;
    margin:0 !important;
    padding-left:0 !important;
  }
}

/* MASTERBAR Catalog Sidebar 0.2.0 – COLLAPSIBLE PATH + COOKIE SAFE AREA */
.mbcs-cat-row {
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
}
.mbcs-cat-row > a {
  flex:1 1 auto;
  min-width:0;
}
.mbcs-cat-item > .mbcs-cat-row > a {
  display:block;
  position:relative;
  color:#111827;
  text-decoration:none;
  line-height:1.28;
  transition:background-color .14s ease,color .14s ease,box-shadow .14s ease;
}
.mbcs-depth-0 > .mbcs-cat-item > .mbcs-cat-row > a {
  padding:10px 40px 10px 12px;
  border-radius:7px;
  font-size:14px;
  font-weight:700;
  letter-spacing:-.01em;
}
.mbcs-depth-1 > .mbcs-cat-item > .mbcs-cat-row > a {
  padding:7px 36px 7px 10px;
  border-radius:6px;
  font-size:12.8px;
  font-weight:500;
  color:#475569;
}
.mbcs-depth-2 .mbcs-cat-item > .mbcs-cat-row > a,
.mbcs-depth-3 .mbcs-cat-item > .mbcs-cat-row > a,
.mbcs-depth-4 .mbcs-cat-item > .mbcs-cat-row > a {
  padding:6px 34px 6px 9px;
  border-radius:5px;
  font-size:12.3px;
  font-weight:500;
  color:#64748b;
}
.mbcs-cat-toggle {
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  min-width:28px;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer;
  display:grid!important;
  place-items:center;
}
.mbcs-cat-toggle:hover { background:#e8eef3!important; }
.mbcs-cat-toggle span {
  width:7px;
  height:7px;
  border-right:1.8px solid #0d3557;
  border-bottom:1.8px solid #0d3557;
  transform:rotate(45deg) translate(-1px,-1px);
  transition:transform .16s ease;
}
.mbcs-cat-item.is-collapsed > .mbcs-cat-row .mbcs-cat-toggle span {
  transform:rotate(-45deg) translate(-1px,1px);
}
.mbcs-cat-item.is-collapsed > .mbcs-cat-list { display:none!important; }

/* Zostawiamy zapas przewijania na dole, aby stały przycisk „Ustawienia cookies”
   nie blokował ostatnich pozycji drzewa kategorii. */
@media (min-width:1025px) {
  .mbcs-panel { padding-bottom:88px!important; }
}

/* MASTERBAR Catalog Sidebar 0.2.2 — prostsze filtry: dostępność → własne filtry → producent */
.mbcs-option-list{display:grid;gap:7px}.mbcs-option-list .mbcs-check{font-size:13px;line-height:1.25}.mbcs-option-list input[type="checkbox"]{margin:0}.mbcs-brand-list{max-height:245px;overflow:auto;padding-right:5px;scrollbar-width:thin}.mbcs-filter-availability{padding-top:4px}.mbcs-custom-filter h4{display:flex;align-items:center;justify-content:space-between}.mbcs-filter-brands{border-bottom:0}.mbcs-filter-section select{display:none}.mbcs-price-row{display:none!important}
@media(max-width:1024px){.mbcs-brand-list{max-height:210px}}

/* 0.2.3: centralny formularz MASTERBAR Filters wewnątrz desktopowego sidebara */
.mbcs-panel .masterbar-filter-group{padding:14px 0;border-bottom:1px solid #e7ebf0;margin:0}.mbcs-panel .masterbar-filter-title,.mbcs-panel .masterbar-filter-group summary{font-size:13px;font-weight:700;cursor:pointer}.mbcs-panel .masterbar-filter-options{display:grid;gap:7px;margin-top:10px}.mbcs-panel .masterbar-filter-check{display:flex;align-items:center;gap:7px;font-size:13px;line-height:1.25}.mbcs-panel .masterbar-brand-list{max-height:245px;overflow:auto;padding-right:5px}.mbcs-panel .masterbar-filter-actions{padding-top:14px}.mbcs-panel .masterbar-filter-submit{width:100%;min-height:40px}.mbcs-panel .masterbar-filter-reset{display:block;text-align:center;margin-top:12px}.mbcs-panel details>summary{list-style:none}.mbcs-panel details>summary::-webkit-details-marker{display:none}


/* 0.3.0 — wygląd mobilnego nawigatora kategorii przeniesiony z MASTERBAR UI. */
   ========================================================== */

.masterbar-mobile-category-navigator {
    display: none;
}

@media (max-width: 920px) {
    .masterbar-categories-panel {
        position: relative;
        overflow: hidden !important;
    }

    /* Stare drzewo kategorii pozostaje tylko dla desktopu. */
    .masterbar-categories-title,
    .masterbar-categories-root {
        display: none !important;
    }

    .masterbar-mobile-category-navigator {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        min-height: 100%;
        overflow: hidden;
        background: #fff;
    }

    .masterbar-mobile-category-panel {
        position: absolute;
        inset: 0;
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        background: #fff;
        opacity: 0;
        transform: translateX(100%);
        visibility: hidden;
        pointer-events: none;
        transition: transform .20s ease, opacity .16s ease, visibility .20s ease;
        will-change: transform;
    }

    .masterbar-mobile-category-panel.is-active {
        z-index: 2;
        opacity: 1;
        transform: translateX(0);
        visibility: visible;
        pointer-events: auto;
    }

    .masterbar-mobile-category-panel-header {
        flex: 0 0 auto;
        min-height: 64px;
        padding: 10px 16px;
        border-bottom: 1px solid var(--masterbar-border);
        background: #fff;
    }

    .masterbar-mobile-category-back {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 30px;
        margin: 0 0 2px;
        padding: 0;
        border: 0;
        background: transparent;
        color: var(--masterbar-muted);
        font-size: 13px;
        font-weight: 650;
        cursor: pointer;
    }

    .masterbar-mobile-category-back:hover,
    .masterbar-mobile-category-back:focus {
        color: var(--masterbar-primary);
        background: transparent;
    }

    .masterbar-mobile-category-back-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        font-size: 26px;
        font-weight: 400;
        line-height: 1;
        transform: translateY(-1px);
    }

    .masterbar-mobile-category-heading {
        color: var(--masterbar-text);
        font-size: 16px;
        font-weight: 750;
        line-height: 1.25;
    }

    .masterbar-mobile-category-panel[data-masterbar-panel="root"] .masterbar-mobile-category-panel-header {
        display: flex;
        align-items: center;
        min-height: 58px;
        padding-top: 14px;
        padding-bottom: 14px;
    }

    .masterbar-mobile-category-scroll {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 24px;
    }

    .masterbar-mobile-category-all {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 0 18px;
        border-bottom: 1px solid #eef0f3;
        background: #f7f8fa;
        color: var(--masterbar-primary);
        font-size: 14px;
        font-weight: 700;
        text-decoration: none;
    }

    .masterbar-mobile-category-list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .masterbar-mobile-category-list > li {
        margin: 0;
        border-bottom: 1px solid #eef0f3;
    }

    .masterbar-mobile-category-next,
    .masterbar-mobile-category-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        width: 100%;
        min-height: 52px;
        margin: 0;
        padding: 0 18px;
        border: 0;
        border-radius: 0;
        background: #fff;
        color: var(--masterbar-text);
        font-size: 15px;
        font-weight: 650;
        line-height: 1.25;
        text-align: left;
        text-decoration: none;
        cursor: pointer;
    }

    .masterbar-mobile-category-next:hover,
    .masterbar-mobile-category-next:focus,
    .masterbar-mobile-category-link:hover,
    .masterbar-mobile-category-link:focus {
        background: #f7f8fa;
        color: var(--masterbar-primary);
    }

    .masterbar-mobile-category-next-icon {
        flex: 0 0 auto;
        color: var(--masterbar-muted);
        font-size: 27px;
        font-weight: 300;
        line-height: 1;
    }
}

@media (min-width: 921px) {
    .masterbar-mobile-category-navigator {
        display: none !important;
    }
}

    }

    body.masterbar-menu-open .masterbar-mobile-drawer-view.is-active {
        display: block !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-navigator {
        position: relative !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel {
        top: 0 !important;
        right: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel.is-active {
        position: relative !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel:not(.is-active) {
        position: absolute !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel-header {
        position: sticky !important;
        top: 60px !important;
        z-index: 15 !important;
        background: #fff !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-scroll {
        flex: 0 0 auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overscroll-behavior: auto !important;
        -webkit-overflow-scrolling: auto !important;
        padding-bottom: 28px !important;
    }

    body.masterbar-menu-open .masterbar-mobile-pages-menu {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overscroll-behavior: auto !important;
        -webkit-overflow-scrolling: auto !important;
        padding-bottom: 28px !important;
    }
}

/* ==========================================================
   MASTERBAR UI 0.5.11 – iOS: jeden natywny scroll wewnątrz draweru
   + zachowanie ostatniego poziomu kategorii obsługiwane w header.js
   ========================================================== */
@media (max-width: 920px) {
    body.masterbar-menu-open .masterbar-categories-panel {
        overflow: hidden !important;
        overscroll-behavior: none;
        touch-action: auto;
    }

    body.masterbar-menu-open .masterbar-mobile-drawer-tabs {
        position: relative !important;
        top: auto !important;
        flex: 0 0 auto !important;
    }

    body.masterbar-menu-open .masterbar-mobile-drawer-view {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        overflow: hidden !important;
    }

    body.masterbar-menu-open .masterbar-mobile-drawer-view.is-active {
        display: flex !important;
        flex-direction: column !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-navigator {
        position: relative !important;
        flex: 1 1 auto !important;
        height: 100% !important;
        min-height: 0 !important;
        overflow: hidden !important;
        touch-action: pan-y;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel,
    body.masterbar-menu-open .masterbar-mobile-category-panel:not(.is-active),
    body.masterbar-menu-open .masterbar-mobile-category-panel.is-active {
        position: absolute !important;
        inset: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-panel-header {
        position: relative !important;
        top: auto !important;
        flex: 0 0 auto !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-scroll {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior-y: contain !important;
        touch-action: pan-y !important;
        padding-bottom: max(28px, env(safe-area-inset-bottom)) !important;
    }

    body.masterbar-menu-open .masterbar-mobile-category-next,
    body.masterbar-menu-open .masterbar-mobile-category-link,
    body.masterbar-menu-open .masterbar-mobile-category-all,
    body.masterbar-menu-open .masterbar-mobile-category-back {
        touch-action: pan-y !important;
    }

    body.masterbar-menu-open .masterbar-mobile-pages-menu {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: 100% !important;
        max-height: none !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;


/* ==========================================================
   MASTERBAR Catalog Sidebar 0.3.1 — MOBILE TREE POLISH
   Czytelniejsza hierarchia, czysta typografia i "Zobacz wszystkie".
   ========================================================== */
@media (max-width: 920px) {
    /* Usuń ewentualne efekty tekstowe odziedziczone po motywie/headerze. */
    .masterbar-mobile-category-navigator,
    .masterbar-mobile-category-navigator * {
        text-shadow: none !important;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-synthesis: none;
    }

    .masterbar-mobile-category-panel-header {
        min-height: 82px;
        padding: 14px 20px 13px;
        border-bottom: 1px solid #dfe5ec !important;
        box-shadow: none !important;
    }

    .masterbar-mobile-category-back {
        min-height: 32px;
        margin-bottom: 7px;
        color: #31506f;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0;
    }

    .masterbar-mobile-category-back-icon {
        width: 16px;
        font-size: 22px;
    }

    .masterbar-mobile-category-heading {
        margin: 0;
        padding: 0;
        color: #14283d;
        font-size: 17px;
        font-weight: 750;
        line-height: 1.25;
        letter-spacing: -.01em;
    }

    /* Link do całej bieżącej kategorii tworzy wyraźny bufor
       pomiędzy nagłówkiem "Maszynki i trymery" a podkategoriami. */
    .masterbar-mobile-category-all {
        justify-content: space-between;
        gap: 14px;
        min-height: 50px;
        margin: 10px 14px 9px;
        padding: 0 14px;
        border: 1px solid #dfe7ef !important;
        border-radius: 9px;
        background: #f5f8fb !important;
        color: #153f67 !important;
        font-size: 13.5px;
        font-weight: 750;
        line-height: 1.25;
        box-shadow: none !important;
    }

    .masterbar-mobile-category-all:hover,
    .masterbar-mobile-category-all:focus {
        background: #edf4fa !important;
        border-color: #cddbe8 !important;
    }

    .masterbar-mobile-category-all-icon {
        flex: 0 0 auto;
        font-size: 18px;
        font-weight: 500;
        line-height: 1;
    }

    .masterbar-mobile-category-list {
        padding: 0 14px 14px;
    }

    .masterbar-mobile-category-list > li {
        border-bottom: 1px solid #edf1f5 !important;
    }

    .masterbar-mobile-category-list > li:last-child {
        border-bottom: 0 !important;
    }

    .masterbar-mobile-category-next,
    .masterbar-mobile-category-link {
        min-height: 52px;
        padding: 0 7px;
        color: #17283a !important;
        font-size: 14.5px;
        font-weight: 650;
        line-height: 1.3;
        letter-spacing: 0;
        box-shadow: none !important;
    }

    .masterbar-mobile-category-next:hover,
    .masterbar-mobile-category-next:focus,
    .masterbar-mobile-category-link:hover,
    .masterbar-mobile-category-link:focus {
        background: #f8fafc !important;
        color: #0f466f !important;
    }

    .masterbar-mobile-category-next-icon {
        color: #56718a;
        font-size: 23px;
        font-weight: 400;
    }

    /* Root: większy oddech, ale nadal kompaktowo. */
    .masterbar-mobile-category-panel[data-masterbar-panel="root"] .masterbar-mobile-category-scroll {
        padding-top: 6px;
    }

    .masterbar-mobile-category-panel[data-masterbar-panel="root"] .masterbar-mobile-category-list {
        padding-left: 14px;
        padding-right: 14px;
    }

    .masterbar-mobile-category-panel[data-masterbar-panel="root"] .masterbar-mobile-category-next,
    .masterbar-mobile-category-panel[data-masterbar-panel="root"] .masterbar-mobile-category-link {
        min-height: 54px;
        padding-left: 8px;
        padding-right: 8px;
        font-size: 15px;
        font-weight: 700;
    }
}


/* ==========================================================
   MASTERBAR Catalog Sidebar 0.3.2
   MOBILE: zawsze widoczne "Zobacz wszystkie"
   DESKTOP: spokojne, czytelne drzewo jak w wersji mobilnej
   ========================================================== */

/* DESKTOP — prawdziwa hierarchia zamiast płaskiej listy */
@media (min-width: 921px) {
    .mbcs-panel[data-mbcs-panel="categories"] {
        padding: 8px 6px 14px 4px;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-list {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-row {
        position: relative;
        display: flex;
        align-items: center;
        min-height: 38px;
        gap: 6px;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-row > a {
        flex: 1 1 auto;
        min-width: 0;
        padding: 8px 8px;
        border-radius: 7px;
        color: #17283a;
        font-size: 13.5px;
        font-weight: 650;
        line-height: 1.3;
        text-decoration: none;
        text-shadow: none !important;
        box-shadow: none !important;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-row > a:hover,
    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-row > a:focus {
        background: #f4f7fa;
        color: #123f67;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-item.is-current > .mbcs-cat-row > a {
        background: #eef4f9;
        color: #123f67;
        font-weight: 750;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-toggle {
        flex: 0 0 28px;
        width: 28px;
        height: 28px;
        margin-right: 2px;
        border: 0;
        border-radius: 50%;
        background: transparent;
        cursor: pointer;
        position: relative;
        box-shadow: none !important;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-toggle:hover {
        background: #eef3f7;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-toggle > span::before {
        content: "›";
        position: absolute;
        inset: 0;
        display: grid;
        place-items: center;
        color: #345d7d;
        font-size: 21px;
        font-weight: 400;
        line-height: 1;
        transition: transform .16s ease;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-toggle[aria-expanded="true"] > span::before {
        transform: rotate(90deg);
    }

    /* pionowa prowadnica i wcięcia kolejnych poziomów */
    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-list .mbcs-cat-list {
        position: relative;
        margin: 1px 0 4px 12px;
        padding: 0 0 0 13px;
        border-left: 1px solid #dde5ec;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-depth-1 .mbcs-cat-row > a {
        font-size: 13px;
        font-weight: 600;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-depth-2 .mbcs-cat-row > a,
    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-depth-3 .mbcs-cat-row > a {
        font-size: 12.5px;
        font-weight: 500;
        color: #41576b;
    }

    .mbcs-panel[data-mbcs-panel="categories"] .mbcs-cat-item + .mbcs-cat-item {
        margin-top: 1px;
    }
}

/* MOBILE — link "Zobacz wszystkie" siedzi teraz w nagłówku i ma pierwszeństwo
   nad ewentualnymi regułami z MASTERBAR UI. */
@media (max-width: 920px) {
    .masterbar-mobile-category-panel-header {
        height: auto !important;
        min-height: 0 !important;
        padding: 14px 20px 12px !important;
        overflow: visible !important;
    }

    .masterbar-mobile-category-heading {
        margin-bottom: 11px !important;
    }

    .masterbar-mobile-category-all {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        width: 100% !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        align-items: center !important;
        justify-content: space-between !important;
        border: 1px solid #dbe4ec !important;
        border-radius: 8px !important;
        background: #f5f8fb !important;
        color: #153f67 !important;
        text-decoration: none !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        text-shadow: none !important;
        box-shadow: none !important;
        z-index: 2;
    }

    .masterbar-mobile-category-scroll {
        border-top: 1px solid #edf1f5;
        padding-top: 5px;
    }

    .masterbar-mobile-category-list {
        padding-top: 0 !important;
    }
}


/* ==========================================================
   0.3.3 — FIX: dzieci kategorii nie mogą znikać po dodaniu
   "Zobacz wszystkie". Link jest pierwszym wierszem tej samej listy.
   ========================================================== */
@media (max-width: 920px) {
    .masterbar-mobile-category-panel-header {
        padding-bottom: 12px !important;
    }

    .masterbar-mobile-category-heading {
        margin-bottom: 0 !important;
    }

    .masterbar-mobile-category-scroll {
        display: block !important;
        min-height: 0 !important;
    }

    .masterbar-mobile-category-list {
        display: block !important;
        margin: 0 !important;
        padding: 6px 14px 14px !important;
        list-style: none !important;
    }

    .masterbar-mobile-category-all-row {
        display: block !important;
        margin: 0 0 8px !important;
        padding: 0 0 8px !important;
        border-bottom: 1px solid #e3e9ef !important;
    }

    .masterbar-mobile-category-all-row .masterbar-mobile-category-all {
        display: flex !important;
        width: 100% !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        border: 1px solid #dbe4ec !important;
        border-radius: 8px !important;
        background: #f5f8fb !important;
    }

    .masterbar-mobile-category-list > li:not(.masterbar-mobile-category-all-row) {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .masterbar-mobile-category-next,
    .masterbar-mobile-category-link {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}


/* ==========================================================
   MASTERBAR Catalog Sidebar 0.4.0
   Desktop: nawigacja stronami jak na telefonie.
   Mobile: pewny, zawsze widoczny "Zobacz wszystkie".
   ========================================================== */

@media (min-width: 921px) {
    .mbcs-step-nav {
        position: relative;
        width: 100%;
        overflow: hidden;
        background: #fff;
    }

    .mbcs-step-panel {
        display: none;
        width: 100%;
    }

    .mbcs-step-panel.is-active {
        display: block;
    }

    .mbcs-step-head {
        padding: 8px 8px 10px;
        border-bottom: 1px solid #e5ebf0;
    }

    .mbcs-step-back {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        min-height: 30px;
        margin: 0 0 8px;
        padding: 0 10px;
        border: 1px solid #d9e2ea;
        border-radius: 7px;
        background: #fff;
        color: #274a68;
        font-size: 12.5px;
        font-weight: 700;
        cursor: pointer;
        box-shadow: none;
    }

    .mbcs-step-back:hover {
        background: #f5f8fa;
    }

    .mbcs-step-title {
        margin: 0 0 9px;
        color: #162a3e;
        font-size: 15px;
        font-weight: 750;
        line-height: 1.25;
    }

    .mbcs-step-see-all {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        min-height: 38px;
        padding: 0 10px;
        border: 1px solid #dce5ec;
        border-radius: 7px;
        background: #f5f8fb;
        color: #153f67;
        font-size: 12.5px;
        font-weight: 700;
        line-height: 1.25;
        text-decoration: none;
        text-shadow: none;
        box-shadow: none;
    }

    .mbcs-step-see-all:hover {
        background: #edf4f9;
        color: #0d3a60;
    }

    .mbcs-step-list {
        padding: 4px 8px 10px;
    }

    .mbcs-step-next,
    .mbcs-step-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        width: 100%;
        min-height: 42px;
        margin: 0;
        padding: 0 9px;
        border: 0;
        border-bottom: 1px solid #edf1f4;
        border-radius: 0;
        background: #fff;
        color: #17283a;
        font-size: 13.5px;
        font-weight: 650;
        line-height: 1.3;
        text-align: left;
        text-decoration: none;
        cursor: pointer;
        text-shadow: none;
        box-shadow: none;
    }

    .mbcs-step-next:hover,
    .mbcs-step-link:hover {
        background: #f7f9fb;
        color: #123f67;
    }

    .mbcs-step-arrow {
        flex: 0 0 auto;
        color: #426783;
        font-size: 21px;
        font-weight: 400;
        line-height: 1;
    }
}

@media (max-width: 920px) {
    /* Unikalna klasa dodana w 0.4.0 — nie jest współdzielona z MASTERBAR Menu/UI. */
    body.masterbar-menu-open .mbcs-mobile-see-all-row,
    .mbcs-mobile-see-all-row {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 8px 0 9px !important;
        padding: 0 0 9px !important;
        overflow: visible !important;
        border-bottom: 1px solid #e3e9ef !important;
    }

    body.masterbar-menu-open .mbcs-mobile-see-all,
    .mbcs-mobile-see-all {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        min-height: 44px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        overflow: visible !important;
        border: 1px solid #dbe4ec !important;
        border-radius: 8px !important;
        background: #f5f8fb !important;
        color: #153f67 !important;
        font-size: 13px !important;
        font-weight: 750 !important;
        line-height: 1.25 !important;
        text-decoration: none !important;
        text-shadow: none !important;
        box-shadow: none !important;
        z-index: 50 !important;
    }

    body.masterbar-menu-open .mbcs-mobile-see-all span,
    .mbcs-mobile-see-all span {
        display: inline !important;
        visibility: visible !important;
        opacity: 1 !important;
        color: inherit !important;
    }
}


/* ==========================================================
   MASTERBAR Catalog Sidebar 0.4.7 — MOBILE NAV CLEAN
   Własna geometria mobilnego drzewa. Nie dziedziczymy już scroll/list
   ze starego MASTERBAR UI ani MASTERBAR Menu.
   ========================================================== */
@media (max-width: 920px) {
  body.mbcs-mobile-nav-owner [data-mbcs-mobile-nav] {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-panel {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(100%) !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-panel.is-active {
    z-index: 20 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-head {
    display: block !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 20px 12px !important;
    border-bottom: 1px solid #e4eaf0 !important;
    background: #fff !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-back {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 38px !important;
    margin: 0 0 16px !important;
    padding: 0 14px !important;
    border-radius: 8px !important;
    background: #123f68 !important;
    color: #fff !important;
    font-weight: 700 !important;
    text-shadow: none !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-title {
    margin: 0 0 12px !important;
    color: #15283b !important;
    font-size: 18px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-see-all {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 0 12px !important;
    border: 1px solid #dbe4ec !important;
    border-radius: 8px !important;
    background: #f5f8fb !important;
    color: #153f67 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-shadow: none !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-body {
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 8px 14px max(28px, env(safe-area-inset-bottom)) !important;
    background: #fff !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-list {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-item {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid #edf1f5 !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-next,
  body.mbcs-mobile-nav-owner .mbcs-owned-mobile-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    background: #fff !important;
    color: #15283b !important;
    font-size: 16px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-shadow: none !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}


/* ==========================================================
   MASTERBAR Catalog Sidebar 0.4.8 — MOBILE VISUAL RESTORE
   Tylko wygląd. Logika drzewa z 0.4.7 pozostaje bez zmian.
   Cel: powrót do czystego, płaskiego wyglądu bez bulletów i
   bez wpływu legacy CSS z MASTERBAR UI / MASTERBAR Menu.
   ========================================================== */
@media (max-width: 920px) {

  [data-mbcs-mobile-nav],
  [data-mbcs-mobile-nav] * {
    box-sizing: border-box !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-panel {
    font-family: inherit !important;
    color: #16283b !important;
    text-shadow: none !important;
  }

  /* nagłówek poziomu */
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-head {
    padding: 22px 20px 14px !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #e5eaf0 !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-back {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    width: auto !important;
    min-width: 88px !important;
    min-height: 40px !important;
    margin: 0 0 16px !important;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #123f68 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 2px 6px rgba(18,63,104,.12) !important;
    cursor: pointer !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-back > span:first-child {
    display: inline-block !important;
    margin: 0 !important;
    font-size: 22px !important;
    line-height: 1 !important;
    transform: translateY(-1px) !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-title {
    display: block !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #172b3e !important;
    font-size: 18px !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-shadow: none !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-see-all {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 11px 13px !important;
    border: 1px solid #dbe4ec !important;
    border-radius: 8px !important;
    background: #f5f8fb !important;
    color: #153f67 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  /* lista podkategorii */
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-body {
    padding: 8px 14px max(30px, env(safe-area-inset-bottom)) !important;
    background: #fff !important;
  }

  [data-mbcs-mobile-nav] ul.mbcs-owned-mobile-list {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    list-style-type: none !important;
  }

  [data-mbcs-mobile-nav] ul.mbcs-owned-mobile-list > li.mbcs-owned-mobile-item {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    list-style-type: none !important;
    border: 0 !important;
    border-bottom: 1px solid #edf1f5 !important;
    background: #fff !important;
  }

  [data-mbcs-mobile-nav] ul.mbcs-owned-mobile-list > li.mbcs-owned-mobile-item::marker,
  [data-mbcs-mobile-nav] ul.mbcs-owned-mobile-list > li.mbcs-owned-mobile-item::before {
    content: none !important;
    display: none !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-next,
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-link {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #17283a !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-next > span:last-child {
    flex: 0 0 auto !important;
    color: #123f68 !important;
    font-size: 23px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  [data-mbcs-mobile-nav] .mbcs-owned-mobile-next:hover,
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-next:focus,
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-link:hover,
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-link:focus {
    background: #f7f9fb !important;
    color: #123f68 !important;
    outline: 0 !important;
  }

  /* root ma taki sam czysty wygląd jak kolejne poziomy */
  [data-mbcs-mobile-nav] .mbcs-owned-mobile-panel[data-masterbar-panel="root"] .mbcs-owned-mobile-body {
    padding-top: 10px !important;
  }

  /* usuń wpływ starych klas z Menu/UI na elementy nowego drzewa */
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-panel,
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-body,
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-list,
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-item,
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-next,
  body.masterbar-menu-open [data-mbcs-mobile-nav] .mbcs-owned-mobile-link {
    text-shadow: none !important;
  }
}


/* MASTERBAR Catalog Sidebar 0.4.9 – spokojniejsze lokalne zakładki.
   Cel: odróżnić lokalne „Kategorie / Filtry” od globalnego przycisku
   „Kategorie” w headerze. Tylko desktop; mobile pozostaje bez zmian. */
@media (min-width:1025px){
  .mbcs-tabs{
    gap:18px!important;
    padding:13px 8px 9px 0!important;
    background:#fff!important;
    border-bottom:1px solid #e8edf2!important;
  }
  .mbcs-tab,
  button.mbcs-tab{
    min-height:34px!important;
    padding:6px 4px 8px!important;
    border-radius:0!important;
    background:#fff!important;
    color:#475569!important;
    -webkit-text-fill-color:#475569!important;
    position:relative!important;
  }
  .mbcs-tab.is-active,
  button.mbcs-tab.is-active{
    background:#fff!important;
    color:#0d3557!important;
    -webkit-text-fill-color:#0d3557!important;
  }
  .mbcs-tab.is-active::after,
  button.mbcs-tab.is-active::after{
    content:""!important;
    position:absolute!important;
    left:22%!important;
    right:22%!important;
    bottom:-10px!important;
    height:2px!important;
    border-radius:2px!important;
    background:#0d5f9a!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.0 – finalny oddech desktop.
   Delikatnie oddziela lokalne Kategorie / Filtry od globalnej nawigacji.
   Mobile bez zmian. */
@media (min-width:1025px){
  .mbcs-tabs{
    margin-top:8px!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.1 – GOLD NAV COMPANION
   Złota linia w globalnym menu przejmuje rolę separatora, dlatego usuwamy
   testowe 8 px pustego odstępu z 0.5.0. Lokalne zakładki pozostają spokojne.
   Tylko desktop. */
@media (min-width:1025px){
  .mbcs-tabs{
    margin-top:0!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.2 – CENTRAL PALETTE ADAPTER */
@media (min-width:1025px){
  .mbcs-tab,
  button.mbcs-tab{
    color:var(--mb-color-text,#172033)!important;
  }
  .mbcs-tab.is-active,
  button.mbcs-tab.is-active{
    color:var(--mb-color-primary,#0D2F55)!important;
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    border-radius:8px!important;
  }
  .mbcs-tab.is-active::after,
  button.mbcs-tab.is-active::after{
    background:var(--mb-color-primary,#0D2F55)!important;
  }
}
.mbcs-panel a:hover,
.mbcs-panel button:hover{
  color:var(--mb-color-primary,#0D2F55);
}
.mbcs-panel .masterbar-filter-submit,
.mbcs-filter-actions button[type="submit"],
.mbcs-filter-actions .button-primary{
  background:var(--mb-color-primary,#0D2F55)!important;
  border-color:var(--mb-color-primary,#0D2F55)!important;
  color:var(--mb-color-contrast,#FFFFFF)!important;
}
.mbcs-panel .masterbar-filter-submit:hover,
.mbcs-filter-actions button[type="submit"]:hover,
.mbcs-filter-actions .button-primary:hover{
  background:var(--mb-color-primary-hover,#1F4E8C)!important;
  border-color:var(--mb-color-primary-hover,#1F4E8C)!important;
}


/* MASTERBAR Catalog Sidebar 0.5.3 – SINGLE SCROLL + STICKY FILTER BUTTON
   Cel: stabilna obsługa 6–8 (i więcej) filtrów na desktopie.
   Jeden scroll dla całego panelu; bez zagnieżdżonych suwaków.
   Przycisk Filtruj jest stale dostępny przy dolnej krawędzi sidebara.
   Mobile bez zmian. */
@media (min-width:1025px){
  .mbcs-wrap{
    position:sticky!important;
    top:var(--mbcs-sticky-top,92px)!important;
    max-height:calc(100vh - var(--mbcs-sticky-top,92px) - 14px)!important;
    overflow:hidden!important;
  }

  /* Jedynym przewijanym obszarem jest cały aktywny panel. */
  .mbcs-panel{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    -webkit-overflow-scrolling:auto!important;
  }

  .mbcs-panel[data-mbcs-panel="filters"]{
    max-height:calc(100vh - var(--mbcs-sticky-top,92px) - 60px)!important;
    padding-bottom:84px!important;
  }

  /* Wyłączamy wewnętrzne suwaki list producentów / opcji.
     Przy dużej liczbie pozycji przewijany jest tylko cały panel filtrów. */
  .mbcs-panel[data-mbcs-panel="filters"] .mbcs-brand-list,
  .mbcs-panel[data-mbcs-panel="filters"] .masterbar-brand-list,
  .mbcs-panel[data-mbcs-panel="filters"] .mbcs-option-list,
  .mbcs-panel[data-mbcs-panel="filters"] .masterbar-filter-options{
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
    scrollbar-width:auto!important;
  }

  /* Oryginalny przycisk pozostaje w formularzu jako bezpieczny fallback,
     ale dock przejmuje codzienną obsługę. */
  .mbcs-filter-dock{
    display:none;
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:12;
    padding:10px 18px 12px 8px;
    background:linear-gradient(to bottom,rgba(255,255,255,.82) 0%,#fff 28%,#fff 100%);
    border-top:1px solid var(--mb-color-border,#DFE5EC);
    box-shadow:0 -8px 18px rgba(15,23,42,.05);
  }

  .mbcs-wrap.mbcs-filters-active .mbcs-filter-dock{
    display:block;
  }

  .mbcs-filter-dock__button{
    width:100%;
    min-height:42px;
    margin:0;
    padding:9px 14px;
    border:1px solid var(--mb-color-primary,#0D2F55);
    border-radius:7px;
    background:var(--mb-color-primary,#0D2F55);
    color:var(--mb-color-contrast,#FFFFFF);
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF);
    font:inherit;
    font-weight:700;
    line-height:1.2;
    cursor:pointer;
    box-shadow:none;
  }

  .mbcs-filter-dock__button:hover,
  .mbcs-filter-dock__button:focus-visible{
    background:var(--mb-color-primary-hover,#1F4E8C);
    border-color:var(--mb-color-primary-hover,#1F4E8C);
    color:var(--mb-color-contrast,#FFFFFF);
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF);
    outline:none;
  }
}

@media (max-width:1024px){
  .mbcs-filter-dock{
    display:none!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.6 – DIRECTIONAL TAB SWITCH
   Wariant wizualny nr 2: aktywna zakładka jest mocnym granatowym kaflem,
   a strzałka na AKTYWNEJ zakładce wskazuje kierunek przejścia do drugiego widoku.
   Kategorie aktywne: Kategorie → Filtry. Filtry aktywne: Kategorie ← Filtry.
   Tylko desktop; mobile bez zmian. */
@media (min-width:1025px){
  .mbcs-tabs{
    gap:8px!important;
    padding:10px 8px 10px 0!important;
    border-bottom:1px solid var(--mb-color-border,#DFE5EC)!important;
  }
  .mbcs-tab,
  button.mbcs-tab{
    min-height:40px!important;
    padding:9px 14px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:var(--mb-color-soft,#F5F7FA)!important;
    color:var(--mb-color-text,#172033)!important;
    -webkit-text-fill-color:var(--mb-color-text,#172033)!important;
    font-weight:700!important;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
  }
  .mbcs-tab:hover,
  button.mbcs-tab:hover{
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    border-color:var(--mb-color-border,#DFE5EC)!important;
    color:var(--mb-color-primary,#0D2F55)!important;
    -webkit-text-fill-color:var(--mb-color-primary,#0D2F55)!important;
  }
  .mbcs-tab.is-active,
  button.mbcs-tab.is-active{
    background:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
    box-shadow:0 2px 7px rgba(15,47,85,.14)!important;
  }
  /* Kasujemy wcześniejszą kreskę pod aktywną zakładką. */
  .mbcs-tab.is-active::after,
  button.mbcs-tab.is-active::after{
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:auto!important;
    height:auto!important;
    border-radius:0!important;
    background:none!important;
  }
  /* Aktywne Kategorie wskazują w prawo – w stronę Filtrów. */
  .mbcs-tab[data-mbcs-tab="categories"].is-active::after,
  button.mbcs-tab[data-mbcs-tab="categories"].is-active::after{
    content:"  →"!important;
    display:inline!important;
    margin-left:7px!important;
    font-size:17px!important;
    line-height:1!important;
    font-weight:700!important;
  }
  /* Aktywne Filtry wskazują w lewo – w stronę Kategorii. */
  .mbcs-tab[data-mbcs-tab="filters"].is-active::before,
  button.mbcs-tab[data-mbcs-tab="filters"].is-active::before{
    content:"←  "!important;
    display:inline!important;
    margin-right:7px!important;
    font-size:17px!important;
    line-height:1!important;
    font-weight:700!important;
  }
  .mbcs-tab[data-mbcs-tab="filters"]:not(.is-active)::before{
    content:none!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.7 – FINAL DIRECTIONAL TABS + SINGLE FILTER BUTTON */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    padding:10px 8px!important;
    background:#fff!important;
    border-bottom:1px solid var(--mb-color-border,#DFE5EC)!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:40px!important;
    padding:9px 12px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:var(--mb-color-soft,#F5F7FA)!important;
    color:var(--mb-color-text,#172033)!important;
    -webkit-text-fill-color:var(--mb-color-text,#172033)!important;
    font-weight:700!important;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab:hover{
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    border-color:var(--mb-color-border,#DFE5EC)!important;
    color:var(--mb-color-primary,#0D2F55)!important;
    -webkit-text-fill-color:var(--mb-color-primary,#0D2F55)!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab.is-active{
    background:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
    box-shadow:0 2px 7px rgba(15,47,85,.14)!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab::before,
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab::after{
    content:none!important;
    display:none!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab-arrow{
    display:none!important;
    flex:0 0 auto!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:800!important;
    color:inherit!important;
    -webkit-text-fill-color:currentColor!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab[data-mbcs-tab="categories"].is-active .mbcs-tab-arrow-right,
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap .mbcs-tab[data-mbcs-tab="filters"].is-active .mbcs-tab-arrow-left{
    display:inline-block!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-panel[data-mbcs-panel="filters"] .mbcs-original-submit-hidden{
    display:none!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.5.8 – VISUAL 2 FINAL
   Dokładnie wariant nr 2: granat + jasny błękit, czytelne kierunki,
   więcej oddechu nad przyciskiem Wróć i tylko jeden widoczny Filtruj. */
@media (min-width:1025px){
  .mbcs-wrap > .mbcs-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:0 0 14px!important;
    padding:10px 8px 10px!important;
    background:#fff!important;
    border-bottom:1px solid #DFE5EC!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:42px!important;
    padding:9px 12px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:#E9F1FB!important;
    color:#0D2F55!important;
    -webkit-text-fill-color:#0D2F55!important;
    font-weight:700!important;
    box-shadow:none!important;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab:hover{
    background:#DDEAF8!important;
    border-color:#C8D8EA!important;
    color:#0D2F55!important;
    -webkit-text-fill-color:#0D2F55!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab.is-active{
    background:#0D2F55!important;
    border-color:#0D2F55!important;
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
    box-shadow:0 2px 7px rgba(13,47,85,.18)!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab::before,
  .mbcs-wrap > .mbcs-tabs > .mbcs-tab::after{
    content:none!important;
    display:none!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab .mbcs-tab-arrow{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    margin:0!important;
    overflow:hidden!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab[data-mbcs-tab="categories"].is-active .mbcs-tab-arrow-right,
  .mbcs-wrap > .mbcs-tabs > .mbcs-tab[data-mbcs-tab="filters"].is-active .mbcs-tab-arrow-left{
    display:inline-block!important;
    visibility:visible!important;
    width:auto!important;
    margin:0!important;
    overflow:visible!important;
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:800!important;
  }

  /* Więcej przestrzeni przed zawartością panelu, żeby "Wróć" nie wchodziło pod zakładki. */
  .mbcs-wrap > .mbcs-panel{
    padding-top:2px!important;
  }

  /* Gdy działa sticky dock, oryginalny submit formularza ma być niewidoczny.
     Zostaje w DOM jako submitter i jest wywoływany przez dock w sidebar.js. */
  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] .masterbar-filter-submit,
  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] .mbcs-apply,
  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] form button[type="submit"],
  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] form input[type="submit"]{
    display:none!important;
  }

  /* Sam dock pozostaje jedynym widocznym przyciskiem Filtruj. */
  .mbcs-wrap.mbcs-filters-active > .mbcs-filter-dock{
    display:block!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.0 – CENTRAL PALETTE + CLEAN TAB STATE
   Wszystkie kolory pochodzą z MASTERBAR Theme Colors.
   Brak twardo wpisanych kolorów marki w aktywnych zakładkach i docku. */
@media (min-width:1025px){
  .mbcs-wrap > .mbcs-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:0 0 14px!important;
    padding:10px 8px 10px!important;
    background:var(--mb-color-surface,#FFFFFF)!important;
    border-bottom:1px solid var(--mb-color-border,#DFE5EC)!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:42px!important;
    padding:9px 12px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    color:var(--mb-color-primary,#0D2F55)!important;
    -webkit-text-fill-color:var(--mb-color-primary,#0D2F55)!important;
    font-weight:700!important;
    box-shadow:none!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab:hover{
    border-color:var(--mb-color-border,#DFE5EC)!important;
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    color:var(--mb-color-primary-hover,#1F4E8C)!important;
    -webkit-text-fill-color:var(--mb-color-primary-hover,#1F4E8C)!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab.is-active{
    background:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
    box-shadow:0 2px 7px rgba(15,47,85,.14)!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab::before,
  .mbcs-wrap > .mbcs-tabs > .mbcs-tab::after{
    content:none!important;
    display:none!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab .mbcs-tab-arrow{
    color:inherit!important;
    -webkit-text-fill-color:currentColor!important;
    font-size:18px!important;
    line-height:1!important;
    font-weight:800!important;
  }

  /* Jeden przycisk Filtruj i wyłącznie w widoku Filtry. */
  .mbcs-wrap:not(.mbcs-filters-active) > .mbcs-filter-dock{
    display:none!important;
  }

  .mbcs-wrap.mbcs-filters-active > .mbcs-filter-dock{
    display:block!important;
  }

  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] .mbcs-original-submit-hidden{
    display:none!important;
  }

  .mbcs-filter-dock__button{
    background:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
  }

  .mbcs-filter-dock__button:hover,
  .mbcs-filter-dock__button:focus-visible{
    background:var(--mb-color-primary-hover,#1F4E8C)!important;
    border-color:var(--mb-color-primary-hover,#1F4E8C)!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.1 – ACTIVE STATE + SINGLE SUBMIT SAFETY */
@media (min-width:1025px){
  .mbcs-wrap > .mbcs-tabs > .mbcs-tab.is-active{
    background:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
  }

  .mbcs-wrap > .mbcs-tabs > .mbcs-tab:not(.is-active){
    background:var(--mb-color-primary-soft,#E9F1FB)!important;
    color:var(--mb-color-primary,#0D2F55)!important;
    -webkit-text-fill-color:var(--mb-color-primary,#0D2F55)!important;
  }

  .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"] .mbcs-original-submit-hidden{
    display:none!important;
  }

  .mbcs-wrap:not(.mbcs-filters-active) > .mbcs-filter-dock{
    display:none!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.2 – CENTRAL PALETTE STICKY FILTER BUTTON
   Sticky "Filtruj" korzysta z tej samej palety co aktywne zakładki i przyciski sklepu. */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock .mbcs-filter-dock__button{
    background:var(--mb-color-primary,var(--masterbar-color-primary,#0D2F55))!important;
    border-color:var(--mb-color-primary,var(--masterbar-color-primary,#0D2F55))!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
    box-shadow:none!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock .mbcs-filter-dock__button:hover,
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock .mbcs-filter-dock__button:focus-visible{
    background:var(--mb-color-primary-hover,var(--mb-color-primary,var(--masterbar-color-primary,#0D2F55)))!important;
    border-color:var(--mb-color-primary-hover,var(--mb-color-primary,var(--masterbar-color-primary,#0D2F55)))!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.3 – DYNAMIC DOCK PALETTE FIX
   Przycisk jest tworzony po DOMContentLoaded przez sidebar.js, dlatego
   końcowy kolor jest dodatkowo synchronizowany z centralną paletą w JS. */
@media (min-width:1025px){
  html body.masterbar-catalog-sidebar-enabled .mbcs-wrap.mbcs-filters-active
  > .mbcs-filter-dock > button.mbcs-filter-dock__button{
    background:var(--mb-color-primary,#0D2F55)!important;
    background-color:var(--mb-color-primary,#0D2F55)!important;
    border-color:var(--mb-color-primary,#0D2F55)!important;
    color:var(--mb-color-contrast,#FFFFFF)!important;
    -webkit-text-fill-color:var(--mb-color-contrast,#FFFFFF)!important;
    box-shadow:none!important;
  }
}

/* MASTERBAR Catalog Sidebar 0.6.5 – DESKTOP FILTER DOCK ALWAYS VISIBLE
   Desktop: cały sidebar ma wysokość dostępną w viewport. Aktywny panel przewija
   się wewnątrz, a dock Filtruj zajmuje osobny, stały rząd na dole sidebara.
   Dzięki temu rozwinięcie długiej listy Producent nie wypycha przycisku poza ekran. */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap{
    display:flex!important;
    flex-direction:column!important;
    height:calc(100vh - var(--mbcs-sticky-top,92px) - 14px)!important;
    max-height:calc(100vh - var(--mbcs-sticky-top,92px) - 14px)!important;
    overflow:hidden!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-tabs{
    position:relative!important;
    top:auto!important;
    flex:0 0 auto!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel[data-mbcs-panel="filters"]{
    padding-bottom:18px!important;
  }

  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    flex:0 0 auto!important;
    width:100%!important;
    margin:0!important;
    padding:10px 18px 12px 8px!important;
    background:var(--mb-color-surface,#FFFFFF)!important;
    border-top:1px solid var(--mb-color-border,#DFE5EC)!important;
    box-shadow:0 -8px 18px rgba(15,23,42,.05)!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.6 — REAL VIEWPORT HEIGHT DOCK FIX
   --mbcs-available-height is calculated from the sidebar's actual top edge,
   so the dock remains visible even before the sticky state has fully engaged. */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap{
    height:var(--mbcs-available-height,calc(100vh - var(--mbcs-sticky-top,92px) - 14px))!important;
    max-height:var(--mbcs-available-height,calc(100vh - var(--mbcs-sticky-top,92px) - 14px))!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel{
    min-height:0!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.7 — TRUE THREE-ZONE DESKTOP LAYOUT
   Header/tabs = fixed row, active panel = the only scroll area, filter dock = fixed row.
   This final rule intentionally overrides legacy 0.5.x/0.6.x max-height rules. */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap{
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
    align-content:stretch!important;
    box-sizing:border-box!important;
    height:calc(100dvh - var(--mbcs-sticky-top,92px) - 14px)!important;
    max-height:calc(100dvh - var(--mbcs-sticky-top,92px) - 14px)!important;
    min-height:260px!important;
    overflow:hidden!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-tabs{
    grid-row:1!important;
    min-height:0!important;
    margin-bottom:0!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel{
    grid-row:2!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    padding-bottom:18px!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel:not(.is-active){
    display:none!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel.is-active{
    display:block!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock{
    grid-row:3!important;
    position:relative!important;
    inset:auto!important;
    box-sizing:border-box!important;
    flex:none!important;
    width:100%!important;
    margin:0!important;
    padding:10px 18px 12px 8px!important;
    background:var(--mb-color-surface,#fff)!important;
    border-top:1px solid var(--mb-color-border,#DFE5EC)!important;
    box-shadow:0 -8px 18px rgba(15,23,42,.05)!important;
    z-index:20!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap.mbcs-filters-active > .mbcs-filter-dock{
    display:block!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap:not(.mbcs-filters-active) > .mbcs-filter-dock{
    display:none!important;
  }
}


/* MASTERBAR Catalog Sidebar 0.6.8 — DESKTOP AUTO-FILTER / NO DOCK
   Checkboxy filtrują automatycznie, więc historyczny przycisk Filtruj nie zajmuje
   już trzeciego rzędu. Panel filtrów dostaje całą pozostałą wysokość viewportu. */
@media (min-width:1025px){
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap{
    grid-template-rows:auto minmax(0,1fr)!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-filter-dock{
    display:none!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-wrap > .mbcs-panel{
    grid-row:2!important;
    padding-bottom:18px!important;
  }
  body.masterbar-catalog-sidebar-enabled .mbcs-filter-form .masterbar-filter-submit,
  body.masterbar-catalog-sidebar-enabled .mbcs-filter-form .mbcs-apply,
  body.masterbar-catalog-sidebar-enabled .mbcs-filter-form button[type="submit"],
  body.masterbar-catalog-sidebar-enabled .mbcs-filter-form input[type="submit"]{
    display:none!important;
  }
}

/* 0.6.13 — /promocje/: używamy natywnej siatki WooCommerce/Astra.
   Nie wymuszamy własnego CSS Grid, bo shortcode [products] ma własne klasy columns-X
   i Astra poprawnie skaluje je razem z lewym sidebarem. Wyrównujemy tylko kafle. */
body.mbcs-promotions-page #primary,
body.mbcs-promotions-page #primary .site-main,
body.mbcs-promotions-page #primary .entry-content {
  min-width: 0;
}
body.mbcs-promotions-page #primary .woocommerce ul.products {
  width: 100%;
}
body.mbcs-promotions-page #primary .woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
  align-self: stretch;
}
body.mbcs-promotions-page #primary .woocommerce ul.products li.product .button {
  margin-top: auto;
}
@media (max-width: 921px) {
  body.mbcs-promotions-page #primary,
  body.mbcs-promotions-page #primary .site-main,
  body.mbcs-promotions-page #primary .entry-content,
  body.mbcs-promotions-page #primary .woocommerce {
    min-width: 0;
    max-width: 100%;
  }
}
