/* MOSKI FIX28 - canonical faceted-search presentation */
[data-moski-facets][hidden],.mk-filter-native[hidden]{display:none!important}
.moski-listing-tools,.mk-listing-tools{position:relative!important}

[data-moski-facets].is-open,.mk-filter-native.is-open{
  display:block!important;position:absolute!important;left:0!important;top:calc(100% + 1px)!important;
  z-index:90!important;width:min(360px,calc(100vw - 32px))!important;max-height:68vh!important;
  overflow-x:hidden!important;overflow-y:auto!important;box-sizing:border-box!important;padding:0!important;
  background:#fff!important;border:1px solid #ececec!important;border-radius:0!important;
  box-shadow:0 12px 30px rgba(0,0,0,.05)!important;flex:none!important
}

[data-moski-facets] #search_filters,[data-moski-facets] .search_filters,[data-moski-facets] .mk-moski-facets,
.mk-filter-native #search_filters,.mk-filter-native .search_filters,.mk-filter-native .mk-moski-facets{
  display:block!important;width:100%!important;margin:0!important;padding:18px 20px 14px!important;
  color:#111!important;background:#fff!important;border:0!important;box-shadow:none!important;
  box-sizing:border-box!important;font-family:Arial,Helvetica,sans-serif!important
}

/* Hide all duplicated native panel headings. */
[data-moski-facets] #search_filters>.h6,[data-moski-facets] #search_filters>.text-uppercase,
[data-moski-facets] .search_filters>.h6,[data-moski-facets] .search_filters>.text-uppercase,
.mk-filter-native #search_filters>.h6,.mk-filter-native #search_filters>.text-uppercase,
.mk-filter-native .search_filters>.h6,.mk-filter-native .search_filters>.text-uppercase,
.moski-filter-native-title{display:none!important}

[data-moski-facets] .facet,.mk-filter-native .facet{
  display:block!important;position:relative!important;margin:0!important;padding:13px 0 12px!important;
  background:transparent!important;border:0!important;border-bottom:1px solid #ededed!important
}
[data-moski-facets] .facet:first-of-type,.mk-filter-native .facet:first-of-type{padding-top:1px!important}
[data-moski-facets] .facet:last-child,.mk-filter-native .facet:last-child{padding-bottom:1px!important;border-bottom:0!important}

[data-moski-facets] .facet>.facet-title,[data-moski-facets] .facet>.title .facet-title,
.mk-filter-native .facet>.facet-title,.mk-filter-native .facet>.title .facet-title{
  margin:0 0 8px!important;padding:0!important;color:#111!important;font-size:10px!important;line-height:1.25!important;
  font-weight:500!important;letter-spacing:.15em!important;text-transform:uppercase!important;background:transparent!important;border:0!important
}
[data-moski-facets] .facet>.title,.mk-filter-native .facet>.title{
  margin:0 0 8px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important
}
[data-moski-facets] .collapse-icons,.mk-filter-native .collapse-icons{
  width:18px!important;height:18px!important;min-width:18px!important;margin-left:auto!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important
}
[data-moski-facets] .collapse-icons .material-icons,.mk-filter-native .collapse-icons .material-icons{font-size:15px!important;color:#111!important;line-height:18px!important}

[data-moski-facets] .facet ul,.mk-filter-native .facet ul{margin:0!important;padding:0!important;list-style:none!important}
[data-moski-facets] .facet li,.mk-filter-native .facet li{margin:0!important;padding:0!important;list-style:none!important}

[data-moski-facets] .facet-label,.mk-filter-native .facet-label{
  display:flex!important;align-items:center!important;gap:8px!important;min-height:29px!important;margin:0!important;padding:1px 0!important;
  color:#222!important;font-size:12px!important;line-height:1.35!important;font-weight:400!important;letter-spacing:0!important;cursor:pointer!important
}
[data-moski-facets] .facet-label a,.mk-filter-native .facet-label a{
  display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;padding:4px 0!important;
  color:#222!important;background:transparent!important;font-size:12px!important;line-height:1.35!important;font-weight:400!important;
  text-decoration:none!important;text-transform:none!important
}
[data-moski-facets] .facet-label:hover a,.mk-filter-native .facet-label:hover a{opacity:.55!important}
[data-moski-facets] .magnitude,.mk-filter-native .magnitude{margin-left:4px!important;color:#909090!important;font-size:10px!important;font-weight:400!important}

[data-moski-facets] .custom-checkbox,[data-moski-facets] .custom-radio,
.mk-filter-native .custom-checkbox,.mk-filter-native .custom-radio{
  position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 13px!important;width:13px!important;height:13px!important;margin:0!important;padding:0!important
}
[data-moski-facets] .custom-checkbox input,[data-moski-facets] .custom-radio input,
.mk-filter-native .custom-checkbox input,.mk-filter-native .custom-radio input{
  position:absolute!important;inset:0!important;width:13px!important;height:13px!important;margin:0!important;opacity:0!important;z-index:2!important;cursor:pointer!important
}
[data-moski-facets] .custom-checkbox>span:not(.color),[data-moski-facets] .custom-radio>span,
.mk-filter-native .custom-checkbox>span:not(.color),.mk-filter-native .custom-radio>span{
  display:flex!important;align-items:center!important;justify-content:center!important;width:13px!important;height:13px!important;
  margin:0!important;background:#fff!important;border:1px solid #aaa!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important
}
[data-moski-facets] .custom-radio>span,.mk-filter-native .custom-radio>span{border-radius:50%!important}
[data-moski-facets] .custom-checkbox input:checked+span:not(.color),[data-moski-facets] .custom-radio input:checked+span,
.mk-filter-native .custom-checkbox input:checked+span:not(.color),.mk-filter-native .custom-radio input:checked+span{background:#111!important;border-color:#111!important}
[data-moski-facets] .custom-checkbox .checkbox-checked,.mk-filter-native .custom-checkbox .checkbox-checked{color:#fff!important;font-size:10px!important;line-height:1!important}
[data-moski-facets] .custom-checkbox .color,.mk-filter-native .custom-checkbox .color{
  display:block!important;width:14px!important;height:14px!important;margin:0!important;border:1px solid #ddd!important;border-radius:50%!important;box-shadow:none!important;box-sizing:border-box!important
}

[data-moski-facets] .clear-all-wrapper,.mk-filter-native .clear-all-wrapper{margin:0!important;padding:0 0 10px!important;border-bottom:1px solid #ededed!important;text-align:right!important}
[data-moski-facets] .js-search-filters-clear-all,.mk-filter-native .js-search-filters-clear-all{
  margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;
  color:#777!important;font-size:9px!important;letter-spacing:.14em!important;text-transform:uppercase!important
}
[data-moski-facets] .js-search-filters-clear-all .material-icons,.mk-filter-native .js-search-filters-clear-all .material-icons{display:none!important}

.moski-filter-loading,.moski-filter-empty{min-height:62px!important;display:flex!important;align-items:center!important;padding:0 20px!important;color:#777!important;font-size:10px!important;letter-spacing:.04em!important}
.moski-filter-loading:before{content:'';width:12px;height:12px;margin-right:10px;border:1px solid #bbb;border-top-color:#111;border-radius:50%;animation:moskiFilterSpin .7s linear infinite}
@keyframes moskiFilterSpin{to{transform:rotate(360deg)}}

@media(max-width:900px){[data-moski-facets].is-open,.mk-filter-native.is-open{width:100%!important;max-width:100%!important;max-height:65vh!important}}


/* =========================================================
   MOSKI FILTER FIX29 — single facet heading + true states
   ========================================================= */
[data-moski-facets] .facet > p.facet-title,
.mk-filter-native .facet > p.facet-title{
  display:none!important;
}
[data-moski-facets] .facet > .title,
.mk-filter-native .facet > .title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  margin:0 0 7px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
[data-moski-facets] .facet > .title > .facet-title,
.mk-filter-native .facet > .title > .facet-title{
  display:block!important;
  flex:1 1 auto!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:10px!important;
  line-height:1.25!important;
  font-weight:500!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
}
[data-moski-facets] .facet > .title .collapse-icons .add,
.mk-filter-native .facet > .title .collapse-icons .add{
  display:block!important;
}
[data-moski-facets] .facet > .title .collapse-icons .remove,
.mk-filter-native .facet > .title .collapse-icons .remove{
  display:none!important;
}
[data-moski-facets] .facet > .title[aria-expanded="true"] .collapse-icons .add,
.mk-filter-native .facet > .title[aria-expanded="true"] .collapse-icons .add{
  display:none!important;
}
[data-moski-facets] .facet > .title[aria-expanded="true"] .collapse-icons .remove,
.mk-filter-native .facet > .title[aria-expanded="true"] .collapse-icons .remove{
  display:block!important;
}

/* Native ps_facetedsearch renders the check icon in the DOM even when the
   checkbox is not active. The parent theme's state CSS is not available in
   this child listing, so hide it unless the actual input is checked. */
[data-moski-facets] .custom-checkbox .checkbox-checked,
.mk-filter-native .custom-checkbox .checkbox-checked{
  display:none!important;
}
[data-moski-facets] .custom-checkbox input:checked + span .checkbox-checked,
.mk-filter-native .custom-checkbox input:checked + span .checkbox-checked{
  display:block!important;
}
[data-moski-facets] .custom-checkbox input:not(:checked) + span:not(.color),
.mk-filter-native .custom-checkbox input:not(:checked) + span:not(.color){
  background:#fff!important;
  border-color:#aaa!important;
}
[data-moski-facets] .custom-radio input:not(:checked) + span,
.mk-filter-native .custom-radio input:not(:checked) + span{
  background:#fff!important;
  border-color:#aaa!important;
}

/* The native Bootstrap collapse helpers are missing from the custom MOSKI
   listing. Keep the module state deterministic. */
[data-moski-facets] .facet ul.collapse:not(.in),
.mk-filter-native .facet ul.collapse:not(.in){
  display:none!important;
}
[data-moski-facets] .facet ul.collapse.in,
.mk-filter-native .facet ul.collapse.in{
  display:block!important;
}
