.seat-guest{margin:0;background:#f5f0e7;color:#25211d;font:16px/1.6 system-ui,sans-serif}.seat-guest main{max-width:550px;margin:auto;padding:24px 18px 50px}.seat-guest header span{font-weight:800;color:#941e1e}.seat-guest h1{font-size:28px;margin:6px 0}.seat-guest section{background:white;border:1px solid #e0d6c8;border-radius:18px;padding:18px;margin:16px 0}.seat-guest fieldset{border:0;padding:0;margin:0}.seat-guest label{display:block;font-weight:700;margin:12px 0}.seat-guest input,.seat-guest textarea,.seat-guest button,.seat-admin input,.seat-admin select,.seat-admin textarea{box-sizing:border-box;font:inherit}.seat-guest input:not([type=checkbox]),.seat-guest textarea{width:100%;padding:12px;border:1px solid #cabdab;border-radius:9px;background:white;min-height:48px}.seat-guest button{padding:13px 16px;border:0;border-radius:10px;background:#941e1e;color:white;font-weight:750;margin:8px 0;cursor:pointer;min-height:46px}.seat-guest button[type=submit]{width:100%}.seat-guest button:disabled,.seat-admin button:disabled{opacity:.6;cursor:wait}.seat-guest .seat-check{font-weight:400}.seat-notice{background:#fff6d9;border:1px solid #d9bd72;padding:12px;border-radius:10px}.seat-small{font-size:13px;color:#665e52}.seat-guest #seatDetails{white-space:pre-line}.seat-guest #seatPrivateLink{overflow-wrap:anywhere;display:block}.seat-guest #seatMessage,.seat-admin [role=alert]{color:#a52b20;white-space:pre-line}.seat-guest [hidden],.seat-admin [hidden]{display:none!important}
/* Compact dashboard strip. Details and all business controls stay in dialogs. */
.seat-admin{box-sizing:border-box;margin:8px 0 0;padding:0;border:0;background:transparent;font:14px/1.5 system-ui,sans-serif;color:#edf4ff}
.seat-admin h2{font-size:19px;margin:0}.seat-admin header,.seat-admin .seat-controls,.seat-admin .seat-compact-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.seat-admin header{justify-content:space-between}
.seat-admin button{font:inherit;cursor:pointer;padding:6px 10px;min-height:34px;border:1px solid #afbdcc;border-radius:8px;background:#f3f7fc;color:#133f69}.seat-admin input,.seat-admin select,.seat-admin textarea{padding:6px;max-width:100%;border:1px solid #aebccc;border-radius:6px}
.seat-admin .seat-browse{min-height:28px;padding:2px 8px;background:transparent;border-color:#adbed266;color:inherit;font-size:12px}.seat-admin .seat-future{min-height:28px;padding:2px 8px;background:#fff1bd;color:#7b3100;font-size:12px;font-weight:750}.seat-admin .seat-connection{font-size:12px;color:#ffe8ac}
.seat-admin .seat-compact-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--seat-card-width,240px)),1fr));gap:6px;margin-top:6px}.seat-admin .seat-compact-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:0;min-height:32px;width:100%;margin:0;padding:4px 9px;text-align:left;border-radius:6px;background:#e6eff914;border-color:#adbed240;color:inherit;font-size:14px;line-height:1.5}.seat-admin .seat-compact-row span+span::before{content:'｜';padding:0 4px;color:#9eacc0}.seat-admin .seat-compact-row span:nth-child(3){overflow-wrap:anywhere}.seat-admin .seat-compact-row span:last-child{font-weight:700}.seat-admin .seat-compact-row:hover,.seat-admin .seat-compact-row:focus-visible{background:#e6eff92b;outline:2px solid #75bcff;outline-offset:-2px}
.seat-admin .seat-compact-list>.seat-compact-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:center;align-content:center;min-height:var(--seat-card-height,80px);padding:8px 10px;border:1px solid #a9c5df;border-left:4px solid #d6a741;background:#edf4fa;color:#15283a;border-radius:9px}.seat-admin .seat-compact-list>.seat-compact-row span+span::before{content:none}.seat-admin .seat-compact-list>.seat-compact-row span:first-child{font-size:13px}.seat-admin .seat-compact-list>.seat-compact-row span:nth-child(3){font-weight:750}.seat-admin .seat-compact-list>.seat-compact-row span:last-child{color:#205b81;font-size:13px}.seat-admin .seat-compact-list>.seat-compact-row:hover,.seat-admin .seat-compact-list>.seat-compact-row:focus-visible{background:#fff8db}
.seat-admin .seat-toast{font-size:12px;margin:3px 0;padding:0;color:#216646}.seat-admin .seat-controls{margin:12px 0}.seat-admin .seat-sync{font-size:12px;margin:4px 0;color:#586779}
.seat-admin dialog{box-sizing:border-box;max-width:460px;width:calc(100% - 32px);max-height:85vh;max-height:85svh;overflow:auto;overscroll-behavior:contain;padding:20px;border:1px solid #c1cbd8;border-radius:14px;background:#fff;color:#202c3b;font:16px/1.6 system-ui,sans-serif}.seat-admin dialog.seat-overview{max-width:680px}.seat-admin dialog::backdrop{background:#071b37a0}.seat-admin dialog label{display:block;margin:12px 0}.seat-admin dialog select,.seat-admin dialog textarea{display:block;width:100%}.seat-admin dialog form{margin:0}.seat-admin dialog h3{font-size:18px;margin:0 0 8px;overflow-wrap:anywhere}.seat-admin dialog .seat-compact-row{background:#f2f6fb;border-color:#d2dce8;color:#133f69}.seat-admin .seat-detail-list{display:grid;gap:4px;max-height:220px;overflow:auto;overscroll-behavior:contain}.seat-admin .seat-details article{margin-top:14px;padding-top:14px;border-top:1px solid #d8e0e8}.seat-admin article p{margin:6px 0;white-space:pre-line;overflow-wrap:anywhere}.seat-admin .seat-row-actions{display:flex;gap:8px;flex-wrap:wrap}.seat-admin dialog [role=alert]{color:#a52b20;white-space:pre-line}
/* The desktop table grid already fills a viewport. Append the strip below it,
   outside its flex-height budget, so incoming rows cannot resize any table. */
@media screen and (min-width:900px){body.admin-orders.seat-bookings-visible{overflow-y:auto}.admin-orders .admin-dashboard.seat-admin-host{position:relative;overflow:visible}.admin-orders .seat-admin-host>.seat-admin{position:absolute;top:100%;left:12px;right:12px;margin:0 0 10px}}
