/* Val: minimal booking styles; Roy's theme should override. */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bk-group{border:1px solid var(--border,#c8c8c8);border-radius:8px;margin:0 0 1rem;padding:.75rem}.bk-group legend{font-weight:600;padding:0 .25rem}
.bk-choice{display:flex;gap:.5rem;align-items:center;min-height:44px}
.bk-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.5rem}
.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));gap:.5rem}
.bk-day,.bk-slot,.bk-primary,.bk-secondary{min-height:44px;border:2px solid var(--primary,#1f5c99);border-radius:6px;background:var(--surface,#fff);color:var(--primary,#1f5c99);font:inherit;cursor:pointer;padding:.4rem .6rem;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.bk-day{flex-direction:column}.bk-day small{color:var(--text,#333)}
.bk-day[aria-pressed=true],.bk-slot[aria-pressed=true],.bk-primary{background:var(--primary,#1f5c99);color:var(--on-primary,#fff)}.bk-day[aria-pressed=true] small{color:var(--on-primary,#fff)}
.bk-day:disabled{border-color:var(--muted,#767676);color:var(--muted,#595959);cursor:not-allowed}
#booking-root :focus-visible{outline:3px solid var(--focus,#b35900);outline-offset:2px}
.bk-field{margin:0 0 1rem}.bk-field label{display:block;font-weight:600}.bk-check{font-weight:400!important}
.bk-field input:not([type=checkbox]),.bk-field textarea{width:100%;font:inherit;padding:.5rem;border:1px solid var(--muted,#767676);background:var(--surface,#fff);color:var(--text,#1a1a1a);border-radius:4px;min-height:44px}
.bk-hint{margin:0;color:var(--muted,#555);font-size:.9rem}.bk-error{color:var(--danger,#b00020);margin:.25rem 0 0;font-weight:600}
[aria-invalid=true]{border-color:var(--danger,#b00020)!important;border-width:2px!important}
.bk-errsum{border:2px solid var(--danger,#b00020);border-radius:6px;padding:.5rem 1rem;margin-bottom:1rem}.bk-errsum a{color:var(--danger,#b00020)}
.bk-actions{display:flex;gap:.75rem;flex-wrap:wrap}.bk-code{font-size:1.25rem;letter-spacing:.05em}
.bk-demo-note{background:var(--banner-bg,#fff4d6);color:var(--banner-text,#1a1a1a);padding:.5rem;border-radius:4px}
/* Darryl: error-summary links as 44px targets */
.bk-errsum li a{display:inline-flex;align-items:center;min-height:44px}
