/* Budget range block layout */
.budget-range-block {
  margin-bottom: 1.5rem;
}
.budget-range-block .budget-label {
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.budget-range-block .budget-display {
  font-weight: 600;
  margin-top: 0.5rem;
}
#budget-slider {
  margin: 1rem 0;
}
.budget-range-block .form-error {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: var(--pico-form-element-invalid-border-color, #c00);
}

/* noUiSlider overrides to match Pico range (uses Pico CSS variables) */
#budget-slider.noUi-target,
#budget-slider .noUi-base,
#budget-slider .noUi-origin,
#budget-slider .noUi-connect,
#budget-slider .noUi-background {
  box-shadow: none;
  border: none;
  outline: none;
}
#budget-slider.noUi-target {
  background: transparent;
  padding: 0;
}
#budget-slider .noUi-base {
  height: 0.5rem;
  border-radius: var(--pico-border-radius);
  background: var(--pico-range-border-color);
}
#budget-slider .noUi-connect {
  background: var(--pico-range-thumb-active-color);
  border-radius: var(--pico-border-radius);
  box-shadow: none;
}
#budget-slider .noUi-handle {
  width: 1.25rem;
  height: 1.25rem;
  top: -0.375rem;
  right: -0.625rem;
  border: 2px solid var(--pico-range-thumb-border-color);
  border-radius: 50%;
  background: var(--pico-range-thumb-color);
  box-shadow: var(--pico-button-box-shadow);
  transition: var(--pico-transition);
}
#budget-slider .noUi-handle::before,
#budget-slider .noUi-handle::after {
  display: none;
}
#budget-slider .noUi-handle:hover,
#budget-slider .noUi-handle.noUi-active {
  background: var(--pico-range-thumb-active-color);
}
#budget-slider .noUi-handle:focus-visible {
  outline: none;
  box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
}
