.booking-widget,.booking-select__content{--bw-bg:var(--background,#eff1f5);--bw-card:var(--card,#fff);--bw-popover:var(--popover,#fff);--bw-popover-fg:var(--popover-foreground,#1d2b48);--bw-fg:var(--foreground,#1d2b48);--bw-muted:var(--muted,#e2e7ee);--bw-muted-fg:var(--muted-foreground,#566378);--bw-border:var(--border,#dfe4ec);--bw-input:#7f8aa0;--bw-primary:var(--primary,#1d2b48);--bw-primary-fg:var(--primary-foreground,#fff);--bw-destructive:var(--destructive,#c9343a);--bw-destructive-fg:var(--destructive-foreground,#fff);--bw-orange:var(--brand-orange,#db8d33);--bw-navy:var(--brand-navy,#1d2b48);--bw-mint:var(--brand-mint,#46e0c8);--bw-coral:var(--brand-coral,#e14547);--bw-radius:var(--radius,.625rem);--bw-radius-md:calc(var(--bw-radius) - 2px)}.booking-widget{box-sizing:border-box;background:var(--bw-card);color:var(--bw-fg);border-radius:var(--bw-radius);text-align:left;font-family:var(--font-nunito-sans), ui-sans-serif, system-ui, sans-serif;font-size:1rem;line-height:1.55;overflow:hidden;container-type:inline-size}[data-theme=dark] :is(.booking-widget,.booking-select__content){--bw-input:#56709a}.booking-widget *,.booking-widget :before,.booking-widget :after{box-sizing:border-box}.booking-widget :is(h1,h2,h3,h4,p,dl,dd,ol,ul){margin:0}.booking-widget :is(h1,h2,h3,h4){color:var(--bw-fg);font-weight:400}.booking-widget svg{flex-shrink:0;width:1rem;height:1rem}.booking-widget :focus-visible{outline:2px solid var(--bw-fg);outline-offset:2px;box-shadow:0 0 0 4px color-mix(in srgb, var(--bw-mint) 60%, transparent)}.booking-widget [tabindex="-1"]:focus:not(:focus-visible){outline:none}.booking-widget__sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.booking-widget__kicker{color:var(--bw-muted-fg);letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;font-weight:600;line-height:1.4;display:block}.booking-widget__muted{color:var(--bw-muted-fg)}.booking-widget__layout{display:grid}.booking-widget__summary{border-bottom:1px solid var(--bw-border);align-content:start;gap:1rem;padding:1.5rem;display:grid}.booking-widget__main{align-content:start;gap:1.5rem;min-width:0;padding:1.5rem;display:grid}@container (min-width:46rem){.booking-widget__layout{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr);min-height:32rem}.booking-widget__summary{border-bottom:0;border-right:1px solid var(--bw-border);align-content:center;padding:2rem}.booking-widget__main{align-content:center;padding:2rem}}.booking-widget__badge{border:1px solid color-mix(in srgb, var(--bw-mint) 40%, transparent);background:color-mix(in srgb, var(--bw-mint) 16%, transparent);border-radius:999px;justify-self:start;padding:.125rem .625rem;font-size:.75rem;font-weight:500}.booking-widget__title{font-family:var(--font-cal-sans), ui-sans-serif, system-ui, sans-serif;letter-spacing:-.025em;font-size:1.875rem;line-height:1.15}.booking-widget__lead{color:var(--bw-muted-fg);line-height:1.6}.booking-widget__facts{gap:.625rem;padding:0;font-size:.9375rem;font-weight:600;list-style:none;display:grid}.booking-widget__facts li{overflow-wrap:anywhere;align-items:center;gap:.625rem;min-width:0;display:flex}.booking-widget__facts svg{color:var(--bw-muted-fg)}.booking-widget__picked{border-left:4px solid var(--bw-mint);background:color-mix(in srgb, var(--bw-muted) 60%, transparent);border-radius:0 1rem 1rem 0;gap:.75rem;padding:.875rem 1rem;display:flex}.booking-widget__picked>svg{width:1.25rem;height:1.25rem;margin-top:.125rem}.booking-widget__picked strong{font-weight:700;display:block}.booking-widget__picked strong:first-letter,.booking-widget__times-head>span:last-child:first-letter{text-transform:uppercase}.booking-widget__picked span:not(.booking-widget__kicker){color:var(--bw-muted-fg);font-variant-numeric:tabular-nums}.booking-widget__previous{color:var(--bw-muted-fg);font-size:.875rem;margin-bottom:.5rem!important}.booking-widget__steps{color:var(--bw-muted-fg);flex-wrap:wrap;align-items:center;gap:.5rem;padding:0;font-size:.875rem;font-weight:500;list-style:none;display:flex}.booking-widget__steps li{align-items:center;gap:.5rem;display:flex}.booking-widget__steps li:not(:last-child):after{content:"";background:var(--bw-border);width:1.5rem;height:1px}.booking-widget__steps li>span{background:var(--bw-muted);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:700;display:grid}.booking-widget__steps li[aria-current]{color:var(--bw-fg);font-weight:600}.booking-widget__steps li[aria-current]>span{background:var(--bw-primary);color:var(--bw-primary-fg)}.booking-widget__steps li[data-state=done]>span{background:var(--bw-mint);color:var(--bw-navy)}.booking-widget__steps li[data-state=done] svg{width:.875rem;height:.875rem}@container (max-width:26rem){.booking-widget__steps li:not([aria-current]){font-size:0}}.booking-widget__alert,.booking-widget__status,.booking-widget__confirm{border-left:4px solid var(--bw-coral);background:color-mix(in srgb, var(--bw-muted) 60%, transparent);border-radius:0 1rem 1rem 0;padding:.875rem 1rem}.booking-widget__alert{gap:.625rem;font-size:.875rem;line-height:1.5;display:flex}.booking-widget__alert svg{color:var(--bw-destructive);margin-top:.125rem}.booking-widget__status{align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.booking-widget__status[data-tone=success]{border-left-color:var(--bw-mint)}.booking-widget__status[data-tone=progress]{border-left-color:var(--bw-orange)}.booking-widget__status[data-tone=muted]{border-left-color:var(--bw-input)}.booking-widget__status-icon{border-radius:var(--bw-radius-md);background:var(--bw-card);flex:none;place-items:center;width:3rem;height:3rem;display:grid}.booking-widget__status-icon svg{width:1.5rem;height:1.5rem}.booking-widget__status :is(h2,h3,h4){font-family:var(--font-cal-sans), ui-sans-serif, system-ui, sans-serif;font-size:1.5rem;line-height:1.25}.booking-widget__status p{color:var(--bw-muted-fg);margin-top:.375rem;font-size:.9375rem}.booking-widget__status[data-tone=progress] .booking-widget__status-icon svg,.booking-widget [data-spin]{animation:1s linear infinite booking-widget-spin}.booking-widget__confirm{gap:.75rem;display:grid}.booking-widget__confirm p{font-weight:600}.booking-widget__button,.booking-widget__icon-button{border-radius:var(--bw-radius-md);min-height:2.75rem;color:var(--bw-fg);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.booking-widget__button{padding:.5rem 1rem}.booking-widget__button--primary{background:var(--bw-orange);color:var(--bw-navy);font-size:1rem}.booking-widget__button--primary:hover{background:color-mix(in srgb, var(--bw-orange) 90%, transparent)}.booking-widget__button--primary:active{background:color-mix(in srgb, var(--bw-orange) 80%, transparent)}.booking-widget__button--outline,.booking-widget__icon-button{border-color:var(--bw-input)}.booking-widget__button--outline:hover,.booking-widget__button--ghost:hover,.booking-widget__icon-button:hover{background:var(--bw-orange);color:var(--bw-navy)}.booking-widget__button--outline:hover,.booking-widget__icon-button:hover{border-color:var(--bw-orange)}.booking-widget__button--destructive{background:var(--bw-destructive);color:var(--bw-destructive-fg)}.booking-widget__button--destructive:hover{background:color-mix(in srgb, var(--bw-destructive) 90%, transparent)}.booking-widget__button--danger-ghost{color:var(--bw-destructive)}.booking-widget__button--danger-ghost:hover{background:color-mix(in srgb, var(--bw-destructive) 10%, transparent)}.booking-widget__icon-button{width:2.75rem;padding:0}.booking-widget__icon-button svg{width:1.25rem;height:1.25rem}.booking-widget :is(.booking-widget__button,.booking-widget__icon-button):disabled{opacity:.5;pointer-events:none}.booking-widget__link{color:var(--bw-fg);text-decoration:underline;-webkit-text-decoration-color:var(--bw-orange);text-decoration-color:var(--bw-orange);text-underline-offset:4px;font-weight:600;text-decoration-thickness:1px}.booking-widget__link:hover{text-decoration-thickness:2px}.booking-widget__actions,.booking-widget__toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.booking-widget__actions--center{justify-content:center;gap:1rem 1.5rem}.booking-widget__actions--split{justify-content:space-between;padding-top:.5rem}.booking-widget__toolbar{justify-content:space-between;align-items:flex-end;gap:1rem}.booking-widget__toolbar--end{border-top:1px solid var(--bw-border);justify-content:flex-start;align-items:center;gap:.5rem;padding-top:1.25rem}.booking-widget__calendar{gap:1.25rem;display:grid}.booking-widget__week{align-items:center;gap:.5rem;display:flex}.booking-widget__week span{text-align:center;font-variant-numeric:tabular-nums;min-width:9.5rem;font-weight:700}.booking-widget__zone{gap:.5rem;width:min(100%,16rem);display:grid}.booking-widget__days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.375rem;display:grid}.booking-widget__day{border-radius:var(--bw-radius-md) var(--bw-radius-md) 0 0;min-width:0;color:var(--bw-fg);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;justify-items:center;gap:.125rem;padding:.5rem .125rem .375rem;display:grid}.booking-widget__day span{color:var(--bw-muted-fg);text-transform:capitalize;font-size:.75rem;font-weight:600}.booking-widget__day strong{font-family:var(--font-cal-sans), ui-sans-serif, system-ui, sans-serif;font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:400;line-height:1.1}.booking-widget__day small{color:var(--bw-muted-fg);font-variant-numeric:tabular-nums;font-size:.75rem}.booking-widget__day:hover:not(:disabled){background:color-mix(in srgb, var(--bw-muted) 60%, transparent)}.booking-widget__day[aria-pressed=true]{border-bottom-color:var(--bw-orange);background:var(--bw-muted)}.booking-widget__day[aria-pressed=true] small{color:var(--bw-fg);font-weight:700}.booking-widget__day:disabled{cursor:default;opacity:.45}.booking-widget__times-head{border-top:1px solid var(--bw-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;padding-top:1.25rem;display:flex}.booking-widget__times-head>span:last-child{font-weight:700}.booking-widget__times{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.5rem;display:grid}.booking-widget__time{border:1px solid var(--bw-input);border-radius:var(--bw-radius-md);background:var(--bw-card);min-height:2.75rem;color:var(--bw-fg);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;padding:.5rem;font-weight:600}.booking-widget__time:hover{border-color:var(--bw-orange);background:var(--bw-orange);color:var(--bw-navy)}.booking-select__trigger{border:1px solid var(--bw-input);border-radius:var(--bw-radius-md);background:var(--bw-card);width:100%;min-height:2.75rem;color:var(--bw-fg);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.booking-select__trigger>svg{color:var(--bw-muted-fg);opacity:.7}.booking-select__trigger[data-state=open]{border-color:var(--bw-fg)}.booking-select__value{white-space:nowrap;align-items:baseline;gap:.5rem;min-width:0;display:flex;overflow:hidden}.booking-select__value>span:first-child{text-overflow:ellipsis;overflow:hidden}.booking-select__offset{color:var(--bw-muted-fg);font-variant-numeric:tabular-nums;flex:none;font-size:.75rem}.booking-select__content{z-index:50;min-width:var(--radix-select-trigger-width);max-height:min(24rem, var(--radix-select-content-available-height));border:1px solid var(--bw-border);border-radius:var(--bw-radius-md);background:var(--bw-popover);color:var(--bw-popover-fg);font-family:var(--font-nunito-sans), ui-sans-serif, system-ui, sans-serif;transform-origin:var(--radix-select-content-transform-origin);font-size:.875rem;overflow:hidden;box-shadow:0 4px 6px -1px #0d15261a,0 2px 4px -2px #0d15261a}.booking-select__viewport{padding:.25rem}.booking-select__label{color:var(--bw-muted-fg);letter-spacing:.18em;text-transform:uppercase;padding:.5rem .5rem .25rem;font-size:.75rem;font-weight:600}.booking-select__separator{background:var(--bw-border);height:1px;margin:.25rem -.25rem}.booking-select__item{border-radius:calc(var(--bw-radius) - 4px);cursor:default;-webkit-user-select:none;user-select:none;outline:none;align-items:center;gap:.75rem;min-height:2.75rem;padding:.375rem 2rem .375rem .5rem;display:flex;position:relative}.booking-select__item .booking-select__offset{margin-left:auto}.booking-select__item[data-highlighted]{background:var(--bw-orange);color:var(--bw-navy)}.booking-select__item[data-highlighted] .booking-select__offset{color:var(--bw-navy)}.booking-select__item[data-state=checked]{font-weight:700}.booking-select__check{display:flex;position:absolute;right:.5rem}.booking-select__content svg{width:1rem;height:1rem}.booking-select__scroll{color:var(--bw-muted-fg);cursor:default;justify-content:center;padding:.25rem 0;display:flex}@media (min-width:48rem){.booking-select__item{min-height:0}}@media (prefers-reduced-motion:no-preference){.booking-select__content[data-state=open]{animation:.15s ease-out booking-select-in}}@keyframes booking-select-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}.booking-widget__form{gap:1.25rem;display:grid}.booking-widget__form>:is(h2,h3,h4),.booking-widget__empty :is(h2,h3,h4){font-family:var(--font-cal-sans), ui-sans-serif, system-ui, sans-serif;font-size:1.5rem;line-height:1.3}.booking-widget__field{gap:.5rem;display:grid}.booking-widget__label-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.booking-widget label,.booking-widget__manage label{font-size:.875rem;font-weight:500;line-height:1.2}.booking-widget__field small,.booking-widget__label-row small{color:var(--bw-muted-fg);font-size:.875rem;line-height:1.5}.booking-widget :is(input,select,textarea){border:1px solid var(--bw-input);border-radius:var(--bw-radius-md);background:var(--bw-card);width:100%;min-width:0;min-height:2.75rem;color:var(--bw-fg);font:inherit;padding:.5rem .75rem;font-size:1rem}.booking-widget textarea{resize:vertical;line-height:1.5}.booking-widget input[readonly]{background:color-mix(in srgb, var(--bw-muted) 60%, transparent)}.booking-widget__done{gap:1.25rem;display:grid}.booking-widget__details{border-radius:var(--bw-radius);background:color-mix(in srgb, var(--bw-muted) 50%, transparent);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem 1.5rem;padding:1rem 1.25rem;display:grid}.booking-widget__details dt{color:var(--bw-muted-fg);letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;font-weight:600}.booking-widget__details dd{overflow-wrap:anywhere;margin-top:.25rem;font-weight:600}.booking-widget__details dd:first-letter{text-transform:uppercase}.booking-widget__manage{gap:.5rem;display:grid}.booking-widget__manage label{font-weight:600}.booking-widget__manage p{color:var(--bw-muted-fg);font-size:.875rem}.booking-widget__copy{gap:.5rem;display:flex}.booking-widget__copy input{color:var(--bw-muted-fg);text-overflow:ellipsis;flex:1}.booking-widget__copy button{flex:none}.booking-widget__empty{text-align:center;justify-items:center;gap:.75rem;padding:2rem 1rem;display:grid}.booking-widget__empty p{max-width:32rem;color:var(--bw-muted-fg);font-size:.9375rem}.booking-widget__empty .booking-widget__actions{margin-top:.5rem}.booking-widget__empty--inline{border-radius:var(--bw-radius);background:color-mix(in srgb, var(--bw-muted) 50%, transparent);padding:1.5rem 1rem}p.booking-widget__empty-title{color:var(--bw-fg);font-size:1.125rem;font-weight:600}.booking-widget__empty-icon{border-radius:var(--bw-radius-md);background:color-mix(in srgb, var(--bw-orange) 15%, transparent);place-items:center;width:3rem;height:3rem;margin-bottom:.25rem;display:grid}.booking-widget__empty-icon[data-tone=danger]{background:color-mix(in srgb, var(--bw-coral) 15%, transparent)}.booking-widget__empty-icon[data-tone=muted]{background:var(--bw-card)}.booking-widget__empty-icon svg{width:1.5rem;height:1.5rem}.booking-widget__skeleton{gap:.75rem;display:grid}.booking-widget__skeleton i{border-radius:var(--bw-radius-md);background:var(--bw-muted);height:2.75rem;animation:1.6s ease-in-out infinite booking-widget-pulse;display:block}.booking-widget__skeleton i:first-of-type{width:55%;height:1.5rem}.booking-widget__skeleton i:last-of-type{width:80%}.booking-widget__skeleton--slots{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));gap:.5rem}.booking-widget__skeleton--slots i:is(:first-of-type,:last-of-type){width:auto;height:2.75rem}@keyframes booking-widget-spin{to{transform:rotate(360deg)}}@keyframes booking-widget-pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.booking-widget *,.booking-widget [data-spin]{animation:none!important}}@media (prefers-reduced-motion:no-preference){.booking-widget :is(button,a,.booking-widget__day,.booking-widget__time){transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out}}
