.booking-open{border:0;cursor:pointer;font:inherit}.booking-modal{position:fixed;inset:0;z-index:50;display:none;place-items:center;padding:1rem;background:rgba(0,0,0,.75)}.booking-modal.is-open{display:grid}.booking-dialog{width:min(680px,100%);max-height:90vh;overflow:auto;position:relative;padding:2rem;background:var(--surface);border:1px solid var(--line);border-radius:.5rem}.booking-close{position:absolute;right:.75rem;top:.5rem;border:0;background:none;color:var(--ink);font-size:2rem;cursor:pointer}.booking-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.booking-dialog h2,.booking-note,.booking-dialog button{grid-column:1/-1}.booking-dialog label{display:grid;gap:.35rem;font-size:.9rem}.booking-dialog input{padding:.75rem;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:.2rem}.booking-note{margin:0;color:var(--muted);font-size:.9rem}@media(max-width:550px){.booking-dialog{padding:1.4rem}.booking-dialog form{grid-template-columns:1fr}}
