/* === Form status messages === */
.form-status {
  margin-top: 12px;
  font-size: 0.9rem;
  line-height: 1.5;
  color: #8a8f98;
  transition: color 0.3s ease, opacity 0.3s ease;
}

.form-status--success {
  color: #22c55e;
  font-weight: 600;
}

.form-status--error {
  color: #ef4444;
  font-weight: 600;
}

.form-status:empty {
  opacity: 0;
}

/* === Button disabled state === */
button[type="submit"]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

/* === Form validation === */
[data-contact-form] input:invalid:not(:placeholder-shown),
[data-contact-form] select:invalid:not(:placeholder-shown) {
  border-color: rgba(239, 68, 68, 0.5);
}

[data-contact-form] input:valid:not(:placeholder-shown) {
  border-color: rgba(34, 197, 94, 0.4);
}
