.rhBookingGrid{grid-template-columns:1.2fr 1fr}.rhCalendarPanel>h2{font:700 30px/1.1 Barlow Condensed,sans-serif;margin:0;display:flex;align-items:center;gap:10px}.rhVisitTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px;margin:20px 0}.rhVisitTabs button{border:1px solid #486477;background:#1e2e3a;border-radius:5px;text-align:left;padding:13px;color:#fff;min-width:0}.rhVisitTabs button[aria-pressed=true]{border-color:#f04d5d;background:#3a2028}.rhVisitTabs button:disabled{opacity:.45;cursor:default}.rhVisitTabs button>span{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:12px;font-weight:700}.rhVisitTabs small{display:block;font-size:9px;line-height:1.7;margin-top:6px;color:#b2c6d4}.rhActiveVisit,.rhScheduleScope{font-size:11px;line-height:1.8;color:#c9d7e1}.rhActiveVisit{font-weight:700}.rhCalendar button.rhHolidayDate:disabled{border:1px dashed #80535c;color:#9a7981;background:#251c23}.rhServiceTimes{border:0;margin:20px 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.rhServiceTimes legend{font-size:12px;line-height:1.8;margin-bottom:12px}.rhServiceTimes label{border:1px solid #547083;border-radius:4px;padding:12px;background:#203441;display:flex;gap:8px;align-items:center;font-size:11px;cursor:pointer}.rhServiceTimes label.selected{border-color:#f14a5b;background:#48232c}.rhServiceTimes input{accent-color:#f12635}.rhServiceTimes small{flex-basis:100%;font-size:10px;color:#a9c0d0;line-height:1.8}.rhNextVisit{width:100%;padding:13px;border:1px solid #587488;background:#294353;color:#fff;border-radius:4px;font-size:12px;font-weight:700;margin:10px 0}.rhNextVisit:disabled{opacity:.35;cursor:default}.rhBookingReady{font-size:11px;line-height:1.9;color:#d0e5dd;padding:14px;background:#18352a;border:1px solid #3c6552;border-radius:5px}.rhScheduleReview{padding:18px;background:#1b2d3b;border:1px solid #4c6b80;border-radius:6px}.rhScheduleReview>strong{font:700 25px Barlow Condensed,sans-serif}.rhConfirmation ol,.rhScheduleReview ol{padding:0;list-style:none;margin:16px 0}.rhConfirmation li,.rhScheduleReview li{border-top:1px solid #4c655d;padding:12px 0;display:flex;flex-direction:column;gap:6px;font-size:11px}.rhScheduleReview small{font-size:10px;line-height:1.8;color:#b2c6d7;display:block}.rhScheduleReview>p{font-size:12px}.rhWindows legend{max-width:100%}@media(max-width:1000px){.rhBookingGrid{grid-template-columns:1fr}}@media(max-width:420px){.rhVisitTabs{grid-template-columns:1fr}.rhCalendarPanel>h2{font-size:28px}.rhServiceTimes label{padding:11px 9px}}.rhSplitCalendar{gap:6px;align-items:stretch}.rhSplitDay{min-width:0;overflow:hidden;border:1px solid #465c6a;border-radius:6px;background:#15212a}.rhSplitDay.selected{border-color:#fa5b69}.rhSplitDayNumber{display:block;text-align:center;padding:7px 2px;color:#ebf2f6;font-size:12px;font-weight:800}.rhSplitDay.closed{border-color:#2b3740}.rhSplitDay.closed .rhSplitDayNumber{color:#74848e}.rhSplitCalendar .rhSplitSlot{display:flex;flex-direction:column;justify-content:center;gap:4px;width:100%;min-height:58px;aspect-ratio:auto;box-sizing:border-box;border:0;border-top:1px solid #415a67;border-radius:0;padding:7px 2px;background:#183c32;color:#dbf5e7;cursor:pointer}.rhSplitCalendar .rhSplitSlot:hover:not(:disabled){background:#255544}.rhSplitCalendar .rhSplitSlot:disabled{background:#172129;color:#86949f;border:0;border-top:1px solid #2f3c46;cursor:default}.rhSplitCalendar .rhSplitSlot[aria-pressed=true]{background:#a82031;border-top-color:#ec6673;color:white;box-shadow:inset 0 0 0 2px #ff7581}.rhSplitTime{font-size:12px;font-weight:800;white-space:nowrap}.rhSplitTime>span{font-size:9px;font-weight:500}.rhSplitStatus{font-size:8px;line-height:1.3}.rhSplitKey{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0;font-size:10px;color:#c0d1dc}.rhSplitKey>span{display:flex;align-items:center;gap:6px}.rhSplitKey i{width:10px;height:10px;border-radius:2px}.rhSplitKey .open{background:#316d53}.rhSplitKey .busy{background:#53616d}.rhSplitKey .chosen{background:#d82d43}@media(max-width:480px){.rhSplitCalendar{gap:3px}.rhSplitCalendar .rhSplitSlot{min-height:57px;padding:6px 1px}.rhSplitTime{font-size:10px}.rhSplitTime>span{display:block;font-size:8px}.rhSplitStatus{font-size:7px}.rhSplitDayNumber{font-size:11px}.rhSplitKey{gap:9px}}.rhSplitStatus{white-space:normal;overflow-wrap:anywhere;line-height:1.35;text-align:center}.rhSplitSlot{min-height:64px;height:auto;padding:7px 3px}