.bookingWidget{--bk-blue:var(--color-text);--bk-blue-2:var(--color-text);--bk-tint:var(--color-gray-100);--bk-ink:var(--color-text);--bk-muted:var(--color-text-secondary);--bk-faint:var(--color-text-muted);--bk-line:var(--color-gray-200);width:100%;height:100%;min-height:420px;color:var(--bk-ink);text-align:left;background:#fff;flex-direction:column;font-size:.92rem;display:flex;position:relative;overflow-y:auto}.bookingWidget svg{flex-shrink:0;width:18px;height:18px}.bookingCapitalize{display:inline-block}.bookingCapitalize:first-letter{text-transform:uppercase}.bookingWidgetSkeleton{background:linear-gradient(100deg,#f1f5fc 40%,#f8fafd 50%,#f1f5fc 60%) 0 0/200% 100%;border-radius:6px;flex:1;margin:18px;animation:1.4s infinite bookingShimmer}@keyframes bookingShimmer{0%{background-position:120% 0}to{background-position:-80% 0}}.bookingProgress{flex-shrink:0;gap:5px;padding:12px 16px 0;display:flex}.bookingProgress span{background:var(--bk-line);border-radius:999px;flex:1;height:4px;transition:background .3s}.bookingProgress span.isFilled{background:linear-gradient(90deg, var(--bk-blue), var(--bk-blue-2))}.bookingStepIn{animation:.28s both bookingStepIn}@keyframes bookingStepIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.bookingStepIn,.bookingConfirmCheck,.bookingWidgetSkeleton{animation:none}}.bookingPane{flex-direction:column;width:100%;max-width:420px;margin:auto;padding:20px 22px 22px;display:flex;position:relative}.bookingPaneHead{text-align:center;flex-direction:column;align-items:center;margin-bottom:16px;display:flex}.bookingPaneBadge{background:var(--bk-tint);width:44px;height:44px;color:var(--bk-blue);border-radius:6px;justify-content:center;align-items:center;margin-bottom:10px;display:flex}.bookingPaneBadge svg{width:20px;height:20px}.bookingPaneKicker{letter-spacing:.09em;text-transform:uppercase;color:var(--bk-blue);margin-bottom:4px;font-size:.68rem;font-weight:700}.bookingPaneTitle{letter-spacing:-.01em;color:var(--bk-ink);font-size:1.14rem;font-weight:700}.bookingPaneSub{color:var(--bk-muted);margin-top:3px;font-size:.82rem}.bookingBack{width:32px;height:32px;color:var(--bk-faint);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex;position:absolute;top:14px;left:14px}.bookingBack svg{width:17px;height:17px}.bookingBack:hover{background:var(--bk-tint);color:var(--bk-blue)}.bookingCalendar{flex-direction:column;display:flex}.bookingCalendarHead{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.bookingMonthTitle{font-size:.95rem;font-weight:700}.bookingMonthNavGroup{gap:4px;display:flex}.bookingMonthNav{border:1px solid var(--bk-line);width:30px;height:30px;color:var(--bk-blue);cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:flex}.bookingMonthNav svg{width:15px;height:15px}.bookingMonthNav:hover:not(:disabled){background:var(--bk-tint);border-color:#bcd3f5}.bookingMonthNav:disabled{color:#c3cddf;cursor:default}.bookingWeekdays,.bookingDays{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.bookingWeekdays span{text-align:center;letter-spacing:.07em;text-transform:uppercase;color:var(--bk-faint);padding:4px 0 6px;font-size:.64rem;font-weight:700}.bookingDay{aspect-ratio:1;max-height:44px;color:var(--bk-blue);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:.88rem;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.bookingDay:hover:not(:disabled){background:var(--bk-tint)}.bookingDay:disabled{color:#c3cddf;cursor:default;font-weight:400}.bookingDay.isSelected{background:linear-gradient(135deg, var(--bk-blue), var(--bk-blue-2));color:#fff;box-shadow:0 6px 14px -6px #1164e88c}.bookingTimezone{border-top:1px solid var(--bk-line);color:var(--bk-muted);align-items:center;gap:8px;margin-top:14px;padding-top:12px;font-size:.8rem;display:flex}.bookingTimezoneIcon{color:var(--bk-blue);display:flex}.bookingTimezoneIcon svg{width:15px;height:15px}.bookingTimezone select{min-width:0;color:var(--bk-ink);font:inherit;cursor:pointer;background:0 0;border:none;flex:1;padding:4px 0;font-size:.82rem;font-weight:500}.bookingTimezone select:focus{outline:none}.bookingTimezone em{white-space:nowrap;color:var(--bk-faint);font-size:.76rem;font-style:normal;font-weight:600}.bookingPeriods{flex-direction:column;gap:14px;display:flex}.bookingPeriodLabel{letter-spacing:.08em;text-transform:uppercase;color:var(--bk-faint);text-align:center;margin-bottom:7px;font-size:.7rem;font-weight:700}.bookingTimeGrid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.bookingSlot{color:var(--bk-blue);font-variant-numeric:tabular-nums;cursor:pointer;background:#fff;border:1px solid #bcd3f5;border-radius:6px;padding:11px 4px;font-size:.88rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .12s,box-shadow .15s}.bookingSlot:hover{background:linear-gradient(135deg, var(--bk-blue), var(--bk-blue-2));border-color:var(--bk-blue);color:#fff;transform:translateY(-1px);box-shadow:0 8px 16px -8px #1164e880}.bookingForm{flex-direction:column;gap:13px;display:flex}.bookingField{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.bookingField>span:first-child{color:var(--bk-ink);font-size:.8rem;font-weight:600}.bookingField em{color:var(--bk-faint);font-style:normal;font-weight:400}.bookingInputWrap{align-items:center;display:flex;position:relative}.bookingInputWrap>svg{width:15px;height:15px;color:var(--bk-faint);pointer-events:none;transition:color .15s;position:absolute;left:12px}.bookingInputWrap:focus-within>svg{color:var(--bk-blue)}.bookingInputWrap input{width:100%;color:var(--bk-ink);font:inherit;background:#fff;border:1px solid #d7e0f0;border-radius:6px;padding:10px 12px;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.bookingInputWrap>svg+input{padding-left:36px}.bookingInputWrap input::placeholder{color:#aab3cc}.bookingInputWrap input:focus{border-color:var(--bk-blue);outline:none;box-shadow:0 0 0 3px #1164e81f}.bookingInputWrap input[aria-invalid=true]{border-color:#d4553f;box-shadow:0 0 0 3px #d4553f14}.bookingFieldError{color:#b3392a;align-items:flex-start;gap:5px;font-size:.78rem;line-height:1.4;display:flex}.bookingFieldError svg{width:14px;height:14px;margin-top:1px}.bookingFieldRow{gap:10px;display:flex}@media (max-width:520px){.bookingFieldRow{flex-direction:column;gap:13px}}.bookingPlatformOptions{gap:10px;display:flex}.bookingPlatformOption{border:1.5px solid var(--bk-line);cursor:pointer;text-align:center;background:#fff;border-radius:6px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:16px 10px 13px;transition:border-color .15s,background .15s,box-shadow .15s,transform .12s;display:flex;position:relative}.bookingPlatformOption:hover{border-color:#bcd3f5;transform:translateY(-1px)}.bookingPlatformOption input{opacity:0;pointer-events:none;position:absolute}.bookingPlatformLogo{justify-content:center;align-items:center;height:38px;margin-bottom:4px;display:flex}.bookingPlatformLogo svg{width:auto;height:30px}.bookingPlatformName{color:var(--bk-ink);font-size:.88rem;font-weight:700}.bookingPlatformHint{color:var(--bk-faint);font-size:.72rem}.bookingPlatformOption.isSelected{border-color:var(--bk-blue);background:var(--bk-tint);box-shadow:0 0 0 3px #1164e81a}.bookingPlatformCheck{color:var(--bk-blue);display:flex;position:absolute;top:8px;right:8px}.bookingPlatformCheck svg{width:15px;height:15px}.bookingHoneypot{height:0;position:absolute;top:-9999px;left:-9999px;overflow:hidden}.bookingError{color:#b3392a;background:#fdf3f1;border:1px solid #f2d4cd;border-radius:6px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:.86rem;display:flex}.bookingError svg{width:16px;height:16px;margin-top:1px}.bookingSubmit{background:linear-gradient(135deg, var(--bk-blue), var(--bk-blue-2));color:#fff;font:inherit;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-top:3px;padding:12px 16px;font-size:.93rem;font-weight:600;transition:transform .15s,box-shadow .15s,opacity .15s;display:flex;box-shadow:0 10px 22px -10px #1164e88c}.bookingSubmit svg{width:16px;height:16px;transition:transform .15s}.bookingSubmit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 26px -10px #1164e899}.bookingSubmit:hover:not(:disabled) svg{transform:translate(3px)}.bookingSubmit:disabled{opacity:.7;cursor:default}.bookingPrivacyNote{color:var(--bk-faint);text-align:center;justify-content:center;align-items:center;gap:6px;font-size:.75rem;display:flex}.bookingPrivacyNote svg{width:13px;height:13px}.bookingConfirm{text-align:center;justify-content:center;align-items:center;gap:4px}.bookingConfirm .bookingPaneSub{max-width:340px;margin-bottom:12px}.bookingConfirmCheck{color:#fff;background:linear-gradient(135deg,#2fbf71,#1e9e5a);border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:10px;animation:.4s cubic-bezier(.34,1.56,.64,1) both bookingPop;display:flex;box-shadow:0 14px 28px -12px #1e9e5a99}.bookingConfirmCheck svg{width:24px;height:24px}@keyframes bookingPop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.bookingConfirmSummary{border:1px solid var(--bk-line);background:#fafbfe;border-radius:6px;flex-direction:column;gap:10px;min-width:min(320px,100%);padding:16px 18px;display:flex}.bookingConfirmSummary>div{text-align:left;align-items:center;gap:10px;display:flex}.bookingConfirmSummary dt{color:var(--bk-blue);display:flex}.bookingConfirmSummary dt svg{width:15px;height:15px}.bookingConfirmSummary dd{color:var(--bk-ink);overflow-wrap:anywhere;margin:0;font-size:.88rem;font-weight:600}
