.new-appointment-booking {
  padding-top: 25px;
}
@media (min-width: 970px) {
  .new-appointment-booking .content.shrink-on-desktop {
    width: fit-content;
  }
}
@media (min-width: 599px) and (max-width: 970px) {
  .new-appointment-booking .content.shrink-on-tablet {
    width: fit-content;
  }
}
.new-appointment-booking h1 {
  font-size: var(--font-size-headline);
  line-height: 1em;
  font-weight: bold;
  margin-bottom: 20px;
}
.new-appointment-booking table.info-table {
  margin-top: 20px;
}
.new-appointment-booking table.info-table td {
  padding-bottom: 10px;
}
.new-appointment-booking table.info-table td.icon {
  text-align: center;
  padding-right: 5px;
  height: 30px;
}
.new-appointment-booking table.info-table td.icon img {
  display: inline-block;
  height: 18px;
  max-width: 18px;
}
.new-appointment-booking table.info-table td:not(.icon) {
  vertical-align: top;
  padding-top: 1px;
}
.new-appointment-booking .card {
  padding: 20px;
  width: 100%;
  max-width: 25em;
  border-radius: var(--border-radius-small);
}
.new-appointment-booking .card .profile-element {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.new-appointment-booking #appointment-info-card {
  background-color: var(--color-gray-dark);
}
.new-appointment-booking #appointment-info-card .appointment-time {
  font-weight: bold;
}
.new-appointment-booking #appointment-info-card .appointment-time .appointment-calendar {
  font-weight: normal;
}
.new-appointment-booking #appointment-info-card .secondary-text {
  color: var(--color-secondary-text);
}
.new-appointment-booking #rating-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 15px;
  color: #fff;
  background-color: var(--color-legelisten-primary);
  text-align: center;
}
.new-appointment-booking.start .content {
  display: flex !important;
  flex-direction: column;
}
@media (min-width: 1140px) {
  .new-appointment-booking.start .content {
    flex-direction: row;
    justify-content: space-between;
  }
}
.new-appointment-booking.start .comment-prelude {
  color: var(--color-secondary-text);
  margin-bottom: 20px;
}
.new-appointment-booking.start .comment {
  height: 120px;
  margin-bottom: 20px;
}
.new-appointment-booking.start #appointment-info-card {
  align-self: flex-start;
}
@media (min-width: 1140px) {
  .new-appointment-booking.start #appointment-info-card {
    width: fit-content;
  }
}
.new-appointment-booking.start hr {
  width: 100%;
  margin-bottom: 20px;
  border: none;
  border-top: var(--separator-border);
}
.new-appointment-booking.confirmation {
  min-height: 50vh;
}
.new-appointment-booking.confirmation p {
  display: block;
  margin-bottom: 20px;
}
.new-appointment-booking.done .content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.new-appointment-booking.done h1,
.new-appointment-booking.done p {
  text-align: center;
  text-wrap: balanced;
  max-width: 30em;
}
.new-appointment-booking.done .patient-contact-detail {
  white-space: nowrap;
  font-weight: bold;
}
.new-appointment-booking.done #clinic-info-card {
  background-color: var(--color-bright-blue-2);
}
.new-appointment-booking.done .card {
  margin-top: 20px;
}
.new-appointment-booking label[for*=is_new_patient], .new-appointment-booking label[for*=is_online] {
  margin-bottom: 4px;
}
.new-appointment-booking .radio-buttons {
  display: flex;
  gap: 10px;
}
