/* Calendar base downloaded from the reference; isolated from legacy checkout styles. */
#booking-dialog.tdc-booking-dialog {
    box-sizing: border-box !important;
    position: fixed !important;
    inset: 0 !important;
    width: min(36rem, calc(100vw - 2rem)) !important;
    max-width: none !important;
    max-height: 90dvh !important;
    height: fit-content !important;
    margin: auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--color-surface-elevated) !important;
    color: var(--color-text-primary) !important;
    box-shadow: 0 10px 30px #0003 !important;
    overflow: hidden !important;
}
#booking-dialog.tdc-booking-dialog:not([open]) { display: none !important; }
#booking-dialog.tdc-booking-dialog[open] { display: flex !important; flex-direction: column !important; }
.tdc-booking-dialog::backdrop { background: rgba(0, 0, 0, .6); }
.tdc-booking-dialog header { flex: 0 0 auto !important; }
.tdc-booking-scroll { overflow-y: auto !important; overscroll-behavior: contain; min-height: 0; }
.tdc-booking-total { position: sticky !important; bottom: 0; z-index: 1; box-shadow: 0 -2px 8px #0001; }
.tdc-booking-dialog [hidden], .tdc-public-content [hidden] { display: none !important; }
.tdc-booking-dialog button:disabled { cursor: not-allowed !important; opacity: .5 !important; }
.tdc-booking-dialog .rdp-nav { z-index: 2; height: 24px !important; }
/* Match the rendered reference, not react-day-picker's extra root spacing defaults. */
.tdc-booking-dialog .rdp-month_caption { height: auto !important; }
.tdc-booking-dialog .rdp-weekday { padding: 0 !important; opacity: 1 !important; }
.tdc-booking-dialog :is(.rdp-button_previous, .rdp-button_next) { width: 24px !important; height: 24px !important; }
.tdc-booking-dialog :is(.rdp-button_previous, .rdp-button_next, .rdp-day_button):disabled { opacity: 1 !important; }
.tdc-booking-dialog .rdp-month_grid { table-layout: fixed !important; border-collapse: separate !important; border-spacing: 4px !important; width: 100% !important; }
.tdc-booking-dialog .rdp-day_button { width: 100% !important; height: auto !important; max-height: 56px !important; min-height: 44px !important; aspect-ratio: 1 !important; border-radius: 12px !important; border: 1px solid transparent !important; }
.tdc-booking-dialog .rdp-day_button.tdc-day-selectable { border-color: var(--color-border-strong) !important; }
.tdc-booking-dialog .rdp-day_button[aria-pressed="true"] { background: var(--color-brand) !important; color: var(--color-brand-on) !important; }
.tdc-booking-dialog .rdp-day_button:focus-visible { outline: 2px solid var(--color-focus) !important; outline-offset: 1px; }
.tdc-booking-dialog .tdc-calendar-legend { display: flex !important; flex-wrap: wrap; gap: 16px !important; margin-top: 16px !important; font-size: 12px !important; line-height: 16px !important; }
.tdc-booking-dialog .tdc-calendar-dot { display: inline-block !important; width: 4px !important; height: 4px !important; border-radius: 100% !important; background: #719f8c !important; margin-top: 2px !important; }
.tdc-booking-dialog .tdc-calendar-legend .tdc-calendar-dot { width: 8px !important; height: 8px !important; margin-right: 6px !important; }
.tdc-booking-dialog #booking-error { font-size: 14px !important; margin-top: 12px !important; color: var(--color-text-primary) !important; }
.tdc-booking-dialog .tdc-ticket-quantity { width: 32px !important; min-width: 32px !important; }
.tdc-booking-dialog [data-booking-detail] { white-space: pre-line !important; }
@media (max-width: 639px) {
    #booking-dialog.tdc-booking-dialog { inset: 48px 0 0 !important; margin: 0 !important; width: 100vw !important; height: calc(100dvh - 48px) !important; max-height: none !important; border-radius: 8px 8px 0 0 !important; }
    .tdc-booking-dialog [data-booking-step], .tdc-booking-dialog .tdc-booking-total { padding-left: 20px !important; padding-right: 20px !important; }
    .tdc-booking-dialog .rdp-day_button { min-height: 40px !important; }
    .tdc-booking-scroll { flex: 1 !important; }
}
@scope (.tdc-booking-dialog) {
.rdp-root{--rdp-accent-color:blue !important;--rdp-accent-background-color:#f0f0ff !important;--rdp-day-height:44px !important;--rdp-day-width:44px !important;--rdp-day_button-border-radius:100% !important;--rdp-day_button-border:2px solid transparent !important;--rdp-day_button-height:42px !important;--rdp-day_button-width:42px !important;--rdp-selected-border:2px solid var(--rdp-accent-color) !important;--rdp-disabled-opacity:0.5 !important;--rdp-outside-opacity:0.75 !important;--rdp-today-color:var(--rdp-accent-color) !important;--rdp-dropdown-gap:0.5rem !important;--rdp-months-gap:2rem !important;--rdp-nav_button-disabled-opacity:0.5 !important;--rdp-nav_button-height:2.25rem !important;--rdp-nav_button-width:2.25rem !important;--rdp-nav-height:2.75rem !important;--rdp-range_middle-background-color:var(--rdp-accent-background-color) !important;--rdp-range_middle-color:inherit !important;--rdp-range_start-color:white !important;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction),transparent 50%,var(--rdp-range_middle-background-color) 50%) !important;--rdp-range_start-date-background-color:var(--rdp-accent-color) !important;--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction),var(--rdp-range_middle-background-color) 50%,transparent 50%) !important;--rdp-range_end-color:white !important;--rdp-range_end-date-background-color:var(--rdp-accent-color) !important;--rdp-week_number-border-radius:100% !important;--rdp-week_number-border:2px solid transparent !important;--rdp-week_number-height:var(--rdp-day-height) !important;--rdp-week_number-opacity:0.75 !important;--rdp-week_number-width:var(--rdp-day-width) !important;--rdp-weeknumber-text-align:center !important;--rdp-weekday-opacity:0.75 !important;--rdp-weekday-padding:0.5rem 0rem !important;--rdp-weekday-text-align:center !important;--rdp-gradient-direction:90deg !important;--rdp-animation_duration:0.3s !important;--rdp-animation_timing:cubic-bezier(0.4,0,0.2,1) !important}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg !important}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset !important}.rdp-root{position:relative !important}.rdp-root,.rdp-root *{box-sizing:border-box !important}.rdp-day{width:var(--rdp-day-width) !important;height:var(--rdp-day-height) !important;text-align:center !important}.rdp-day_button{background:none !important;padding:0 !important;margin:0 !important;cursor:pointer !important;font:inherit !important;color:inherit !important;justify-content:center !important;align-items:center !important;display:flex !important;width:var(--rdp-day_button-width) !important;height:var(--rdp-day_button-height) !important;border:var(--rdp-day_button-border) !important;border-radius:var(--rdp-day_button-border-radius) !important}.rdp-day_button:disabled{cursor:revert !important}.rdp-caption_label{z-index:1 !important;position:relative !important;display:inline-flex !important;align-items:center !important;white-space:nowrap !important;border:0 !important}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight !important;outline:5px auto -webkit-focus-ring-color !important}.rdp-button_next,.rdp-button_previous{border:none !important;background:none !important;padding:0 !important;margin:0 !important;cursor:pointer !important;font:inherit !important;color:inherit !important;-moz-appearance:none !important;-webkit-appearance:none !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;position:relative !important;appearance:none !important;width:var(--rdp-nav_button-width) !important;height:var(--rdp-nav_button-height) !important}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert !important;opacity:var(--rdp-nav_button-disabled-opacity) !important}.rdp-chevron{display:inline-block !important;fill:var(--rdp-accent-color) !important}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg) !important;transform-origin:50% !important}.rdp-dropdowns{position:relative !important;display:inline-flex !important;align-items:center !important;gap:var(--rdp-dropdown-gap) !important}.rdp-dropdown{z-index:2 !important;opacity:0 !important;appearance:none !important;position:absolute !important;inset-block-start:0 !important;inset-block-end:0 !important;inset-inline-start:0 !important;width:100% !important;margin:0 !important;padding:0 !important;cursor:inherit !important;border:none !important;line-height:inherit !important}.rdp-dropdown_root{position:relative !important;display:inline-flex !important;align-items:center !important}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity) !important}.rdp-month_caption{display:flex !important;align-content:center !important;height:var(--rdp-nav-height) !important;font-weight:700 !important;font-size:large !important}.rdp-root[data-nav-layout=after] .rdp-month,.rdp-root[data-nav-layout=around] .rdp-month{position:relative !important}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center !important;margin-inline-start:var(--rdp-nav_button-width) !important;margin-inline-end:var(--rdp-nav_button-width) !important;position:relative !important}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute !important;inset-inline-start:0 !important;top:0 !important;height:var(--rdp-nav-height) !important;display:inline-flex !important}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute !important;inset-inline-end:0 !important;top:0 !important;height:var(--rdp-nav-height) !important;display:inline-flex !important;justify-content:center !important}.rdp-months{position:relative !important;display:flex !important;flex-wrap:wrap !important;gap:var(--rdp-months-gap) !important;max-width:fit-content !important}.rdp-month_grid{border-collapse:collapse !important}.rdp-nav{position:absolute !important;inset-block-start:0 !important;inset-inline-end:0 !important;display:flex !important;align-items:center !important;height:var(--rdp-nav-height) !important}.rdp-weekday{opacity:var(--rdp-weekday-opacity) !important;padding:var(--rdp-weekday-padding) !important;font-weight:500 !important;font-size:smaller !important;text-align:var(--rdp-weekday-text-align) !important;text-transform:var(--rdp-weekday-text-transform) !important}.rdp-week_number{opacity:var(--rdp-week_number-opacity) !important;font-weight:400 !important;font-size:small !important;height:var(--rdp-week_number-height) !important;width:var(--rdp-week_number-width) !important;border:var(--rdp-week_number-border) !important;border-radius:var(--rdp-week_number-border-radius) !important;text-align:var(--rdp-weeknumber-text-align) !important}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color) !important}.rdp-selected{font-weight:700 !important;font-size:large !important}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border) !important}.rdp-outside{opacity:var(--rdp-outside-opacity) !important}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity) !important}.rdp-hidden{visibility:hidden !important;color:var(--rdp-range_start-color) !important}.rdp-range_start{background:var(--rdp-range_start-background) !important}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color) !important;color:var(--rdp-range_start-color) !important}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color) !important}.rdp-range_middle .rdp-day_button{border:unset !important;border-radius:unset !important;color:var(--rdp-range_middle-color) !important}.rdp-range_end{background:var(--rdp-range_end-background) !important;color:var(--rdp-range_end-color) !important}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color) !important;background-color:var(--rdp-range_end-date-background-color) !important}.rdp-range_start.rdp-range_end{background:revert !important}.rdp-focusable{cursor:pointer !important}@keyframes rdp-slide_in_left{0%{transform:translateX(-100%) !important}to{transform:translateX(0) !important}}@keyframes rdp-slide_in_right{0%{transform:translateX(100%) !important}to{transform:translateX(0) !important}}@keyframes rdp-slide_out_left{0%{transform:translateX(0) !important}to{transform:translateX(-100%) !important}}@keyframes rdp-slide_out_right{0%{transform:translateX(0) !important}to{transform:translateX(100%) !important}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}@keyframes rdp-fade_in{0%{opacity:0 !important}to{opacity:1 !important}}@keyframes rdp-fade_out{0%{opacity:1 !important}to{opacity:0 !important}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards !important}
}
