.service-slot-booking-modal #step1{display:flex;flex-direction:column;width:100%}.service-slot-booking-modal .calender,.service-slot-booking-modal .main-content-step-1{display:flex;flex-direction:column;min-height:0}.service-slot-booking-modal .calender,.service-slot-booking-modal .calender-top,.service-slot-booking-modal .main-content-step-1,.service-slot-booking-modal .select-date{overflow:visible}.service-slot-booking-modal .staff-selection-wrap{padding:0 24px 12px}.service-slot-booking-modal .staff-selection-title{margin:0 0 10px;font-size:15px;font-weight:600;color:#4a4a4a}.service-slot-booking-modal .staff-selector{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;padding-bottom:6px;transition:opacity .2s ease}.service-slot-booking-modal .staff-selector.is-loading{opacity:.9}.service-slot-booking-modal .staff-skeleton-chip{display:flex;flex-direction:column;align-items:center;min-width:68px}.service-slot-booking-modal .staff-skeleton-image{display:block;width:56px;height:56px;border-radius:999px}.service-slot-booking-modal .staff-skeleton-text{display:block;margin-top:6px;width:56px;height:12px;border-radius:8px}.service-slot-booking-modal .staff-selector::-webkit-scrollbar{height:5px}.service-slot-booking-modal .staff-selector::-webkit-scrollbar-thumb{background:#d6d6d6;border-radius:10px}.service-slot-booking-modal .staff-chip{border:0;background:0 0;display:flex;flex-direction:column;align-items:center;min-width:68px;cursor:pointer;padding:0;position:relative}.service-slot-booking-modal .staff-chip-image-wrap{width:56px;height:56px;border-radius:999px;overflow:hidden;border:2px solid transparent;transition:border-color .2s ease;background:#f2f2f2}.service-slot-booking-modal .staff-chip img{width:100%;height:100%;object-fit:cover;display:block}.service-slot-booking-modal .staff-chip-name,.service-slot-booking-modal .staff-chip-subtitle{margin-top:6px;font-size:13px;color:#4a4a4a;line-height:1.2;max-width:70px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.service-slot-booking-modal .staff-chip-subtitle{margin-top:3px;font-size:11px;color:#8c8c8c;max-width:80px}.service-slot-booking-modal .staff-chip.active .staff-chip-image-wrap{border-color:#26b66a}.service-slot-booking-modal .staff-chip.active::after{content:"";position:absolute;right:4px;top:42px;width:16px;height:16px;border-radius:50%;background:#26b66a;box-shadow:0 0 0 2px #fff}.service-slot-booking-modal .staff-chip.active::before{content:"";position:absolute;right:9px;top:47px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);z-index:1}.service-slot-booking-modal .no-appointments-message{text-align:center;color:#7a7a7a;padding:20px 12px;font-size:14px}.service-slot-booking-modal .day{display:flex}.service-slot-booking-modal .calender-main{border:1px solid #d7d7d7;border-radius:8px;overflow-x:hidden;overflow-y:auto;max-height:430px;background:#fff}.service-slot-booking-modal .calender-main.no-slots-state{border:0}.service-slot-booking-modal .calender-main::-webkit-scrollbar{width:6px}.service-slot-booking-modal .calender-main::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:10px}.service-slot-booking-modal .calender-main .day{display:grid;grid-template-columns:72px 1fr;border-bottom:1px solid #ddd;align-items:stretch}.service-slot-booking-modal .calender-main .day:last-child{border-bottom:0}.service-slot-booking-modal .calender-main .left{display:flex;align-items:center;justify-content:center;background:#f8f8f8;border-right:1px solid #ddd;min-height:70px}.service-slot-booking-modal .calender-main .left img{width:26px;height:26px;object-fit:contain}.service-slot-booking-modal .evening-middle,.service-slot-booking-modal .morning-middle,.service-slot-booking-modal .night-middle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.service-slot-booking-modal .time-slot{cursor:pointer;color:#565656}.service-slot-booking-modal .time-slot,.service-slot-booking-modal .unavailable-slot{padding:10px;text-align:center;border:1px solid #eee;border-top:none;transition:background-color .2s;font-size:13px;font-weight:bolder;background:#fff;border-radius:0;box-shadow:none;outline:0}.service-slot-booking-modal .time-slot:hover{background:#ececec}.service-slot-booking-modal .time-slot.selected{background:var(--primary-color);color:#fff}.service-slot-booking-modal .time-slot.disabled-slot,.service-slot-booking-modal .unavailable-slot{color:#9a9a9a;background:#f7f7f7;cursor:not-allowed}.service-slot-booking-modal :is(.morning-middle,.evening-middle,.night-middle) .time-slot:nth-last-child(-n+3){border-bottom:0}.service-slot-booking-modal :is(.morning-middle,.evening-middle,.night-middle) .time-slot:nth-child(3n){border-right:0}.service-slot-booking-modal .calender-top,.service-slot-booking-modal .select-date{position:relative}.service-slot-booking-modal .calendar-popup{position:absolute;left:0;top:calc(100% + 6px);background:#fff;border-radius:8px;box-shadow:0 8px 20px rgba(0,0,0,.18);padding:12px;z-index:2000;min-width:310px;display:none}.service-slot-booking-modal .calendar-popup .calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.service-slot-booking-modal .calendar-popup .calendar-title{font-size:15px;font-weight:700;color:#4a4a4a}.service-slot-booking-modal .calendar-popup .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.service-slot-booking-modal .calendar-popup .calendar-day-header{font-size:12px;font-weight:600;color:#8a8a8a;text-align:center;padding:4px 0}.service-slot-booking-modal .calendar-popup .calendar-day{height:34px;min-width:34px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;border-radius:6px;cursor:pointer;color:#4a4a4a;background:0 0}.service-slot-booking-modal .calendar-popup .calendar-day:hover{background:#f0f4f8}.service-slot-booking-modal .calendar-popup .calendar-day.selected{background:var(--primary-color);color:#fff;font-weight:700}.service-slot-booking-modal .calendar-popup .calendar-day.other-month{color:#c3c3c3}.service-slot-booking-modal .calendar-popup .calendar-day.disabled{opacity:.45;pointer-events:none;cursor:not-allowed}@media (max-width:640px){.service-slot-booking-modal .staff-selection-wrap{padding:0 16px 12px}.service-slot-booking-modal .staff-selector{gap:12px}.service-slot-booking-modal .time-slot,.service-slot-booking-modal .unavailable-slot{font-size:13px;min-height:54px}.service-slot-booking-modal .calendar-popup{min-width:280px;left:0;right:auto}.service-slot-booking-modal .calender-main{max-height:52vh}}