@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2)format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2)format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff)format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2)format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}.reservation-time-picker[data-v-6fe9a8fb]{min-width:0;position:relative}.reservation-time-picker>label[data-v-6fe9a8fb]{margin-bottom:0}.time-input-row[data-v-6fe9a8fb]{position:relative}.time-input-row input[data-v-6fe9a8fb]{padding-right:42px}.time-picker-toggle[data-v-6fe9a8fb]{width:40px;color:var(--text-primary);background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:0;bottom:0;right:0}.time-picker-popup[data-v-6fe9a8fb]{z-index:20;border:1px solid var(--control-border);background:var(--surface-raised);width:100%;min-width:132px;box-shadow:0 4px 12px var(--shadow);border-radius:6px;padding:6px;position:absolute}.time-picker-columns[data-v-6fe9a8fb]{grid-template-columns:1fr 1fr;gap:4px;margin-bottom:6px;display:grid}.time-picker-column[data-v-6fe9a8fb]{overscroll-behavior:contain;scrollbar-width:none;height:264px;overflow-y:auto}.time-picker-column[data-v-6fe9a8fb]::-webkit-scrollbar{display:none}.time-picker-column button[data-v-6fe9a8fb]{background:var(--surface-raised);width:100%;min-height:44px;color:var(--text-primary);border:1px solid #0000;border-radius:4px;display:block}.time-picker-column button[data-v-6fe9a8fb]:hover{background:var(--surface-hover)}.time-picker-column button[aria-selected=true][data-v-6fe9a8fb]{border-color:var(--focus-ring);background:var(--selected-surface);color:var(--on-selected)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-background:#101722;--sidebar-background:#141e2d;--surface:#192536;--surface-raised:#26364c;--surface-subtle:#202e42;--surface-hover:#30435d;--text-primary:#f5f8ff;--text-secondary:#edf3fc;--text-muted:#dce7f5;--line:#394f6b;--control-border:#8097b4;--primary:#a3c7f0;--primary-hover:#bdd9fa;--on-primary:#15253b;--focus-ring:#90c7f4;--floor-background:#151f30;--floor-grid:#344963;--fixture-fill:#34475f;--fixture-stroke:#91a9c7;--danger:#ffb4ab;--danger-surface:#402724;--danger-hover:#50312c;--attention:#ffbf87;--attention-action-hover:#ffd2aa;--attention-surface:#3c2c20;--attention-hover:#4d3827;--caution:#ffeab3;--caution-surface:#65572e;--caution-hover:#746536;--success:#c6f8c8;--success-surface:#3d6448;--success-hover:#487452;--info:#cde6ff;--info-surface:#233347;--info-hover:#2c415b;--arrived:#d7bcf2;--arrived-surface:#352a43;--arrived-hover:#453655;--cancelled:#d5d9e0;--cancelled-surface:#090c11;--cancelled-hover:#171b23;--reserved:#ffdbce;--reserved-surface:#674c43;--reserved-hover:#77594d;--reserved-walk-in:#ffe3de;--reserved-walk-in-surface:#855e5b;--reserved-walk-in-hover:#8d625e;--selected-surface:#41658b;--on-selected:#f5faff;--shadow:#00000040;--scrim:#000000b3;--sidebar-text:#edf3fc;--sidebar-muted:#b4c5dc;--sidebar-line:#526987;--sidebar-hover:#283c57;--sidebar-active:#334e70;--brand-accent:#dfc28a;--brand-decoration:#dfc28a14}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-background:#f3f6fb;--sidebar-background:#203650;--surface:#fff;--surface-raised:#fff;--surface-subtle:#edf2f9;--surface-hover:#e0e9f5;--text-primary:#203650;--text-secondary:#435974;--text-muted:#526680;--line:#d7e0ed;--control-border:#7085a0;--primary:#294f7b;--primary-hover:#1b3d65;--on-primary:#fff;--focus-ring:#245c91;--floor-background:#f9fbff;--floor-grid:#d7e0ed;--fixture-fill:#d8e2ef;--fixture-stroke:#667e9d;--danger:#9a3428;--danger-surface:#fcece8;--danger-hover:#f5dcd5;--attention:#874b0c;--attention-action-hover:#6f3c08;--attention-surface:#fff0dc;--attention-hover:#ffe4be;--caution:#6c5715;--caution-surface:#f8f2df;--caution-hover:#eee5c4;--success:#365d32;--success-surface:#edf3e6;--success-hover:#dfebd4;--info:#245c91;--info-surface:#e9f1fa;--info-hover:#d7e7f7;--arrived:#70458c;--arrived-surface:#f0e8f7;--arrived-hover:#e7d9f2;--cancelled:#3f4650;--cancelled-surface:#e2e4e8;--cancelled-hover:#d4d7dd;--reserved:#805444;--reserved-surface:#f6eae5;--reserved-hover:#ead9d1;--reserved-walk-in:#794943;--reserved-walk-in-surface:#edd4d1;--reserved-walk-in-hover:#e3c3bf;--selected-surface:#d7e7f7;--on-selected:#183d61;--shadow:#20365025;--scrim:#122035c0;--sidebar-text:#edf3fc;--sidebar-muted:#b4c5dc;--sidebar-line:#526987;--sidebar-hover:#283c57;--sidebar-active:#334e70;--brand-accent:#dfc28a;--brand-decoration:#dfc28a14}:root{color:var(--text-primary);background:var(--page-background);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--font-size-caption:.8125rem;--font-size-body:.9375rem;--font-size-section-heading:1.1875rem;font-family:DM Sans,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{font-size:var(--font-size-body);margin:0}button,input,textarea,select{font:inherit;color:inherit}button,select{cursor:pointer}button{transition:background .15s,box-shadow .15s}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}input,textarea,select{background:var(--surface-raised);border:1px solid var(--control-border);min-width:0;accent-color:var(--primary);border-radius:5px}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}option{background:var(--surface-raised);color:var(--text-primary)}input:autofill{-webkit-text-fill-color:var(--text-primary);box-shadow:inset 0 0 0 100px var(--surface-raised);caret-color:var(--text-primary)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,Segoe UI,sans-serif}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.workspace{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-background);width:228px;color:var(--sidebar-text);z-index:10;flex-direction:column;flex:0 0 228px;padding:31px 20px 0;display:flex;position:fixed;top:0;bottom:0}.brand{letter-spacing:-.7px;color:inherit;align-items:center;gap:11px;font-family:Georgia,serif;font-size:24px;font-weight:600;text-decoration:none;display:flex}.brand-mark{border:1.5px solid var(--sidebar-line);border-radius:11px;flex-shrink:0;width:37px;height:38px}.brand-name{flex-direction:column;line-height:1.05;display:flex}.brand-ampersand{color:var(--brand-accent)}.sidebar-header{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-left:9px;display:flex}.sidebar .brand{white-space:nowrap;flex:1}.sidebar .sidebar-toggle{color:var(--sidebar-muted);flex-shrink:0;margin-left:auto}.sidebar .sidebar-toggle:focus-visible{outline:2px solid var(--focus-ring)}@media (width>=651px){.workspace.is-sidebar-collapsed .sidebar{flex-basis:76px;width:76px;padding:24px 12px 0}.workspace.is-sidebar-collapsed .workspace-main{width:calc(100% - 76px);margin-left:76px}.workspace.is-sidebar-collapsed .sidebar-header{flex-direction:column;align-items:center;gap:16px;margin-left:0}.workspace.is-sidebar-collapsed .sidebar-toggle{margin-left:0}.workspace.is-sidebar-collapsed .brand-name,.workspace.is-sidebar-collapsed .sidebar-caption,.workspace.is-sidebar-collapsed .sidebar-note,.workspace.is-sidebar-collapsed .nav-label,.workspace.is-sidebar-collapsed .sidebar-user-details,.workspace.is-sidebar-collapsed .sidebar-bottom .icon-button{display:none}.workspace.is-sidebar-collapsed .sidebar nav{margin-top:24px}.workspace.is-sidebar-collapsed .sidebar nav button{justify-content:center;min-height:44px;padding:12px}.workspace.is-sidebar-collapsed .sidebar-bottom{justify-content:center;margin:auto -12px 0;padding:20px 12px}}.sidebar-caption{font-size:var(--font-size-caption);letter-spacing:1.4px;color:var(--sidebar-muted);margin:19px 0 38px 9px}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav button{color:var(--sidebar-muted);text-align:left;font-size:var(--font-size-body);background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;padding:14px 12px;font-weight:500;display:flex}.sidebar nav button:hover{background:var(--sidebar-hover)}.sidebar nav button.active{color:var(--sidebar-text);background:var(--sidebar-active);box-shadow:inset 2px 0 var(--brand-accent)}.nav-count{font-size:var(--font-size-body);background:var(--sidebar-active);border-radius:4px;margin-left:auto;padding:2px 6px}.sidebar-note{border-top:1px solid var(--sidebar-line);margin:auto 7px 31px;padding-top:24px}.note-symbol{color:var(--brand-accent);font-size:33px}.sidebar-note h3{font-size:var(--font-size-body);margin:14px 0 9px;font-weight:550}.sidebar-note p{color:var(--sidebar-muted);font-size:var(--font-size-body);line-height:1.9}.sidebar-bottom{border-top:1px solid var(--sidebar-line);align-items:center;gap:9px;margin:0 -20px;padding:20px 17px;display:flex}.avatar{background:var(--on-primary);color:var(--primary);width:33px;height:33px;font-size:var(--font-size-body);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar-bottom strong{font-size:var(--font-size-body);font-weight:500;display:block}.sidebar-bottom span{font-size:var(--font-size-body);color:var(--sidebar-muted);margin-top:3px;display:block}.sidebar-bottom .icon-button{color:var(--sidebar-muted);margin-left:auto}.workspace-main{width:calc(100% - 228px);margin-left:228px}.topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;height:75px;padding:0 36px;display:flex}.business-selector{min-width:0;font-size:var(--font-size-body);color:var(--text-muted);align-items:center;gap:8px;display:flex}.business-selector select{font-size:var(--font-size-body);color:var(--text-primary);background:0 0;border:0;padding:8px 6px}.business-selector select:first-of-type{font-weight:600}.restaurant-symbol{background:var(--surface-subtle);width:33px;height:33px;color:var(--success);border-radius:8px;justify-content:center;align-items:center;display:flex}.venue-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:150px;color:var(--text-primary);overflow:hidden}.topbar-divider{background:var(--line);width:1px;height:21px;margin:0 8px}.live-status{color:var(--text-secondary);font-size:var(--font-size-body);white-space:nowrap;align-items:center;gap:7px;display:flex}.live-status>span{background:var(--success);width:6px;height:6px;box-shadow:0 0 0 3px var(--success);border-radius:50%}.live-status.disconnected>span{background:var(--caution)}.page-content{max-width:1660px;margin:0 auto;padding:33px 36px 20px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{font-size:var(--font-size-caption);letter-spacing:1.5px;color:var(--text-muted);font-weight:600}.page-heading .eyebrow{text-transform:uppercase}.page-heading h1{letter-spacing:-1px;margin:9px 0 6px;font-size:30px;font-weight:650;line-height:1.35}.page-heading p{color:var(--text-muted);font-size:var(--font-size-body)}.button{font-size:var(--font-size-body);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:11px 15px;font-weight:550;line-height:1.5;display:inline-flex}.button.primary{background:var(--primary);color:var(--on-primary);box-shadow:0 2px 3px var(--shadow)}.button.primary:hover:not(:disabled){background:var(--primary-hover)}.button.secondary{background:var(--surface);color:var(--text-secondary);border-color:var(--control-border)}.button.secondary:hover:not(:disabled){background:var(--surface-subtle)}.full-width{width:100%}.icon-button{color:var(--text-muted);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--surface-subtle)}.service-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:24px;padding:14px 0;display:flex}.date-navigation{align-items:center;gap:9px;display:flex}.date-display{color:var(--text-secondary);font-size:var(--font-size-body);align-items:center;gap:9px;padding:4px;font-weight:500;display:flex;position:relative}.date-display input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.date-display input::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.today-button{font-size:var(--font-size-body);border:1px solid var(--control-border);background:var(--surface);color:var(--text-muted);border-radius:4px;align-items:center;gap:6px;margin-left:4px;padding:5px 10px;display:inline-flex}.today-button.is-today{background:var(--surface-subtle)}.service-hours{color:var(--text-muted);font-size:var(--font-size-body);align-items:center;gap:7px;display:flex}.timezone{font-size:var(--font-size-caption);color:var(--text-muted);margin-left:7px}.stats-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:26px;display:grid}.stat-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:14px;padding:19px 18px;display:flex}.stat-icon{color:var(--success);background:var(--surface-subtle);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.stat-icon.warm{color:var(--caution);background:var(--caution-surface)}.stat-icon.info{color:var(--info);background:var(--info-surface)}.stat-card div>span,.stat-card-details>span{font-size:var(--font-size-body);color:var(--text-muted);margin-bottom:7px;display:block}.lobby-count-details{flex:1;align-self:stretch;min-width:0}.lobby-count-controls{justify-content:space-between;gap:16px;margin-top:14px;display:flex}.lobby-count-controls .icon-button{border:1px solid;width:32px;height:32px}.lobby-count-controls .lobby-count-remove{color:var(--attention);background:var(--attention-surface)}.lobby-count-controls .lobby-count-remove:hover:not(:disabled){background:var(--attention-hover)}.lobby-count-controls .lobby-count-add{color:var(--success);background:var(--success-surface)}.lobby-count-controls .lobby-count-add:hover:not(:disabled){background:var(--success-hover)}.stat-card strong{letter-spacing:-.7px;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:25px;font-weight:600;line-height:1;display:flex}.stat-card small{font-size:var(--font-size-caption);letter-spacing:0;color:var(--text-muted);font-weight:400}.service-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:22px;display:grid}.service-left{flex-direction:column;gap:22px;min-width:0;display:flex}.stat-card-shortcut{text-align:left}.stat-card-shortcut:hover{border-color:var(--success);background:var(--success-surface)}.panel-header-actions{align-items:center;gap:8px;display:flex}.panel-collapse-button{flex-shrink:0}.panel-collapse-button svg{transition:transform .15s}.panel-collapse-button[aria-expanded=false] svg{transform:rotate(-90deg)}.floor-panel{scroll-margin-top:80px}.panel{background:var(--surface);border:1px solid var(--line);box-shadow:0 2px 2px var(--shadow);border-radius:9px;overflow:hidden}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:21px 22px;display:flex}.panel-header h2{font-size:var(--font-size-section-heading);letter-spacing:-.3px;font-weight:650}.panel-header p{font-size:var(--font-size-body);color:var(--text-muted);margin-top:6px}.floor-plan .plan-table.group-highlighted:not(:focus-visible) .table-shape{stroke:var(--info);stroke-width:4px}.floor-plan-title,.floor-plan-title h2,.floor-time{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.floor-panel .panel-header{padding-bottom:8px}.floor-panel .floor-legend{padding-top:8px}.floor-panel .panel-header h2{font-size:var(--font-size-section-heading)}.floor-panel .panel-header p{font-size:var(--font-size-body);line-height:1.5}.floor-time-controls{--floor-time-background:var(--success-surface);--floor-time-colour:var(--success);--floor-time-border:var(--control-border);flex-shrink:0;align-items:center;gap:4px;display:inline-flex;position:relative}.floor-time-controls.is-past{--floor-time-background:var(--attention-surface);--floor-time-colour:var(--attention);--floor-time-border:var(--attention)}.floor-time-controls.is-future{--floor-time-background:var(--info-surface);--floor-time-colour:var(--info);--floor-time-border:var(--info)}.floor-time{border:1px solid var(--floor-time-border);background:var(--floor-time-background);color:var(--floor-time-colour);font-size:var(--font-size-body);font-variant-numeric:tabular-nums;border-radius:6px;font-weight:700}.floor-time-reset{color:var(--floor-time-colour);border:1px solid var(--floor-time-border);flex-shrink:0}.floor-time-selector{z-index:5;border:1px solid var(--line);background:var(--surface);width:210px;box-shadow:0 6px 20px var(--shadow);border-radius:8px;padding:12px;position:absolute;top:calc(100% + 8px);left:0}.floor-time-selector label{font-size:var(--font-size-body);gap:6px;display:grid}.floor-time-selector label+label{margin-top:10px}.floor-time-selector input,.floor-time-selector select{border:1px solid var(--floor-time-border);border-radius:6px;width:100%;padding:8px}.floor-time-selector-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.floor-time-selector-actions .button{font-size:var(--font-size-body);padding:6px 10px}.floor-panel .floor-plan-date{color:var(--text-primary);font-size:var(--font-size-body);font-weight:600}.floor-plan-drawing{touch-action:pan-x pan-y;scroll-margin-top:12px;overflow:auto}.floor-plan-drawing:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.floor-controls{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:0 22px;display:flex}.room-tabs{flex-wrap:wrap;flex:1;column-gap:18px;min-width:0;display:flex}.room-tabs button{max-width:100%;font-size:var(--font-size-body);color:var(--text-muted);overflow-wrap:anywhere;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 1px 12px}.room-tabs button.active{color:var(--success);border-bottom-color:var(--success)}.loading-label,.subtle-label{color:var(--text-muted);font-size:var(--font-size-body)}.loading-label{color:var(--caution)}.floor-plan{background:var(--floor-background);width:100%;display:block}.floor-time,.floor-rotation-button,.floor-fit-button{line-height:1.5;font-size:var(--font-size-body);flex-shrink:0;gap:5px;padding:6px 8px}.plan-label{fill:var(--text-muted);letter-spacing:2px;font-family:DM Sans,sans-serif;font-size:10px}.floor-plan .plan-label{fill:var(--text-secondary);letter-spacing:0;font-size:46px;font-weight:600}.floor-plan .table-glyph{transform:scale(1.2)}.floor-plan .plan-table .table-label{font-size:34px}.floor-plan .plan-table .table-capacity{font-size:30px}.plan-table{--table-surface:var(--success-surface);--table-hover:var(--success-hover);--table-accent:var(--success);--table-text:var(--success);cursor:pointer;outline:none}.plan-table.walk-in{--table-surface:var(--caution-surface);--table-hover:var(--caution-hover);--table-accent:var(--caution);--table-text:var(--caution)}.plan-table.reserved{--table-surface:var(--reserved-surface);--table-hover:var(--reserved-hover);--table-accent:var(--reserved);--table-text:var(--reserved)}.plan-table.reserved:where(.walk-in){--table-surface:var(--reserved-walk-in-surface);--table-hover:var(--reserved-walk-in-hover);--table-accent:var(--reserved-walk-in);--table-text:var(--reserved-walk-in)}.plan-table.too-small,.plan-table.unavailable{--table-surface:var(--surface-subtle);--table-hover:var(--surface-hover);--table-accent:var(--control-border);--table-text:var(--text-muted)}.plan-table.selected{--table-surface:var(--selected-surface);--table-hover:var(--selected-surface);--table-accent:var(--info);--table-text:var(--on-selected)}.plan-table .table-shape{fill:var(--table-surface);stroke:var(--table-accent);stroke-width:1.7px;transition:fill .15s}.plan-table .chair{fill:var(--table-surface);stroke:var(--table-accent);stroke-width:1.3px}.plan-table .chair-back{stroke:var(--table-accent);stroke-width:1.5px;fill:none}.plan-table .table-label{fill:var(--table-text);font-family:DM Sans,sans-serif;font-size:24px;font-weight:600}.plan-table .table-capacity{fill:var(--table-text);font-size:16px}.plan-table:hover .table-shape{fill:var(--table-hover)}.plan-table.selected .table-shape{stroke-width:4px;stroke-dasharray:8 4}.plan-table:focus-visible .table-shape{stroke:var(--focus-ring);stroke-width:4px}.floor-legend{border-bottom:1px solid var(--line);font-size:calc(var(--font-size-body) + 1px);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:17px;padding:16px 22px;display:flex}.floor-legend>span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:2px;flex-shrink:0;width:20px;height:20px;display:inline-block}.legend-dot.available{background:var(--success)}.legend-dot.reserved{background:var(--reserved)}.legend-dot.walk-in{background:var(--caution)}.legend-dot.reserved-walk-in{background:var(--reserved-walk-in)}.legend-dot.too-small,.legend-dot.unavailable{background:var(--control-border)}.legend-dot.selected{background:var(--info)}.empty-floor{min-height:280px;color:var(--text-muted);font-size:var(--font-size-body);flex-direction:column;justify-content:center;align-items:center;gap:15px;display:flex}.floor-error{color:var(--caution);font-size:var(--font-size-body);background:var(--caution-surface);align-items:center;gap:9px;padding:12px 20px;display:flex}.merge-option{align-items:center;gap:8px;display:flex!important}.merge-option input[type=checkbox]{width:auto}.merge-table-selection,.arrangement-actions,.booking-arrangement-editor{gap:12px;display:grid}.arrangement-actions{margin-bottom:16px;padding:16px}.layout-dialog.booking-arrangement-dialog{width:min(1100px,100vw - 32px)}.booking-arrangement-editor{min-width:0}.booking-arrangement-editor label{gap:6px;display:grid}.booking-arrangement-editor input,.booking-arrangement-editor select{max-width:100%;padding:8px}.arrangement-coordinates{flex-wrap:wrap;gap:12px;display:flex}.arrangement-coordinates input{width:120px}.arrangement-warnings{color:var(--attention);background:var(--attention-surface);border-radius:8px;padding:12px}.reservation-save-blockers{color:var(--danger);background:var(--danger-surface);border-radius:8px;padding:12px}.reservation-save-blockers p{margin-top:0;font-weight:600}.reservation-save-blockers ul{margin-bottom:0;padding-left:20px}.heading-count{background:var(--surface-subtle);font-family:DM Sans,sans-serif;font-size:var(--font-size-caption);vertical-align:middle;color:var(--text-muted);border-radius:5px;justify-content:center;align-items:center;margin-left:6px;padding:3px 7px;display:inline-flex}.reservation-counts{vertical-align:middle;display:inline-flex}.reservation-service-colour.cancelled{--reservation-service-accent:var(--cancelled);--reservation-service-hover:var(--cancelled-hover);background:var(--cancelled-surface);color:var(--cancelled)}.reservation-service-colour.upcoming{--reservation-service-accent:var(--info);--reservation-service-hover:var(--info-hover);background:var(--info-surface);color:var(--info)}.reservation-service-colour.seated{--reservation-service-accent:var(--success);--reservation-service-hover:var(--success-hover);background:var(--success-surface);color:var(--success)}.reservation-service-colour.arrived{--reservation-service-accent:var(--arrived);--reservation-service-hover:var(--arrived-hover);background:var(--arrived-surface);color:var(--arrived)}.reservation-service-colour.late{--reservation-service-accent:var(--attention);--reservation-service-hover:var(--attention-hover);background:var(--attention-surface);color:var(--attention)}.reservation-list-filters{border-bottom:1px solid var(--line);font-size:var(--font-size-body);color:var(--text-secondary);gap:12px;padding:16px 22px;display:grid}.reservation-show-all,.reservation-filter-actions,.reservation-service-legend,.reservation-service-legend>button{align-items:center;gap:6px;display:flex}.reservation-show-all input{accent-color:var(--success)}.reservation-service-legend{font-size:calc(var(--font-size-body) + 1px);flex-wrap:wrap;gap:17px}.reservation-filter-actions{flex-wrap:wrap;justify-content:space-between;gap:12px}.reservation-service-filter{border:1px solid var(--reservation-service-accent);border-radius:5px;gap:4px;padding:5px 7px}.reservation-service-filter:hover{background:var(--reservation-service-hover)}.reservation-service-filter[aria-pressed=true]{border-color:var(--reservation-service-accent);box-shadow:inset 0 0 0 1px var(--reservation-service-accent)}.reservation-clear-filters{border:1px solid var(--control-border);color:var(--text-secondary);background:var(--surface-subtle);border-radius:5px;padding:5px 9px}.reservation-clear-filters:hover:not(:disabled){background:var(--surface-hover)}.reservation-legend-dot{min-width:20px;height:20px;font-size:var(--font-size-caption);border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;padding:0 3px;font-weight:700;display:inline-flex}.reservation-legend-dot.reservation-service-colour{background:var(--reservation-service-accent);color:var(--surface)}.reservation-arrival-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;box-shadow:inset 0 0 0 4px}.search-field{border:1px solid var(--control-border);color:var(--text-muted);border-radius:5px;align-items:center;gap:7px;padding:8px 10px;display:flex}.search-field input{width:190px;font-size:var(--font-size-body);background:0 0;border:0;outline:0}.search-field:focus-within{outline:2px solid var(--focus-ring)}.booking-table-wrap{overflow-x:auto}.booking-table{border-collapse:collapse;width:100%;font-size:var(--font-size-body);text-align:left;white-space:nowrap}.booking-table th{background:var(--surface-subtle);border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--text-muted);font-weight:450;font-size:var(--font-size-caption);padding:11px 13px}.booking-table th:first-child,.booking-table td:first-child{padding-left:22px}.booking-table th:last-child,.booking-table td:last-child{padding-right:17px}.booking-table td{border-bottom:1px solid var(--line);color:var(--text-secondary);padding:6px 13px}.booking-table tr:last-child td{border-bottom:0}.booking-table td strong{color:var(--text-primary);font-weight:550}.booking-table td small{font-size:var(--font-size-caption);color:var(--text-muted);margin-top:4px;display:block}.arrival-cell{font-weight:600;color:var(--text-secondary)!important}.arrival-cell small{font-weight:400}.reservation-arrival-time{align-items:center;gap:6px;display:inline-flex}.reservation-service-label{font-size:var(--font-size-caption);border-radius:4px;padding:2px 5px}.reservation-row{cursor:pointer}.reservation-row:hover,.reservation-row:focus-within{background:var(--success-surface)}.reservation-row.cancelled{background:var(--cancelled-surface)}.reservation-row.cancelled:hover,.reservation-row.cancelled:focus-within{background:var(--cancelled-hover)}.reservation-row.late{background:var(--attention-surface)}.reservation-row.late:hover,.reservation-row.late:focus-within{background:var(--attention-hover)}.reservation-row.upcoming{background:var(--info-surface)}.reservation-row.upcoming:hover,.reservation-row.upcoming:focus-within{background:var(--info-hover)}.reservation-row.upcoming .status-badge{background:var(--info-surface);color:var(--info)}.reservation-row.arrived{background:var(--arrived-surface)}.reservation-row.arrived:hover,.reservation-row.arrived:focus-within{background:var(--arrived-hover)}.reservation-row.seated,.reservation-row.seated:hover,.reservation-row.seated:focus-within{background:var(--success-hover)}.reservation-row.seated .status-badge{background:var(--success-surface);color:var(--success)}.reservation-row.is-busy{cursor:wait}.reservation-guest-button{color:var(--text-primary);text-align:left;background:0 0;border:0;padding:0;font-weight:550}.reservation-notes-indicator{vertical-align:middle;color:var(--text-secondary);margin-left:5px}.party-cell{color:var(--text-muted)}.reservation-pagination{border-top:1px solid var(--line);color:var(--text-secondary);font-size:var(--font-size-caption);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;padding:8px 12px;display:flex}.reservation-pagination nav,.reservation-pagination .reservation-page-size{align-items:center;gap:4px;display:flex}.reservation-pagination nav{white-space:nowrap;margin-left:auto}.reservation-pagination select{border:1px solid var(--control-border);background:var(--surface);color:var(--text-secondary);font-size:inherit;border-radius:5px;min-height:28px;padding:4px}.reservation-pagination .icon-button{width:28px;height:28px;padding:0}.table-tag{font-size:var(--font-size-caption);background:var(--surface-subtle);border:1px solid var(--line);border-radius:4px;padding:4px 7px}.status-badge{font-size:var(--font-size-caption);background:var(--surface-subtle);color:var(--text-muted);border-radius:4px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px}.status-badge.confirmed{background:var(--info-surface);color:var(--info)}.status-badge.seated{background:var(--success-surface);color:var(--success)}.status-badge.arrived{background:var(--arrived-surface);color:var(--arrived)}.status-badge.completed{background:var(--surface-subtle);color:var(--text-muted)}.status-badge.cancelled{background:var(--cancelled-surface);color:var(--cancelled)}.status-badge.noshow{background:var(--attention-surface);color:var(--attention)}.booking-table .empty-bookings{white-space:normal;color:var(--text-muted);font-size:var(--font-size-body);text-align:center;padding:30px 22px;line-height:1.7}.reservation-panel .panel-header{border-bottom:1px solid var(--line);padding:12px 14px}.reservation-panel .eyebrow{font-size:var(--font-size-caption);letter-spacing:1.2px}.reservation-panel h2{font-size:var(--font-size-section-heading);margin-top:4px}.reservation-form .walk-in-reservation-option{align-items:flex-start;gap:8px;display:flex}.reservation-form .walk-in-reservation-option input{width:16px;height:16px;accent-color:var(--success);flex-shrink:0;margin-top:3px;padding:0}.new-reservation-shortcut{display:none}@media (width<=850px){.new-reservation-shortcut{display:inline-flex}}.reservation-panel{scroll-margin-top:20px}.reservation-form{padding:22px}.reservation-form label,.login-form label{font-size:var(--font-size-body);color:var(--text-secondary);margin-bottom:18px;font-weight:500;display:block}.reservation-form input,.reservation-form textarea,.reservation-form select,.login-form input{border:1px solid var(--control-border);background:var(--surface);width:100%;color:var(--text-secondary);font-size:var(--font-size-body);border-radius:5px;height:46px;margin-top:8px;padding:11px 10px;display:block}.reservation-form input::placeholder,.reservation-form textarea::placeholder,.login-form input::placeholder{color:var(--text-muted);font-size:var(--font-size-body)}.reservation-form input:disabled{background:var(--surface-subtle)}.reservation-form textarea{resize:vertical;height:auto;min-height:100px;line-height:1.6}.reservation-form textarea:read-only{background:var(--surface-subtle)}.reservation-notes-hint{color:var(--text-muted);font-size:var(--font-size-caption);flex-wrap:wrap;justify-content:space-between;gap:4px 8px;margin-top:6px;font-weight:400;display:flex}.field-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-pair label{min-width:0;margin-bottom:0}.field-pair select{font-size:var(--font-size-body);padding-right:3px}.form-hint{font-size:var(--font-size-caption);color:var(--text-muted);align-items:center;gap:5px;margin-top:11px;margin-bottom:23px;display:flex}.party-input{border:1px solid var(--control-border);color:var(--text-muted);border-radius:5px;align-items:center;margin-top:8px;padding:0 11px;display:flex}.party-input input{background:0 0;border:0;flex:1;margin-top:0;padding-left:11px}.party-input span{font-size:var(--font-size-body);color:var(--text-muted);margin-left:8px;font-weight:400}.selected-table-card{border:1px dashed var(--control-border);background:var(--surface-subtle);color:var(--text-muted);border-radius:6px;align-items:center;gap:11px;padding:16px 12px;display:flex}.selected-table-card strong{font-size:var(--font-size-body);color:var(--text-muted);font-weight:550;display:block}.selected-table-card .table-picker-summary-description,.selected-table-card .selection-warning{font-size:var(--font-size-caption);color:var(--text-muted);margin-top:5px;line-height:1.6;display:block}.selected-table-card>svg{flex-shrink:0}.selected-table-card>svg:last-child:not(:first-child){margin-left:auto}.selected-table-card.chosen{border-style:solid;border-color:var(--success);background:var(--success-surface);color:var(--success)}.selected-table-card.chosen strong{color:var(--success)}.selected-table-card .selection-warning{color:var(--attention)}.table-picker{grid-column:1/-1;margin-bottom:18px}.table-picker-label{font-size:var(--font-size-body);color:var(--text-secondary);margin-bottom:8px;font-weight:500;display:block}.table-picker-summary{text-align:left;width:100%}.table-picker-summary:hover:not(:disabled){border-color:var(--success);background:var(--success-surface)}.table-picker-summary:disabled{opacity:1;cursor:default}.table-picker-summary .table-picker-summary-details{flex:1;min-width:0}.table-picker-summary .table-picker-summary-title{align-items:center;gap:8px;display:flex}.table-picker-summary .table-picker-ready{color:var(--success);display:inline-flex}.table-picker-summary .table-picker-chevron{transition:transform .15s}.table-picker-summary[aria-expanded=true] .table-picker-chevron{transform:rotate(180deg)}.table-combobox{position:relative}.table-combobox input{margin-top:0;padding-right:10px}.table-picker-dropdown{z-index:10;border:1px solid var(--control-border);background:var(--surface-raised);box-shadow:0 8px 20px var(--shadow);border-radius:5px;position:absolute;top:calc(100% + 4px);left:0;right:0}.table-picker-dropdown input{width:calc(100% - 16px);margin:8px}.table-picker-dropdown p{color:var(--text-muted);font-size:var(--font-size-body);padding:12px 10px}.table-picker-options{max-height:200px;overflow-y:auto}.table-picker-options button{width:100%;color:var(--text-secondary);text-align:left;font-size:var(--font-size-body);background:0 0;border:0;padding:10px;display:block}.table-picker-options button:hover:not(:disabled),.table-picker-options button[data-active=true],.table-picker-options button[aria-selected=true]{background:var(--success-surface)}.table-picker-options small{color:var(--text-muted);font-size:var(--font-size-body);margin-top:3px;display:block}.form-divider{background:var(--line);height:1px;margin:24px 0}.selected-table-card.requires-swap{border-color:var(--attention);background:var(--attention-surface);color:var(--attention)}.selected-table-card.requires-swap strong,.selected-table-card.requires-swap .table-picker-summary-description,.selected-table-card.requires-swap .selection-warning{color:var(--attention)}.selected-table-card.requires-swap:hover:not(:disabled){border-color:var(--attention);background:var(--attention-hover)}.table-picker-options button.requires-swap{background:var(--attention-surface);color:var(--attention)}.table-picker-options button.requires-swap small{color:var(--attention)}.table-picker-options button.requires-swap:hover:not(:disabled),.table-picker-options button.requires-swap[data-active=true],.table-picker-options button.requires-swap[aria-selected=true]{background:var(--attention-hover)}.table-picker-options button.requires-swap:disabled{opacity:.65;cursor:not-allowed}.reservation-swaps{border:1px solid var(--attention);background:var(--attention-surface);border-radius:6px;grid-column:1/-1;padding:12px}.reservation-swaps .table-picker{margin-bottom:12px}.swap-heading,.swap-reservation-details,.swap-summary,.swap-confirmation{color:var(--attention);font-size:var(--font-size-body);grid-column:1/-1;line-height:1.6}.swap-heading{margin-bottom:12px;font-weight:600}.swap-reservation-details{margin-bottom:6px}.swap-summary{border-top:1px solid var(--attention);overflow-wrap:anywhere;padding-top:10px}.swap-summary p+p{margin-top:5px}.swap-confirmation{border:1px solid var(--attention);background:var(--attention-surface);border-radius:6px;margin-bottom:10px;padding:12px;font-weight:600}.button.swap-save-button{background:var(--attention);border-color:var(--attention);color:var(--on-primary)}.button.swap-save-button:hover:not(:disabled){background:var(--attention-action-hover)}.optional{float:right;font-size:var(--font-size-caption);color:var(--text-muted);font-weight:400}.save-button{margin-top:6px;padding:12px 6px}.button.reservation-reset-button{border-color:var(--caution);background:var(--caution-surface);color:var(--caution)}.button.reservation-reset-button:hover:not(:disabled){background:var(--caution-hover)}.button.reservation-arrived-button{border-color:var(--arrived);background:var(--arrived-surface);color:var(--arrived)}.button.reservation-arrived-button:hover:not(:disabled){background:var(--arrived-hover)}.button.reservation-seated-button{border-color:var(--success);background:var(--success-surface);color:var(--success)}.button.reservation-seated-button:hover:not(:disabled){background:var(--success-hover)}.button.reservation-cancellation-button{border-color:var(--danger);background:var(--danger-surface);color:var(--danger)}.button.reservation-cancellation-button:hover:not(:disabled){background:var(--danger-hover)}.button.reservation-reset-button{margin-top:11px}.form-footer{text-align:center;font-size:var(--font-size-caption);color:var(--text-muted);margin-top:14px;line-height:1.6}.booking-status-actions{align-items:center;gap:8px;display:flex}.booking-actions{flex-direction:column;align-items:center;gap:11px;margin-top:18px;display:flex}.reservation-form>.booking-actions+.form-hint{margin-top:16px}.text-button{font-size:var(--font-size-body);color:var(--text-secondary);background:0 0;border:0;padding:5px}.text-button.danger{color:var(--danger)}.page-footer{color:var(--text-muted);font-size:var(--font-size-caption);justify-content:space-between;align-items:center;padding:25px 0 8px;display:flex}.tiny-brand{font-family:Georgia,serif;font-size:var(--font-size-body);color:var(--text-muted);letter-spacing:-.5px;margin-right:8px;font-weight:600}.reservation-phone-link{color:inherit;text-underline-offset:3px;text-decoration:underline}.reservation-contact-view{gap:8px;display:grid}.reservation-panel .reservation-form{gap:0 12px;padding:12px 14px}.reservation-panel .reservation-form label{margin-bottom:10px}.reservation-panel .reservation-form input,.reservation-panel .reservation-form select,.reservation-panel .reservation-form textarea{height:38px;margin-top:4px;padding:8px}.reservation-panel .reservation-form textarea{height:auto;min-height:64px;line-height:1.4}.reservation-panel .reservation-form .party-input{margin-top:4px}.reservation-panel .reservation-form .party-input input{margin-top:0}.reservation-panel .reservation-form .merge-option,.reservation-panel .reservation-form .walk-in-reservation-option{min-height:32px;margin-bottom:0}.reservation-panel .reservation-form .merge-option input[type=checkbox],.reservation-panel .reservation-form .walk-in-reservation-option input[type=checkbox]{width:16px;height:16px;accent-color:var(--success);flex-shrink:0;margin:0;padding:0}.reservation-panel .field-pair label{margin-bottom:0}.reservation-panel .form-hint{margin:6px 0 10px;line-height:1.4}.reservation-panel .merge-table-selection{grid-column:1/-1;gap:4px;margin-bottom:10px}.reservation-panel .merge-table-selection .form-hint,.reservation-panel .merge-table-selection label{margin-bottom:0}.reservation-panel .button{padding:8px 10px}.reservation-panel .selected-table-card{gap:8px;padding:10px}.reservation-panel .table-picker{margin-bottom:10px}.reservation-panel .form-divider{margin:12px 0}.reservation-panel .form-footer{margin-top:8px}.reservation-panel .booking-actions{gap:6px;margin-top:10px}.reservation-save-blockers summary{cursor:pointer;font-weight:600}.reservation-field-error{color:var(--danger);margin:0}.reservation-completion{overflow-wrap:anywhere;gap:16px;padding:24px;display:grid}.reservation-completion>svg{color:var(--success)}.reservation-completion h2,.reservation-completion h3,.reservation-completion p{margin:0}.reservation-completion dl{grid-template-columns:auto minmax(0,1fr);gap:8px 16px;margin:0;display:grid}.reservation-completion dt{font-weight:600}.reservation-completion dd{margin:0}.completion-notes{white-space:pre-wrap}.completion-walk-ins{color:var(--caution);background:var(--caution-surface);border-radius:8px;padding:12px}.alert{background:var(--caution-surface);border:1px solid var(--caution);font-size:var(--font-size-body);color:var(--caution);border-radius:6px;align-items:center;gap:9px;margin-bottom:16px;padding:12px 14px;line-height:1.6;display:flex}.alert>svg{flex-shrink:0}.alert .icon-button{margin-left:auto}.alert.error{color:var(--danger);background:var(--danger-surface);border-color:var(--danger)}.alert.success{color:var(--success);background:var(--success-surface);border-color:var(--success)}.update-prompt{background:var(--surface-raised);border:1px solid var(--line);max-width:calc(100vw - 46px);box-shadow:0 7px 35px var(--shadow);z-index:20;border-radius:9px;align-items:center;gap:15px;padding:17px 20px;display:flex;position:fixed;bottom:23px;right:23px}.update-prompt strong{font-size:var(--font-size-body);display:block}.update-prompt span{font-size:var(--font-size-body);color:var(--text-muted);margin-top:4px;display:block}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{min-height:100vh;color:var(--text-secondary);font-size:var(--font-size-body);flex-direction:column;justify-content:center;align-items:center;gap:22px;display:flex}.boot-screen .brand-mark{background:var(--sidebar-background);width:58px;height:58px;font-size:44px}.login-page{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-story{background:var(--sidebar-background);color:var(--sidebar-text);flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px 60px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid var(--brand-decoration);width:550px;height:550px;box-shadow:0 0 0 70px var(--brand-decoration), 0 0 0 140px var(--brand-decoration);pointer-events:none;border-radius:50%;position:absolute;bottom:-150px;right:-280px}.login-story>div{padding:60px 0}.login-story .eyebrow{color:var(--sidebar-muted);font-size:var(--font-size-body)}.login-story h1{letter-spacing:-2px;margin:22px 0 26px;font-family:Georgia,serif;font-size:clamp(42px,4.6vw,73px);font-weight:400;line-height:1.12}.login-story p{color:var(--sidebar-muted);font-size:var(--font-size-body);line-height:1.9}.login-footer{font-size:var(--font-size-body);color:var(--sidebar-muted)}.login-form-wrap{background:var(--surface-subtle);justify-content:center;align-items:center;padding:50px;display:flex}.login-form{width:100%;max-width:340px}.login-icon{background:var(--surface-subtle);width:54px;height:54px;color:var(--success);border-radius:14px;justify-content:center;align-items:center;margin-bottom:26px;display:flex}.login-form h2{letter-spacing:-1px;margin:12px 0 10px;font-size:31px;font-weight:650}.login-form>p{font-size:var(--font-size-body);color:var(--text-muted);margin-bottom:31px}.login-form label{font-size:var(--font-size-body);margin-bottom:20px}.login-form input{height:46px;font-size:var(--font-size-body)}.login-form .button{min-height:45px;margin-top:8px}.demo-login{border-top:1px solid var(--line);text-align:center;margin-top:31px;padding-top:22px}.demo-login>span{color:var(--text-muted);font-size:var(--font-size-body)}.demo-login small{font-size:var(--font-size-caption);color:var(--text-muted);margin-top:11px;display:block}@media (width>=1550px){.service-grid{grid-template-columns:minmax(0,1fr) 380px}.stat-card{padding:23px}}@media (width<=1200px){.sidebar{flex-basis:195px;width:195px;padding-left:14px;padding-right:14px}.sidebar-bottom{margin-left:-14px;margin-right:-14px}.workspace-main{width:calc(100% - 195px);margin-left:195px}.page-content{padding:27px 23px 20px}.topbar{padding:0 23px}.service-grid{grid-template-columns:minmax(0,1fr) 340px;gap:17px}.stat-card{gap:10px;padding:15px 13px}.stat-icon{width:33px;height:33px}.stat-card strong{font-size:23px}.stat-card small{font-size:var(--font-size-caption)}.panel-header{padding:18px}.floor-legend{gap:12px;padding:14px 18px}.reservation-form{padding:18px}}@media (width<=1020px){.sidebar{flex-basis:175px;width:175px}.workspace-main{width:calc(100% - 175px);margin-left:175px}.sidebar nav button{font-size:var(--font-size-body);gap:8px;padding-left:8px}.sidebar-caption{font-size:var(--font-size-caption);letter-spacing:1px}.stats-row{gap:9px}.stat-card{flex-direction:column;align-items:flex-start;gap:12px}.stat-card strong{flex-direction:column;gap:7px}.service-grid{grid-template-columns:minmax(0,1fr) 340px;gap:14px}.page-heading h1{font-size:26px}.search-field input{width:95px}.booking-table td{padding-left:9px;padding-right:9px}.timezone{display:none}.panel-header{gap:8px}}@media (width<=650px){.service-grid{grid-template-columns:1fr}.reservation-panel{position:static}}@media (width<=850px){.reservation-form{grid-template-columns:1fr 1fr;gap:0 22px;padding:22px;display:grid}.field-pair,.reservation-notes-field,.form-hint,.selected-table-card,.form-divider,.reservation-save-blockers,.save-button,.reservation-reset-button,.form-footer,.booking-actions{grid-column:1/-1}.form-divider{margin:22px 0}.selected-table-card{margin-bottom:0}.reservation-form>label:has(.party-input){grid-column:1/-1}.live-status{font-size:var(--font-size-caption)}.topbar{padding:0 15px}.business-selector{gap:3px}.topbar-divider{margin:0 5px}.business-selector select,.business-selector .venue-name{max-width:150px;font-size:var(--font-size-body)}.sidebar-bottom{gap:7px;padding:18px 11px}.sidebar-bottom strong{font-size:var(--font-size-body)}.page-heading{align-items:flex-start}.page-heading>.button{padding:10px;font-size:0}.page-heading>.button svg{width:18px}.login-story{padding:35px}.login-form-wrap{padding:30px}}@media (width<=650px){:root{--font-size-caption:.75rem;--font-size-body:.875rem;--font-size-section-heading:1.0625rem}.floor-plan-drawing,.reservation-panel{scroll-margin-top:76px}.layout-editor:has(.layout-placement) .layout-details{display:none}.sidebar{flex-direction:row;flex-basis:auto;align-items:center;gap:18px;width:100%;height:64px;padding:0 16px;position:sticky;top:0}.workspace{flex-direction:column}.sidebar .brand{font-size:var(--font-size-section-heading);gap:7px;margin:0}.sidebar-header{margin-left:0}.sidebar-toggle{display:none}.brand-mark{border-radius:8px;width:28px;height:30px}.sidebar-caption,.sidebar-note,.sidebar-bottom .avatar,.sidebar-bottom div{display:none}.sidebar nav{flex-direction:row;flex:1;justify-content:flex-end;gap:6px}.sidebar nav button{padding:10px;font-size:0}.sidebar nav button svg{width:20px;height:20px}.nav-count{display:none}.sidebar nav button.active{box-shadow:inset 0 -2px var(--brand-accent)}.sidebar-bottom{border:0;margin:0;padding:0}.workspace-main{width:100%;margin:0}.topbar{height:62px;padding:0 18px}.live-status{font-size:0}.live-status>span{width:7px;height:7px}.business-selector select{max-width:150px}.page-content{padding:24px 18px 12px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:25px}.page-heading p{font-size:var(--font-size-body)}.page-heading .eyebrow{font-size:var(--font-size-caption)}.service-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:19px;padding:12px 0}.date-navigation{gap:3px}.date-display{font-size:var(--font-size-body);gap:6px}.date-display svg{width:15px}.today-button{font-size:var(--font-size-caption);padding:5px 7px}.service-hours{font-size:var(--font-size-caption);gap:4px}.service-hours svg{display:none}.stats-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.stat-card{flex-direction:row;align-items:center;gap:10px;padding:14px 12px}.stat-card div>span{font-size:var(--font-size-caption)}.stat-card strong{gap:5px;font-size:22px}.stat-card small{font-size:var(--font-size-caption)}.stat-icon{width:32px;height:36px}.stat-icon svg{width:17px}.panel-header h2{font-size:var(--font-size-section-heading)}.panel-header p{font-size:var(--font-size-body)}.panel-header{padding:18px 16px}.floor-controls{padding:0 16px}.room-tabs button{font-size:var(--font-size-body)}.room-tabs{flex-basis:100%}.floor-legend{font-size:var(--font-size-body);gap:13px;padding:13px 16px}.reservation-form{gap:0 15px;padding:16px}.reservation-form>label{margin-bottom:14px}.reservation-form input,.reservation-form select{height:42px;padding-top:9px;padding-bottom:9px}.page-footer{font-size:var(--font-size-caption);gap:15px}.page-footer>span:first-child{display:none}.page-footer{justify-content:center}.search-field{padding:7px}.search-field input{width:160px;font-size:var(--font-size-body)}.booking-table{font-size:var(--font-size-body)}.booking-table th:first-child,.booking-table td:first-child{padding-left:16px}.booking-table th,.booking-table td{padding-left:9px;padding-right:9px}.booking-table td:last-child{padding-right:9px}.status-badge{font-size:var(--font-size-caption);padding:4px 6px}.login-page{grid-template-columns:1fr}.login-story{min-height:auto;padding:24px}.login-story>div{padding:34px 0 8px}.login-story h1{margin:15px 0;font-size:35px;line-height:1.15}.login-story h1 br,.login-story p,.login-footer{display:none}.login-story .eyebrow{font-size:var(--font-size-caption)}.login-form-wrap{padding:35px 28px}.login-icon{display:none}.login-form h2{font-size:27px}.update-prompt{gap:10px;max-width:calc(100vw - 24px);padding:13px;bottom:12px;right:12px}.update-prompt strong{font-size:var(--font-size-body)}.update-prompt span{font-size:var(--font-size-caption)}.alert{font-size:var(--font-size-body)}}@media (width>=651px){.page-content{--reservation-panel-width:clamp(260px, 30vw, 380px);--reservation-panel-right:36px;--reservation-panel-gap:22px;max-width:none;padding-right:calc(var(--reservation-panel-width) + var(--reservation-panel-right) + var(--reservation-panel-gap))}.service-grid{grid-template-columns:minmax(0,1fr)}.reservation-panel{top:var(--reservation-panel-top,90px);bottom:16px;right:var(--reservation-panel-right);width:var(--reservation-panel-width);overscroll-behavior-y:contain;scrollbar-gutter:stable;z-index:5;position:fixed;overflow-y:auto}.reservation-panel .reservation-form{display:block}.reservation-panel .panel-header{z-index:11;background:var(--surface);position:sticky;top:0}}@media (width>=651px) and (width<=1200px){.page-content{--reservation-panel-right:23px;--reservation-panel-gap:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.layout-heading,.layout-toolbar,.layout-placement,.layout-savebar,.layout-actions,.layout-nudge,.layout-dialog header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.layout-heading,.layout-dialog header{justify-content:space-between;margin-bottom:24px}.layout-heading h1{margin:10px 0;font-size:clamp(26px,3vw,40px)}.layout-heading p,.layout-details p,.layout-form p{color:var(--text-secondary);line-height:1.6}.layout-toolbar{margin:16px 0}.layout-toolbar>label:not(.layout-check){grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;max-width:100%;display:grid}.layout-toolbar>span{font-size:var(--font-size-body);color:var(--text-secondary);margin-left:auto}.layout-editor .button,.layout-dialog .button{min-height:44px;font-size:var(--font-size-body)}.layout-editor select,.layout-editor input,.layout-form select,.layout-form input{border:1px solid var(--control-border);background:var(--surface);max-width:100%;min-height:44px;color:var(--text-primary);font:inherit;font-size:var(--font-size-body);border-radius:7px;padding:10px}.layout-check{align-items:center;gap:8px;display:flex}.layout-check input{width:20px;height:20px;min-height:auto}.layout-editor-grid{grid-template-columns:minmax(0,1fr) 290px;gap:20px;display:grid}.layout-canvas-wrap{background:var(--surface-subtle);border:1px solid var(--control-border);border-radius:12px;min-width:0;overflow:hidden}.layout-zoom{flex-wrap:wrap;gap:8px;padding:12px;display:flex}.layout-canvas{touch-action:none;width:100%;height:clamp(340px,55dvh,650px);display:block}.layout-room-dimensions text{fill:var(--text-primary);font-size:32px;font-weight:600}.fixture-target{fill:#0000;stroke:#0000;stroke-width:3px;cursor:pointer}.fixture-target.selected,.fixture-target:focus-visible{stroke:var(--info);stroke-dasharray:6 4}.layout-ghost{opacity:.65}.layout-canvas .plan-table.has-layout-error .table-shape{fill:var(--danger-surface);stroke:var(--danger);stroke-width:4px;transition:none}.layout-canvas .plan-table.has-layout-warning .table-shape{fill:var(--attention-surface);stroke:var(--attention);stroke-width:4px;transition:none}.layout-canvas .plan-table.has-layout-error .table-label,.layout-canvas .plan-table.has-layout-error .table-capacity{fill:var(--danger)}.layout-canvas .plan-table.has-layout-warning .table-label,.layout-canvas .plan-table.has-layout-warning .table-capacity{fill:var(--attention)}.layout-canvas .layout-issue-outline{fill:none;stroke-width:3px;stroke-dasharray:7 4;vector-effect:non-scaling-stroke}.layout-canvas .has-layout-error .layout-issue-outline{stroke:var(--danger)}.layout-canvas .has-layout-warning .layout-issue-outline{stroke:var(--attention)}.layout-details,.layout-empty{padding:20px}.layout-details{align-self:start}.layout-details summary{min-height:44px;font-weight:600;font-size:var(--font-size-section-heading);cursor:pointer;margin:0 0 12px}.layout-details label,.layout-form label{flex-direction:column;gap:8px;display:flex}.layout-details select{width:100%}.layout-details p{font-size:var(--font-size-body)}.layout-object-details{gap:12px;margin-bottom:16px;display:grid}.layout-object-details .layout-check{flex-direction:row}.layout-details .layout-actions{margin:16px 0}.layout-nudge{margin-top:16px}.layout-number-field{min-width:0;position:relative}.layout-number-field input{appearance:textfield;width:100%;min-height:48px;padding-right:44px}.layout-number-field input::-webkit-inner-spin-button{appearance:none;margin:0}.layout-number-field input::-webkit-outer-spin-button{appearance:none;margin:0}.layout-number-buttons{border-left:1px solid var(--control-border);border-radius:0 6px 6px 0;width:36px;height:46px;display:grid;position:absolute;bottom:1px;right:1px;overflow:hidden}.layout-number-buttons button{background:var(--surface-subtle);color:var(--text-primary);cursor:pointer;border:0;place-items:center;padding:0;display:grid}.layout-number-buttons button:hover:not(:disabled){background:var(--surface-hover)}.layout-number-buttons button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.layout-number-buttons button:disabled{opacity:.4;cursor:default}.layout-number-buttons button+button{border-top:1px solid var(--control-border)}.layout-number-buttons svg{fill:none;stroke:currentColor;stroke-width:2px;width:16px;height:16px}.layout-savebar{z-index:5;background:var(--page-background);border-top:1px solid var(--control-border);justify-content:space-between;margin-top:20px;padding:16px 0;position:sticky;bottom:0}.layout-savebar>div{flex-wrap:wrap;gap:10px;display:flex}.layout-savebar>span{font-size:var(--font-size-body)}.layout-placement{background:var(--success-surface);border-radius:8px;margin-bottom:16px;padding:12px}.layout-dialog{box-sizing:border-box;border:1px solid var(--control-border);width:min(650px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text-primary);background:var(--surface-raised);border-radius:14px;padding:24px;overflow:auto}.layout-dialog::backdrop{background:var(--scrim)}.layout-dialog h2{margin:0;font-size:23px}.layout-form{gap:18px;display:grid}.layout-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.layout-form .layout-check{flex-direction:row}.table-preview{width:100%;height:150px}.layout-impact{border:1px solid var(--control-border);border-radius:8px;margin:12px 0;padding:14px;display:block}.layout-review{overflow-wrap:anywhere}@media (width<=1050px){.layout-editor-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=650px){.layout-heading{margin-bottom:12px}.layout-heading p,.layout-savebar>span{display:none}.layout-canvas{height:auto;max-height:55dvh}.layout-zoom{display:none}.layout-toolbar{gap:8px}.layout-toolbar>span{width:100%;margin:0}.layout-toolbar>label:not(.layout-check){grid-template-columns:minmax(0,1fr);width:100%}.layout-dialog{border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:20px}.layout-savebar{position:static}.layout-savebar>div{gap:6px;width:100%}.layout-savebar .button{font-size:var(--font-size-body);flex:1;padding:10px 8px}}.table-preview>g,.layout-ghost{--table-surface:var(--success-surface);--table-accent:var(--success);--table-text:var(--success)}.table-preview .table-shape,.table-preview .chair,.layout-ghost .table-shape,.layout-ghost .chair{fill:var(--table-surface);stroke:var(--table-accent)}.table-preview .chair-back,.layout-ghost .chair-back{fill:none;stroke:var(--table-accent)}.table-preview .table-label,.table-preview .table-capacity,.layout-ghost .table-label,.layout-ghost .table-capacity{fill:var(--table-text)}
