/* Usability corrections; accepted visual palette/layout remains intact. */
.day-slot.is-expired,.week-slot.is-expired{background:#f3f1f3;color:#655e68;cursor:not-allowed;opacity:1}
.day-slot.is-expired .slot-status{font-weight:700;color:#655e68}
.occupancy-track i.is-expired{background:#b8b2b9}
.week-slot.is-booked{cursor:pointer}
.week-slot.is-booked:hover,.week-slot.is-booked:focus-visible{outline:2px solid var(--wine);outline-offset:-3px}
.time-status{color:var(--wine);font-weight:700;padding:12px 44px 12px 12px;background:#f8edf2;border-left:3px solid var(--wine);line-height:1.7}
.page-motion-toggle,.holiday-note .text-link{min-height:44px;min-width:44px;font-size:14px}
.calendar-meta{padding-right:0}
.header-butterfly,.butterfly-art{contain:layout}
@media(max-width:620px){
 .date-nav .icon-button,#prev-period,#next-period{min-width:48px;min-height:48px}
 #today-button{min-height:48px;padding-inline:16px}
 .view-switch button,[data-view]{min-width:48px;min-height:48px}
 .page-motion-toggle{min-height:44px;min-width:92px}
 .holiday-note .text-link{display:inline-flex;align-items:center;padding:8px 4px}
 .calendar-meta{padding-right:80px}
}
