.BookingCalendar-module__FDhAoW__calendarSection{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;flex-direction:column;width:100%;max-width:960px;display:flex;overflow:hidden}.BookingCalendar-module__FDhAoW__weekNav{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.BookingCalendar-module__FDhAoW__navBtn{color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #bfdbfe;border-radius:.5rem;padding:.375rem .875rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.BookingCalendar-module__FDhAoW__navBtn:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}.BookingCalendar-module__FDhAoW__navBtn:disabled{color:#94a3b8;cursor:not-allowed;border-color:#e2e8f0}.BookingCalendar-module__FDhAoW__navBtn:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.BookingCalendar-module__FDhAoW__weekLabel{color:#0f172a;text-align:center;text-transform:capitalize;font-size:.9375rem;font-weight:600}.BookingCalendar-module__FDhAoW__calendarScroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.BookingCalendar-module__FDhAoW__calendarGrid{grid-template-columns:4.25rem repeat(5,minmax(7rem,1fr));min-width:500px;display:grid}.BookingCalendar-module__FDhAoW__cornerCell{background:#f8fafc;border-bottom:2px solid #e2e8f0;border-right:1px solid #e2e8f0}.BookingCalendar-module__FDhAoW__dayHeader{background:#f8fafc;border-bottom:2px solid #e2e8f0;border-right:1px solid #f1f5f9;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding:.625rem .5rem;display:flex}.BookingCalendar-module__FDhAoW__dayToday{background:#eff6ff;border-bottom-color:#2563eb}.BookingCalendar-module__FDhAoW__dayWeekday{color:#94a3b8;text-transform:uppercase;letter-spacing:.07em;font-size:.6875rem;font-weight:600}.BookingCalendar-module__FDhAoW__dayNum{color:#0f172a;font-size:1.375rem;font-weight:800;line-height:1}.BookingCalendar-module__FDhAoW__dayToday .BookingCalendar-module__FDhAoW__dayNum{color:#2563eb}.BookingCalendar-module__FDhAoW__dayMonth{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-weight:500}.BookingCalendar-module__FDhAoW__timeLabel{color:#94a3b8;white-space:nowrap;letter-spacing:.02em;background:#fafafa;border-bottom:1px solid #f1f5f9;border-right:1px solid #e2e8f0;justify-content:flex-end;align-items:center;height:5.5rem;padding:0 .75rem;font-size:.75rem;font-weight:600;display:flex}.BookingCalendar-module__FDhAoW__cell{border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;justify-content:center;align-items:center;height:5.5rem;padding:.375rem;display:flex}.BookingCalendar-module__FDhAoW__cellDash{color:#d1d5db;-webkit-user-select:none;user-select:none;font-size:.875rem}.BookingCalendar-module__FDhAoW__slotBtn{cursor:pointer;color:#1d4ed8;text-align:center;background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:.5rem;justify-content:center;align-items:center;gap:.375rem;width:100%;height:100%;padding:0 .5rem;font-family:inherit;font-size:.8125rem;font-weight:700;line-height:1.2;transition:filter .12s,transform .1s,box-shadow .15s;display:flex}.BookingCalendar-module__FDhAoW__slotBtn:hover{filter:brightness(.94);transform:scale(1.04);box-shadow:0 2px 8px #0000001f}.BookingCalendar-module__FDhAoW__slotBtn:active{transform:scale(.97)}.BookingCalendar-module__FDhAoW__slotBtn:focus-visible{outline-offset:2px;outline:2px solid}.BookingCalendar-module__FDhAoW__slotBtnMulti{color:#5b21b6;background:#f5f3ff;border-style:dashed;border-color:#c4b5fd}.BookingCalendar-module__FDhAoW__slotBtnMulti:hover{filter:brightness(.93);box-shadow:0 2px 8px #6d28d92e}.BookingCalendar-module__FDhAoW__multiDots{flex-shrink:0;align-items:center;gap:.1rem;display:flex}.BookingCalendar-module__FDhAoW__slotDot{background:#2563eb;border-radius:50%;flex-shrink:0;width:.45rem;height:.45rem}.BookingCalendar-module__FDhAoW__slotText{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.BookingCalendar-module__FDhAoW__noWeekSlots{text-align:center;color:#64748b;border-top:1px solid #f1f5f9;margin:0;padding:1.25rem;font-size:.875rem}.BookingCalendar-module__FDhAoW__legend{color:#94a3b8;border-top:1px solid #f1f5f9;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.875rem 1.25rem;font-size:.8125rem;display:flex}.BookingCalendar-module__FDhAoW__legendDot{background:#2563eb;border-radius:50%;flex-shrink:0;width:.45rem;height:.45rem}.BookingCalendar-module__FDhAoW__legendChip{border:1.5px solid #0000;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.BookingCalendar-module__FDhAoW__overlay{-webkit-backdrop-filter:blur(4px);z-index:50;background:#0f172a8c;justify-content:center;align-items:center;padding:1rem;animation:.15s BookingCalendar-module__FDhAoW__overlayIn;display:flex;position:fixed;inset:0}@keyframes BookingCalendar-module__FDhAoW__overlayIn{0%{opacity:0}to{opacity:1}}.BookingCalendar-module__FDhAoW__modal{background:#fff;border-radius:1.25rem;width:100%;max-width:480px;max-height:90dvh;animation:.2s BookingCalendar-module__FDhAoW__modalIn;position:relative;overflow-y:auto;box-shadow:0 24px 60px #0f172a38}@keyframes BookingCalendar-module__FDhAoW__modalIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.BookingCalendar-module__FDhAoW__overlay,.BookingCalendar-module__FDhAoW__modal{animation:none}}.BookingCalendar-module__FDhAoW__modalClose{color:#64748b;cursor:pointer;z-index:1;background:#f1f5f9;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;transition:background .15s,color .15s;display:flex;position:absolute;top:1rem;right:1rem}.BookingCalendar-module__FDhAoW__modalClose:hover{color:#0f172a;background:#e2e8f0}.BookingCalendar-module__FDhAoW__modalClose:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.BookingCalendar-module__FDhAoW__modalBody{flex-direction:column;gap:1.25rem;padding:2rem 1.75rem;display:flex}.BookingCalendar-module__FDhAoW__modalTitle{color:#0f172a;letter-spacing:-.02em;margin:0;padding-right:2rem;font-size:1.375rem;font-weight:800}.BookingCalendar-module__FDhAoW__slotSummary{color:#475569;text-transform:capitalize;background:#f8fafc;border-left:3px solid #2563eb;border-radius:.625rem;margin:0;padding:.75rem 1rem;font-size:.9375rem;line-height:1.6}.BookingCalendar-module__FDhAoW__field{flex-direction:column;gap:.375rem;display:flex}.BookingCalendar-module__FDhAoW__fieldLabel{color:#374151;margin:0;font-size:.875rem;font-weight:600}.BookingCalendar-module__FDhAoW__required{color:#ef4444;margin-left:.125rem}.BookingCalendar-module__FDhAoW__optional{color:#94a3b8;margin-left:.25rem;font-weight:400}.BookingCalendar-module__FDhAoW__fieldHint{color:#64748b;margin:0;font-size:.8125rem;line-height:1.5}.BookingCalendar-module__FDhAoW__select{color:#0f172a;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:.625rem;width:100%;padding:.625rem .875rem;font-family:inherit;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.BookingCalendar-module__FDhAoW__select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.BookingCalendar-module__FDhAoW__textarea{color:#0f172a;resize:vertical;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:.625rem;width:100%;padding:.625rem .875rem;font-family:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.BookingCalendar-module__FDhAoW__textarea:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.BookingCalendar-module__FDhAoW__textarea::placeholder{color:#94a3b8}.BookingCalendar-module__FDhAoW__physioCard{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.875rem;padding:.75rem 1rem;display:flex}.BookingCalendar-module__FDhAoW__physioOptions{flex-direction:column;gap:.5rem;display:flex}.BookingCalendar-module__FDhAoW__physioOption{cursor:pointer;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.875rem;padding:.75rem 1rem;transition:background .15s,border-color .15s;display:flex}.BookingCalendar-module__FDhAoW__physioOption:hover{background:#f0f9ff;border-color:#bfdbfe}.BookingCalendar-module__FDhAoW__physioOptionActive{background:#eff6ff;border-color:#2563eb}.BookingCalendar-module__FDhAoW__physioAvatar{color:#fff;background:linear-gradient(135deg,#2563eb,#60a5fa);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1rem;font-weight:700;display:flex}.BookingCalendar-module__FDhAoW__physioName{color:#0f172a;margin:0;font-size:.9375rem;font-weight:600}.BookingCalendar-module__FDhAoW__physioSpec{color:#64748b;margin:0;font-size:.8125rem;line-height:1.4}.BookingCalendar-module__FDhAoW__srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.BookingCalendar-module__FDhAoW__priceRow{color:#475569;background:#f8fafc;border-radius:.75rem;justify-content:space-between;align-items:center;padding:.875rem 1rem;font-size:.9375rem;display:flex}.BookingCalendar-module__FDhAoW__priceVal{color:#0f172a;font-size:1.125rem;font-weight:800}.BookingCalendar-module__FDhAoW__errMsg{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin:0;padding:.625rem .875rem;font-size:.875rem;line-height:1.5}.BookingCalendar-module__FDhAoW__modalActions{flex-direction:column;gap:.625rem;padding-top:.25rem;display:flex}.BookingCalendar-module__FDhAoW__guestMsg{color:#64748b;margin:0;font-size:.9375rem;line-height:1.6}.BookingCalendar-module__FDhAoW__guestActions{flex-direction:column;gap:.625rem;display:flex}.BookingCalendar-module__FDhAoW__successCircle{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;margin:0 auto;font-size:1.5rem;font-weight:700;display:flex;box-shadow:0 0 0 6px #22c55e26}.BookingCalendar-module__FDhAoW__successDate{color:#475569;text-align:center;text-transform:capitalize;margin:0;font-size:.9375rem}.BookingCalendar-module__FDhAoW__successPhysio{color:#0f172a;text-align:center;margin:0;font-size:1rem;font-weight:600}.BookingCalendar-module__FDhAoW__refBox{text-align:center;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:.75rem;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.BookingCalendar-module__FDhAoW__refLabel{color:#16a34a;margin:0;font-size:.8125rem;font-weight:500}.BookingCalendar-module__FDhAoW__refCode{color:#15803d;letter-spacing:.12em;font-family:Courier New,Courier,monospace;font-size:1.625rem;font-weight:800}.BookingCalendar-module__FDhAoW__btnPrimary{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.875rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,transform .1s,box-shadow .15s;display:flex}.BookingCalendar-module__FDhAoW__btnPrimary:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 14px #2563eb59}.BookingCalendar-module__FDhAoW__btnPrimary:active{transform:scale(.98)}.BookingCalendar-module__FDhAoW__btnPrimary:disabled{cursor:not-allowed;background:#93c5fd}.BookingCalendar-module__FDhAoW__btnPrimary:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.BookingCalendar-module__FDhAoW__btnOutline{color:#64748b;cursor:pointer;background:0 0;border:1.5px solid #e2e8f0;border-radius:.75rem;justify-content:center;align-items:center;padding:.875rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:flex}.BookingCalendar-module__FDhAoW__btnOutline:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.BookingCalendar-module__FDhAoW__btnOutline:focus-visible{outline-offset:2px;outline:2px solid #2563eb}
@keyframes booking-module__Gtonmq__meshDrift{0%{background-position:0 0,100% 100%,30% 70%,70% 30%}50%{background-position:10% 15%,85% 90%,45% 55%,60% 45%}to{background-position:0 0,100% 100%,30% 70%,70% 30%}}.booking-module__Gtonmq__main{background-color:#eef3ff;background-image:radial-gradient(80% 60% at 10% 10%,#2563eb2e 0%,#0000 60%),radial-gradient(70% 55% at 90% 90%,#6366f126 0%,#0000 60%),radial-gradient(55% 65% at 80% 15%,#0ea5e91f 0%,#0000 55%),radial-gradient(60% 50% at 20% 80%,#8b5cf61a 0%,#0000 55%);background-size:200% 200%;flex-direction:column;align-items:center;gap:2rem;min-height:100dvh;padding:2.5rem 1.5rem 4rem;animation:18s ease-in-out infinite booking-module__Gtonmq__meshDrift;display:flex;position:relative;overflow:hidden}.booking-module__Gtonmq__main:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,#2563eb1f 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.booking-module__Gtonmq__main>*{z-index:1;position:relative}.booking-module__Gtonmq__header{flex-direction:column;gap:.5rem;width:100%;max-width:960px;display:flex}.booking-module__Gtonmq__headerNav{justify-content:space-between;align-items:center;display:flex}.booking-module__Gtonmq__signOutBtn{cursor:pointer;color:#64748b;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-size:.8125rem;text-decoration:underline}.booking-module__Gtonmq__signOutBtn:hover{color:#0f172a}.booking-module__Gtonmq__backLink{color:#64748b;width:fit-content;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s}.booking-module__Gtonmq__backLink:hover{color:#0f172a}.booking-module__Gtonmq__title{color:#0f172a;letter-spacing:-.03em;margin:.25rem 0 0;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800}.booking-module__Gtonmq__subtitle{color:#64748b;margin:0;font-size:1rem}.booking-module__Gtonmq__empty{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:5rem 1rem;display:flex}.booking-module__Gtonmq__emptyIcon{font-size:3rem;line-height:1}.booking-module__Gtonmq__emptyText{color:#0f172a;margin:0;font-size:1.125rem;font-weight:600}.booking-module__Gtonmq__emptyHint{color:#64748b;margin:0;font-size:.9rem}
