/* JBA v16.20.72 — professional multi-select accordion filters */
:root{
  --jba-filter-navy:#082f49;
  --jba-filter-navy-2:#124f78;
  --jba-filter-gold:#e5aa35;
  --jba-filter-gold-soft:#fff8e8;
  --jba-filter-text:#18324a;
  --jba-filter-muted:#738297;
  --jba-filter-line:#e3eaf1;
  --jba-filter-soft:#f7f9fc;
  --jba-filter-danger:#d83a50;
}

body.jba-v1670-shop-page #jba-adv-sidebar-filter.jba-v162072-filter{
  overflow:visible!important;
  margin-top:15px!important;
  border:1px solid #dfe7ef!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(8,47,73,.08)!important;
}

body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:76px!important;
  padding:16px 18px!important;
  border:0!important;
  border-bottom:1px solid var(--jba-filter-line)!important;
  border-radius:22px 22px 0 0!important;
  background:linear-gradient(135deg,#fff,#f7fafc)!important;
}

body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head::before{display:none!important}

.jba-v162072-filter__head-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  min-width:0;
  text-align:right;
}

.jba-v162072-filter__eyebrow{
  color:#a36f13;
  font-size:9px;
  font-weight:800;
}

body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head .panel-title{
  margin:0!important;
  color:var(--jba-filter-navy)!important;
  font-size:17px!important;
  font-weight:900!important;
  line-height:1.6!important;
}

.jba-v162072-filter__active-count{
  display:grid;
  place-items:center;
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:12px;
  background:var(--jba-filter-navy);
  color:#fff;
  font-size:12px;
  font-weight:900;
  box-shadow:0 7px 18px rgba(8,47,73,.18);
}

.jba-v162072-filter [hidden]{display:none!important}

body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__body{
  padding:14px!important;
  background:#fff!important;
  border-radius:0 0 22px 22px!important;
}

.jba-v162072-filter__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px;
  padding:10px 12px;
  border:1px solid #e9edf2;
  border-radius:13px;
  background:#fafbfd;
  color:var(--jba-filter-muted);
  font-size:10px;
}

.jba-v162072-filter__summary b{
  color:var(--jba-filter-navy);
  font-size:12px;
  font-weight:900;
}

.jba-v162072-clear-all{
  padding:0;
  border:0;
  background:transparent;
  color:var(--jba-filter-danger);
  font:inherit;
  font-size:9px;
  font-weight:850;
  cursor:pointer;
}

.jba-v162072-active-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:12px;
}

.jba-v162072-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  max-width:100%;
  padding:4px 9px;
  border:1px solid #eadcbf;
  border-radius:999px;
  background:#fffaf0;
  color:#725622;
  font:inherit;
  font-size:9px;
  font-weight:800;
  cursor:pointer;
}

.jba-v162072-chip span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.jba-v162072-chip i{
  display:grid;
  place-items:center;
  flex:0 0 16px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:rgba(114,86,34,.1);
  font-style:normal;
  font-size:12px;
  line-height:1;
}

.jba-v162072-filter-form{
  display:grid;
  gap:10px;
  margin:0!important;
}

.jba-v162072-group{
  overflow:hidden;
  margin:0;
  border:1px solid var(--jba-filter-line);
  border-radius:15px;
  background:#fff;
  transition:border-color .18s ease,box-shadow .18s ease;
}

.jba-v162072-group.is-active,
.jba-v162072-group:has(input:checked:not([value="4"]):not([value="new"])){
  border-color:#d5c08f;
  box-shadow:0 5px 18px rgba(150,109,29,.06);
}

.jba-v162072-group > summary{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto 26px;
  gap:9px;
  align-items:center;
  min-height:54px;
  padding:9px 11px;
  list-style:none;
  cursor:pointer;
  user-select:none;
  background:linear-gradient(135deg,#fff,#f9fbfd);
}

.jba-v162072-group > summary::-webkit-details-marker{display:none}

.jba-v162072-group > summary:focus-visible{
  outline:3px solid rgba(18,79,120,.12);
  outline-offset:-3px;
}

.jba-v162072-group__icon{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:10px;
  background:#edf4f8;
  color:var(--jba-filter-navy-2);
  font-size:14px;
  font-weight:900;
}

.jba-v162072-group.is-active .jba-v162072-group__icon,
.jba-v162072-group:has(input:checked:not([value="4"]):not([value="new"])) .jba-v162072-group__icon{
  background:var(--jba-filter-gold-soft);
  color:#a66c05;
}

.jba-v162072-group__title{
  color:var(--jba-filter-text);
  font-size:12px;
  font-weight:900;
  text-align:right;
}

.jba-v162072-group > summary > b{
  display:grid;
  place-items:center;
  min-width:21px;
  height:21px;
  padding:0 5px;
  border-radius:999px;
  background:var(--jba-filter-navy);
  color:#fff;
  font-size:8px;
  font-weight:900;
}

.jba-v162072-group > summary > b:empty{display:none}

.jba-v162072-chevron{
  position:relative;
  width:26px;
  height:26px;
  border-radius:8px;
  background:#f0f4f7;
}

.jba-v162072-chevron::before,
.jba-v162072-chevron::after{
  content:"";
  position:absolute;
  top:12px;
  width:7px;
  height:2px;
  border-radius:2px;
  background:#668096;
  transition:transform .18s ease;
}

.jba-v162072-chevron::before{right:7px;transform:rotate(45deg)}
.jba-v162072-chevron::after{left:7px;transform:rotate(-45deg)}
.jba-v162072-group[open] .jba-v162072-chevron::before{transform:rotate(-45deg)}
.jba-v162072-group[open] .jba-v162072-chevron::after{transform:rotate(45deg)}

.jba-v162072-group__body{
  padding:5px 12px 13px;
  border-top:1px solid #eef2f5;
  background:#fff;
}

.jba-v162072-options{
  display:grid;
  gap:3px;
  padding-top:7px;
}

.jba-v162072-options--scroll{
  max-height:310px;
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:#cbd6df transparent;
}

.jba-v162072-option{
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  min-height:38px;
  margin:0!important;
  padding:6px 7px;
  border-radius:10px;
  cursor:pointer;
  transition:background .15s ease;
}

.jba-v162072-option:hover{background:#f7f9fb}
.jba-v162072-option.is-limit-hidden{display:none}
.jba-v162072-option.is-search-hidden{display:none!important}

.jba-v162072-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.jba-v162072-option__box{
  position:relative;
  display:block;
  width:18px;
  height:18px;
  border:1.5px solid #cbd5df;
  border-radius:6px;
  background:#fff;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}

.jba-v162072-option input:checked + .jba-v162072-option__box{
  border-color:var(--jba-filter-navy-2);
  background:var(--jba-filter-navy-2);
  box-shadow:0 0 0 3px rgba(18,79,120,.08);
}

.jba-v162072-option input:checked + .jba-v162072-option__box::after{
  content:"";
  position:absolute;
  top:3px;
  right:5px;
  width:5px;
  height:9px;
  border:solid #fff;
  border-width:0 0 2px 2px;
  transform:rotate(-45deg);
}

.jba-v162072-option__label{
  min-width:0;
  color:#40536a;
  font-size:11px;
  font-weight:750;
  text-align:right;
}

.jba-v162072-option input:checked ~ .jba-v162072-option__label{
  color:var(--jba-filter-navy);
  font-weight:900;
}

.jba-v162072-option small{
  min-width:25px;
  padding:2px 6px;
  border-radius:999px;
  background:#f2f5f8;
  color:#8a97a7;
  font-size:8px;
  text-align:center;
}

.jba-v162072-option-search{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  margin:8px 0 4px!important;
  border:1px solid #dce4ec;
  border-radius:11px;
  background:#fafbfd;
  overflow:hidden;
}

.jba-v162072-option-search span{
  display:grid;
  place-items:center;
  color:#8492a3;
  font-size:16px;
}

.jba-v162072-option-search input{
  width:100%!important;
  min-height:38px!important;
  padding:7px 4px 7px 10px!important;
  border:0!important;
  background:transparent!important;
  color:#40536a!important;
  font:inherit!important;
  font-size:10px!important;
  outline:0!important;
  box-shadow:none!important;
}

.jba-v162072-show-more{
  display:block;
  width:100%;
  min-height:34px;
  margin:7px 0 0;
  border:1px dashed #d5dee7;
  border-radius:9px;
  background:#fafbfd;
  color:var(--jba-filter-navy-2);
  font:inherit;
  font-size:9px;
  font-weight:850;
  cursor:pointer;
}

.jba-v162072-segmented,
.jba-v162072-sort-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  padding-top:8px;
}

.jba-v162072-segmented label,
.jba-v162072-sort-list label,
.jba-v162072-months label{
  margin:0!important;
  cursor:pointer;
}

.jba-v162072-segmented input,
.jba-v162072-sort-list input,
.jba-v162072-months input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.jba-v162072-segmented span,
.jba-v162072-sort-list span,
.jba-v162072-months span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:6px 8px;
  border:1px solid #dfe6ed;
  border-radius:10px;
  background:#fff;
  color:#5c6c80;
  font-size:9px;
  font-weight:800;
  text-align:center;
  transition:.15s ease;
}

.jba-v162072-segmented input:checked + span,
.jba-v162072-sort-list input:checked + span,
.jba-v162072-months input:checked + span{
  border-color:var(--jba-filter-navy-2);
  background:#edf6fb;
  color:var(--jba-filter-navy);
  box-shadow:inset 0 0 0 1px rgba(18,79,120,.08);
}

.jba-v162072-months{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding-top:8px;
}

.jba-v162072-price-inputs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding-top:9px;
}

.jba-v162072-price-inputs label{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  min-width:0;
  min-height:43px;
  margin:0!important;
  padding:5px 8px;
  border:1px solid #dce4ec;
  border-radius:11px;
  background:#fafbfd;
}

.jba-v162072-price-inputs label > span,
.jba-v162072-price-inputs label > small{
  color:#8592a1;
  font-size:8px;
  font-weight:750;
}

.jba-v162072-price-inputs input{
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--jba-filter-navy)!important;
  font:inherit!important;
  font-size:10px!important;
  font-weight:900!important;
  text-align:center!important;
  box-shadow:none!important;
  outline:0!important;
}

.jba-v162072-range{
  position:relative;
  height:36px;
  margin:13px 4px 0;
}

.jba-v162072-range__track{
  position:absolute;
  top:16px;
  right:0;
  left:0;
  height:5px;
  border-radius:999px;
  background:linear-gradient(to left,#e1e7ed 0 var(--jba-min-pct),var(--jba-filter-gold) var(--jba-min-pct) var(--jba-max-pct),#e1e7ed var(--jba-max-pct) 100%);
}

.jba-v162072-range input[type=range]{
  position:absolute;
  inset:0;
  width:100%;
  height:36px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  pointer-events:none;
  appearance:none;
  -webkit-appearance:none;
}

.jba-v162072-range input[type=range]::-webkit-slider-runnable-track{height:5px;background:transparent}
.jba-v162072-range input[type=range]::-moz-range-track{height:5px;background:transparent}
.jba-v162072-range input[type=range]::-webkit-slider-thumb{
  width:20px;
  height:20px;
  margin-top:-8px;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--jba-filter-navy-2);
  box-shadow:0 2px 8px rgba(8,47,73,.25);
  pointer-events:auto;
  cursor:grab;
  appearance:none;
  -webkit-appearance:none;
}
.jba-v162072-range input[type=range]::-moz-range-thumb{
  width:15px;
  height:15px;
  border:3px solid #fff;
  border-radius:50%;
  background:var(--jba-filter-navy-2);
  box-shadow:0 2px 8px rgba(8,47,73,.25);
  pointer-events:auto;
  cursor:grab;
}

.jba-v162072-actions{
  position:sticky;
  bottom:6px;
  z-index:6;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:8px;
  margin-top:3px;
  padding:10px 0 0;
  background:linear-gradient(180deg,rgba(255,255,255,.25),#fff 28%);
}

.jba-v162072-actions button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:47px;
  padding:8px 10px;
  border-radius:12px;
  font:inherit;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
  transition:transform .15s ease,box-shadow .15s ease;
}

.jba-v162072-actions button:hover{transform:translateY(-1px)}

.jba-v162072-apply{
  border:1px solid var(--jba-filter-navy)!important;
  background:linear-gradient(135deg,var(--jba-filter-navy),var(--jba-filter-navy-2))!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(8,47,73,.16)!important;
}

.jba-v162072-apply b{
  display:grid;
  place-items:center;
  min-width:21px;
  height:21px;
  padding:0 5px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:8px;
}

.jba-v162072-reset{
  border:1px solid #e1e7ed!important;
  background:#f6f8fa!important;
  color:#58687a!important;
}

.jba-v162072-filter.is-submitting .jba-v162072-apply{
  opacity:.75;
  pointer-events:none;
}

.jba-v162072-filter.is-submitting .jba-v162072-apply span::after{
  content:"…";
}

body.jba-v1670-shop-page .jba-v162072-popular{
  margin-top:12px!important;
  border-radius:18px!important;
}

@media (min-width:992px){
  body.jba-v1670-shop-page #jba-adv-sidebar-filter.jba-v162072-filter{
    position:sticky!important;
    top:84px!important;
    max-height:calc(100vh - 98px)!important;
  }
  body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__body{
    max-height:calc(100vh - 174px)!important;
    overflow:auto!important;
    scrollbar-width:thin;
    scrollbar-color:#cbd5df transparent;
  }
}

@media (max-width:991px){
  body.jba-v1670-shop-page #jba-adv-sidebar-filter.jba-v162072-filter{
    position:relative!important;
    top:auto!important;
    max-height:none!important;
  }
}

@media (max-width:767px){
  body.jba-v1670-shop-page #jba-adv-sidebar-filter.jba-v162072-filter{
    margin:9px 6px 12px!important;
    border-radius:17px!important;
  }
  body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head{
    min-height:62px!important;
    padding:11px 13px!important;
    border-radius:17px 17px 0 0!important;
  }
  body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head .panel-title{font-size:14px!important}
  .jba-v162072-filter__eyebrow{font-size:8px}
  .jba-v162072-filter__active-count{flex-basis:30px;width:30px;height:30px;border-radius:10px;font-size:10px}
  body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__body{
    padding:10px!important;
    border-radius:0 0 17px 17px!important;
  }
  .jba-v162072-group > summary{
    min-height:49px;
    padding:7px 9px;
  }
  .jba-v162072-months{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jba-v162072-price-inputs{grid-template-columns:1fr}
  .jba-v162072-actions{
    bottom:72px;
    margin:2px -2px -1px;
    padding:9px 2px 1px;
  }
}

@media (max-width:380px){
  .jba-v162072-segmented,
  .jba-v162072-sort-list{grid-template-columns:1fr}
  .jba-v162072-months{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (prefers-reduced-motion:reduce){
  .jba-v162072-group,
  .jba-v162072-option,
  .jba-v162072-actions button{transition:none!important}
}

/* JBA v16.20.73 — specialist attribute groups and closed-by-default polish */
.jba-v162073-specialist-heading{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  margin:4px 2px 0;
  padding:9px 10px 7px;
  border-right:3px solid var(--jba-filter-gold);
  color:var(--jba-filter-navy);
  text-align:right;
}
.jba-v162073-specialist-heading span{
  font-size:11px;
  font-weight:900;
}
.jba-v162073-specialist-heading small{
  color:var(--jba-filter-muted);
  font-size:8px;
  line-height:1.7;
}
.jba-v162073-detail-group .jba-v162072-option__label{
  line-height:1.75;
  white-space:normal;
  overflow-wrap:anywhere;
}
.jba-v162073-detail-group .jba-v162072-options--scroll{
  max-height:280px;
}
body.jba-v1670-shop-page #jba-adv-sidebar-filter .jba-v162072-filter__head{
  cursor:pointer;
}


/* JBA v16.20.77 — stone filter: visible two-column checkbox list, no search field */
.jba-v162077-stone-body{
  padding-top:6px!important;
}

.jba-v162077-stone-options{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:6px 8px!important;
  max-height:360px!important;
  padding:7px 2px 3px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  align-items:stretch!important;
}

.jba-v162077-stone-options > .jba-v162077-stone-option{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) auto!important;
  gap:6px!important;
  min-width:0!important;
  min-height:40px!important;
  padding:7px 6px!important;
  border:1px solid #e3e9ef!important;
  border-radius:11px!important;
  background:#fff!important;
}

.jba-v162077-stone-options > .jba-v162077-stone-option:hover{
  border-color:#cdd9e4!important;
  background:#f7fafc!important;
}

.jba-v162077-stone-options > .jba-v162077-stone-option:has(input:checked){
  border-color:#9bb8cf!important;
  background:#f1f7fb!important;
}

.jba-v162077-stone-options .jba-v162072-option__label{
  overflow:hidden!important;
  font-size:10px!important;
  line-height:1.7!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.jba-v162077-stone-options .jba-v162072-option small{
  min-width:22px!important;
  padding:2px 4px!important;
  font-size:7px!important;
}

@media (max-width:680px){
  .jba-v162077-stone-options{
    gap:6px!important;
    max-height:45vh!important;
  }
  .jba-v162077-stone-options > .jba-v162077-stone-option{
    grid-template-columns:18px minmax(0,1fr)!important;
    min-height:38px!important;
    padding:6px!important;
  }
  .jba-v162077-stone-options .jba-v162072-option small{
    display:none!important;
  }
  .jba-v162077-stone-options .jba-v162072-option__label{
    font-size:10px!important;
  }
}
