.bc-trigger{border:1px solid var(--input);background:var(--card);text-align:left;border-radius:.85rem;align-items:stretch;width:100%;transition:border-color .16s,box-shadow .16s;display:flex;overflow:hidden}.bc-trigger:hover{border-color:color-mix(in oklab,var(--primary) 55%,var(--input))}.bc-trigger:focus-visible,.bc-trigger.is-open{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--primary) 18%,transparent);outline:none}.bc-trigger__icon{border-left:1px solid var(--border);background:color-mix(in oklab,var(--primary) 6%,var(--card));min-width:3rem;color:var(--primary);white-space:nowrap;flex-shrink:0;place-items:center;padding-inline:.6rem;display:grid}.bc-stepper{align-items:center;gap:.5rem;display:flex}.bc-step{border:1px solid var(--border);border-radius:.7rem;flex:1;min-width:0;padding:.5rem .75rem;transition:border-color .16s,background-color .16s}.bc-step.is-active{border-color:var(--primary);background:color-mix(in oklab,var(--primary) 6%,transparent)}.bc-step__label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted-foreground);font-size:.65rem;font-weight:600;display:block}.bc-step__value{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;display:block;overflow:hidden}.bc-step.is-ghost .bc-step__value{color:var(--muted-foreground)}.bc-hints{color:var(--muted-foreground);gap:.25rem;margin-top:.6rem;font-size:.75rem;line-height:1.4;display:grid}.bc-hints li{gap:.4rem;display:flex}.bc-hints svg{margin-top:.1rem}.bc-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;margin-top:.5rem;padding:.85rem 1.25rem;display:flex}.bc-status{color:var(--muted-foreground);font-size:.85rem}.bc-status strong{color:var(--foreground);font-size:.95rem}.bc-actions{align-items:center;gap:.5rem;display:flex}.bc-clear{min-height:2.5rem;color:var(--foreground);text-underline-offset:3px;border-radius:999px;padding:0 .75rem;font-size:.85rem;font-weight:600;text-decoration:underline}.bc-clear:disabled{opacity:.4;text-decoration:none}.bc-done{background:var(--primary);min-height:2.5rem;color:var(--primary-foreground);border-radius:999px;padding:0 1.25rem;font-size:.9rem;font-weight:600;transition:opacity .16s}.bc-done:disabled{opacity:.45;cursor:not-allowed}.booking-cal{--bc-cell:2.6rem;--bc-tint:color-mix(in oklab, var(--primary) 13%, transparent);--bc-tint-soft:color-mix(in oklab, var(--primary) 7%, transparent);font-variant-numeric:tabular-nums;position:relative}.booking-cal .rdp-months{gap:1.75rem;display:flex}.booking-cal .rdp-month_caption{height:var(--bc-cell);text-transform:capitalize;justify-content:center;align-items:center;font-size:.95rem;font-weight:600;display:flex}.booking-cal .rdp-nav{z-index:2;height:var(--bc-cell);pointer-events:none;justify-content:space-between;display:flex;position:absolute;inset:0 0 auto}.booking-cal :is(.rdp-button_previous,.rdp-button_next){width:var(--bc-cell);height:var(--bc-cell);color:var(--foreground);pointer-events:auto;border-radius:999px;place-items:center;transition:background-color .16s;display:grid}.booking-cal :is(.rdp-button_previous,.rdp-button_next):hover:not([aria-disabled=true]){background:var(--muted)}.booking-cal :is(.rdp-button_previous,.rdp-button_next)[aria-disabled=true]{opacity:.25;cursor:default}.booking-cal .rdp-chevron{fill:currentColor;width:1rem;height:1rem}.booking-cal .rdp-month_grid{border-collapse:collapse}.booking-cal .rdp-weekday{width:var(--bc-cell);text-transform:uppercase;height:2rem;color:var(--muted-foreground);font-size:.7rem;font-weight:600}.booking-cal .rdp-day{width:var(--bc-cell);height:var(--bc-cell);padding:0}.booking-cal .rdp-day_button{width:100%;height:100%;color:var(--foreground);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;font-size:.9rem;font-weight:500;transition:background-color .12s,box-shadow .12s;display:grid;position:relative}.booking-cal .rdp-day:not(.rdp-disabled):not(.rdp-selected) .rdp-day_button:hover{box-shadow:inset 0 0 0 1.5px var(--foreground)}.booking-cal .rdp-day_button:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.booking-cal .rdp-today:not(.rdp-selected) .rdp-day_button:after{content:"";background:var(--primary);border-radius:999px;width:4px;height:4px;position:absolute;bottom:.32rem;left:50%;transform:translate(-50%)}.booking-cal .rdp-disabled .rdp-day_button{color:color-mix(in oklab,var(--muted-foreground) 45%,transparent);cursor:default}.booking-cal .bc-unavailable .rdp-day_button{text-decoration:line-through;text-decoration-thickness:1.5px}.booking-cal .rdp-range_middle{background:var(--bc-tint)}.booking-cal .bc-preview:not(.rdp-selected){background:var(--bc-tint-soft)}.booking-cal .rdp-range_start:not(.rdp-range_end){background:linear-gradient(to right,transparent 50%,var(--bc-tint) 50%)}.booking-cal .rdp-range_end:not(.rdp-range_start){background:linear-gradient(to left,transparent 50%,var(--bc-tint) 50%)}.booking-cal .bc-preview-end:not(.rdp-selected){background:linear-gradient(to left,transparent 50%,var(--bc-tint-soft) 50%)}.booking-cal .bc-preview-start{background:linear-gradient(to right,transparent 50%,var(--bc-tint-soft) 50%)}.booking-cal :is(.rdp-range_middle,.bc-preview:not(.rdp-selected)):first-child{border-radius:999px 0 0 999px}.booking-cal :is(.rdp-range_middle,.bc-preview:not(.rdp-selected)):last-child{border-radius:0 999px 999px 0}.booking-cal .rdp-selected:not(.rdp-range_middle) .rdp-day_button{background:var(--primary);color:var(--primary-foreground);font-weight:700}.booking-cal .bc-preview-end:not(.rdp-selected) .rdp-day_button{box-shadow:inset 0 0 0 1.5px var(--primary)}.booking-sheet{--bc-sheet-cell:min(3rem, calc((100vw - 2rem) / 7))}.booking-cal--stack{--bc-cell:var(--bc-sheet-cell,2.75rem)}.booking-cal--stack .rdp-month{width:calc(var(--bc-cell) * 7);margin-inline:auto}.booking-cal--stack .rdp-months{flex-direction:column;gap:1.5rem}.booking-cal--stack .rdp-month_caption{justify-content:flex-start;padding-left:.4rem;font-size:1.05rem}.booking-cal--stack .rdp-day_button{font-size:1rem}.bc-weekdays{z-index:3;grid-template-columns:repeat(7,var(--bc-sheet-cell,2.75rem));border-block:1px solid var(--border);background:var(--background);text-align:center;text-transform:uppercase;color:var(--muted-foreground);justify-content:center;margin:.75rem -1rem .5rem;padding:.55rem 1rem;font-size:.7rem;font-weight:600;display:grid;position:sticky;top:0}.booking-sheet .bc-footer{padding:.85rem 1rem max(env(safe-area-inset-bottom),1rem);background:var(--background);margin-top:0;box-shadow:0 -10px 24px -18px #00000059}.booking-sheet .bc-actions{flex:100%}.booking-sheet .bc-done{flex:1;min-height:3rem;font-size:1rem}@media(prefers-reduced-motion:reduce){.bc-trigger,.bc-step,.booking-cal .rdp-day_button{transition:none}}
