.booking-shell{--black:#1C2722;--white:#FFFFFF;--gray:#C2FF73;--ink:#0D1A04;--font-body:var(--font-inter,"Inter",system-ui,sans-serif);--font-heading:var(--font-inter-tight,"Inter Tight",sans-serif);--booking-panel:color-mix(in srgb,var(--black),var(--white) 4%);--line:color-mix(in srgb,var(--black),var(--white) 14%);--booking-control-line:color-mix(in srgb,var(--black),var(--white) 45%);--booking-accent-line:color-mix(in srgb,var(--black),var(--gray) 45%);--booking-accent-soft:color-mix(in srgb,var(--black),var(--gray) 8%);--booking-day-muted:color-mix(in srgb,var(--black),var(--white) 55%);--booking-day-disabled:color-mix(in srgb,var(--black),var(--white) 35%);--muted:color-mix(in srgb,var(--black),var(--white) 70%);color-scheme:dark;min-height:100dvh;background:var(--black);color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:32px;font-family:var(--font-body);font-size:15px;line-height:1.5}.booking-shell :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--gray);outline-offset:3px}.booking-shell [data-booking-focus]:focus{outline:none}.booking-shell h1,.booking-shell h2{font-family:var(--font-heading);font-weight:600;letter-spacing:-.01em;line-height:1.25}.booking-shell h1{font-size:24px}.booking-shell h2{font-size:20px}.booking-shell button{font:inherit;min-height:44px;border-radius:10px;transition:background .15s,color .15s}.booking-shell :is([data-booking-day],[data-booking-slot]){transition:none}.booking-shell [data-booking-day][data-available=true][aria-pressed=true]{background:var(--gray);border-color:var(--gray);color:var(--ink);font-weight:650;opacity:1}.booking-shell [data-booking-day][data-available=false]{background:transparent;border-color:transparent}.booking-shell button:disabled{opacity:.55}.booking-root{width:100%;max-width:880px}.booking-root.booking-wide{max-width:1040px}.booking-card{position:relative;display:grid;grid-template-columns:300px minmax(0,1fr);min-height:600px;border:1px solid var(--line);border-radius:20px;background:var(--booking-panel);overflow:hidden}.booking-seller{border-right:1px solid var(--line);padding:32px 28px;display:flex;flex-direction:column;gap:18px;min-width:0}.booking-brand{height:30px;width:auto;max-width:130px;align-self:flex-start;object-fit:contain;filter:none}.booking-person{display:flex;align-items:center;gap:12px;margin-top:12px}.booking-person strong{font-size:17px}.booking-person span:not(.booking-avatar){display:block;font-size:13px;color:var(--muted)}.booking-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;object-position:center;aspect-ratio:1;display:block;flex:none}.booking-person .booking-initials{display:grid;place-items:center;background:var(--booking-accent-soft);color:var(--white);font-weight:700;font-size:18px}.booking-facts{display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--white)}.booking-facts>span{display:flex;align-items:center;gap:10px}.booking-facts svg{flex:none;color:var(--muted)}.booking-nowrap{white-space:nowrap;hyphens:none}.booking-description{font-size:14px;color:var(--muted);line-height:1.6}.booking-muted{font-size:13px;color:var(--muted)}.booking-schedule{display:grid;grid-template-columns:minmax(0,1fr) 260px;min-width:0}.booking-month{padding:32px 24px;min-width:0}.booking-month-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.booking-month-header h2{font-size:18px}.booking-month-controls{display:flex;gap:4px;align-items:center}.booking-month-controls button{background:var(--black);color:var(--white);border:1px solid var(--booking-control-line);width:44px;display:grid;place-items:center}.booking-month-controls span{font-size:14px;font-weight:600;min-width:125px;text-align:center}.booking-month-days,.booking-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.booking-weekdays{font-size:11px;text-align:center;color:var(--muted);font-weight:600;margin-bottom:12px}.booking-month-days button{height:48px;border:1px solid transparent;background:transparent;color:var(--muted);font-size:15px}.booking-month-days button[data-available=true]{background:var(--booking-accent-soft);border-color:var(--booking-accent-line);color:var(--gray);font-weight:600}.booking-month-days button[data-available=false]{background:transparent;color:var(--booking-day-muted)}.booking-month-days button:disabled{color:var(--booking-day-disabled);background:transparent;border-color:transparent;opacity:1}.booking-day-carousel{display:none}.booking-times{border-left:1px solid var(--line);padding:32px 24px;display:flex;flex-direction:column;gap:12px;min-width:0}.booking-times h2{font-size:15px}.booking-slots{position:relative;min-height:0}.booking-slot-grid{max-height:324px;overflow-y:auto;overscroll-behavior-y:contain;scroll-behavior:smooth;scroll-padding-block:48px;padding:4px}.booking-slot-content{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.booking-slot-edge{position:absolute;left:0;right:0;height:48px;display:flex;justify-content:center;pointer-events:none}.booking-slot-edge-top{top:0;background:linear-gradient(var(--black),transparent)}.booking-slot-edge-bottom{bottom:0;background:linear-gradient(transparent,var(--black))}.booking-slot-edge button{pointer-events:auto;width:44px;min-height:44px;border:1px solid var(--booking-accent-line);border-radius:50%;background:var(--black);color:var(--gray);display:grid;place-items:center;box-shadow:0 2px 8px #0003}.booking-slot-edge-bottom button{align-self:flex-end}.booking-slot-grid button{min-height:46px;background:var(--booking-panel);border:1px solid var(--booking-accent-line);color:var(--gray);font-weight:600;font-variant-numeric:tabular-nums}.booking-slot-grid button[aria-pressed=true]{background:var(--gray);border-color:var(--gray);color:var(--ink)}.booking-continue{margin-top:auto;padding-top:12px}.booking-danger,.booking-outline,.booking-primary{width:100%;min-height:52px;padding:12px 14px;font-weight:650!important;text-align:center;line-height:1.4}.booking-primary{background:var(--gray);border:1px solid var(--gray);color:var(--ink)}.booking-primary:hover:not(:disabled){background:color-mix(in srgb,var(--gray),var(--ink) 8%)}.booking-outline{background:transparent;border:1px solid var(--booking-control-line);color:var(--white)}.booking-danger{background:transparent;color:var(--error);border:1px solid var(--error)}.booking-empty{gap:16px}.booking-empty,.booking-selection{display:flex;flex-direction:column;font-size:14px}.booking-selection{background:var(--booking-accent-soft);border:1px solid var(--booking-accent-line);border-radius:12px;padding:14px 16px;gap:4px}.booking-selection span{color:var(--gray)}.booking-selection button{border:0;background:transparent;text-decoration:underline;color:var(--gray);text-align:left;padding:0;font-size:13px;align-self:flex-start}.booking-details{padding:32px 36px;display:flex;flex-direction:column;gap:16px}.booking-details fieldset{display:flex;flex-direction:column;gap:14px}.booking-details label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.booking-details label>span,.booking-details small{font-weight:400;color:var(--muted)}.booking-details small{font-size:12px}.booking-details input:not([type=checkbox]),.booking-details textarea{border-color:var(--booking-control-line);font-weight:400}.booking-details textarea{width:100%;background:var(--field);color:var(--white);border:1px solid var(--booking-control-line);border-radius:var(--radius-sm);padding:16px 20px;font:inherit;font-size:17px;font-weight:400;resize:vertical;min-height:74px}.booking-details input::placeholder,.booking-details textarea::placeholder{color:var(--muted)}.booking-details input:focus,.booking-details textarea:focus{border-color:var(--gray)}.booking-details .booking-consent{flex-direction:row;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;color:var(--muted);line-height:1.5}.booking-consent input{width:18px;height:18px;padding:0;flex:none;accent-color:var(--gray);margin-top:3px}.booking-security{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;font-size:12px;color:var(--muted)}.booking-security svg{flex:none}.booking-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.booking-result{width:100%;max-width:520px;background:var(--booking-panel);border:1px solid var(--line);border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:20px;margin-inline:auto}.booking-result h1{font-size:26px}.booking-result p{font-size:15px;color:var(--white);line-height:1.6;overflow-wrap:anywhere}.booking-check{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--gray);margin-top:20px;color:var(--ink)}.booking-summary{margin:0;background:var(--black);border:1px solid var(--line);border-radius:14px;padding:4px 18px;font-size:15px}.booking-summary>div{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.booking-summary>div:last-child{border:0}.booking-summary dt{color:var(--muted)}.booking-summary dd{margin:0;font-weight:600;text-align:right}.booking-summary small{display:block;color:var(--muted);font-size:12px;font-weight:400}.booking-alert{padding:16px 20px;border:1px solid var(--error);border-radius:12px;background:var(--booking-panel);color:var(--error);margin-bottom:16px;font-size:14px}.booking-alert button{display:block;margin-top:8px;border:1px solid var(--error);background:transparent;padding:8px 12px;color:inherit}.booking-footer{text-align:center;font-size:12px;color:var(--muted);line-height:1.5}.booking-return{grid-column:1/-1;justify-self:start;border:0;background:transparent;color:var(--gray);text-decoration:underline;padding:12px 28px}@media(max-width:1100px) and (min-width:761px){.booking-card{grid-template-columns:260px minmax(0,1fr)}.booking-seller{padding:28px 22px}.booking-schedule{grid-template-columns:minmax(0,1fr) 230px}.booking-month,.booking-times{padding:28px 18px}.booking-month-header{align-items:flex-start}.booking-month-controls{width:100%;justify-content:space-between}}@media(max-width:760px){.booking-shell{background:var(--black);padding:22px;justify-content:flex-start;gap:24px}.booking-root,.booking-root.booking-wide{max-width:none}.booking-card,.booking-schedule{display:flex;flex-direction:column;min-height:0;border:0;border-radius:0;overflow:visible;background:transparent}.booking-seller{padding:0;border:0;gap:16px}.booking-person{margin-top:0}.booking-person strong{font-size:16px}.booking-person span:not(.booking-avatar){font-size:12px}.booking-avatar{width:44px;height:44px}.booking-seller h1{font-size:21px}.booking-seller .booking-description{display:none}.booking-facts{flex-direction:row;flex-wrap:wrap;gap:8px 16px;font-size:12px}.booking-facts svg{width:15px;height:15px}.booking-facts>span:nth-child(2){display:none}.booking-month{padding:20px 0 16px}.booking-month-header{margin-bottom:12px}.booking-month-header h2{font-size:16px}.booking-month-controls{gap:2px}.booking-month-controls span{min-width:100px;font-size:12px}.booking-calendar{display:none}.booking-day-carousel{display:flex;overflow-x:auto;gap:8px;padding:4px 2px 8px;scroll-snap-type:x proximity}.booking-day-carousel button{flex:none;width:62px;height:64px;border:1px solid var(--line);background:var(--booking-panel);scroll-snap-align:start}.booking-day-carousel button[data-available=true]{background:var(--booking-accent-soft);color:var(--gray);border-color:var(--booking-accent-line)}.booking-day-carousel button[data-available=false]{background:transparent;color:var(--booking-day-muted);border-color:transparent}.booking-day-carousel button:disabled{color:var(--booking-day-disabled);background:transparent;border-color:transparent;opacity:1}.booking-day-carousel small{display:block;font-size:11px;text-transform:uppercase}.booking-day-carousel span{font-size:17px;font-weight:650}.booking-times{border:0;padding:0;gap:12px}.booking-slot-grid{max-height:224px}.booking-slot-content{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-slot-grid button{min-height:48px}.booking-wide{padding-bottom:100px}.booking-continue{position:fixed;z-index:10;bottom:0;left:0;right:0;padding:16px 22px calc(16px + env(safe-area-inset-bottom));background:var(--black);border-top:1px solid var(--line)}.booking-details{padding:24px 0 0}.booking-data-card .booking-facts,.booking-data-card .booking-seller h1{display:none}.booking-result{max-width:none;border:0;border-radius:0;background:transparent;padding:6px 0}.booking-result h1{font-size:26px}.booking-result .booking-brand{height:24px}.booking-summary{font-size:14px;padding:4px 14px}.booking-summary dd{max-width:70%}.booking-footer{margin-top:auto}.booking-return{padding:16px 0}.booking-alert{padding:12px 14px}.booking-month-days{gap:4px}}@media(prefers-reduced-motion:reduce){.booking-shell button{transition:none}.booking-slot-grid{scroll-behavior:auto}}