.bs-booking-filter{display:flex;flex-wrap:wrap;gap:.3rem;margin-block-end:.6rem}.bs-booking-filter span{padding:.15rem .6rem;border:1px solid var(--bs-line);border-radius:999px;background:var(--bs-card);color:var(--bs-muted);font-size:.68rem;font-weight:700}.bs-booking-filter .is-on{border-color:var(--bs-brand);background:var(--bs-brand-50);color:var(--bs-brand)}.bs-booking-cal{display:grid;grid-template-columns:2.9rem repeat(3,minmax(0,1fr));grid-template-rows:auto repeat(6,2.7rem);column-gap:.35rem;padding:.45rem;border:1px solid var(--bs-line);border-radius:12px;background:var(--bs-card)}.bs-booking-cal__corner{grid-column:1;grid-row:1}.bs-booking-cal__head{grid-row:1;padding-block-end:.35rem;color:var(--bs-text);font-size:.72rem;font-weight:800;text-align:center}.bs-booking-cal__time{grid-column:1;color:var(--bs-muted);font-family:var(--bs-mono);font-size:.62rem;font-variant-numeric:tabular-nums;line-height:1}.bs-booking-cal__lane{grid-row:2 / -1;border-radius:8px;background:repeating-linear-gradient(180deg,var(--bs-paper) 0 calc(2.7rem - 1px),var(--bs-line) calc(2.7rem - 1px) 2.7rem)}.bs-booking-appt,.bs-booking-busy,.bs-booking-free{position:relative;display:grid;align-content:start;gap:.05rem;margin-block:2px;padding:.3rem .4rem;border-radius:8px;min-width:0;overflow:hidden;font-size:.64rem;line-height:1.35}.bs-booking-appt{--c: #6517ab;border-inline-start:3px solid var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);color:var(--bs-text)}.bs-booking-appt--a{--c: #6517ab}.bs-booking-appt--b{--c: #c2417a}.bs-booking-appt--c{--c: #2f62c9}.bs-booking-appt b,.bs-booking-appt small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bs-booking-appt b{font-weight:800}.bs-booking-appt small{color:var(--bs-muted);font-size:.6rem}.bs-booking-appt em{justify-self:start;margin-block-start:.1rem;padding:0 .35rem;border-radius:999px;background:var(--bs-card);color:var(--c);font-size:.56rem;font-style:normal;font-weight:800}.bs-booking-appt--new{box-shadow:0 0 0 2px var(--c),0 10px 22px -12px #1a123073}.bs-booking-busy{border:1px dashed var(--bs-line-strong);background:repeating-linear-gradient(135deg,var(--bs-paper-2) 0 6px,var(--bs-card) 6px 12px);color:var(--bs-muted)}.bs-booking-busy b{color:var(--bs-text-2);font-weight:800}.bs-booking-busy small{font-size:.58rem}.bs-booking-free{place-content:center;border:1px dashed var(--bs-brand-2);background:var(--bs-brand-50);color:var(--bs-brand);text-align:center}.bs-booking-free b{font-weight:800}@media(max-width:520px){.bs-booking-cal{grid-template-columns:2.6rem repeat(2,minmax(0,1fr))}.bs-booking-s3{display:none}}.bs-booking-offer{display:grid;gap:.35rem}.bs-booking-offer__btn{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding-block:.3rem .1rem;border-block-start:1px solid rgba(0,0,0,.08);color:#027eb5;font-weight:700}.bs-booking-pick small{display:block;color:var(--bs-wa);font-size:.62rem;font-weight:800}.bs-booking-actions{display:flex;gap:.3rem}.bs-booking-actions span{flex:1;padding:.15rem .3rem;border:1px solid var(--bs-line);border-radius:8px;color:var(--bs-text-2);font-size:.62rem;font-weight:700;text-align:center}.bs-booking-send{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;padding:.4rem .5rem;border-radius:10px;background:var(--bs-brand);color:#fff;font-size:.68rem;font-weight:800}.bs-booking-cost{display:inline-block;padding:.1rem .6rem;border-radius:999px;font-size:.8rem;font-weight:800;white-space:nowrap}.bs-booking-cost--billed{background:var(--bs-amber-50);color:var(--bs-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bs-amber) 40%,transparent)}.bs-booking-cost--free{background:var(--bs-teal-50);color:var(--bs-teal-ink)}.bs-booking-sync{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .5rem;border-radius:999px;background:var(--bs-brand-50);color:var(--bs-brand);font-size:.66rem;font-weight:800;white-space:nowrap}.bs-booking-week{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem}.bs-booking-day{display:grid;align-content:start;gap:.3rem;min-block-size:8rem;padding:.4rem;border-radius:10px;background:var(--bs-paper-2);min-width:0}.bs-booking-day__name{color:var(--bs-text);font-size:.74rem;font-weight:800;text-align:center}.bs-booking-chip{display:grid;gap:.05rem;padding:.35rem .4rem;border-radius:7px;font-size:.64rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.bs-booking-chip b{font-family:var(--bs-mono);font-variant-numeric:tabular-nums;font-weight:800}.bs-booking-chip--lb{border-inline-start:3px solid var(--bs-brand);background:var(--bs-brand-50);color:var(--bs-text)}.bs-booking-chip--busy{border:1px dashed var(--bs-line-strong);background:repeating-linear-gradient(135deg,var(--bs-paper-2) 0 5px,var(--bs-card) 5px 10px);color:var(--bs-muted)}.bs-booking-chip--off{background:var(--bs-line);color:var(--bs-text-2);text-align:center}.bs-booking-legend{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin-block-start:.6rem;color:var(--bs-muted);font-size:.68rem;font-weight:700}.bs-booking-legend span{display:inline-flex;align-items:center;gap:.35rem}.bs-booking-legend i{display:inline-block;inline-size:.9rem;block-size:.6rem;padding:0;border-radius:3px}@media(max-width:520px){.bs-booking-week{grid-template-columns:repeat(3,minmax(0,1fr))}.bs-booking-day--wide{display:none}}@media(prefers-reduced-motion:no-preference){.bs-booking-appt--new{animation:bs-booking-in .6s cubic-bezier(.2,.7,.2,1) .5s both}.bs-booking-free{animation:bs-booking-pulse 2.8s ease-in-out infinite}}@keyframes bs-booking-in{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}@keyframes bs-booking-pulse{0%,to{opacity:1}50%{opacity:.55}}
