.elementor-widget.elementor-widget-uzgelementor_attribute_filter {
  /* Keep alignment meaningful when a theme replaces an archive's flex block. */
  width: 100%;
  min-width: 0;
}
.uzgelementor-filter {
  --uzge-size: 64px;
  --uzge-gap: 16px;
  --uzge-radius: 3px;
  --uzge-border: 2px;
  --uzge-color: #363636;
  --uzge-background: #fff;
  --uzge-outline: #171717;
  --uzge-active-color: #fff;
  --uzge-active-background: #171717;
}
.uzgelementor-filter .uzgelementor-filter__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--uzge-gap);
}
.uzgelementor-filter .uzgelementor-filter__option {
  box-sizing: border-box;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: max(10px, var(--uzge-size));
  min-height: max(10px, var(--uzge-size));
  /* Keep existing spacing at 44px+, but let compact buttons actually shrink. */
  padding: clamp(0px, calc(var(--uzge-size) - 36px), 8px);
  border: var(--uzge-border) solid var(--uzge-outline);
  border-radius: var(--uzge-radius);
  color: var(--uzge-color);
  background: var(--uzge-background);
  font: inherit;
  /* Elementor Typography can still override this size-aware default. */
  font-size: clamp(5px, calc(var(--uzge-size) / 2), 22px);
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
  max-width: 100%;
}
.uzgelementor-filter .uzgelementor-filter__option.is-active {
  color: var(--uzge-active-color);
  background: var(--uzge-active-background);
  font-weight: 600;
}
.uzgelementor-filter a.uzgelementor-filter__option:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.uzgelementor-filter a.uzgelementor-filter__option:focus-visible {
  outline: 3px solid #2271b1;
  outline-offset: 3px;
}
.uzgelementor-filter__title { font-weight: 600; }
.uzgelementor-filter__notice { font-size: 13px; }
