/* [project]/frontend/src/app/_shared/form-field.module.css [app-client] (css) */
.form-field-module___CbmVG__field {
  gap: var(--space-1);
  margin-bottom: var(--space-4);
  flex-direction: column;
  display: flex;
}

.form-field-module___CbmVG__label {
  font-size: var(--text-sm);
  color: var(--color-text);
  font-weight: 600;
}

.form-field-module___CbmVG__hint {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}

.form-field-module___CbmVG__input {
  min-height: var(--target-min);
  padding: var(--space-2) var(--space-3);
  font-size: var(--text-base);
  color: var(--color-text);
  background: var(--color-surface);
  border: 1px solid var(--color-border-control);
  border-radius: var(--radius-md);
  font-family: inherit;
}

.form-field-module___CbmVG__input:focus-visible {
  outline: var(--focus-ring-width) solid var(--color-focus-ring);
  outline-offset: var(--focus-ring-offset);
}

.form-field-module___CbmVG__input[aria-invalid="true"] {
  border-color: var(--color-expense);
}

.form-field-module___CbmVG__passwordRow {
  display: flex;
  position: relative;
}

.form-field-module___CbmVG__passwordRow .form-field-module___CbmVG__input {
  padding-right: calc(var(--target-min) + var(--space-1));
  flex: 1;
}

.form-field-module___CbmVG__toggleVisibility {
  right: var(--space-1);
  width: var(--target-min);
  height: var(--target-min);
  border-radius: var(--radius-md);
  color: var(--color-text-muted);
  cursor: pointer;
  font-size: var(--text-sm);
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.form-field-module___CbmVG__toggleVisibility:hover {
  color: var(--color-text);
}

.form-field-module___CbmVG__errorText {
  font-size: var(--text-sm);
  color: var(--color-expense);
}

.form-field-module___CbmVG__statusText {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  min-height: 1.25em;
}

.form-field-module___CbmVG__submit {
  min-height: var(--target-min);
  width: 100%;
  margin-top: var(--space-2);
  justify-content: center;
  align-items: center;
  gap: var(--space-2);
  background: var(--color-primary);
  color: var(--color-on-primary);
  border-radius: var(--radius-md);
  font-size: var(--text-base);
  cursor: pointer;
  border: none;
  font-weight: 600;
  display: flex;
}

.form-field-module___CbmVG__spinner {
  border-radius: var(--radius-full);
  width: 1rem;
  height: 1rem;
  animation: form-field-module___CbmVG__spin var(--duration-spinner, .7s) linear infinite;
  border: 2px solid;
  border-top-color: #0000;
}

@keyframes form-field-module___CbmVG__spin {
  to {
    transform: rotate(360deg);
  }
}

.form-field-module___CbmVG__submit:hover {
  background: var(--color-primary-hover);
}

.form-field-module___CbmVG__submit[aria-disabled="true"] {
  opacity: .7;
  cursor: progress;
}

.form-field-module___CbmVG__linkRow {
  margin-top: var(--space-4);
  text-align: center;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

/*# sourceMappingURL=frontend_src_app__shared_form-field_module_05ze3kv4bwuf2.css.map*/