.BookingCalendar-module__R7_wlW__overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.BookingCalendar-module__R7_wlW__modal{background:#1a1a2e;border-radius:16px;width:100%;max-width:400px;max-height:90vh;padding:24px;position:relative;overflow-y:auto}.BookingCalendar-module__R7_wlW__closeBtn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:24px;transition:background .2s;display:flex;position:absolute;top:12px;right:12px}.BookingCalendar-module__R7_wlW__closeBtn:hover{color:#fff;background:#ffffff1a}.BookingCalendar-module__R7_wlW__title{color:#fff;margin:0 0 8px;font-size:20px;font-weight:600}.BookingCalendar-module__R7_wlW__subtitle{color:#888;margin:0 0 4px;font-size:14px}.BookingCalendar-module__R7_wlW__price{color:#a855f7;margin:0 0 20px;font-size:16px;font-weight:500}.BookingCalendar-module__R7_wlW__loading{text-align:center;color:#888;padding:40px 0}.BookingCalendar-module__R7_wlW__noSlots{text-align:center;color:#888;padding:20px 0;font-size:14px}.BookingCalendar-module__R7_wlW__calendar{margin-bottom:20px}.BookingCalendar-module__R7_wlW__monthNav{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.BookingCalendar-module__R7_wlW__monthNav span{color:#fff;font-size:16px;font-weight:500}.BookingCalendar-module__R7_wlW__monthNav button{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;width:32px;height:32px;font-size:16px;transition:background .2s}.BookingCalendar-module__R7_wlW__monthNav button:hover{background:#fff3}.BookingCalendar-module__R7_wlW__weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px;display:grid}.BookingCalendar-module__R7_wlW__weekday{text-align:center;color:#666;padding:4px;font-size:12px}.BookingCalendar-module__R7_wlW__days{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.BookingCalendar-module__R7_wlW__day{aspect-ratio:1;color:#444;cursor:default;border-radius:8px;justify-content:center;align-items:center;font-size:14px;display:flex}.BookingCalendar-module__R7_wlW__day.BookingCalendar-module__R7_wlW__empty{visibility:hidden}.BookingCalendar-module__R7_wlW__day.BookingCalendar-module__R7_wlW__available{color:#fff;cursor:pointer;background:#a855f733;transition:background .2s}.BookingCalendar-module__R7_wlW__day.BookingCalendar-module__R7_wlW__available:hover{background:#a855f766}.BookingCalendar-module__R7_wlW__day.BookingCalendar-module__R7_wlW__selected{color:#fff;background:#a855f7!important}.BookingCalendar-module__R7_wlW__timeSlotsSection{margin-bottom:20px}.BookingCalendar-module__R7_wlW__timeSlotsSection h3{color:#888;margin:0 0 12px;font-size:14px;font-weight:400}.BookingCalendar-module__R7_wlW__timeSlots{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.BookingCalendar-module__R7_wlW__timeSlot{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;padding:10px 8px;font-size:14px;transition:background .2s}.BookingCalendar-module__R7_wlW__timeSlot:hover{background:#a855f74d}.BookingCalendar-module__R7_wlW__timeSlot.BookingCalendar-module__R7_wlW__selectedTime{background:#a855f7}.BookingCalendar-module__R7_wlW__bookingForm{flex-direction:column;gap:12px;display:flex}.BookingCalendar-module__R7_wlW__noteInput{color:#fff;resize:vertical;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;width:100%;min-height:80px;padding:12px;font-size:14px}.BookingCalendar-module__R7_wlW__noteInput::placeholder{color:#666}.BookingCalendar-module__R7_wlW__noteInput:focus{border-color:#a855f7;outline:none}.BookingCalendar-module__R7_wlW__error{color:#ef4444;margin:0;font-size:14px}.BookingCalendar-module__R7_wlW__submitBtn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7 0%,#6366f1 100%);border:none;border-radius:12px;width:100%;padding:14px;font-size:16px;font-weight:500;transition:opacity .2s,transform .2s}.BookingCalendar-module__R7_wlW__submitBtn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.BookingCalendar-module__R7_wlW__submitBtn:disabled{opacity:.5;cursor:not-allowed}.BookingCalendar-module__R7_wlW__authRequired{text-align:center;padding:24px 0}.BookingCalendar-module__R7_wlW__authIcon{margin-bottom:16px;font-size:48px}.BookingCalendar-module__R7_wlW__authTitle{color:#fff;margin:0 0 12px;font-size:18px;font-weight:600}.BookingCalendar-module__R7_wlW__authMessage{color:#888;margin:0 0 24px;font-size:14px;line-height:1.5}.BookingCalendar-module__R7_wlW__authButtons{flex-direction:column;gap:12px;display:flex}.BookingCalendar-module__R7_wlW__authBtnPrimary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7 0%,#6366f1 100%);border:none;border-radius:12px;width:100%;padding:14px;font-size:16px;font-weight:500;transition:opacity .2s,transform .2s}.BookingCalendar-module__R7_wlW__authBtnPrimary:hover{opacity:.9;transform:translateY(-1px)}.BookingCalendar-module__R7_wlW__authBtnSecondary{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;width:100%;padding:14px;font-size:16px;font-weight:500;transition:background .2s}.BookingCalendar-module__R7_wlW__authBtnSecondary:hover{background:#ffffff26}.BookingCalendar-module__R7_wlW__confirmationStep{flex-direction:column;gap:20px;display:flex}.BookingCalendar-module__R7_wlW__confirmationSummary{background:#ffffff0d;border-radius:12px;padding:20px}.BookingCalendar-module__R7_wlW__confirmationTitle{color:#fff;border-bottom:1px solid #ffffff1a;margin:0 0 16px;padding-bottom:12px;font-size:16px;font-weight:600}.BookingCalendar-module__R7_wlW__summaryRow{justify-content:space-between;align-items:flex-start;padding:8px 0;display:flex}.BookingCalendar-module__R7_wlW__summaryLabel{color:#888;font-size:14px}.BookingCalendar-module__R7_wlW__summaryValue{color:#fff;text-align:right;max-width:60%;font-size:14px;font-weight:500}.BookingCalendar-module__R7_wlW__confirmationButtons{gap:12px;display:flex}.BookingCalendar-module__R7_wlW__backBtn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;flex:1;padding:14px;font-size:16px;font-weight:500;transition:background .2s}.BookingCalendar-module__R7_wlW__backBtn:hover:not(:disabled){background:#ffffff26}.BookingCalendar-module__R7_wlW__backBtn:disabled{opacity:.5;cursor:not-allowed}.BookingCalendar-module__R7_wlW__payBtn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);border:none;border-radius:12px;flex:2;padding:14px;font-size:16px;font-weight:600;transition:opacity .2s,transform .2s}.BookingCalendar-module__R7_wlW__payBtn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.BookingCalendar-module__R7_wlW__payBtn:disabled{opacity:.5;cursor:not-allowed}.BookingCalendar-module__R7_wlW__paymentNote{text-align:center;color:#666;margin:0;font-size:12px}
