/* ══════════════════════════════════════════════════════════════
   Forms — static/css/components/forms.css
   Custom form controls and validation states.
   Prefix: uc-form to avoid Bootstrap collision.
   Uses design tokens from root.css.
   ══════════════════════════════════════════════════════════════ */

.uc-form-group {
  margin-bottom: 16px;
}

.uc-form-label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: var(--neutral-700);
  margin-bottom: 6px;
}

.uc-form-input {
  width: 100%;
  padding: 10px 14px;
  border: 2px solid var(--neutral-200);
  border-radius: var(--radius-sm);
  font-size: 15px;
  font-family: inherit;
  color: var(--neutral-900);
  background: var(--white);
  transition: border-color .2s, box-shadow .2s;
  min-height: 44px;
  box-sizing: border-box;
}

.uc-form-input:focus {
  outline: none;
  border-color: var(--primary);
  box-shadow: 0 0 0 3px rgba(44, 140, 132, .15);
}

.uc-form-input::placeholder {
  color: var(--neutral-400);
}

/* ── Error state ─────────────────────────────────────────── */
.uc-form-input-error {
  border-color: var(--error);
}

.uc-form-input-error:focus {
  border-color: var(--error);
  box-shadow: 0 0 0 3px rgba(220, 53, 69, .15);
}

/* ── Hint & error text ───────────────────────────────────── */
.uc-form-hint {
  font-size: 13px;
  color: var(--neutral-600);
  margin-top: 4px;
}

.uc-form-error {
  font-size: 13px;
  color: var(--error);
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 4px;
}

.uc-form-error .bi {
  font-size: 13px;
}

/* ── Select ──────────────────────────────────────────────── */
select.uc-form-input {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23495057' d='M6 8.825L.675 3.5l.85-.85L6 7.125 10.475 2.65l.85.85z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 40px;
}

/* ── Textarea ────────────────────────────────────────────── */
textarea.uc-form-input {
  min-height: auto;
  resize: vertical;
}
