.booking{container:booking/inline-size}.booking__container{flex-direction:column;gap:2rem;display:flex}.booking__container:not(.booking__container--appointment-selection){max-width:35rem;margin:0 auto}.booking__container .booking__wrapper{flex-direction:column;gap:2rem;width:100%;display:flex;position:relative}.booking__container hgroup{text-align:center;align-self:center;width:100%;max-width:44.6875rem;margin:0 auto}.booking__container h3{color:var(--color-primary)}.booking#error h3{color:var(--color-contrast)}.levelup .booking,.levelup .booking__container{height:100%}.levelup .booking__container{justify-content:space-between;max-width:none}.levelup .booking__container:not(.booking__container--appointment-selection) .booking__wrapper{max-width:35rem;margin:0 auto}.booking .calendar{display:none}@container booking (width>=720px){.booking .calendar{display:block}}.booking .calendar__head,.booking .calendar__days{grid-template-columns:repeat(5,1fr);justify-content:center;align-items:center;gap:12px;display:grid}.booking .calendar__head{font-weight:var(--font-weight-medium);margin-bottom:12px}.booking .calendar__item{justify-content:center;align-items:center;margin:0 auto;display:flex}.booking .calendar .calendar__days .calendar__item{cursor:pointer;width:36px;height:36px;color:var(--color-contrast-light);background:0 0;border:none;border-radius:50%;padding:0;transition:all .25s ease-in-out}.booking .calendar .calendar__days .calendar__item:first-child{grid-column-start:calc(var(--grid-offset) + 1)}.booking .calendar .calendar__days .calendar__item:not(.calendar__item--unavailable):not(.calendar__item--selected):hover{background-color:var(--booking-color-calendar-day-hover-bg);color:var(--booking-color-calendar-day-hover)}.booking .calendar .calendar__days .calendar__item--unavailable{cursor:not-allowed;color:var(--booking-color-calendar-day-unavailable)}.booking .calendar .calendar__days .calendar__item:not(.calendar__item--selected).calendar__item--today{background-color:var(--booking-color-calendar-today-bg);color:var(--booking-color-calendar-today);font-weight:var(--font-weight-medium)}.booking .calendar .calendar__days .calendar__item--selected{background-color:var(--color-bg)}.booking__appointment-info{border:.125rem solid var(--booking-color-appointment-info-bg);border-radius:var(--border-radius);background-color:var(--booking-color-appointment-info-bg);text-align:center;flex-direction:column;align-self:center;align-items:center;width:100%;padding:1.5rem 2rem;display:flex}.booking__appointment-info .appointment-info__heading{color:var(--color-contrast);font-weight:var(--font-weight-medium);margin:0}.booking__appointment-info .appointment-info__time-slot{color:var(--color-contrast);text-align:center;font-weight:var(--font-weight-light);font-size:var(--subline-font-size);line-height:var(--subline-line-height);text-wrap:balance;margin:0}@media (max-width:991.98px){.booking__appointment-info .appointment-info__time-slot{text-wrap:balance}}.booking__appointment-info .appointment-info__change-btn{margin-top:.75rem}.booking__appointment-info .appointment-info__change-btn button{color:var(--color-primary);background:0 0;border:none;justify-content:center;align-items:center;gap:.5rem;padding:0;display:flex}.booking__appointment-info .appointment-info__change-btn button:after{content:"edit_calendar";line-height:normal;font-family:var(--font-family-material)}.booking__appointment-info .appointment-info__host{--image-size:5rem;flex-direction:column;align-items:center;width:100%;margin-top:2rem;display:flex}.booking__appointment-info .appointment-info__host-message{border-radius:var(--border-radius);background-color:var(--booking-color-appointment-info-message-bg);margin-bottom:.5rem;padding:1rem;position:relative}.booking__appointment-info .appointment-info__host-message:after{top:100%;left:calc(50% + var(--image-size) / 2 / 3 * 2);border-bottom:1.5rem solid transparent;border-left:1.5rem solid var(--booking-color-appointment-info-message-bg);content:"";position:absolute}.booking__appointment-info .appointment-info__host-image{margin-bottom:1rem}.booking__appointment-info .appointment-info__host-image img{width:var(--image-size);height:var(--image-size);object-fit:cover;border-radius:50%}.booking__appointment-info .appointment-info__host b{font-size:var(--font-size-small);line-height:var(--line-height-compact)}.booking__appointment-info--has-callback{cursor:pointer}.booking__appointment-info--warning{border-color:var(--booking-color-appointment-info-warning-border);background-color:var(--booking-color-appointment-info-warning-bg)}.booking__appointment-info--warning .appointment-info__time-slot{text-decoration:line-through}@container booking (width>=720px){.booking__container--appointment-selection .booking__wrapper{grid-template-columns:.618fr 1fr;grid-template-areas:"headline headline""calendar time-selection";gap:2rem 4rem;display:grid}}.booking__container--appointment-selection .booking__wrapper:not(:has(.booking__time-selection)){display:flex}.booking__container--appointment-selection .booking__wrapper:not(:has(.booking__time-selection)) .booking__date-selection{align-self:center;width:100%;max-width:35rem}.booking__container--appointment-selection .booking__wrapper hgroup{grid-area:headline}.booking__container--appointment-confirmation #tsparticles{z-index:100;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.booking__container--appointment-confirmation #tsparticles canvas{pointer-events:none}.booking__date-selection{flex-direction:column;gap:1.5rem;display:flex}.booking__date-selection #month-stepper{display:none}@container booking (width>=720px){.booking__date-selection #date-stepper{display:none}.booking__date-selection #month-stepper{display:grid}}.booking .stepper{border:.125rem solid var(--booking-color-date-stepper-input-border);border-radius:var(--button-radius);background:var(--form-color-input-bg);grid-template-columns:auto 1fr auto;align-items:center;line-height:1rem;display:grid}.booking .stepper__value{padding:1rem 0}.booking .stepper__arrow-button{cursor:pointer;border-radius:var(--button-radius);aspect-ratio:1;height:calc(100% - 4px);color:var(--booking-color-date-stepper-arrow);font-family:var(--font-family-material);background-color:transparent;border:transparent;padding:0}.booking .stepper__arrow-button--previous{margin-left:2px}.booking .stepper__arrow-button--previous:before{content:"arrow_back"}.booking .stepper__arrow-button--next{margin-right:2px}.booking .stepper__arrow-button--next:before{content:"arrow_forward"}.booking .stepper__arrow-button:disabled{cursor:not-allowed;color:var(--booking-color-date-stepper-arrow-button-disabled)}.booking .stepper__arrow-button:active:not(:disabled){background-color:var(--booking-color-date-stepper-arrow-button-bg-active)}.booking .stepper__value{color:var(--booking-color-date-stepper-text);font-weight:var(--font-weight-medium);justify-content:center;gap:.5rem;display:flex}.booking .stepper__value--current:after{content:"●";color:var(--booking-color-date-stepper-current-date-indicator)}.booking__container--error{text-align:center;flex-direction:column;align-items:center;display:flex}.booking__container--error .error-icon{background-color:var(--booking-color-error-icon-bg);justify-content:center;align-items:center;width:4rem;height:3.5625rem;margin:0 auto;display:flex;position:relative;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 66 57'><path d='M30.7353 1.5C31.89 -0.499998 34.7767 -0.500002 35.9314 1.5L65.3763 52.5C66.531 54.5 65.0876 57 62.7782 57H3.88851C1.57911 57 0.135732 54.5 1.29043 52.5L30.7353 1.5Z' fill='black'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 66 57'><path d='M30.7353 1.5C31.89 -0.499998 34.7767 -0.500002 35.9314 1.5L65.3763 52.5C66.531 54.5 65.0876 57 62.7782 57H3.88851C1.57911 57 0.135732 54.5 1.29043 52.5L30.7353 1.5Z' fill='black'/></svg>");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.booking__container--error .error-icon:before{z-index:2;content:"back_hand";color:var(--booking-color-error-icon);font-size:1.75rem;line-height:normal;font-family:var(--font-family-material);position:relative;top:.5rem}.booking__container--error hgroup{text-align:center;max-width:44.6875rem}.booking__loader{justify-content:center;gap:4px;margin:1rem 0;display:flex}.booking__loader span{background-color:color-mix(in srgb, var(--booking-color-loader-base) 20%, transparent);border-radius:50%;width:8px;height:8px;animation:1.2s infinite both booking-loader-dot-color}.booking__loader span:first-child{animation-delay:0s}.booking__loader span:nth-child(2){animation-delay:.4s}.booking__loader span:nth-child(3){animation-delay:.8s}@keyframes booking-loader-dot-color{0%{background-color:color-mix(in srgb, var(--booking-color-loader-base) 20%, transparent)}20%{background-color:var(--booking-color-loader-base)}to{background-color:color-mix(in srgb, var(--booking-color-loader-base) 20%, transparent)}}.booking__navigation{flex-direction:column;gap:1rem;width:100%;display:flex}.booking__navigation>*{flex-basis:100%}@container booking (width>=720px){.booking__navigation{flex-direction:row-reverse;justify-content:space-between}.booking__navigation>*{flex-basis:auto}.booking__navigation>:nth-child(2):not(:last-child){margin-left:auto}}.booking__navigation--center{justify-content:center}.booking__container--schedule-appointment .booking__form{flex-direction:column;align-self:center;gap:2rem;width:100%;display:flex}.booking__container--schedule-appointment .booking__form-row{flex-flow:column wrap;gap:1rem;display:flex}@media (min-width:992px){.booking__container--schedule-appointment .booking__form-row{flex-direction:row;flex-basis:auto;gap:0 2rem}}.booking__container--schedule-appointment .booking__form-field,.booking__container--schedule-appointment .booking__form .form-field-wrapper{flex:1}.booking__container--schedule-appointment .booking__form .form-field label a{--link-color:var(--color-primary);--link-decoration-color:color-mix(in srgb, var(--link-color) 50%, transparent);background-image:linear-gradient(to right, var(--link-decoration-color) 50%, transparent 50%);color:var(--link-color);font-weight:var(--link-font-weight);background-position:0 100%;background-repeat:repeat-x;background-size:8px 2px;padding-bottom:2px;transition:all .25s ease-in-out}.booking__container--schedule-appointment .booking__form .form-field label a:hover{--link-decoration-color:var(--link-color)}@media print{.booking__container--schedule-appointment .booking__form .form-field label a{--link-font-weight:var(--font-weight-light);--link-color:color-mix(in srgb, var(--color-contrast) 80%, transparent);background-image:none}}.booking__time-selection{flex-direction:column;gap:1.5rem;display:flex;position:relative}.booking__time-selection .time-slot-selection{height:100%;position:relative}.booking__time-selection .time-slot-selection__wrapper{gap:.5rem;display:flex}@container booking (width>=720px){.booking__time-selection .time-slot-selection__wrapper{position:absolute;top:0;bottom:0;left:0;right:0}}.booking__time-selection .time-slot-selection__content{flex:1;display:flex}.booking__time-selection .time-slot-selection__content>p{color:var(--color-contrast-light);font-size:var(--font-size-small);text-align:center;margin:0}.booking__time-selection .time-slot-selection--loading .time-slot-selection__content,.booking__time-selection .time-slot-selection--empty .time-slot-selection__content{flex-direction:column;justify-content:center;align-items:center}.booking__time-selection .time-slot-selection__groups{border-bottom:.125rem solid var(--booking-color-time-selection-border);flex:1;grid-template-columns:auto 1fr;gap:1rem;max-height:30vh;padding-bottom:1rem;display:grid;overflow-y:auto}@container booking (width>=720px){.booking__time-selection .time-slot-selection__groups{max-height:none}}.booking__time-selection .time-slot-selection__groups .time-slot-group{grid-template-columns:subgrid;grid-column:1/-1;display:grid}.booking__time-selection .time-slot-selection__groups .time-slot-group__label{border-top:.125rem solid var(--booking-color-time-selection-legend-border);min-width:3.75rem;color:var(--booking-color-time-selection-legend);text-align:right;padding-top:.725rem;line-height:1}.booking__time-selection .time-slot-selection__groups .time-slot-group__label b{display:block}.booking__time-selection .time-slot-selection__groups .time-slot-group__list{flex-direction:column;gap:.125rem;display:flex}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot button{transition:var(--booking-transition);border-radius:var(--border-radius);background-color:var(--booking-color-time-slot-button-bg);width:100%;color:var(--color-contrast-light);font-weight:var(--body-font-weight);text-align:left;border:none;align-items:center;gap:1rem;padding:.5rem;display:flex}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot button .radio{border:.125rem solid var(--booking-color-time-slot-radio-button-border);aspect-ratio:1;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:relative}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot--selected button{cursor:auto;background-color:var(--color-bg)}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot--selected button .radio{border-color:color-mix(in srgb, var(--color-contrast) 20%, transparent)}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot--selected button .radio:before{background-color:var(--color-contrast);content:"";border-radius:50%;width:12px;height:12px;display:block}.booking__time-selection .time-slot-selection__groups .time-slot-group__list .time-slot:not(.time-slot--selected):hover button{background-color:var(--booking-color-time-slot-button-hover-bg)}.booking__time-selection .time-slot-selection__legend{color:var(--booking-color-time-selection-legend);font-weight:var(--font-weight-medium);writing-mode:sideways-rl;justify-content:space-between;align-items:center;gap:1rem;display:flex}.booking__time-selection .time-slot-selection__legend>span{align-items:center;gap:.5rem;transition:opacity .2s;display:flex}.booking__time-selection .time-slot-selection__legend>span:before{content:var(--icon,"");font-family:var(--font-family-material)}.booking__time-selection .time-slot-selection__legend>span:last-child{flex-direction:row-reverse}.booking__time-selection .time-slot-selection__legend>span.hidden{opacity:0;pointer-events:none}.booking__time-selection .time-slot-selection__legend .earlier{--icon:"arrow_back"}.booking__time-selection .time-slot-selection__legend .later{--icon:"arrow_forward"}.booking__container--existing-appointment{text-align:center;flex-direction:column;align-items:center;display:flex}.booking{--booking-transition:all .25s ease-in-out;--booking-color-date-stepper-arrow-button-bg-active:color-mix(in srgb, var(--color-contrast) 10%, transparent);--booking-color-date-stepper-arrow-button-disabled:color-mix(in srgb, var(--color-primary) 30%, transparent);--booking-color-date-stepper-arrow:var(--color-primary);--booking-color-date-stepper-current-date-indicator:var(--color-danger);--booking-color-date-stepper-input-border:color-mix(in srgb, var(--color-primary) 20%, transparent);--booking-color-date-stepper-text:var(--color-primary);--booking-color-calendar-day-hover-bg:color-mix(in srgb, var(--color-primary) 20%, transparent);--booking-color-calendar-day-hover:var(--color-primary);--booking-color-calendar-day-unavailable:color-mix(in srgb, var(--color-contrast) 20%, transparent);--booking-color-calendar-today-bg:color-mix(in srgb, var(--color-danger) 10%, transparent);--booking-color-calendar-today:var(--color-danger);--booking-color-time-selection-border:color-mix(in srgb, var(--color-primary) 20%, transparent);--booking-color-time-selection-legend-border:color-mix(in srgb, var(--color-primary) 10%, transparent);--booking-color-time-selection-legend:color-mix(in srgb, var(--color-contrast) 40%, transparent);--booking-color-time-slot-button-bg:color-mix(in srgb, var(--color-primary) 8%, transparent);--booking-color-time-slot-button-hover-bg:color-mix(in srgb, var(--color-primary) 15%, transparent);--booking-color-time-slot-group-border:color-mix(in srgb, var(--color-contrast) 10%, transparent);--booking-color-time-slot-radio-button-border:color-mix(in srgb, var(--color-primary) 20%, transparent);--booking-color-appointment-info-message-bg:var(--color-body);--booking-color-appointment-info-bg:color-mix(in srgb, var(--color-primary) 5%, transparent);--booking-color-appointment-info-warning-bg:color-mix(in srgb, var(--color-warning) 5%, transparent);--booking-color-appointment-info-warning-border:color-mix(in srgb, var(--color-warning) 20%, transparent);--booking-color-loader-base:var(--color-primary);--booking-color-error-icon-bg:var(--color-warning);--booking-color-error-icon:var(--color-contrast)}[data-color-scheme=dark] .booking{--booking-color-error-icon:var(--color-bg)}
/*# sourceMappingURL=booking.min.css.map */
