._wrapper_1jzwg_1 {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}

._input_1jzwg_8 {
  width: 100%;
  font-family: inherit;
  color: var(--color-text);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

._input_1jzwg_8::placeholder {
  color: var(--color-text-muted);
}

._input_1jzwg_8:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: var(--focus-ring);
}

._input_1jzwg_8:disabled {
  background: var(--color-surface-muted);
  color: var(--color-text-muted);
  cursor: not-allowed;
}

._sizeSm_1jzwg_34 ._input_1jzwg_8 {
  min-height: 32px;
  padding: 0 var(--spacing-md);
  font-size: var(--font-size-sm);
}

._sizeMd_1jzwg_40 ._input_1jzwg_8 {
  min-height: 40px;
  padding: 0 var(--spacing-md);
  font-size: var(--font-size-sm);
}

._sizeLg_1jzwg_46 ._input_1jzwg_8 {
  min-height: 48px;
  padding: 0 var(--spacing-lg);
  font-size: var(--font-size-md);
}

._hasStart_1jzwg_52 ._input_1jzwg_8 {
  padding-left: 36px;
}

._hasEnd_1jzwg_56 ._input_1jzwg_8 {
  padding-right: 36px;
}

._startIcon_1jzwg_60,
._endIcon_1jzwg_61 {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  color: var(--color-text-muted);
  pointer-events: none;
}

._startIcon_1jzwg_60 {
  left: var(--spacing-md);
}

._endIcon_1jzwg_61 {
  right: var(--spacing-md);
}

._invalid_1jzwg_79 ._input_1jzwg_8 {
  border-color: var(--color-danger);
}
