/* Source-aligned appointment spacing hotfix; application code remains client 1.0.587. */
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons { grid-auto-rows: 1fr; }
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons > .col { min-width:0; align-self:stretch; }
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.btn.appt_vacant_button.appt_vacant_button {
 display:flex !important; flex-direction:column; flex:1 1 auto; align-items:center; justify-content:center;
 height:auto !important; min-height:4.3em !important; max-height:none !important;
 padding:.35em .3em !important; gap:.15em !important; line-height:1.2 !important;
 white-space:normal !important; font-weight:400 !important; text-align:center;
}
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.btn.appt_vacant_button > span,
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.btn.appt_vacant_button > small {
 display:block !important; flex:0 0 auto; max-width:100%; margin:0 !important; text-align:center;
 line-height:1.2 !important;
}
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.appt_vacant_button > span { white-space:nowrap; font-variant-numeric:tabular-nums; }
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.appt_vacant_button > small {
 font-size:11px !important; font-weight:400 !important; white-space:normal !important; overflow-wrap:anywhere;
}
html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons .appt_slot_booked_by { font-style:italic; }
@media(max-width:480px) { html body app-appointment .appt_mdi_host.appt_mdi_host .appt_vacant_buttons button.btn.appt_vacant_button.appt_vacant_button { font-size:12px !important; } }
