.booker{display:grid;grid-template-columns:minmax(0,330fr) minmax(0,540fr) minmax(0,330fr);width:100%;min-height:calc(var(--spacing)*150);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);overflow:hidden;background:var(--color-bg-raised);color:var(--color-text-secondary);font:400 var(--text-body-s)/var(--text-body-s--line-height) var(--font-sans);font-variant-numeric:tabular-nums}.booker :where(h2,h3,p,ul){margin:0}.booker ul{padding:0;list-style:none}.booker :where(h2,h3,p){overflow-wrap:anywhere}.booker :where(button,input,textarea){font:inherit}.booker :where(button,a,input,textarea):focus-visible{outline:2px solid var(--color-accent-impulse);outline-offset:3px;box-shadow:var(--shadow-glow-focus)}.booker-calendar,.booker-event,.booker-pane{padding:calc(var(--spacing)*8);min-width:0}.booker-event{display:flex;flex-direction:column;align-items:flex-start;gap:calc(var(--spacing)*3.5);border-right:1px solid var(--color-border-faint)}.booker-avatar{display:block;width:calc(var(--spacing)*11);height:calc(var(--spacing)*11);border-radius:50%;outline:1px solid var(--color-white-line);outline-offset:-1px}.booker-host,.booker-zone{font:400 var(--text-mono-s)/var(--text-mono-s--line-height) var(--font-mono);color:var(--color-text-tertiary)}.booker-event h2{font:600 var(--text-heading-3)/var(--text-heading-3--line-height) var(--font-sans);letter-spacing:var(--text-heading-3--letter-spacing);color:var(--color-text-primary)}.booker-meta{display:flex;align-items:center;gap:calc(var(--spacing)*2.5)}.booker-meta>span{color:var(--color-text-accent);font:400 var(--text-mono-s)/var(--text-mono-s--line-height) var(--font-mono)}.booker-zone{font-size:var(--text-mono-micro);line-height:var(--text-mono-micro--line-height);margin-top:calc(var(--spacing)*-2.5)!important}.booker-selected{width:100%;padding:calc(var(--spacing)*3.5);border:1px solid var(--color-green-tint-line);border-radius:var(--radius-lg);background:var(--color-green-tint)}.booker-selected>p{font:400 var(--text-mono-micro)/var(--text-mono-micro--line-height) var(--font-mono);letter-spacing:var(--text-mono-micro--letter-spacing);text-transform:uppercase;color:var(--color-text-accent);margin-bottom:calc(var(--spacing)*2)}.booker-day,.booker-month h3,.booker-pane h3,.booker-selected>strong,.booker-slots button{font:500 var(--text-label-m)/var(--text-label-m--line-height) var(--font-sans);letter-spacing:var(--text-label-m--letter-spacing);color:var(--color-text-primary)}.booker-calendar{display:flex;flex-direction:column;gap:calc(var(--spacing)*4.5)}.booker-month{display:flex;justify-content:space-between;align-items:center;gap:calc(var(--spacing)*2)}.booker-month__arrows{display:flex;gap:calc(var(--spacing)*1.5)}.booker-month__arrows button{width:calc(var(--spacing)*6.75);height:calc(var(--spacing)*7.5);display:grid;place-items:center;border:1px solid var(--color-border-default);border-radius:var(--radius-arrow);background:transparent;color:var(--color-text-secondary);cursor:pointer}.booker-month__arrows button:disabled{opacity:.4;cursor:default}.booker-grid{display:flex;flex-direction:column;width:100%;max-width:calc(var(--spacing)*113.5)}.booker-grid,.booker-week{gap:calc(var(--spacing)*2)}.booker-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.booker-week--labels{margin-bottom:calc(var(--spacing)*2.5);font:400 var(--text-mono-eyebrow)/var(--text-mono-eyebrow--line-height) var(--font-mono);text-align:center;color:var(--color-text-tertiary);text-transform:uppercase}.booker-week--labels>span{height:calc(var(--spacing)*5)}.booker-day{display:grid;place-items:center;width:100%;height:calc(var(--spacing)*13);border:1px solid transparent;border-radius:var(--radius-cell);background:transparent;color:var(--color-text-tertiary);cursor:default;transition:border-color var(--dur-fast) var(--ease-ui),background-color var(--dur-glide) var(--ease-expo)}.booker-day[data-available=true]{background:var(--color-green-wash);border-color:var(--color-green-wash-line);color:var(--color-text-primary);cursor:pointer}.booker-day[data-selected=true]{background:var(--color-accent-impulse);color:var(--color-text-inverse);border-color:var(--color-accent-impulse)}.booker-side{position:relative;min-width:0;background:var(--color-bg-sunken);scroll-margin-top:calc(var(--nav-h) + var(--spacing)*4)}.booker-pane,.booker-side{display:flex;align-items:stretch}.booker-pane{flex-direction:column;gap:calc(var(--spacing)*2.5);width:100%;min-height:calc(var(--spacing)*150 - 2px)}.booker-pane>h3{outline:none}.booker-pane>h3:focus-visible{box-shadow:none}.booker-pane[data-pane=booked],.booker-pane[data-pane=pickDay]{justify-content:center;align-items:center;text-align:center}.booker-pane[data-pane=booked]>h3,.booker-pane[data-pane=pickDay]>h3{font:600 var(--text-heading-3)/var(--text-heading-3--line-height) var(--font-sans);letter-spacing:var(--text-heading-3--letter-spacing)}.booker-pane[data-pane=pickDay]>p{max-width:calc(var(--spacing)*55);color:var(--color-text-tertiary)}.booker-pane[data-pane=pickTime]>p{color:var(--color-text-tertiary)}.booker-slots{display:flex;flex-direction:column;gap:calc(var(--spacing)*2.5)}.booker-slots button{width:100%;min-height:calc(var(--spacing)*12);border:1px solid var(--color-green-slot-line);border-radius:var(--radius-cell);background:var(--color-green-slot);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-ui)}.booker-form{gap:calc(var(--spacing)*2.5)}.booker-field,.booker-form{display:flex;flex-direction:column}.booker-field{gap:calc(var(--spacing)*1.5)}.booker-field input,.booker-field textarea{box-sizing:border-box;width:100%;min-width:0;padding:calc(var(--spacing)*3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);color:var(--color-text-primary);outline:none}.booker-field input{height:calc(var(--spacing)*11)}.booker-field textarea{height:calc(var(--spacing)*21);resize:vertical}.booker-field :where(input,textarea)::placeholder{color:var(--color-text-tertiary)}.booker-field [aria-invalid=true]{border-color:var(--color-text-primary)}.booker-error,.booker-field__error{color:var(--color-text-primary);font-size:var(--text-body-s)}.booker-error{display:flex;flex-direction:column;gap:calc(var(--spacing)*2)}.booker-verification:empty{display:none}.booker-verification{max-width:100%}.booker-confirm{width:100%;min-height:calc(var(--spacing)*11.5)}.booker-confirm,.booker-confirm>.lbl{justify-content:center}.booker-back{width:fit-content;padding:calc(var(--spacing)*2) 0;border:0;background:none;color:var(--color-text-secondary);cursor:pointer}.booker-back,.booker-fallback{text-decoration:underline;text-underline-offset:calc(var(--spacing)*1)}.booker-fallback{color:var(--color-text-accent)}.booker-check{width:calc(var(--spacing)*14);height:calc(var(--spacing)*14);display:grid;place-items:center;border-radius:50%;background:var(--color-accent-impulse);color:var(--color-text-inverse);box-shadow:var(--shadow-check);font:600 var(--text-heading-3)/var(--text-heading-3--line-height) var(--font-sans)}.booker-pane[data-pane=booked]{gap:calc(var(--spacing)*3.5)}.booker-pane[data-pane=booked]>p{max-width:calc(var(--spacing)*60)}.booker-pane .booker-manage{font-size:var(--text-mono-micro);line-height:var(--text-mono-micro--line-height);color:var(--color-text-tertiary)}.booker-dialog{position:fixed;width:min(calc(100% - var(--spacing)*8),var(--container-content));max-width:var(--container-content);max-height:calc(100dvh - var(--spacing)*8);margin:auto;padding:0;border:0;overflow:auto;background:transparent;color:var(--color-text-primary);z-index:var(--z-overlay)}.booker-dialog::backdrop{background:var(--color-bg-scrim);backdrop-filter:blur(var(--blur-scrim))}.booker-dialog__bar{display:flex;justify-content:flex-end;padding-bottom:calc(var(--spacing)*2)}.booker-dialog__close{width:calc(var(--spacing)*11);height:calc(var(--spacing)*11);border:1px solid var(--color-border-default);border-radius:50%;background:var(--color-bg-sunken);color:var(--color-text-primary);cursor:pointer;font:400 var(--text-heading-3)/1 var(--font-sans)}.booker-dialog__close:focus-visible{outline:2px solid var(--color-accent-impulse);outline-offset:-4px}@media(hover:hover) and (pointer:fine){.booker-day[data-available=true]:hover,.booker-slots button:hover{border-color:var(--color-accent-impulse)}.booker-back:hover{color:var(--color-text-primary)}.booker-month__arrows button:enabled:hover{border-color:var(--color-border-strong)}}@media(max-width:1059px){.booker{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}.booker-event{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:calc(var(--spacing)*2) calc(var(--spacing)*4);border-right:0;border-bottom:1px solid var(--color-border-faint)}.booker-avatar{grid-row:1/3}.booker-event h2,.booker-host{grid-column:2}.booker-purpose,.booker-zone{grid-column:1/-1}.booker-zone{margin-top:0!important}.booker-meta--duration{grid-column:3;grid-row:1}.booker-meta--timezone{grid-column:3;grid-row:2}.booker-selected{grid-column:1/-1}.booker-pane{min-height:calc(var(--spacing)*135)}}@media(max-width:703px){.booker{grid-template-columns:minmax(0,1fr)}.booker-event{grid-template-columns:auto minmax(0,1fr);padding:calc(var(--spacing)*6)}.booker-meta--duration,.booker-meta--timezone{grid-column:1/-1;grid-row:auto}.booker-zone{grid-column:1/-1}.booker-calendar{padding:calc(var(--spacing)*6) calc(var(--spacing)*3)}.booker-month{padding-inline:calc(var(--spacing)*2)}.booker-month__arrows button{width:calc(var(--spacing)*11);height:calc(var(--spacing)*11)}.booker-grid{max-width:none}.booker-week{gap:calc(var(--spacing)*1)}.booker-day{height:calc(var(--spacing)*11)}.booker-pane{padding:calc(var(--spacing)*6);min-height:calc(var(--spacing)*55)}.booker-side{border-top:1px solid var(--color-border-faint)}.booker-dialog{width:100%;max-width:none;max-height:100dvh;height:100dvh;margin:0;border-radius:0;background:var(--color-bg-canvas)}.booker-dialog .booker{border-radius:0;border-inline:0}.booker-dialog__bar{position:sticky;top:0;z-index:1;background:var(--color-bg-canvas);padding:calc(var(--spacing)*2) calc(var(--spacing)*3)}}@media(prefers-reduced-motion:reduce){.booker *{transition:none!important;animation:none!important}}