
/* input / textarea / select invalid state */
.form-input.invalid,
.form-textarea.invalid,
.form-select.invalid {
  border: 1.5px solid #d9534f;
  box-shadow: 0 0 0 3px rgba(217, 83, 79, 0.06);
  outline: none;
}

#role-group.invalid {
  outline: 1px solid rgba(217,83,79,0.12);
  padding: 6px;
  border-radius: 6px;
}

.error-message {
  color: #d9534f;
  font-size: 13px;
  margin-top: 6px;
  min-height: 18px; 
}

.checkbox-group .error-message {
  margin-top: 8px;
}

.submit-button[disabled] {
  opacity: 0.6;
  cursor: not-allowed;
}

.form-input,
.form-textarea,
.form-select {
  transition: border-color 120ms ease, box-shadow 120ms ease;
}

@media (max-width: 480px) {
  .error-message { font-size: 12px; }
}
