.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08);box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08)}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(.23,1,.32,1);animation:fpFadeInDown 300ms cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{background:transparent;color:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9);height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9)}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{ left:0 }  .flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{ right:0 }  .flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,0.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,0.1)}.numInputWrapper span:active{background:rgba(0,0,0,0.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,0.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,0.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:rgba(0,0,0,0.5)}.numInputWrapper:hover{background:rgba(0,0,0,0.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,0.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\0;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0,0,0,0.9)}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0,0,0,0.9)}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0,0,0,0.5);background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,0.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:rgba(0,0,0,0.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.dayContainer + .dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 0 #e6e6e6}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(57,57,57,0.3);background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(57,57,57,0.1)}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(57,57,57,0.3);background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:bold}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.pslot-app {
--pslot-accent: #2563eb;
--pslot-on-accent: #fff;
--pslot-radius: 16px;
--pslot-radius-sm: 10px;
--pslot-border: rgba(0, 0, 0, .14);
--pslot-muted: rgba(0, 0, 0, .6);
--pslot-soft: rgba(37, 99, 235, .1);
--pslot-soft-strong: rgba(37, 99, 235, .2);
--pslot-surface: rgba(255, 255, 255, .6);
--pslot-danger: #b42318;
max-width: 40em;
container-type: inline-size; margin: 0 auto;
font: inherit;
color: inherit;
line-height: 1.5;
}
@supports (color: color-mix(in srgb, red, blue)) {
.pslot-app {
--pslot-border: color-mix(in srgb, currentColor 16%, transparent);
--pslot-muted: color-mix(in srgb, currentColor 62%, transparent);
--pslot-soft: color-mix(in srgb, var(--pslot-accent) 11%, transparent);
--pslot-soft-strong: color-mix(in srgb, var(--pslot-accent) 22%, transparent);
--pslot-surface: color-mix(in srgb, currentColor 3%, transparent);
}
}
.pslot-app *, .pslot-app *::before, .pslot-app *::after { box-sizing: border-box; }
.pslot-app [hidden] { display: none !important; }
.pslot-app a { color: var(--pslot-accent); } .pslot-steps { display: flex; gap: .5em; list-style: none; margin: 0 0 1.25em; padding: 0; }
.pslot-steps li { flex: 1; white-space: nowrap; display: flex; align-items: center; gap: .6em; padding: .55em .75em; border-radius: 999px; border: 1px solid var(--pslot-border); color: var(--pslot-muted); font-size: .9em; font-weight: 600; transition: background-color .2s, color .2s, border-color .2s; }
.pslot-steps-num { flex: none; display: grid; place-items: center; width: 1.6em; height: 1.6em; border-radius: 50%; background: var(--pslot-soft); font-size: .85em; }
.pslot-steps li[data-state="current"] { color: inherit; border-color: var(--pslot-accent); background: var(--pslot-soft); }
.pslot-steps li[data-state="current"] .pslot-steps-num, .pslot-steps li[data-state="done"] .pslot-steps-num { background: var(--pslot-accent); color: var(--pslot-on-accent); }
.pslot-steps li[data-state="done"] { color: inherit; }
.pslot-steps li[data-state="done"] .pslot-steps-num { font-size: 0; }
.pslot-steps li[data-state="done"] .pslot-steps-num::before { content: "\2713"; font-size: .95em; }
@container (max-width: 440px) {
.pslot-steps li { justify-content: center; padding: .5em; }
.pslot-steps li[data-state="current"] { flex: 2; }
.pslot-steps li[data-state="todo"] .pslot-steps-label, .pslot-steps li[data-state="done"] .pslot-steps-label { display: none; }
}
.pslot-error { margin: 0 0 1em; padding: .85em 1em; border-radius: var(--pslot-radius-sm); border: 1px solid var(--pslot-danger); border-left-width: .4em; background: rgba(180, 35, 24, .08); color: inherit; font-weight: 600; }
.pslot-status:empty { display: none; } .pslot-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1em; }
.pslot-app .pslot-link { text-transform: none; letter-spacing: normal; box-shadow: none; border-radius: 0; padding: .25em 0; font: inherit; font-weight: 600; color: var(--pslot-accent); background: none; border: 0; cursor: pointer; white-space: nowrap; }
.pslot-app .pslot-link:hover { text-decoration: underline; }
.pslot-card { padding: 1.25em; border: 1px solid var(--pslot-border); border-radius: var(--pslot-radius); background: var(--pslot-surface); }
.pslot-step-form, .pslot-confirmation { margin-top: 1em; animation: pslot-in .25s ease-out; }
.pslot-heading { margin: 0 0 1em; font-size: 1.1em; font-weight: 700; line-height: 1.3; }
.pslot-chosen-date { margin: -.5em 0 1em; color: var(--pslot-muted); font-weight: 600; }
.pslot-chosen-address { margin: -.75em 0 1em; font-size: .9em; color: var(--pslot-muted); }
.pslot-chosen-date::first-letter, .pslot-summary li:first-child span:last-child::first-letter { text-transform: uppercase; }
.pslot-empty { margin: 0; padding: 1.5em 1em; text-align: center; color: var(--pslot-muted); border: 1px dashed var(--pslot-border); border-radius: var(--pslot-radius-sm); } .pslot-step-date .flatpickr-calendar { width: 100% !important; max-width: 100%; box-shadow: none; border: 0; background: transparent; font: inherit; color: inherit; touch-action: manipulation; }
.pslot-step-date .flatpickr-months { align-items: center; margin-bottom: .5em; }
.pslot-step-date .flatpickr-month { height: 2.5em; color: inherit; }
.pslot-step-date .flatpickr-current-month { font-size: 1em; font-weight: 700; padding-top: .45em; }
.pslot-step-date .flatpickr-current-month .flatpickr-monthDropdown-months, .pslot-step-date .flatpickr-current-month input.cur-year { font-weight: 700; color: inherit; background: transparent; }
.pslot-step-date .flatpickr-prev-month, .pslot-step-date .flatpickr-next-month { color: var(--pslot-accent); fill: var(--pslot-accent); }
.pslot-step-date .flatpickr-prev-month svg, .pslot-step-date .flatpickr-next-month svg { fill: var(--pslot-accent); }
.pslot-step-date .flatpickr-prev-month.flatpickr-disabled, .pslot-step-date .flatpickr-next-month.flatpickr-disabled { opacity: .25; }
.pslot-step-date .flatpickr-innerContainer, .pslot-step-date .flatpickr-rContainer, .pslot-step-date .flatpickr-days, .pslot-step-date .dayContainer { width: 100%; min-width: 100%; max-width: 100%; }
.pslot-step-date span.flatpickr-weekday { color: var(--pslot-muted); font-size: .72em; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.pslot-step-date .dayContainer { gap: 4px 0; padding: 2px 0; }
.pslot-step-date .flatpickr-day { max-width: none; width: 13.4%; flex-basis: 13.4%; height: auto; aspect-ratio: 1; min-height: 2.4em; margin: 0 .35%; border-radius: 12px; border: 2px solid transparent; display: flex; align-items: center; justify-content: center; line-height: 1; color: inherit; font-weight: 500; transition: background-color .15s, transform .1s; }
.pslot-step-date .flatpickr-day.prevMonthDay, .pslot-step-date .flatpickr-day.nextMonthDay { visibility: hidden; }
.pslot-step-date .flatpickr-day.flatpickr-disabled, .pslot-step-date .flatpickr-day.flatpickr-disabled:hover { color: inherit; opacity: .3; background: transparent; cursor: default; }
.pslot-step-date .flatpickr-day:not(.flatpickr-disabled):not(.selected) { background: var(--pslot-soft); color: var(--pslot-accent); font-weight: 700; }
.pslot-step-date .flatpickr-day:not(.flatpickr-disabled):not(.selected):hover, .pslot-step-date .flatpickr-day:not(.flatpickr-disabled):not(.selected):focus { background: var(--pslot-soft-strong); border-color: transparent; }
.pslot-step-date .flatpickr-day.today:not(.selected) { border-color: var(--pslot-border); }
.pslot-step-date .flatpickr-day.selected, .pslot-step-date .flatpickr-day.selected:hover { background: var(--pslot-accent); border-color: var(--pslot-accent); color: var(--pslot-on-accent); font-weight: 700; transform: scale(1.04); } .pslot-app .pslot-slots { display: grid; gap: .75em; }
.pslot-group-title { margin: 0 0 .35em; font-size: .7em; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pslot-muted); }
.pslot-group-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(4.4em, 1fr)); gap: .35em; }
@container (min-width: 440px) { .pslot-app .pslot-slot-time { font-size: .9em; } .pslot-app .pslot-slot-meta { font-size: .62em; } .pslot-group-grid { grid-template-columns: repeat(auto-fill, minmax(3.5em, 1fr)); } .pslot-skeleton-grid { grid-template-columns: repeat(auto-fill, minmax(3.5em, 1fr)); } }
.pslot-app .pslot-slot { display: flex; width: auto; margin: 0; min-width: 0; letter-spacing: normal; text-transform: none; text-align: center; box-shadow: none; flex-direction: column; align-items: center; justify-content: center; gap: 0; min-height: 2.7em; padding: .3em .25em; line-height: 1.2; font: inherit; color: inherit; background: transparent; border: 1.5px solid var(--pslot-border); border-radius: var(--pslot-radius-sm); cursor: pointer; transition: border-color .15s, background-color .15s, transform .1s; }
.pslot-app .pslot-slot-time { font-weight: 700; font-size: .95em; letter-spacing: normal; text-transform: none; line-height: 1.2; white-space: nowrap; font-variant-numeric: tabular-nums; }
.pslot-app .pslot-slot-meta { font-size: .68em; white-space: nowrap; color: var(--pslot-muted); }
.pslot-app .pslot-slot.is-last .pslot-slot-meta { color: var(--pslot-danger); font-weight: 600; }
.pslot-app .pslot-slot:hover:not(:disabled) { border-color: var(--pslot-accent); background: var(--pslot-soft); }
.pslot-app .pslot-slot[aria-pressed="true"] { background: var(--pslot-accent); border-color: var(--pslot-accent); color: var(--pslot-on-accent); transform: scale(1.03); }
.pslot-app .pslot-slot[aria-pressed="true"] .pslot-slot-meta { color: inherit; opacity: .9; }
.pslot-app .pslot-slot:disabled { cursor: not-allowed; opacity: .45; background: var(--pslot-surface); }
.pslot-app .pslot-slot:disabled .pslot-slot-time { text-decoration: line-through; font-weight: 500; }
.pslot-skeleton { height: 2.7em; border-radius: var(--pslot-radius-sm); background: linear-gradient(90deg, var(--pslot-soft) 25%, var(--pslot-soft-strong) 37%, var(--pslot-soft) 63%); background-size: 400% 100%; animation: pslot-shimmer 1.3s ease infinite; }
.pslot-skeleton-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(4.4em, 1fr)); gap: .35em; } .pslot-summary { display: flex; flex-wrap: wrap; gap: .5em; list-style: none; margin: 0 0 1.25em; padding: 0; }
.pslot-summary li { display: inline-flex; align-items: center; gap: .45em; padding: .4em .8em; border-radius: 999px; background: var(--pslot-soft); font-weight: 600; font-size: .92em; }
.pslot-icon { display: inline-flex; color: var(--pslot-accent); }
.pslot-icon svg { width: 1.05em; height: 1.05em; } .pslot-row { display: grid; gap: 0 1em; grid-template-columns: 1fr; }
@container (min-width: 480px) { .pslot-row { grid-template-columns: 1fr 1fr; } }
.pslot-field { margin: 0 0 1em; }
.pslot-field label { display: block; margin-bottom: .3em; font-weight: 600; font-size: .92em; }
.pslot-field input[type="text"], .pslot-field input[type="email"], .pslot-field input[type="tel"] { display: block; width: 100%; min-height: 3em; padding: .6em .85em; font: inherit; color: inherit; background: transparent; border: 1.5px solid var(--pslot-border); border-radius: var(--pslot-radius-sm); transition: border-color .15s, box-shadow .15s; }
.pslot-field input:focus { outline: none; border-color: var(--pslot-accent); box-shadow: 0 0 0 4px var(--pslot-soft-strong); }
.pslot-field input[aria-invalid="true"] { border-color: var(--pslot-danger); }
.pslot-field-check label { display: flex; gap: .65em; align-items: flex-start; font-weight: 400; cursor: pointer; }
.pslot-field-check input { flex: none; width: 1.3em; height: 1.3em; margin: .1em 0 0; accent-color: var(--pslot-accent); }
.pslot-field-error { display: block; margin-top: .3em; font-size: .85em; font-weight: 600; color: var(--pslot-danger); }
.pslot-field-error:empty { display: none; }
.pslot-actions { display: flex; flex-wrap: wrap; gap: .75em; margin-top: .5em; }
.pslot-recaptcha-note { margin: 1em 0 0; font-size: .78em; color: var(--pslot-muted); }
.pslot-app .pslot-button { display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 3em; padding: .6em 1.4em; font: inherit; font-weight: 700; color: inherit; background: transparent; border: 1.5px solid var(--pslot-border); border-radius: var(--pslot-radius-sm); cursor: pointer; transition: filter .15s, background-color .15s, transform .1s; }
.pslot-app .pslot-button-primary { flex: 1 1 14em; background: var(--pslot-accent); border-color: var(--pslot-accent); color: var(--pslot-on-accent); }
.pslot-app .pslot-button-primary:hover:not(:disabled) { filter: brightness(1.08); }
.pslot-app .pslot-button-primary:active:not(:disabled) { transform: translateY(1px); }
.pslot-app .pslot-button-ghost:hover { background: var(--pslot-soft); }
.pslot-app .pslot-button:disabled { opacity: .6; cursor: wait; }
.pslot-app .pslot-button.is-loading .pslot-submit-label::before { content: ""; display: inline-block; width: 1em; height: 1em; margin-right: .55em; vertical-align: -.15em; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: pslot-spin .7s linear infinite; }
.pslot-app :focus-visible { outline: 3px solid var(--pslot-accent); outline-offset: 2px; }
.pslot-field input:focus-visible { outline: none; } .pslot-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; } .pslot-confirmation { text-align: center; padding: 2em 1.25em; }
.pslot-confirmation-icon { color: var(--pslot-accent); margin-bottom: .5em; }
.pslot-confirmation .pslot-summary { justify-content: center; margin-bottom: 1em; }
.pslot-confirmation-text { margin: 0 0 1.25em; color: var(--pslot-muted); }
.pslot-check-circle { stroke-dasharray: 151; stroke-dashoffset: 151; animation: pslot-draw .6s ease-out forwards; }
.pslot-check-mark { stroke-dasharray: 40; stroke-dashoffset: 40; animation: pslot-draw .4s .45s ease-out forwards; } .pslot-cancel { padding: 1.25em; border: 1px solid var(--pslot-border); border-radius: var(--pslot-radius); }
.pslot-cancel .pslot-button { background: var(--pslot-accent); border-color: var(--pslot-accent); color: var(--pslot-on-accent); }
@keyframes pslot-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes pslot-draw { to { stroke-dashoffset: 0; } }
@keyframes pslot-spin { to { transform: rotate(360deg); } }
@keyframes pslot-shimmer { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }
@media (prefers-reduced-motion: reduce) {
.pslot-app *, .pslot-app *::before, .pslot-app *::after { animation: none !important; transition: none !important; }
.pslot-check-circle, .pslot-check-mark { stroke-dashoffset: 0; }
} .pslot-choices { display: grid; gap: .75em; }
.pslot-app .pslot-choice { display: flex; flex-direction: column; align-items: flex-start; gap: .25em; width: 100%; margin: 0; padding: .9em 1em; font: inherit; text-align: left; text-transform: none; letter-spacing: normal; color: inherit; background: transparent; border: 1.5px solid var(--pslot-border); border-radius: var(--pslot-radius-sm); box-shadow: none; cursor: pointer; transition: border-color .15s, background-color .15s; }
.pslot-app .pslot-choice:hover { border-color: var(--pslot-accent); background: var(--pslot-soft); }
.pslot-app .pslot-choice[aria-pressed="true"] { border-color: var(--pslot-accent); background: var(--pslot-soft); }
.pslot-choice-title { display: inline-flex; align-items: center; gap: .45em; font-weight: 700; font-size: 1.05em; }
.pslot-choice-sub { color: var(--pslot-muted); font-size: .92em; }
.pslot-choice-meta { color: var(--pslot-accent); font-size: .85em; font-weight: 600; } .pslot-context { display: flex; flex-wrap: wrap; gap: .5em; list-style: none; margin: 0 0 1em; padding: 0; }
.pslot-context li { display: inline-flex; align-items: center; gap: .45em; padding: .3em .7em; border-radius: 999px; background: var(--pslot-soft); font-size: .88em; font-weight: 600; }
.pslot-field-note textarea { display: block; width: 100%; padding: .6em .85em; font: inherit; color: inherit; background: transparent; border: 1.5px solid var(--pslot-border); border-radius: var(--pslot-radius-sm); resize: vertical; min-height: 6em; transition: border-color .15s, box-shadow .15s; }
.pslot-field-note textarea:focus { outline: none; border-color: var(--pslot-accent); box-shadow: 0 0 0 4px var(--pslot-soft-strong); }
.pslot-field-note textarea[aria-invalid="true"] { border-color: var(--pslot-danger); } .pslot-app .pslot-group-grid.pslot-group-grid-parts { grid-template-columns: repeat(auto-fill, minmax(9em, 1fr)); gap: .5em; }
.pslot-app .pslot-group-grid-parts .pslot-slot { min-height: 3.2em; padding: .5em .6em; }
.pslot-app .pslot-group-grid-parts .pslot-slot-time { font-size: 1em; }
.pslot-app .pslot-group-grid-parts .pslot-slot-meta { font-size: .78em; }