/* boomshar filter redesign v2 — horizontal bar + popovers */
:root{--bsf-accent:#c0398b;--bsf-line:#e7e2e6;}

/* hide old sidebar column, free the grid */
body.bsf-on .col-lg-3{display:none !important;}
body.bsf-on #products_list,
body.bsf-on .col-lg-9{flex:0 0 100% !important;max-width:100% !important;}
body.bsf-on .sidebar-breadcrumbs{display:block;}

/* relocated form becomes the bar host */
.bsf-form{width:100%;margin:0 0 8px;}
/* hide leftover original widget shells / informer; show only what we moved into popovers */
.bsf-form .widget{display:none !important;}
.bsf-form #filter_informer{display:none !important;}
.bsf-pop .widget{display:block !important;}
.bsf-pop .widget-title{display:none !important;}

/* the bar */
.bsf{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--bsf-line);}
.bsf-btn{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--bsf-line);border-radius:24px;padding:8px 14px;font-size:14px;line-height:1;cursor:pointer;color:#333;white-space:nowrap;transition:border-color .15s,box-shadow .15s;}
.bsf-btn:hover{border-color:#cbb7c4;}
.bsf-btn.is-open{border-color:var(--bsf-accent);box-shadow:0 0 0 2px rgba(192,57,139,.12);}
.bsf-btn .bsf-ico{font-size:15px;line-height:1;}
.bsf-btn .bsf-cnt{display:none;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bsf-accent);color:#fff;font-size:11px;font-weight:700;align-items:center;justify-content:center;}
.bsf-btn.has-sel .bsf-cnt{display:inline-flex;}
.bsf-btn .bsf-caret{border:solid #9b8a95;border-width:0 2px 2px 0;display:inline-block;padding:2.5px;transform:rotate(45deg);margin-left:1px;margin-top:-3px;}
.bsf-btn.is-open .bsf-caret{transform:rotate(-135deg);margin-top:2px;}

/* flag toggles */
.bsf-toggle{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:#333;cursor:pointer;padding:6px 4px;white-space:nowrap;}
.bsf-toggle input{position:absolute;opacity:0;width:0;height:0;}
.bsf-sw{position:relative;width:38px;height:22px;border-radius:11px;background:#d8d0d5;transition:background .15s;flex:0 0 auto;}
.bsf-sw::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 2px rgba(0,0,0,.2);}
.bsf-toggle input:checked + .bsf-sw{background:var(--bsf-accent);}
.bsf-toggle input:checked + .bsf-sw::after{transform:translateX(16px);}
.bsf-spacer{flex:1 1 auto;}

/* popovers */
.bsf-pop{position:absolute;z-index:60;top:100%;left:0;min-width:240px;max-width:380px;background:#fff;border:1px solid var(--bsf-line);border-radius:14px;box-shadow:0 12px 34px rgba(0,0,0,.16);padding:14px;display:none;}
.bsf-pop.is-open{display:block;}
.bsf-pop .bsf-pop-search{width:100%;box-sizing:border-box;margin:0 0 10px;padding:8px 10px;border:1px solid var(--bsf-line);border-radius:8px;font-size:13px;}
.bsf-pop-scroll{max-height:320px;overflow-y:auto;}
.bsf-pop-foot{display:flex;gap:10px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--bsf-line);}
.bsf-apply{flex:1 1 auto;background:var(--bsf-accent);color:#fff;border:none;border-radius:8px;padding:10px;font-size:14px;font-weight:600;cursor:pointer;}
.bsf-clear{background:none;border:none;color:#8a8a8a;font-size:13px;cursor:pointer;text-decoration:underline;}

/* facet contents inside popover */
.bsf-pop .widget-title,.bsf-pop .mb-2.mt-3,.bsf-pop .ui-range-slider-footer{display:none !important;}
.bsf-pop .visual-checkbox-wrapper{display:flex;flex-wrap:wrap;gap:8px;}
.bsf-pop .custom-control,.bsf-pop .custom-checkbox{margin:0;}
.bsf-pop .price-inputs{display:flex;align-items:center;gap:8px;margin-top:14px;}
.bsf-pop .price-inputs input{width:92px;padding:8px;border:1px solid var(--bsf-line);border-radius:8px;font-size:13px;}
.bsf-pop .ui-range-slider{margin:6px 4px 2px;}

/* povod / list facets: nicer rows */
.bsf-pop .bsf-list{display:block;}
.bsf-pop .bsf-list .custom-checkbox{display:block;padding:6px 2px;border-radius:6px;}
.bsf-pop .bsf-list .custom-checkbox:hover{background:#faf3f8;}

/* applied chips row */
.bsf-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0;}
.bsf-chips .bsf-chip{display:inline-flex;align-items:center;gap:6px;background:#f5e6ef;color:#7a2057;border-radius:16px;padding:5px 10px;font-size:13px;line-height:1.2;}
.bsf-chips .bsf-chip i.dot{width:13px;height:13px;border-radius:50%;border:1px solid rgba(0,0,0,.15);display:inline-block;}
.bsf-chips .bsf-chip b{cursor:pointer;font-weight:700;font-size:15px;}
.bsf-chips .bsf-reset{background:none;color:var(--bsf-accent);text-decoration:underline;cursor:pointer;font-size:13px;}
.bsf-found{color:#777;font-size:13px;margin-left:auto;}

/* product grid 5-in-row on desktop */
@media(min-width:992px){
  body.bsf-on #products_list .row.listing > .product{flex:0 0 20% !important;max-width:20% !important;}
}

/* overlay (mobile + popover backdrop) */
.bsf-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:55;opacity:0;visibility:hidden;transition:opacity .2s;}
.bsf-overlay.is-open{opacity:1;visibility:visible;}
@media(min-width:992px){.bsf-overlay{background:transparent;}}

/* ---------- MOBILE ---------- */
@media(max-width:991px){
  .bsf{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;border-bottom:none;padding:8px 0;gap:8px;scrollbar-width:none;}
  .bsf::-webkit-scrollbar{display:none;}
  .bsf-spacer{display:none;}
  .bsf-toggle{flex:0 0 auto;}
  /* popovers become bottom-sheet */
  .bsf-pop{position:fixed;left:0;right:0;bottom:0;top:auto;max-width:none;min-width:0;width:100%;border-radius:18px 18px 0 0;transform:translateY(102%);transition:transform .25s;display:block;max-height:82vh;overflow-y:auto;z-index:60;padding:18px 16px 16px;}
  .bsf-pop.is-open{transform:translateY(0);}
  .bsf-pop-scroll{max-height:56vh;}
  .bsf-pop-foot{position:sticky;bottom:0;background:#fff;}
  .bsf-sheet-title{font-weight:700;font-size:16px;margin:0 0 12px;}
  .bsf-sheet-x{position:absolute;top:14px;right:14px;font-size:22px;cursor:pointer;color:#555;background:none;border:none;}
  /* products 2-in-row on mobile (keep theme) */
  body.bsf-on #products_list .row.listing > .product{flex:0 0 50% !important;max-width:50% !important;}
}
@media(min-width:992px){.bsf-sheet-title,.bsf-sheet-x{display:none;}}
