.form-is-submitting button[type="submit"],
.form-is-submitting input[type="submit"] {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
  transform: none !important;
  box-shadow: none !important;
}

.form-is-submitting button[type="submit"].is-loading,
.form-is-submitting input[type="submit"].is-loading {
  opacity: 1;
  background: #6b7280 !important;
  border-color: #6b7280 !important;
  color: #ffffff !important;
}

button.is-loading,
input.is-loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.button-spinner {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  border: 2px solid rgba(255, 255, 255, 0.52);
  border-top-color: #ffffff;
  border-radius: 50%;
  animation: rioshealth-button-spin 0.7s linear infinite;
}

@keyframes rioshealth-button-spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .button-spinner {
    animation-duration: 1.4s;
  }
}

.status-pill.status-new {
  background: #eff6ff;
  color: #1d4ed8;
  border-color: #bfdbfe;
}

.status-pill.status-pending-review,
.status-pill.status-pending {
  background: #fffbeb;
  color: #92400e;
  border-color: #fde68a;
}

.status-pill.status-confirmed,
.status-pill.status-sent {
  background: #ecfdf3;
  color: #087443;
  border-color: #b7efcd;
}

.status-pill.status-needs-contact,
.status-pill.status-failed {
  background: #fff1f2;
  color: #b42318;
  border-color: #fecaca;
}

.status-pill.status-reschedule-needed {
  background: #fff7ed;
  color: #c2410c;
  border-color: #fdba74;
}

.status-pill.status-cancelled {
  background: #f3f4f6;
  color: #4b5563;
  border-color: #d1d5db;
}

.status-pill.status-completed {
  background: #ecfeff;
  color: #0e7490;
  border-color: #a5f3fc;
}

.status-update-form textarea[name="staff_notes"] {
  min-height: 130px;
  resize: none;
}

.status-update-form .checkbox-label input[type="checkbox"] {
  width: auto;
  min-height: 0;
  padding: 0;
  flex: 0 0 auto;
}
