.bk{--bk-accent:var(--accent,var(--gold,var(--brass)));max-width:52rem}.bk-label{max-width:none;margin:1.25rem 0 .5rem;font-size:.98rem;font-weight:600;display:block}.bk-select{font:inherit;border:1px solid var(--rule);color:var(--ink);background:#fff;border-radius:10px;width:100%;max-width:28rem;padding:.7rem .9rem}.bk-days{scroll-snap-type:x proximity;gap:.5rem;padding-bottom:.4rem;display:flex;overflow-x:auto}.bk-day{scroll-snap-align:start;border:1px solid var(--rule);min-width:4.6rem;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;flex:none;align-items:center;padding:.55rem .6rem;line-height:1.3;display:flex}.bk-day .w{color:var(--ink-soft);font-size:.85rem}.bk-day .d{font-size:.98rem;font-weight:700}.bk-day[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.bk-day[aria-pressed=true] .w{color:#fffc}.bk-times{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.5rem;display:grid}.bk-time{font:inherit;border:1px solid var(--rule);color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:.65rem .4rem;font-weight:600}.bk-time:hover,.bk-day:hover{border-color:var(--bk-accent)}.bk-time[aria-pressed=true]{background:var(--bk-accent);border-color:var(--bk-accent);color:#fff}.bk-time:disabled{opacity:.6;cursor:wait}.bk-form{border:1px solid var(--rule);background:#fff;border-radius:14px;margin-top:1.75rem;padding:1.5rem}.bk-held{border-left:3px solid var(--bk-accent);background:var(--wall-deep,#f3f3f3);border-radius:0 8px 8px 0;flex-direction:column;gap:.2rem;max-width:none;margin:0 0 1.25rem;padding:.8rem 1rem;display:flex}.bk-held span{color:var(--ink-soft);font-size:.95rem}.bk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem;display:grid}.bk-grid label{flex-direction:column;gap:.35rem;font-size:.98rem;font-weight:600;display:flex}.bk-grid label.wide{grid-column:1/-1}.bk-grid input,.bk-grid textarea{font:inherit;border:1px solid var(--rule);color:var(--ink);background:#fff;border-radius:10px;width:100%;padding:.7rem .85rem;font-weight:400}.bk-grid textarea{resize:vertical}.bk-grid small{color:var(--ink-soft);font-size:.9rem;font-weight:400;line-height:1.5}.bk [aria-invalid=true]{border-color:#b3261e;outline:2px solid #b3261e40}.bk-consent{align-items:flex-start;gap:.7rem;margin:1.25rem 0 0;font-size:.98rem;display:flex}.bk-consent input{width:1.15rem;height:1.15rem;accent-color:var(--bk-accent);flex:none;margin-top:.35rem}.bk-hp{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.bk-turnstile{min-height:65px;margin-top:1rem}.bk-form .actions{margin-top:1.25rem}.bk-msg{color:#8a1c14;max-width:none;min-height:1.5em;margin:1rem 0 0;font-weight:600}.bk-msg:empty,.bk-ok:empty{border:0;min-height:0;margin:0;padding:0}.bk-ok{color:#1f5f2e;background:#e7f4ea;border-radius:10px;max-width:none;margin:1rem 0 0;padding:.8rem 1rem;font-weight:600}.bk-small{color:var(--ink-soft);margin-top:1rem;font-size:.95rem}.bk-done{border:1px solid var(--rule);border-top:4px solid var(--bk-accent);background:#fff;border-radius:14px;padding:1.75rem}.bk-done h3{margin-top:0}.bk-when{font-size:1.15rem;font-weight:700}.bk-fallback{border:1px solid var(--rule);background:#fff;border-radius:14px;padding:1.25rem 1.5rem}.bk-summary{border:1px solid var(--rule);background:#fff;border-radius:14px;margin:0 0 1.25rem;padding:1.25rem 1.5rem}.bk-summary div{border-bottom:1px solid var(--rule);grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding:.55rem 0;display:grid}.bk-summary div:last-child{border-bottom:0}.bk-summary dt{color:var(--ink-soft)}.bk-summary dd{margin:0;font-weight:600}.bk-status{color:#1f5f2e;background:#e7f4ea;border-radius:999px;padding:.1rem .7rem;font-size:.9rem;display:inline-block}.bk-status-cancelled,.bk-status-no_show{color:#8a1c14;background:#fbeaea}.bk-status-completed{color:#333;background:#ececec}.bk-confirm{background:#fff7ec;border:1px solid #f0d9b5;border-radius:12px;margin-top:1rem;padding:1rem 1.25rem}.bk-manage .actions{margin-top:1rem}@media (width<=40rem){.bk-grid{grid-template-columns:1fr}.bk-form{padding:1.1rem}.bk-summary div{grid-template-columns:1fr;gap:.1rem}}
