.z-booking{gap:var(--z-space-5);flex-direction:column;display:flex}.z-booking--compact{max-width:32rem}.z-booking__steps{gap:var(--z-space-2) var(--z-space-4);counter-reset:z-booking-step;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));margin:0;padding:0;list-style:none;display:grid}.z-booking__step{counter-increment:z-booking-step;white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--z-text-muted);line-height:1.5;font-size:var(--z-text-sm);overflow:hidden}.z-booking__step:before{content:counter(z-booking-step) ". "}.z-booking__step--current{color:var(--z-text);font-weight:600}.z-booking__step--held{visibility:hidden}.z-booking__progress,.z-booking__hint,.z-booking__summary,.z-booking__zone,.z-booking__slots-live{color:var(--z-text-muted);font-size:var(--z-text-sm);margin:0}.z-booking__step-title{margin:0}.z-booking__step-loading{gap:var(--z-space-3);flex-direction:column;min-height:max(18rem,100svh);display:flex}.z-booking__inert-note{padding:var(--z-space-3);border:var(--z-border-width) dashed var(--z-border);border-radius:var(--z-radius);color:var(--z-text-muted);font-size:var(--z-text-sm);margin:0}.z-booking__error-message{margin:0 0 var(--z-space-2)}.z-booking__choices{gap:var(--z-space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.z-booking__choice{align-items:center;gap:var(--z-space-3);padding:var(--z-space-4);border:var(--z-border-width) solid var(--z-border);border-radius:var(--z-radius);background:var(--z-surface);flex-wrap:wrap;display:flex}.z-booking__choice-body{flex:14rem;min-width:0}.z-booking__choice-title{margin:0;font-weight:600}.z-booking__choice-meta{gap:var(--z-space-2);margin:var(--z-space-1) 0 0;color:var(--z-text-muted);font-size:var(--z-text-sm);flex-wrap:wrap;display:flex}.z-booking__choice-action,.z-booking__slot-button,.z-booking__any-tech{min-height:44px}.z-booking__empty{padding:var(--z-space-6);border:var(--z-border-width) dashed var(--z-border);border-radius:var(--z-radius);color:var(--z-text-muted);text-align:center;margin:0}.z-booking__field-error{margin:0}.z-booking__services,.z-booking__products,.z-booking__modifiers,.z-booking__prerequisites,.z-booking__techs,.z-booking__times,.z-booking__identity,.z-booking__payment,.z-booking__review,.z-booking__commit,.z-booking__repeat,.z-booking__class{gap:var(--z-space-4);flex-direction:column;display:flex}.z-booking__tenders{gap:var(--z-space-3);flex-direction:column;display:flex}.z-booking__tender-row{align-items:center;gap:var(--z-space-2);flex-wrap:wrap;display:flex}.z-booking__tender-row .z-field__input{flex:12rem}.z-booking__tender-line,.z-booking__tender-remaining{margin:0}.z-booking__tender-credit{align-items:center;gap:var(--z-space-2);display:flex}.z-booking__category{gap:var(--z-space-3);flex-direction:column;display:flex}.z-booking__category-name{font-family:var(--z-font-heading);font-size:var(--z-text-lg);margin:0}.z-booking__service-media{flex:0 0 8rem;max-width:8rem}.z-booking__variation{margin-top:var(--z-space-2)}.z-booking__bundle-offer{align-items:center;gap:var(--z-space-2);flex-wrap:wrap;margin:0;display:flex}.z-booking__modifier-group,.z-booking__prerequisite{padding:var(--z-space-4);border:var(--z-border-width) solid var(--z-border);border-radius:var(--z-radius);margin:0}.z-booking__modifier-name,.z-booking__prerequisite-prompt{padding:0 var(--z-space-2);font-weight:600}.z-booking__modifier,.z-booking__prerequisite-option{align-items:center;gap:var(--z-space-2);margin:var(--z-space-2) 0 0;min-height:44px;display:flex}.z-booking__option-variation{margin:0;font-weight:600}.z-booking__required{color:var(--z-text-muted);margin-inline-start:var(--z-space-2);font-size:.875em;font-weight:400}.z-booking__tech-photo{flex:0 0 4rem;max-width:4rem}.z-booking__tech-bio{display:block}.z-booking__slot-group{gap:var(--z-space-2);flex-direction:column;display:flex}.z-booking__slot-part{font-size:var(--z-text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--z-text-muted);margin:0}.z-booking__slots{gap:var(--z-space-2);grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));margin:0;padding:0;list-style:none;display:grid}.z-booking__slot{gap:var(--z-space-1);flex-direction:column;display:flex}.z-booking__slot-note{color:var(--z-text-muted);font-size:var(--z-text-xs)}.z-booking__next-available{margin:0}.z-booking__waitlist{gap:var(--z-space-3);padding:var(--z-space-5);border:var(--z-border-width) solid var(--z-border);border-radius:var(--z-radius);background:var(--z-surface);flex-direction:column;display:flex}.z-booking__waitlist-title{margin:0}.z-booking__consent{align-items:flex-start;gap:var(--z-space-2);min-height:44px;display:flex}.z-booking__consent-link{color:inherit}.z-booking__summary-list{gap:var(--z-space-2) var(--z-space-4);grid-template-columns:minmax(6rem,auto) 1fr;margin:0;display:grid}.z-booking__summary-list dt{color:var(--z-text-muted);font-size:var(--z-text-sm)}.z-booking__summary-list dd{margin:0}.z-booking__review-services{margin:0;padding:0;list-style:none}.z-booking__estimate{gap:var(--z-space-1);flex-direction:column;display:flex}.z-booking__estimate-title{color:var(--z-text-muted);font-size:var(--z-text-sm);margin:0}.z-booking__estimate-lines{margin:0;padding:0;list-style:none}.z-booking__price--was{color:var(--z-text-muted)}.z-booking__estimate-rules,.z-booking__estimate-total,.z-booking__estimate-disclaimer{color:var(--z-text-muted);font-size:var(--z-text-sm);margin:0}.z-booking__confirmation{gap:var(--z-space-4);padding:var(--z-space-6);border:var(--z-border-width) solid var(--z-border);border-radius:var(--z-radius);background:var(--z-surface);flex-direction:column;display:flex}.z-booking__confirmation-title,.z-booking__policy-title,.z-booking__confirmation-number{margin:0}.z-booking__calendar,.z-booking__wallet,.z-booking__handoff,.z-booking__manage{gap:var(--z-space-3);flex-wrap:wrap;margin:0;display:flex}.z-booking__commit-skeleton{width:100%}.z-booking__actions{align-items:center;gap:var(--z-space-3);margin-top:var(--z-space-2);flex-wrap:wrap;display:flex}.z-booking__next{min-height:44px;margin-inline-start:auto}.z-booking__back,.z-booking__skip{min-height:44px}.z-booking__step--current,.z-booking__choice{transition:background-color calc(var(--z-motion) * .15s) ease-out}@media (max-width:640px){.z-booking__choice{flex-direction:column;align-items:stretch}.z-booking__service-media,.z-booking__tech-photo{flex:auto;max-width:100%}.z-booking__next{width:100%;margin-inline-start:0}.z-booking__summary-list{grid-template-columns:1fr}}.z-booking__sms-notice{margin-top:.375rem;font-size:.875rem;line-height:1.4;display:block}
