/* ============================================================
   FORM FIELDS (public sessions + admin/member forms)
   ============================================================ */

.field { margin-bottom: 1.25rem; }
.field label {
  display: block;
  font-size: 0.82rem;
  font-weight: 600;
  margin-bottom: 0.35rem;
  color: var(--text);
}
.field input[type=text],
.field input[type=email],
.field input[type=tel],
.field input[type=url],
.field input[type=number],
.field input[type=date],
.field input[type=time],
.field input[type=datetime-local],
.field input[type=password],
.field select,
.field textarea {
  width: 100%;
  padding: 0.5rem 0.625rem;
  border: 1px solid var(--border-dark);
  border-radius: var(--radius);
  font-family: var(--font-sans);
  font-size: 0.875rem;
  color: var(--text);
  background: white;
}
.field input:focus, .field select:focus, .field textarea:focus {
  outline: 2px solid var(--navy);
  outline-offset: 1px;
  border-color: var(--navy);
}
.field-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.field-row .field { margin-bottom: 0; }
.field-hint { font-size: 0.78rem; color: var(--text-muted); margin-top: 0.3rem; display: block; }
.field-hint--warning { color: #92400e; }
.form-actions { display: flex; gap: 0.75rem; margin-top: 1.75rem; flex-wrap: wrap; }
