.schedule-paint-toolbar .schedule-client-picker{display:flex;align-items:center;gap:.4rem;min-height:34px;padding:.2rem .35rem;border:2px solid #d77d7d;border-radius:.48rem;background:#fff4f4;color:#752222;font-size:.68rem;font-weight:900}
.schedule-paint-toolbar .schedule-client-picker.active{border-color:#a61111;box-shadow:0 0 0 2px #fff inset}
.schedule-paint-toolbar .schedule-client-picker select{width:min(220px,36vw);min-height:29px;padding:.2rem .35rem;border:1px solid #b9c6d1;border-radius:.35rem;background:#fff;color:#172e42;font:inherit;font-weight:700}
.schedule-paint-toolbar .schedule-client-error{grid-column:1/-1;color:#a32121}
.calendar-slot .calendar-client-name{display:block;overflow:hidden;width:100%;padding:0 .14rem;color:#111;font-size:.7rem;font-weight:950;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.message-upcoming-bookings{display:flex;align-items:center;gap:.7rem;margin:0 0 .85rem;padding:.55rem .7rem;border:1px solid #a6cde6;border-radius:.75rem;background:#e9f6ff;color:#17466a}
.message-upcoming-bookings>strong{flex:none;font-size:.8rem}
.message-upcoming-bookings>div{display:flex;flex-wrap:wrap;gap:.4rem;min-width:0}
.message-upcoming-bookings button{display:flex;align-items:center;gap:.35rem;padding:.4rem .6rem;border:1px solid #78b4da;border-radius:.5rem;background:#fff;color:#16527c;font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}
.message-upcoming-bookings button:hover,.message-upcoming-bookings button:focus-visible{border-color:#137bc0;background:#f6fcff;outline:2px solid #137bc0;outline-offset:1px}
.message-upcoming-bookings button small{color:#2873a3;white-space:nowrap}
@media(max-width:620px){.schedule-paint-toolbar .schedule-client-picker{width:100%;justify-content:space-between}.schedule-paint-toolbar .schedule-client-picker select{flex:1;width:auto;max-width:none}.schedule-paint-toolbar>div>[data-paint-status]{flex:1 1 calc(50% - .35rem)}.calendar-slot .calendar-client-name{font-size:.78rem}.message-upcoming-bookings{align-items:flex-start;flex-direction:column}.message-upcoming-bookings>div{width:100%}.message-upcoming-bookings button{width:100%;justify-content:space-between;font-size:.78rem}}
.message-booking-dialog{width:min(420px,calc(100vw - 28px));max-height:calc(100vh - 28px);padding:1.1rem;border:1px solid #8bb6d1;border-radius:.8rem;background:#fff;color:#183249;box-shadow:0 18px 60px #001b35a6}
.message-booking-dialog::backdrop{background:#061a2db8}
.message-booking-dialog h2{margin:0 0 .6rem;font-size:1.2rem}
.message-booking-dialog p{margin:.55rem 0;line-height:1.4}
.message-booking-dialog-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}
.message-booking-dialog-actions button{flex:1 1 165px;min-height:42px;padding:.5rem .65rem;border-radius:.5rem;font:inherit;font-weight:800;cursor:pointer}
.message-booking-dialog-actions .message-booking-cancel{flex-basis:100%;border:1px solid #a22424;background:#b82727;color:#fff}
.message-booking-schedule{border:1px solid #347aa6;background:#e9f6ff;color:#17466a}
.message-booking-keep{border:1px solid #7798ad;background:#fff;color:#17466a}
.message-booking-policy{font-size:.82rem}
.message-booking-policy-link{padding:0;border:0;background:none;color:#1368a4;font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}
.message-booking-error{color:#a22424;font-weight:700}
.message-booking-notice{margin:0 0 .75rem;padding:.5rem .7rem;border-radius:.5rem;background:#e4f6e9;color:#145c2b;font-weight:700}
.credit-booking-date{display:block;color:#777;font-size:.75rem}
