/* Hallowix Store filter dropdown V11
   Replaces the OS-native popup for catalog filters so every corner, scroll edge
   and text line remains fully clipped inside the Hallowix surface. */
.store-controls .hx-filter-select{
  position:relative;
  min-width:0;
  width:100%;
  z-index:32;
  font-family:"Nunito",system-ui,sans-serif;
}
.store-controls .hx-filter-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.store-controls .hx-filter-select[hidden]{display:none!important}
.store-controls .hx-filter-trigger{
  width:100%;
  height:44px;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:11px;
  padding:0 14px 0 15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:color-mix(in srgb,var(--surface2) 82%,transparent);
  color:var(--text);
  font:800 .82rem/1 "Nunito",system-ui,sans-serif;
  letter-spacing:.005em;
  text-align:left;
  outline:none;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.store-controls .hx-filter-trigger:hover,
.store-controls .hx-filter-trigger[aria-expanded="true"]{
  border-color:color-mix(in srgb,var(--market-accent) 52%,var(--line));
  background:color-mix(in srgb,var(--surface2) 92%,transparent);
}
.store-controls .hx-filter-trigger:focus-visible{
  box-shadow:0 0 0 3px color-mix(in srgb,var(--market-accent) 22%,transparent);
  border-color:color-mix(in srgb,var(--market-accent) 70%,var(--line));
}
.store-controls .hx-filter-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  line-height:1.2;
  padding-block:1px;
}
.store-controls .hx-filter-chevron{
  width:9px;
  height:9px;
  flex:0 0 auto;
  border-right:1.8px solid currentColor;
  border-bottom:1.8px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  opacity:.78;
  transition:transform .2s ease;
}
.store-controls .hx-filter-trigger[aria-expanded="true"] .hx-filter-chevron{
  transform:translateY(2px) rotate(225deg);
}
.store-controls .hx-filter-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  z-index:2000;
  border:1px solid color-mix(in srgb,var(--line) 92%,transparent);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface) 96%,#17120f);
  box-shadow:0 20px 48px rgba(0,0,0,.30);
  padding:0;
  overflow:hidden;
  clip-path:inset(0 round 18px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-5px) scale(.985);
  transform-origin:top center;
  transition:opacity .16s ease,transform .18s cubic-bezier(.16,1,.3,1),visibility 0s linear .18s;
}
.store-controls .hx-filter-select.is-open .hx-filter-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
  transition-delay:0s;
}
.store-controls .hx-filter-select.open-up .hx-filter-menu{
  top:auto;
  bottom:calc(100% + 8px);
  transform-origin:bottom center;
}
.store-controls .hx-filter-options{
  max-height:272px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:7px;
  scroll-padding-block:7px;
  border-radius:inherit;
  -webkit-mask-image:linear-gradient(#000,#000);
  mask-image:linear-gradient(#000,#000);
}
.store-controls .hx-filter-option{
  width:100%;
  min-height:41px;
  display:flex;
  align-items:center;
  padding:9px 11px;
  margin:0;
  border:0;
  border-radius:12px;
  background:transparent;
  color:var(--text);
  font:800 .82rem/1.35 "Nunito",system-ui,sans-serif;
  text-align:left;
  white-space:normal;
  overflow:hidden;
  transition:background .14s ease,color .14s ease;
}
.store-controls .hx-filter-option + .hx-filter-option{margin-top:2px}
.store-controls .hx-filter-option:hover,
.store-controls .hx-filter-option:focus-visible{
  background:color-mix(in srgb,var(--market-accent) 14%,var(--surface2));
  outline:none;
}
.store-controls .hx-filter-option[aria-selected="true"]{
  background:color-mix(in srgb,var(--market-accent) 21%,var(--surface2));
  color:color-mix(in srgb,var(--text) 92%,var(--market-accent));
}
.store-controls .hx-filter-options::-webkit-scrollbar{width:8px}
.store-controls .hx-filter-options::-webkit-scrollbar-track{background:transparent;margin:8px 0}
.store-controls .hx-filter-options::-webkit-scrollbar-thumb{
  background:color-mix(in srgb,var(--market-accent) 38%,var(--line));
  border:2px solid transparent;
  background-clip:padding-box;
  border-radius:999px;
}
@media(max-width:650px){
  .store-controls .hx-filter-trigger{width:100%;border-radius:15px}
  .store-controls .hx-filter-menu{border-radius:17px;clip-path:inset(0 round 17px)}
  .store-controls .hx-filter-options{max-height:238px}
}
@media(prefers-reduced-motion:reduce){
  .store-controls .hx-filter-trigger,
  .store-controls .hx-filter-chevron,
  .store-controls .hx-filter-menu,
  .store-controls .hx-filter-option{transition:none!important}
}
