.booking-patient-request { margin-top: 24px; text-align: left; }
.booking-patient-request label { flex-wrap: wrap; font-size: 16px; line-height: 1.5; }
.booking-patient-request textarea { display: block; min-height: 128px; padding: 12px; border-radius: 8px; resize: vertical; font-size: 16px; line-height: 1.6; }
.booking-purpose { min-width: 0; margin: 24px 0; padding: 0; border: 0; text-align: left; }
.booking-purpose legend { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 0; font-size: 16px; font-weight: 700; line-height: 1.5; }
.booking-purpose__required { color: #b42318; font-size: 12px; font-weight: 600; }
.booking-purpose__option { display: flex; align-items: flex-start; gap: 10px; min-height: 44px; padding: 10px 0; cursor: pointer; font-size: 16px; line-height: 1.5; }
.booking-purpose__option:first-of-type { margin-top: 8px; }
.booking-purpose__option input[type="radio"] { flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; padding: 0; accent-color: #0068c8; }
.booking-purpose__option span { min-width: 0; overflow-wrap: anywhere; }
.booking-purpose__option input:focus-visible { outline: 2px solid #0068c8; outline-offset: 3px; }
.patient-request-summary { margin: 24px 0; text-align: left; }
.patient-request-summary h2 { font-size: 16px; line-height: 1.5; }
.patient-request-summary p { margin: 8px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 16px; line-height: 1.6; }
@media (max-width: 620px) {
  .confirm-actions--fixed > button { flex: 1 1 0; }
}
