/* ═══════════════════════════════════════════════
   WAJHA AGENCY — FORMS.CSS
   Rule: Form inputs, labels, layout, validation errors.
   ═══════════════════════════════════════════════ */

.form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.form-label {
  font-family: var(--font-arabic);
  font-weight: var(--weight-medium);
  font-size: var(--text-sm);
  color: var(--color-text-secondary);
}

.form-control {
  width: 100%;
  padding-block: var(--space-3);
  padding-inline: var(--space-4);
  background-color: var(--color-bg-elevated);
  border: 1px solid var(--color-border-base);
  border-radius: var(--radius-md);
  color: var(--color-text-primary);
  font-family: var(--font-arabic);
  font-size: var(--text-base);
  transition: border-color var(--ease-fast), box-shadow var(--ease-fast);
}

.form-control:focus {
  border-color: var(--color-brand-primary-mid);
  box-shadow: 0 0 0 3px rgba(var(--color-brand-primary-mid-rgb), 0.2);
}

.form-control::placeholder {
  color: var(--color-text-dim);
}

textarea.form-control {
  min-height: 120px;
  resize: vertical;
}

/* Validation styling */
.form-control.invalid {
  border-color: var(--color-error);
}

.validation-error {
  font-size: var(--text-xs);
  color: var(--color-error);
  margin-top: var(--space-1);
}

/* Success status */
.form-success-message {
  padding: var(--space-4);
  background-color: rgba(var(--color-success-rgb), 0.1);
  border: 1px solid var(--color-success);
  border-radius: var(--radius-md);
  color: var(--color-success);
  text-align: center;
  font-weight: var(--weight-semibold);
  margin-bottom: var(--space-4);
}
