.bs-page{--bs-accent:#0f7b6c;--bs-accent-dark:#0b6355;--bs-accent-soft:#e4f3f0;--bs-ink:#16343e;--bs-body:#46545b;--bs-muted:#6b787e;--bs-soft:#f4f1ea;--bs-line:#e4e0d8;--bs-white:#fff;--bs-max:640px;--bs-ease:cubic-bezier(.22, 1, .36, 1);--bs-confirm-h:0px;background:radial-gradient(ellipse 80% 50% at 50% -10%, #0f7b6c1f, transparent 55%), linear-gradient(180deg, #eef5f4 0%, var(--bs-soft) 32%, #f7f5f0 100%);min-height:100vh;color:var(--bs-ink);-webkit-font-smoothing:antialiased;font-family:Figtree,system-ui,sans-serif}.bs-page--confirming{--bs-confirm-h:108px}.bs-page h1,.bs-page .bs-brand,.bs-page .bs-month-label,.bs-page .bs-confirm-when{font-family:Schibsted Grotesk,Figtree,system-ui,sans-serif}.bs-shell{width:min(100% - 32px, var(--bs-max));padding:28px 0 calc(40px + var(--bs-confirm-h));margin-inline:auto}.bs-brand-wrap{text-align:center;flex-direction:column;align-items:center;gap:14px;margin-bottom:22px;display:flex}.bs-brand{letter-spacing:-.02em;color:var(--bs-ink);align-items:center;gap:10px;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex}.bs-brand img{object-fit:cover;border-radius:8px;width:36px;height:36px}.bs-trustpilot{max-width:min(100%,220px);height:auto;display:block}.bs-headline{letter-spacing:-.03em;text-align:center;margin:0 0 8px;font-size:clamp(1.4rem,5vw,1.8rem);font-weight:800;line-height:1.25}.bs-intro{text-align:center;max-width:32rem;color:var(--bs-body);margin:0 auto 22px;font-size:1rem;line-height:1.5}.bs-panel{background:#ffffffd1;border:1px solid #e4e0d8e6;border-radius:20px;padding:16px;box-shadow:0 14px 34px -28px #16343e59}.bs-panel+.bs-panel{margin-top:12px}.bs-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.bs-month-label{letter-spacing:-.02em;color:var(--bs-ink);text-transform:capitalize;margin:0;font-size:1.05rem;font-weight:800}.bs-slot-count{color:var(--bs-muted);white-space:nowrap;margin:0;font-size:.82rem;font-weight:600}.bs-week-navs{gap:6px;display:flex}.bs-week-nav{border:1px solid var(--bs-line);background:var(--bs-white);width:34px;height:34px;color:var(--bs-ink);cursor:pointer;border-radius:999px;place-items:center;font-size:1.1rem;line-height:1;display:grid}.bs-week-nav:hover:not(:disabled){border-color:var(--bs-accent);background:var(--bs-accent-soft)}.bs-week-nav:disabled{opacity:.3;cursor:not-allowed}.bs-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.bs-day{min-width:0;color:var(--bs-ink);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:10px 2px 8px;display:flex}.bs-day:hover:not(:disabled):not([data-active=true]){background:#0f7b6c0f}.bs-day:disabled{opacity:.35;cursor:not-allowed}.bs-day[data-today=true]:not([data-active=true]) .bs-day-num{color:var(--bs-accent)}.bs-day[data-active=true]{background:var(--bs-accent);color:#fff}.bs-day[data-active=true] .bs-day-wd{color:#fffc}.bs-day-wd{letter-spacing:.04em;color:var(--bs-muted);text-transform:uppercase;font-size:.62rem;font-weight:700}.bs-day-num{letter-spacing:-.02em;font-size:1.05rem;font-weight:800;line-height:1.1}.bs-day-dot{background:var(--bs-accent);opacity:0;border-radius:999px;width:5px;height:5px;margin-top:3px}.bs-day[data-available=true] .bs-day-dot{opacity:1}.bs-day[data-active=true] .bs-day-dot{opacity:1;background:#fff}.bs-times-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(42vh,280px);margin:0 -4px;padding:2px 4px 8px;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 85%,#0000 100%);mask-image:linear-gradient(#000 85%,#0000 100%)}.bs-times{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}@media (min-width:480px){.bs-times{grid-template-columns:repeat(4,minmax(0,1fr))}.bs-times-scroll{max-height:min(46vh,320px)}}.bs-time{border:1px solid var(--bs-line);background:var(--bs-white);color:var(--bs-ink);cursor:pointer;border-radius:12px;padding:13px 8px;font-size:.95rem;font-weight:700}.bs-time:hover:not([data-active=true]){background:var(--bs-accent-soft);border-color:#0f7b6c66}.bs-time[data-active=true]{border-color:var(--bs-accent);background:var(--bs-accent);color:#fff}.bs-confirm-bar{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom));animation:bs-confirm-in .22s var(--bs-ease) both;background:linear-gradient(#0000 0%,#eef5f4eb 28%,#eef5f4 100%);position:fixed;bottom:0;left:0;right:0}.bs-confirm-bar-inner{width:min(100%, var(--bs-max));color:#fff;background:linear-gradient(135deg,#0f7b6c 0%,#0b6355 100%);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;margin-inline:auto;padding:14px 16px;display:flex;box-shadow:0 12px 28px -10px #0b63558c}.bs-confirm-kicker{letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;margin:0 0 2px;font-size:.68rem;font-weight:700}.bs-confirm-when{letter-spacing:-.02em;text-transform:capitalize;margin:0;font-size:.98rem;font-weight:800;line-height:1.25}.bs-actions{flex-shrink:0;gap:8px;display:flex}.bs-btn{appearance:none;cursor:pointer;border:none;border-radius:999px;padding:11px 16px;font-size:.92rem;font-weight:700}.bs-btn:disabled{opacity:.55;cursor:not-allowed}.bs-btn--primary{color:var(--bs-accent-dark);background:#fff}.bs-btn--ghost{color:#fff;background:0 0;border:1px solid #ffffff59}@keyframes bs-confirm-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bs-error{color:#8a1f1f;background:#fdecec;border-radius:12px;margin:12px 0 0;padding:12px 14px;font-size:.92rem;line-height:1.45}.bs-empty{border:1px dashed var(--bs-line);text-align:center;color:var(--bs-body);background:#f4f1ea8c;border-radius:14px;padding:20px 14px;line-height:1.5}.bs-skeleton{background:linear-gradient(90deg,#e8e4dc 0%,#f4f1ea 50%,#e8e4dc 100%) 0 0/200% 100%;border-radius:14px;height:140px;animation:1.1s ease-in-out infinite bs-shimmer}@keyframes bs-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.bs-footer{border-top:1px solid var(--bs-line);text-align:center;color:var(--bs-body);margin-top:28px;padding-top:18px;font-size:.9rem}.bs-footer a{color:var(--bs-accent)}@media (max-width:380px){.bs-day{padding:8px 1px 6px}.bs-day-num{font-size:.95rem}.bs-confirm-bar-inner{flex-direction:column;align-items:stretch}.bs-actions{width:100%}.bs-actions .bs-btn{flex:1}}
