.elzff{
  display:flex;
  gap: var(--elzff-gap, .75rem);
  align-items: stretch;
  flex-wrap: var(--elzff-wrap, wrap);
  justify-content: var(--elzff-justify, flex-start);
  flex-direction: var(--elzff-direction, row);
}
.elzff .elzff-field{
  position:relative;
  min-width: var(--elzff-field-min, 220px);
  flex: 1;
}

.elzff select.elzff-select{position:absolute;inset:0;opacity:0;pointer-events:none}

.elzff .elzff-select-ui{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.5rem;
  border:1px solid #d0d0d0;
  background:#fff;
  padding:0 .75rem;
  height: var(--elzff-field-h, 42px);
  border-radius: var(--elzff-radius, 8px);
  cursor:pointer;
  position:relative;
}
.elzff .elzff-select-ui .elzff-display{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#1f2937}
.elzff .elzff-select-ui .elzff-display.is-placeholder{color:#9ca3af}

.elzff .elzff-actions{display:inline-flex;align-items:center;gap:var(--elzff-clear-gap,8px)}
.elzff .elzff-clear{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;height:18px;
  border-radius:999px;
  cursor:pointer;
  user-select:none;
  line-height:1;
  font-size:18px;
  opacity:.9;
}
.elzff .elzff-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:var(--elzff-dd-size,16px);
  height:var(--elzff-dd-size,16px);
  opacity:.85;
  color: var(--elzff-dd-color, currentColor);
}
.elzff .elzff-arrow svg{width:var(--elzff-dd-size,16px);height:var(--elzff-dd-size,16px);fill:currentColor}
.elzff .elzff-arrow img{width:var(--elzff-dd-size,16px);height:var(--elzff-dd-size,16px);object-fit:contain;display:block}
.elzff .elzff-arrow i{font-size:var(--elzff-dd-size,16px);line-height:1}

.elzff .elzff-dropdown{
  display:none;
  position:absolute;
  top:calc(100% + 6px);
  left:0;right:0;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  box-shadow:0 10px 25px rgba(0,0,0,.08);
  z-index: 9999;
  max-height: 240px;
  overflow:auto;
  margin:0;
  padding:.25rem 0;
  list-style:none;
}
.elzff .elzff-select-ui.is-open + .elzff-dropdown{display:block}
.elzff .elzff-select-ui.is-open .elzff-dropdown{display:block}
.elzff .elzff-dropdown li{padding:.5rem .75rem;cursor:pointer}
.elzff .elzff-dropdown li:hover{background:#f3f4f6}

.elzff .elzff-btn{
  height: var(--elzff-field-h, 42px);
  min-width: var(--elzff-field-h, 42px);
  padding:0;
  border:1px solid #d0d0d0;
  background:#fff;
  border-radius: var(--elzff-radius, 8px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.elzff .elzff-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.elzff .elzff-icon img{width:var(--elzff-icon-size,18px);height:var(--elzff-icon-size,18px);object-fit:contain;display:block}
.elzff .elzff-btn svg{display:block;color:inherit;fill:currentColor;width:var(--elzff-icon-size,18px);height:var(--elzff-icon-size,18px)}
.elzff .elzff-btn i{display:inline-block;line-height:1;font-size:var(--elzff-icon-size,18px);color:inherit}
.elzff .elzff-ic-text{display:block;line-height:1}

/* RTL tweaks */
[dir="rtl"] .elzff{direction:rtl}

.elzff-no-results{
  margin-top: 12px;
  font-size: 14px;
  opacity: .75;
}

/* Local filtering: hide cards that do not match */
.elzff-hidden{
  display:none !important;
}
