body{font-family:var(--font-text);color:var(--text);background:var(--paper);margin:0;}
/* Booking demo pages: quiet layout on the locked Auralia tokens. No new colors,
   timings or motion here; everything below references tokens.css variables. */
html{scroll-padding-bottom:calc(var(--tap) + var(--space-4) + env(safe-area-inset-bottom,0px));}
.bskip{position:absolute;left:var(--space-4);top:calc(var(--space-4) * -4);z-index:var(--layer-booking-skip);background:var(--paper);color:var(--ink);padding:var(--space-2) var(--space-4);}
.bskip:focus{top:var(--space-2);}
.btop{position:sticky;top:0;z-index:var(--layer-booking-top);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--header-bar-h);padding:0 var(--frame);background:var(--header-solid);color:var(--ink);border-bottom:var(--hairline) var(--rule);}
.btop nav{display:flex;gap:var(--space-5);}
.btop a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--ink);}
.bbrand{font-family:var(--font-display);}
.bwrap{max-width:var(--module-page);margin:0 auto;padding:var(--section-y) var(--section-x) var(--space-12);background:var(--paper);color:var(--text);}
.bwrap h1{font-size:var(--display-2);line-height:var(--leading-heading);max-width:20ch;overflow-wrap:break-word;}
.broom h3{overflow-wrap:break-word;}
#bquote{overflow-wrap:break-word;}
.bdemo{max-width:var(--information-measure);color:var(--text-muted);}
.bsteps{display:grid;gap:var(--space-2);padding:0;list-style:none;font-size:var(--text-sm);color:var(--text-muted);}
.bsteps [aria-current=step]{color:var(--text);font-weight:var(--weight-control);}
#bstatus{font-size:var(--text-sm);color:var(--text-muted);}
.berror{color:var(--state-error);font-size:var(--text-sm);min-height:var(--space-6);}
.bstale{border-left:var(--module-border) solid var(--bronze);padding-left:var(--space-3);font-size:var(--text-sm);}
#bform section{border-top:var(--hairline) var(--rule);padding:var(--space-7) 0;}
#bform h2{font-size:var(--display-3);line-height:var(--leading-heading);scroll-margin-top:calc(var(--header-bar-h) + var(--space-4));}
#bform label{display:grid;gap:var(--space-2);margin:0 0 var(--field-gap);font-size:var(--text-sm);}
#bform input,#bform select{min-height:var(--module-control);padding:0 var(--space-3);border:var(--hairline) var(--rule-strong);background:var(--paper);color:var(--text);font:inherit;}
#brooms{display:grid;gap:var(--space-6);margin:0 0 var(--space-6);}
@media(min-width:760px){#brooms{grid-template-columns:1fr 1fr;}}
.broom{border:var(--hairline) var(--rule);padding:var(--space-5);}
.broom.is-picked{border:var(--module-border) solid var(--focus-in);}
.broom img{width:100%;height:auto;}
.broom h3{font-size:var(--room-name);line-height:var(--leading-heading);}
.bfacts{color:var(--text-muted);font-size:var(--text-sm);}
.bprimary{display:inline-flex;align-items:center;min-height:var(--module-control);padding:0 var(--space-6);border:0;background:var(--action);color:var(--action-text);font:inherit;font-weight:var(--weight-control);}
.bprimary:disabled{opacity:var(--booking-disabled-opacity);}
.blink{background:none;border:0;padding:var(--space-2) 0;color:var(--text);text-decoration:underline;text-underline-offset:var(--booking-link-offset);font:inherit;min-height:var(--tap);}
#bquote{font-size:var(--text-md);max-width:var(--information-measure);}
.bfine{color:var(--text-muted);font-size:var(--text-xs);max-width:var(--information-measure);}
#bsuccess{border-top:var(--hairline) var(--rule);padding:var(--space-7) 0;}
#bfallback{border-top:var(--hairline) var(--rule);padding:var(--space-7) 0;}
.booking-bar{position:fixed;left:0;right:0;bottom:0;z-index:var(--layer-booking-bar);display:flex;justify-content:center;gap:var(--space-6);padding:var(--space-2) var(--frame) calc(var(--space-2) + env(safe-area-inset-bottom,0px));background:var(--header-solid);border-top:var(--hairline) var(--rule);}
.booking-bar a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--ink);font-size:var(--text-sm);}
.bfoot{padding:0 var(--frame) calc(var(--tap) + var(--space-6) + env(safe-area-inset-bottom,0px));color:var(--text-muted);font-size:var(--text-xs);}
.bfoot a{color:var(--text-muted);}
#bform :focus-visible,.btop a:focus-visible,.booking-bar a:focus-visible,.bskip:focus-visible{outline:var(--module-focus) solid var(--focus-in);outline-offset:var(--focus-spread-in);}
.bpick{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:var(--space-2) var(--space-5);border:var(--hairline) var(--rule-strong);background:var(--paper);color:var(--text);font:inherit;font-weight:var(--weight-control);}
