:root{--bg: #f4f9f8;--surface: #ffffff;--border: #dbe8e5;--text: #16231f;--muted: #64726d;--primary: #0f8a72;--primary-dark: #0b6b58;--accent: #22c55e;--success: #2f7a4f;--warning: #b8790b;--danger: #b3261e;--radius: 12px;--radius-sm: 10px;--radius-lg: 18px;--radius-xl: 28px;--shadow-soft: 0 20px 50px rgba(15, 35, 31, .12);--shadow-glow: 0 0 60px rgba(34, 197, 94, .12);--container-width: 1180px;--font-heading: "Playfair Display", Georgia, "Times New Roman", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-brand: "Sora", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-heading-modern: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--accent-info: #60a5fa;--accent-violet: #c084fc;--color-page: var(--bg);--color-surface: var(--surface);--color-surface-raised: var(--surface);--color-surface-muted: #eef6f3;--color-surface-hover: rgba(15, 138, 114, .05);--color-surface-selected: rgba(34, 197, 94, .12);--color-text-primary: var(--text);--color-text-secondary: #3f4d47;--color-text-muted: var(--muted);--color-text-inverse: #f8fbfa;--color-border: var(--border);--color-border-strong: #c3d6d0;--color-divider: #e7f0ed;--color-brand: #0b6b58;--color-brand-hover: #095443;--color-brand-active: #073d30;--color-brand-soft: #e3f5ef;--color-brand-contrast: #ffffff;--color-success: var(--success);--color-success-soft: #eafaf0;--color-warning: #8a5c08;--color-warning-soft: #fff7e6;--color-danger: var(--danger);--color-danger-soft: #fdecea;--color-info: #1d4ed8;--color-info-soft: #eaf3fe;--color-input-bg: var(--surface);--color-input-border: var(--border);--color-input-placeholder: #697770;--color-focus-ring: rgba(15, 138, 114, .5);--color-sidebar-bg: var(--bg);--color-topbar-bg: var(--surface);--color-nav-hover: rgba(34, 197, 94, .08);--color-nav-active: rgba(34, 197, 94, .14);--shadow-sm: 0 1px 3px rgba(15, 35, 31, .06);--shadow-md: 0 8px 24px rgba(15, 35, 31, .1);--shadow-lg: var(--shadow-soft);--shadow-brand: var(--shadow-glow);--chart-grid: rgba(22, 35, 31, .08);--chart-axis: var(--muted);--chart-series-1: var(--primary);--chart-series-2: var(--accent-info);--chart-series-3: var(--warning);--chart-series-4: var(--accent-violet);color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;letter-spacing:.01em}.navbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding:12px 24px;background:var(--surface);border-bottom:3px solid;border-image:linear-gradient(90deg,var(--accent),var(--primary)) 1;box-shadow:0 1px 3px #0f231f0f;position:sticky;top:0;z-index:10}.navbar-brand{display:flex;align-items:center;gap:10px;white-space:nowrap;flex-shrink:0}.navbar-logo{height:34px;width:auto;display:block}.navbar-wordmark{font-family:var(--font-brand);font-weight:800;font-size:1.4rem;letter-spacing:.01em;background:linear-gradient(90deg,var(--primary-dark) 0%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.navbar-links{display:flex;flex-wrap:wrap;gap:8px 20px;flex:1 1 auto;min-width:0}.navbar-links a{color:var(--muted);text-decoration:none;font-weight:500;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.navbar-links a:hover{color:var(--text);border-bottom-color:var(--border)}.navbar-links a.active{color:var(--primary);border-bottom-color:var(--primary)}.navbar-links a.active:hover{color:var(--primary-dark);border-bottom-color:var(--primary-dark)}.navbar-group{position:relative}.navbar-group-trigger{display:flex;align-items:center;gap:4px;background:none;border:none;font:inherit;color:var(--muted);font-weight:500;padding:6px 0;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.navbar-group-trigger:hover{color:var(--text);border-bottom-color:var(--border)}.navbar-group-trigger.active{color:var(--primary);border-bottom-color:var(--primary)}.navbar-group-trigger.active:hover{color:var(--primary-dark);border-bottom-color:var(--primary-dark)}.navbar-group-caret{font-size:.65rem;color:inherit;line-height:1}.navbar-group-dropdown{position:absolute;top:calc(100% + 8px);left:0;z-index:21;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;min-width:180px;padding:6px;display:flex;flex-direction:column;gap:2px}.navbar-group-item{display:block;padding:8px 10px;border-radius:6px;color:var(--text);text-decoration:none;font-weight:500;white-space:nowrap}.navbar-group-item:hover{background:var(--bg)}.navbar-group-item.active{color:var(--primary);background:var(--bg)}.navbar-group-item.navbar-item-locked{opacity:.6}.navbar-lock-icon{margin-left:6px;font-size:.75em;opacity:.8}.locked-feature-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:480px}.locked-feature-icon{font-size:1.75rem;line-height:1;margin-bottom:2px}.navbar-account{position:relative;flex-shrink:0;margin-left:auto}.navbar-account-trigger{display:flex;align-items:center;gap:10px;background:none;border:1px solid var(--border);border-radius:8px;padding:6px 12px;cursor:pointer;color:var(--text);font:inherit}.navbar-account-trigger:hover{background:var(--bg)}.navbar-account-name{font-weight:500;white-space:nowrap}.navbar-account-icon{font-size:1rem;color:var(--muted);line-height:1}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:transparent}.navbar-account-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:21;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;min-width:220px;padding:10px;display:flex;flex-direction:column;gap:2px}.navbar-account-info{padding:6px 10px 8px}.navbar-account-info-name{font-weight:600}.navbar-account-info-email,.navbar-account-info-role{font-size:.8rem;text-transform:capitalize}.navbar-account-divider{height:1px;background:var(--border);margin:4px 0 6px}.navbar-location-switcher{padding:2px 10px 8px;display:flex;flex-direction:column;gap:4px}.navbar-location-switcher label{font-size:.75rem}.navbar-location-switcher select{width:100%;font-size:.85rem;padding:4px 6px}.navbar-account-appearance{padding:2px 10px 8px;display:flex;flex-direction:column;gap:6px}.navbar-account-appearance-label{font-size:.75rem}.navbar-account-appearance-group{display:flex;gap:6px}.navbar-account-appearance-group .btn-tab{padding:5px 10px;font-size:.75rem;flex:1 1 auto;text-align:center}.navbar-account-item{display:block;width:100%;text-align:left;background:none;border:none;padding:8px 10px;border-radius:6px;font:inherit;color:var(--text);cursor:pointer;text-decoration:none}.navbar-account-item:hover{background:var(--bg)}.navbar-account-item-danger{color:var(--danger)}.main-content{padding:24px;max-width:1400px;margin:0 auto;min-width:0;width:100%;box-sizing:border-box}.app-shell{display:flex;align-items:stretch;min-height:100vh}.app-shell-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.app-sidebar{width:240px;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:18px 14px 20px;background:var(--bg);border-right:1px solid var(--border)}.app-sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:0 6px 14px}.app-sidebar-brand-link{display:flex;align-items:center;gap:8px;text-decoration:none}.app-sidebar-logo{height:26px;width:auto;display:block}.app-sidebar-business{padding:0 10px 14px;margin-bottom:6px;border-bottom:1px solid var(--border);color:var(--muted);font-size:.8rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-close{display:none;background:none;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:4px 6px}.app-sidebar-nav{display:flex;flex-direction:column;gap:2px;overflow-y:auto}.app-sidebar-section{margin-top:14px;display:flex;flex-direction:column;gap:2px}.app-sidebar-section-label{padding:0 10px 6px;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);opacity:.75}.app-sidebar-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:.88rem;font-weight:500;transition:background-color .15s ease,color .15s ease}.app-sidebar-link:hover{background:#22c55e14;color:var(--text)}.app-sidebar-link.active{background:#22c55e24;color:var(--primary);font-weight:600}:root[data-theme=light] .app-sidebar-link.active{color:var(--primary-dark)}.app-sidebar-link-icon{display:flex;flex-shrink:0;width:18px;height:18px}.app-sidebar-link-icon svg{width:18px;height:18px}.app-sidebar-link-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar-link-locked{opacity:.65}.app-sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65;background:#00000080;display:none}.app-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;padding:9px 24px;background:var(--surface);border-bottom:1px solid var(--border)}:root[data-theme=dark] .app-topbar{background:#131a18d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px #ffffff0a,0 8px 24px -12px #00000073}.app-topbar-menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:34px;height:34px;padding:0;flex-shrink:0;background:none;border:1px solid var(--border);border-radius:8px;cursor:pointer}.app-topbar-context{display:none;font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 1024px){.app-sidebar{position:fixed;top:0;left:0;z-index:70;transform:translate(-100%);box-shadow:0 0 40px #00000059;transition:transform .2s ease}.app-sidebar-open{transform:translate(0)}.app-sidebar-close,.app-sidebar-backdrop{display:block}.app-topbar-menu-toggle{display:flex}.app-topbar-context{display:block}}body.kitchen-mode .app-sidebar,body.kitchen-mode .app-topbar,body.reservation-mode .app-sidebar,body.reservation-mode .app-topbar{display:none}.page{display:flex;flex-direction:column}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--border)}.page-header h1{margin:0;font-size:1.6rem}.page-header .btn{flex-shrink:0;margin-top:2px}.page-title-group{display:flex;flex-direction:column;gap:4px}.page-subtitle{margin:0;font-family:var(--font-body);font-size:.92rem;font-weight:400;color:var(--muted)}.info-note{display:flex;gap:10px;align-items:flex-start;max-width:760px;margin-bottom:20px;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);font-size:.87rem;line-height:1.55;color:var(--text)}.info-note-icon{flex-shrink:0;font-size:1rem;line-height:1.5}.info-note strong{color:var(--primary-dark)}.btn{border:none;border-radius:8px;padding:10px 16px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .05s ease;text-decoration:none}.btn-primary{background:var(--color-brand);color:var(--color-brand-contrast);box-shadow:0 1px 2px #8b2f3b40}.btn-primary:hover{background:var(--color-brand-hover);box-shadow:0 2px 6px #8b2f3b4d}.btn-primary:active{background:var(--color-brand-active);transform:translateY(1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg)}.btn-small{padding:6px 10px;font-size:.8rem}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:#fef2f2}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;align-items:start}.orders-section-heading{font-size:1.15rem;color:var(--muted);display:flex;align-items:center;gap:8px;margin:4px 0 12px}.count-badge{background:var(--border);color:var(--text);border-radius:999px;padding:2px 9px;font-size:.75rem}.order-card .card-title strong{font-size:1.25rem}.order-card .tag,.order-card .order-card-time{font-size:.85rem}.order-card-completed-time{color:var(--success);font-weight:600}.order-card .order-card-customer{font-size:1.05rem;margin-bottom:4px}.order-card .item-list{font-size:1.05rem}.order-card .item-modifier-list{font-size:.9rem}.order-card .card-footer strong{font-size:1.2rem}.order-card .card-actions .btn{font-size:.92rem;padding:8px 12px}.kitchen-view-tabs{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:3px;gap:2px;flex-shrink:0}.kitchen-view-tab{border:none;background:transparent;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:.85rem;font-weight:600;color:var(--muted);white-space:nowrap}.kitchen-view-tab.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #2a211b1f}body.kitchen-mode .navbar{display:none}body.kitchen-mode .main-content{height:100vh;padding:16px;display:flex;flex-direction:column;max-width:none;margin:0}body.kitchen-mode .page-header{margin-bottom:10px;padding-bottom:10px;flex-shrink:0}body.kitchen-mode .page-header h1{font-size:1.9rem}body.kitchen-mode .kitchen-view-tab{font-size:1rem;padding:8px 16px}body.kitchen-mode .page{flex:1 1 auto;min-height:0}body.kitchen-mode .orders-section-heading{font-size:1.3rem;margin:0 0 8px;flex-shrink:0}.kitchen-columns{display:flex;flex-direction:row;justify-content:center;align-items:flex-start;gap:14px;flex:1 1 auto;min-height:0;overflow-x:auto;overflow-y:hidden}.kitchen-column{display:flex;flex-direction:column;gap:10px;flex-shrink:0}body.kitchen-mode .count-badge{font-size:.95rem;padding:2px 10px}body.kitchen-mode .order-card{padding:12px}body.kitchen-mode .order-card .card-title{margin-bottom:4px}body.kitchen-mode .order-card .card-title strong{font-size:1.15rem}body.kitchen-mode .order-card .tag{font-size:.72rem}body.kitchen-mode .order-card .order-card-time{font-size:.8rem}body.kitchen-mode .order-card .order-card-customer{font-size:.9rem;margin-bottom:2px}body.kitchen-mode .order-card .item-list{font-size:.95rem;line-height:1.3;margin:6px 0}body.kitchen-mode .order-card .item-modifier-list{font-size:.78rem}body.kitchen-mode .order-card .item-prep-checkbox{width:22px;height:22px}body.kitchen-mode .order-card .item-prep-cancel{font-size:.9rem;padding:6px}body.kitchen-mode .item-prep-progress{font-size:.8rem;margin:2px 0 4px}body.kitchen-mode .order-card .card-footer{margin-top:8px}body.kitchen-mode .order-card .card-footer strong{font-size:1.05rem}body.kitchen-mode .order-card .card-actions .btn{font-size:.8rem;padding:6px 10px}.card-footer-continued{justify-content:flex-end;font-style:italic;font-size:.85rem}body.reservation-mode .navbar{display:none}body.reservation-mode .main-content{padding:20px}body.reservation-mode .page-header h1{font-size:2.2rem}body.reservation-mode .page-subtitle{font-size:1.05rem}body.reservation-mode .reservations-day-toolbar .btn{font-size:1.05rem;padding:10px 16px}body.reservation-mode .reservations-day-toolbar input[type=date]{font-size:1.05rem;padding:8px 10px}body.reservation-mode .data-table th{font-size:.95rem;padding:14px 16px}body.reservation-mode .data-table td{font-size:1.25rem;padding:16px}body.reservation-mode .data-table .status-pill{font-size:1rem;padding:5px 14px}body.reservation-mode .data-table select{font-size:1.1rem;padding:6px 10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:0 1px 3px #2a211b0d}.card-alert{border-color:var(--warning);background:#fffbeb}.card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.tag{font-size:.72rem;color:var(--muted);background:var(--bg);border-radius:999px;padding:2px 8px}.item-list{margin:8px 0;padding-left:4px;font-size:.88rem;color:var(--text);list-style:none}.item-modifier-list{margin:2px 0 4px;padding-left:16px;font-size:.78rem;list-style:none}.item-prep-progress{font-weight:600;margin:2px 0 6px}.item-row{display:flex;align-items:flex-start;gap:10px;padding:6px 0}.item-prep-checkbox{flex-shrink:0;width:20px;height:20px;margin:1px 0 0;cursor:pointer;accent-color:var(--success)}.item-prep-checkbox:disabled{cursor:default;opacity:.55}.item-row-text{flex:1}.item-row.prep-completed .item-row-text{text-decoration:line-through;opacity:.65}.item-row.prep-cancelled .item-row-text{text-decoration:line-through;opacity:.4}.item-prep-cancel{flex-shrink:0;border:none;background:none;cursor:pointer;color:var(--muted);font-size:.8rem;padding:6px;margin:-6px;opacity:.6}.item-prep-cancel:hover{opacity:1}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:16px}.plan-card{display:flex;flex-direction:column;gap:8px}.dashboard-home h1,.dashboard-home .admin-stat-value{font-family:var(--font-heading-modern)}.dashboard-home h1{font-size:1.75rem;letter-spacing:-.01em}.dashboard-home-header{align-items:center}.dashboard-primary-action{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:999px;font-weight:600;box-shadow:0 8px 20px -8px #22c55e73;white-space:nowrap}.dashboard-quick-actions-secondary{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.dashboard-quick-actions-secondary .btn{padding:6px 14px;font-size:.8rem;border-radius:999px;white-space:nowrap}.dashboard-widget-grid{display:flex;flex-direction:column;gap:16px;margin-top:4px}.dashboard-span-12{grid-column:span 12}.dashboard-lanes{display:flex;gap:16px;align-items:flex-start}.dashboard-lanes-primary{display:flex;align-items:flex-start;gap:16px;flex:73 1 0;min-width:0}.dashboard-lanes-primary>*{flex:1 1 0;min-width:0}.dashboard-lanes-supporting{display:flex;flex-direction:column;gap:16px;flex:27 1 0;min-width:0}@media (min-width: 1025px){.dashboard-lanes-primary>*:first-child:not(:only-child){flex:30 1 0}.dashboard-lanes-primary>*:first-child:not(:only-child)~*{flex:43 1 0}.dashboard-lanes-primary>.dashboard-widget:not(:only-child){min-height:200px}}@media (max-width: 1024px){.dashboard-lanes{flex-direction:column;align-items:stretch}.dashboard-lanes-primary,.dashboard-lanes-supporting{flex-direction:row;flex-wrap:wrap}.dashboard-lanes-primary>*,.dashboard-lanes-supporting>*{flex:1 1 260px;min-width:260px}}@media (max-width: 640px){.dashboard-lanes-primary>*,.dashboard-lanes-supporting>*{flex:1 1 100%;min-width:0}}.dashboard-widget{padding:14px 16px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dashboard-widget:hover{transform:translateY(-2px);border-color:var(--accent)}.dashboard-widget .data-table{margin-top:8px;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.dashboard-widget .data-table th,.dashboard-widget .data-table td{white-space:nowrap}.dashboard-widget .data-table th{font-size:.72rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.dashboard-widget .data-table td,.dashboard-widget .data-table th{padding-top:6px;padding-bottom:6px}.dashboard-widget-header{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:8px}.dashboard-widget-header-title{display:flex;align-items:center;gap:10px;font-weight:600;min-width:0}.dashboard-widget-header .btn{white-space:nowrap;flex-shrink:0}.dashboard-widget-header-tabs{flex-wrap:wrap;row-gap:6px}.dashboard-tab-strip{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:3px;gap:2px;flex-shrink:0}.dashboard-tab{border:none;background:transparent;cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:600;color:var(--muted);white-space:nowrap}.dashboard-tab.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0003}.dashboard-widget-header-icon{color:var(--primary);background:#22c55e1f;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;flex-shrink:0}.dashboard-widget-header-icon svg{width:16px;height:16px}.dashboard-lanes-primary .dashboard-widget,.dashboard-span-12 .dashboard-widget{box-shadow:0 1px #ffffff08 inset,0 12px 28px -18px #0006}:root[data-theme=dark] .dashboard-lanes-primary .dashboard-widget,:root[data-theme=dark] .dashboard-span-12 .dashboard-widget{background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 55%),var(--surface);box-shadow:0 1px #ffffff0d inset,0 12px 28px -16px #0000008c}.dashboard-widget-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px 12px;color:var(--muted);text-align:center}.dashboard-widget-empty svg{width:22px;height:22px;opacity:.5}.dashboard-widget-empty span{font-size:.85rem}.dashboard-activity-strip{display:flex;flex-wrap:wrap;gap:10px}.dashboard-activity-chip{display:flex;align-items:flex-start;gap:8px;flex:1 1 220px;min-width:200px;max-width:320px;padding:10px 12px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.dashboard-activity-icon{flex-shrink:0;color:var(--muted);display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#94a3b81f}.dashboard-activity-icon svg{width:15px;height:15px}.dashboard-activity-chip-body{display:flex;flex-direction:column;gap:2px;min-width:0}.dashboard-activity-chip-text{font-size:.83rem;line-height:1.3}.dashboard-activity-chip-time{font-size:.75rem}@media (max-width: 480px){.dashboard-activity-chip{flex-basis:100%;max-width:none}}.dashboard-widget-subtext{font-size:.8rem;margin:-4px 0 10px}.table-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}@media (max-width: 1024px){.table-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 640px){.table-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.table-status-card{border-radius:9px;padding:6px 4px;text-align:center;background:var(--bg);border:1px solid var(--border)}.table-status-number{font-weight:700;font-size:.85rem}.table-status-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-top:1px}.table-status-detail{font-size:.72rem;margin-top:1px}.table-status-occupied{border-color:#22c55e66;background:#22c55e1a}.table-status-occupied .table-status-label{color:var(--primary)}.table-status-reserved{border-color:#fbbf2466;background:#fbbf2414}.table-status-reserved .table-status-label{color:var(--warning)}.table-status-available .table-status-label{color:var(--muted)}.dashboard-customer-list{margin:0}.dashboard-customer-list li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;font-size:.85rem;border-bottom:1px solid var(--border)}.dashboard-customer-list li:last-child{border-bottom:none}.dashboard-customer-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-customer-list .muted{font-size:.78rem;white-space:nowrap;flex-shrink:0}.plan-price{font-size:1.8rem;font-weight:700;margin:0}.plan-price .muted{font-size:.9rem;font-weight:400}.plan-features{margin:8px 0;padding-left:18px;font-size:.85rem;color:var(--text);flex-grow:1}.plan-features li{margin-bottom:4px}.card-actions{display:flex;gap:6px}.plan-badge{display:inline-block;font-size:.72rem;font-weight:600;color:var(--primary);background:#0f8a721a;border-radius:999px;padding:3px 10px;margin-bottom:8px}.plan-card-featured{border-color:var(--primary);box-shadow:0 1px 3px #0f8a721f}.plan-note{font-size:.78rem;color:var(--muted);margin:-6px 0 4px}.plan-scale-table{width:100%;font-size:.78rem;color:var(--muted);margin-top:10px;border-top:1px solid var(--border);padding-top:8px}.plan-scale-table td{padding:2px 0}.plan-scale-table td:last-child{text-align:right;color:var(--text)}.muted{color:var(--muted);font-size:.85rem}.alert{padding:10px 14px;border-radius:8px;margin-bottom:14px;font-size:.9rem}.alert-error{background:#fef2f2;color:var(--danger);border:1px solid #fecaca}.alert-warning{background:#fffbeb;color:var(--warning);border:1px solid #fde68a;margin:8px 0;padding:6px 10px}.alert-success{background:#f0fdf4;color:var(--success);border:1px solid #bbf7d0}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border)}.data-table th,.data-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border);font-size:.9rem}.data-table th{background:var(--bg);color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-surface-hover)}.order-history-scope-note{margin:0 0 14px;font-size:.8rem}.order-history-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.order-history-date-picker{margin:4px 0 16px}.order-history-date-rail{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}.order-history-date-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:0 0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:8px 12px;font-size:.82rem;color:var(--color-text-primary);text-align:left;cursor:pointer;white-space:nowrap}.order-history-date-btn:hover{background:var(--color-surface-hover)}.order-history-date-btn.active{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand);font-weight:600}.order-history-date-btn .count-badge{font-size:.72rem;color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:999px;padding:1px 7px}.order-history-date-btn.active .count-badge{color:var(--color-brand)}.order-history-date-select-wrap{display:none}.order-history-date-select-wrap select{width:100%}.order-history-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:12px 0 4px}.order-history-search{flex:1 1 260px;min-width:220px}.order-history-search input{width:100%}.order-history-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.order-history-filter-field select{min-width:132px}.order-history-skeleton{display:flex;flex-direction:column;gap:8px;margin:16px 0}.order-history-skeleton-row{height:44px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.order-history-skeleton-row{animation:none;opacity:.75}}.order-history-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.order-history-table-wrap{display:block;margin-top:12px}.order-history-cards{display:none;flex-direction:column;gap:10px;margin-top:12px}.order-history-items-cell{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-history-cell-sub{font-size:.8rem}@media (max-width: 768px){.order-history-search{flex-basis:100%}.order-history-filters{width:100%}.order-history-filter-field{flex:1 1 140px}.order-history-filter-field select{width:100%}.order-history-table-wrap .data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.order-history-table-wrap .data-table th,.order-history-table-wrap .data-table td{white-space:nowrap}}@media (max-width: 640px){.order-history-date-rail{display:none}.order-history-date-select-wrap{display:block}.order-history-table-wrap{display:none}.order-history-cards{display:flex}}.order-history-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.order-history-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.order-history-card-order{font-weight:600;color:var(--color-text-primary)}.order-history-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.82rem;color:var(--color-text-muted)}.order-history-card-items{font-size:.85rem}.order-history-card-total{font-weight:600;color:var(--color-text-primary)}.order-history-card-actions{display:flex;justify-content:flex-end}.modal.order-history-detail-modal{width:min(640px,92vw)}.order-history-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:4px 0}.order-history-detail-updated{margin:0 0 12px;font-size:.8rem}.order-history-detail-section{margin:0 0 16px}.order-history-detail-label{font-weight:600;color:var(--color-text-secondary);margin-bottom:6px;font-size:.85rem}.order-history-detail-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.order-history-detail-items li{padding-bottom:8px;border-bottom:1px dashed var(--color-border)}.order-history-detail-items li:last-child{border-bottom:none;padding-bottom:0}.order-history-detail-item-line{display:flex;justify-content:space-between;gap:10px;font-size:.92rem}.order-history-detail-modifiers,.order-history-detail-instructions{font-size:.82rem;margin-top:2px}.order-history-detail-allergy{background:var(--color-warning-soft);border:1px solid var(--color-warning);border-radius:var(--radius);padding:10px 12px}.order-history-detail-allergy .order-history-detail-label{color:var(--color-warning)}.order-history-detail-total{font-weight:600;font-size:1.05rem;margin:4px 0 16px;color:var(--color-text-primary)}.print-only{display:none}@media print{:root,:root[data-theme=dark]{--bg: #ffffff;--surface: #ffffff;--text: #16231f;--border: #dbe8e5;color-scheme:light}body{background:#fff;color:#16231f}.navbar,.app-sidebar,.app-topbar,.no-print{display:none!important}.print-only{display:block}.page{padding:0}}.transcript-cell{max-width:320px;font-size:.8rem;color:var(--muted)}.call-summary-cell{max-width:260px;font-size:.82rem}.call-issue-badge{display:inline-block;margin-right:6px;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700;background:#fef3c7;color:#92400e;white-space:nowrap}.status-pill{padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:capitalize;background:var(--bg)}.status-confirmed,.status-received,.status-checked_in,.status-in_progress,.status-notified,.status-open{background:#dbeafe;color:#1d4ed8}.status-seated,.status-preparing,.status-waiting,.status-past_due,.status-no_payment_method,.status-grace_period{background:#fef3c7;color:#92400e}.status-pending_plan,.status-signed{background:#dbeafe;color:#1d4ed8}.status-setup{background:#fef3c7;color:#92400e}.status-live,.status-completed,.status-ready,.status-checked_out,.status-approved,.status-published,.status-active,.status-paid,.status-trialing,.status-trial_started{background:#dcfce7;color:#166534}.status-cancelled,.status-no_show,.status-failed,.status-abandoned,.status-rejected,.status-deactivated,.status-canceled,.status-void,.status-uncollectible,.status-trial_expired{background:#fee2e2;color:#991b1b}.status-alert{background:#fef3c7;color:#92400e}.status-draft{background:#ede9fe;color:#6d28d9}.status-scheduled{background:#dbeafe;color:#1d4ed8}.status-rescheduled,.status-paused,.status-follow_up_required{background:#fef3c7;color:#92400e}.status-proposal_sent{background:#ede9fe;color:#6d28d9}.status-customer_accepted{background:#dcfce7;color:#166534}.status-customer_declined{background:#fee2e2;color:#991b1b}.status-new,.status-contacted,.status-consultation_scheduled{background:#dbeafe;color:#1d4ed8}.status-consultation_completed{background:#dcfce7;color:#166534}.status-proposal_accepted{background:#ede9fe;color:#6d28d9}.status-won{background:#dcfce7;color:#166534}.status-lost{background:#fee2e2;color:#991b1b}.status-sent{background:#dbeafe;color:#1d4ed8}.status-viewed{background:#fef3c7;color:#92400e}.status-accepted{background:#dcfce7;color:#166534}.status-declined{background:#fee2e2;color:#991b1b}.status-expired{background:#f1f5f9;color:#64748b}.catering-status-new{background:#fef3c7;color:#92400e}.catering-status-contacted{background:#dbeafe;color:#1d4ed8}.catering-status-planned{background:#ede9fe;color:#6d28d9}.catering-status-completed{background:#dcfce7;color:#166534}.catering-status-cancelled{background:#fee2e2;color:#991b1b}.marketing-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--border);margin:6px 0 16px}.marketing-tab{padding:8px 14px;font-size:.88rem;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.marketing-tab.active{color:var(--primary-dark);border-bottom-color:var(--primary);font-weight:600}.marketing-tab-disabled{opacity:.45;cursor:default}.marketing-tab-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.marketing-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.marketing-stat-card{display:flex;flex-direction:column;gap:4px}.marketing-stat-number{font-size:2rem;font-weight:700;font-family:var(--font-heading)}.marketing-approval-list{display:flex;flex-direction:column;gap:12px}.marketing-approval-card label{font-size:.85rem;margin-top:8px}.marketing-campaign-detail{padding:10px 4px;display:flex;flex-direction:column;gap:10px}.marketing-inline-form{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.marketing-inline-form textarea{flex:1 1 100%}.marketing-audit-list{margin:6px 0 0;padding-left:18px;font-size:.82rem}.marketing-audit-list li{margin-bottom:4px}.marketing-creative-section{border-top:1px solid var(--border);padding-top:10px}.marketing-creative-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.marketing-creative-card{border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.marketing-creative-card p{margin:0}.marketing-creative-card-approved{border-color:var(--success)}.marketing-creative-card-rejected{opacity:.7}.marketing-assistant{display:flex;flex-direction:column;height:60vh;max-height:640px}.marketing-chat-window{flex:1;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px}.marketing-chat-bubble{max-width:70%;padding:8px 12px;border-radius:12px;font-size:.9rem;line-height:1.4}.marketing-chat-bubble-user{align-self:flex-end;background:var(--primary);color:#fff}.marketing-chat-bubble-assistant{align-self:flex-start;background:var(--bg);color:var(--text)}.marketing-chat-input{display:flex;gap:8px;margin-top:12px}.marketing-chat-input input{flex:1}.catering-row-stale{background:#f0fdf4}.catering-row-stale td:first-child{border-left:3px solid #4ade80}.reservations-day-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px}.reservations-day-toolbar input[type=date]{font-size:.85rem;padding:5px 8px}.marketing-bar-list{display:flex;flex-direction:column;gap:10px}.marketing-bar-row{display:grid;grid-template-columns:130px 1fr 90px;align-items:center;gap:10px}.marketing-bar-label{font-size:.85rem;color:var(--text);text-transform:capitalize}.marketing-bar-track{background:var(--bg);border-radius:999px;height:10px;overflow:hidden}.marketing-bar-fill{background:var(--primary);height:100%;border-radius:999px;transition:width .2s ease}.marketing-bar-value{font-size:.82rem;color:var(--muted);text-align:right;white-space:nowrap}.marketing-analytics-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:16px}.marketing-analytics-toolbar label{font-size:.78rem}.marketing-analytics-toolbar input{font-size:.85rem}.marketing-campaign-metrics{border-top:1px dashed var(--border);padding-top:10px;margin-top:4px}.marketing-campaign-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:8px 0}.marketing-campaign-metric{background:var(--bg);border-radius:var(--radius);padding:8px 10px}.marketing-campaign-metric-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.marketing-campaign-metric-value{font-size:1.05rem;font-weight:700;font-family:var(--font-heading)}.catering-stale-tag{display:inline-block;margin-left:8px;background:#dcfce7;color:#166534}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--bg) 0%,#dcf0ea 100%)}.login-card{background:var(--surface);padding:40px 36px 36px;border-radius:16px;border:1px solid var(--border);border-top:4px solid;border-image:linear-gradient(90deg,var(--accent),var(--primary)) 1;width:360px;display:flex;flex-direction:column;gap:16px;box-shadow:0 16px 40px #0f231f1f}.login-brand{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:4px}.login-logo{height:56px;width:auto;display:block}.login-wordmark{font-size:1.7rem}.login-heading{text-align:center;display:flex;flex-direction:column;gap:4px}.login-card h1{margin:0;font-size:1.3rem;color:var(--text)}.login-heading .muted{font-size:.88rem}.signup-card{width:400px}.signup-note{margin-bottom:0}.login-switch{margin:0;text-align:center;font-size:.85rem;color:var(--muted)}.login-switch a{color:var(--primary-dark);font-weight:600;text-decoration:none}.login-switch a:hover{text-decoration:underline}.btn-link{background:none;border:none;padding:0;color:var(--primary-dark);font-weight:600;text-decoration:none;cursor:pointer;font-size:inherit}.btn-link:hover{text-decoration:underline}label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--muted);font-weight:600}input,select,textarea{font-family:inherit;padding:9px 10px;background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:6px;font-size:.9rem;color:var(--text)}input::placeholder,textarea::placeholder{color:var(--color-input-placeholder);opacity:1}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-focus-ring)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--color-text-primary);-webkit-box-shadow:0 0 0 1000px var(--color-input-bg) inset;box-shadow:0 0 0 1000px var(--color-input-bg) inset;transition:background-color 9999s ease-in-out 0s}select{color-scheme:inherit}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--surface);border-radius:12px;padding:24px;width:420px;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal h2{margin:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.modal-wide{width:min(720px,90vw)}.plan-card-current{border-color:var(--primary)}.menu-picker{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0}.menu-picker-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem}.menu-picker-row input{width:60px}.menu-picker-item{padding-bottom:8px;border-bottom:1px dashed var(--border)}.menu-picker-item:last-child{border-bottom:none}.menu-picker-modifiers{margin:6px 0 2px;padding:8px 10px;background:var(--bg);border-radius:var(--radius);display:flex;flex-direction:column;gap:8px}.menu-picker-group-label{font-size:.8rem;font-weight:600}.menu-picker-group-label .required-star{color:var(--danger);margin-left:2px}.menu-picker-options{display:flex;flex-wrap:wrap;gap:6px 14px}.menu-picker-option{display:flex;align-items:center;gap:4px;font-size:.82rem;font-weight:400}.menu-picker-option input{width:auto}.menu-sections{display:flex;flex-direction:column;gap:36px}.menu-section-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:14px}.menu-section-title{flex:1 1 auto;margin:0;display:flex;align-items:baseline;gap:12px;font-size:1.35rem;font-weight:800;letter-spacing:.01em;text-transform:capitalize;color:var(--primary-dark)}.menu-section-title:after{content:"";flex:1 1 auto;height:1px;background:var(--border);align-self:center}.menu-section-actions{display:flex;gap:8px;flex-shrink:0}.menu-section-count{text-transform:none;font-weight:600;font-family:var(--font-body);font-size:.75rem;color:var(--muted);background:var(--surface);border:1px solid var(--border)}.menu-section-items,.menu-builder-list{display:flex;flex-direction:column;gap:14px}.menu-item-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.menu-item-card.inactive{opacity:.55}.menu-item-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.menu-item-card-header h3{margin:0 0 4px;font-size:1rem;font-weight:600;font-family:var(--font-body);letter-spacing:normal;color:var(--text)}.menu-item-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.allergen-tag{font-size:.72rem;background:#fef3c7;color:#92400e;border-radius:999px;padding:2px 9px}.modifier-groups{margin-top:14px;display:flex;flex-direction:column;gap:10px}.modifier-group{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--bg)}.modifier-group-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;font-size:.88rem;font-weight:600}.modifier-list{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.modifier-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.modifier-row-actions{display:flex;gap:6px}.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:10px}.inline-form label{font-size:.72rem}.inline-form input,.inline-form select{padding:6px 8px;font-size:.82rem}.field-row{display:flex;flex-wrap:wrap;gap:10px}.field-row label{flex:1 1 140px}.menu-builder-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:4px 0 8px}.menu-builder-search{flex:1 1 260px;min-width:220px}.menu-builder-search input{width:100%}.menu-builder-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.menu-builder-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.menu-section-shown-note{margin:-6px 0 8px;font-size:.8rem}.section-status-badge{text-transform:none;font-weight:600;font-family:var(--font-body);font-size:.72rem;padding:2px 9px;border-radius:999px}.section-status-badge--active{background:#22c55e26;color:var(--success)}.section-status-badge--partial{background:#b8790b26;color:var(--warning)}.section-status-badge--inactive{background:#64726d26;color:var(--muted)}.item-issue-badge{display:inline-block;margin-left:8px;vertical-align:middle;font-size:.7rem;font-weight:600;text-transform:none;background:#b3261e1f;color:var(--danger);border-radius:999px;padding:2px 8px}.item-issue-list{margin-top:8px;padding:8px 12px;font-size:.82rem;color:var(--danger);background:#b3261e14;border:1px solid rgba(179,38,30,.25);border-radius:var(--radius-sm)}.item-issue-list ul{margin:0;padding-left:18px}.item-issue-list li{margin:2px 0}.menu-item-aliases{margin-top:2px;font-size:.82rem}.menu-item-group-count{margin-top:6px;font-size:.8rem}.modifier-group-actions{display:flex;gap:6px;flex-shrink:0}.modifier-group-edit-form{align-items:flex-start}.modifier-group-form-hint{flex-basis:100%;margin:4px 0;font-size:.78rem}.modifier-price-delta{color:var(--muted)}.modifier-row.inactive{opacity:.55}.modifier-row-actions{flex-wrap:wrap}@media (max-width: 768px){.menu-builder-search{flex-basis:100%}.menu-builder-filters{width:100%}}@media (max-width: 640px){.menu-item-card-header{flex-direction:column}.menu-item-card-header .card-actions{width:100%}.modifier-row{flex-direction:column;align-items:flex-start;gap:4px}}.tables-summary-bar{display:flex;gap:28px;margin-bottom:18px}.tables-summary-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.tables-summary-number{font-size:1.8rem;font-weight:700;line-height:1;color:var(--text)}.settings-panel{margin-bottom:24px}.settings-panel-title{margin:0 0 4px;font-size:1.05rem}.settings-panel-hint{margin:10px 0 0;line-height:1.5}.phone-panel-number{margin:4px 0 2px;font-size:1.5rem;font-weight:700;letter-spacing:.02em;color:var(--primary-dark);font-family:var(--font-heading)}.phone-panel-tabs{display:flex;gap:8px;margin:14px 0 4px}.btn-tab{background:var(--surface-alt, transparent);border:1px solid var(--border);padding:7px 14px;border-radius:999px;font-size:.8rem;cursor:pointer}.btn-tab.active{background:var(--color-brand);color:var(--color-brand-contrast);border-color:var(--color-brand)}.existing-number-panel{margin-top:10px}.onboarding-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.onboarding-progress-bar{width:100%;height:8px;border-radius:999px;background:var(--border);overflow:hidden}.onboarding-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--primary));border-radius:999px;transition:width .3s ease}.onboarding-steps{display:flex;flex-direction:column;gap:14px}.onboarding-step{display:flex;align-items:flex-start;gap:14px;padding:16px 18px}.onboarding-step-done{opacity:.7}.onboarding-step-check{flex-shrink:0;width:26px;height:26px;border-radius:999px;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#fff;margin-top:2px}.onboarding-step-done .onboarding-step-check{background:var(--accent);border-color:var(--accent)}.onboarding-step-body{flex:1 1 auto;min-width:0}.onboarding-step-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.onboarding-step-title-row h2{margin:0}.onboarding-tag-required{color:var(--primary-dark);border-color:var(--primary-dark)}.onboarding-step-link{flex-shrink:0;align-self:center}.tables-groups{display:flex;flex-direction:column;gap:26px}.tables-location-group h2.tables-location-title{margin:0 0 12px;font-size:.95rem;font-weight:700;text-transform:capitalize;color:var(--text);display:flex;align-items:center;gap:10px}.tables-location-title:after{content:"";flex:1 1 auto;height:1px;background:var(--border)}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.table-card{display:flex;flex-direction:column;gap:10px;transition:box-shadow .15s ease,transform .15s ease}.table-card:hover{box-shadow:0 4px 14px #0f172a14;transform:translateY(-1px)}.table-card.inactive{opacity:.5}.table-card.occupied{border-color:#4ade80;background:#f0fdf4}.table-occupied-banner{display:flex;align-items:center;gap:7px;background:#dcfce7;color:#166534;border-radius:8px;padding:6px 10px;font-size:.76rem;font-weight:600;line-height:1.35}.table-occupied-dot{width:7px;height:7px;border-radius:999px;background:var(--success);flex-shrink:0}.table-card-header{display:flex;align-items:center;justify-content:space-between}.table-number-badge{font-weight:700;font-size:.95rem;color:var(--primary-dark);background:#e3f3ef;border-radius:999px;padding:4px 12px}.table-capacity-row{display:flex;flex-direction:column;gap:6px}.table-capacity-label{font-size:.82rem;color:var(--muted);font-weight:600}.seat-dots{display:flex;flex-wrap:wrap;gap:4px}.seat-dot{width:8px;height:8px;border-radius:999px;background:var(--primary);opacity:.85}.seat-dot-more{font-size:.7rem;color:var(--muted);font-weight:600;margin-left:2px}.location-field-toggle{align-self:flex-start;margin-top:6px;padding:2px 0;border:none;background:none;color:var(--primary);font-weight:600}.public-site{display:flex;flex-direction:column;min-height:100vh}.public-nav{display:flex;align-items:center;justify-content:space-between;gap:16px 28px;padding:14px 32px;background:var(--surface);border-bottom:3px solid;border-image:linear-gradient(90deg,var(--accent),var(--primary)) 1;box-shadow:0 1px 3px #0f231f0f;position:sticky;top:0;z-index:10;flex-wrap:wrap}.public-nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.public-nav-logo{height:32px;width:auto;display:block}.public-nav-links{display:flex;flex-wrap:wrap;gap:8px 22px;flex:1 1 auto;justify-content:center}.public-nav-links a{color:var(--muted);text-decoration:none;font-weight:500;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s ease,border-color .15s ease}.public-nav-links a:hover{color:var(--text);border-bottom-color:var(--border)}.public-nav-links a.active{color:var(--primary);border-bottom-color:var(--primary)}.public-nav-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}.public-nav-actions-pill{display:none}.public-nav-login{color:var(--muted);text-decoration:none;font-weight:600;font-size:.88rem;white-space:nowrap}.public-nav-login:hover{color:var(--text)}.public-nav-item-dropdown{position:relative}.public-nav-dropdown-trigger{background:none;border:none;font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:4px;cursor:default;color:var(--muted);font-weight:500;padding:6px 0;border-bottom:2px solid transparent;transition:color .15s ease}.public-nav-item-dropdown:hover .public-nav-dropdown-trigger,.public-nav-item-dropdown:focus-within .public-nav-dropdown-trigger{color:var(--text)}.public-nav-dropdown-chevron{font-size:.6rem;transition:transform .15s ease;display:inline-block}.public-nav-item-dropdown:hover .public-nav-dropdown-chevron,.public-nav-item-dropdown:focus-within .public-nav-dropdown-chevron{transform:rotate(180deg)}.public-nav-dropdown-menu{position:absolute;top:100%;left:50%;margin-top:6px;transform:translate(-50%) translateY(4px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 14px 32px #0f231f24;padding:8px;min-width:200px;display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:20}.public-nav-item-dropdown:hover .public-nav-dropdown-menu,.public-nav-item-dropdown:focus-within .public-nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%) translateY(0)}.public-nav-dropdown-menu a{padding:8px 12px!important;border-radius:6px;border-bottom:none!important;display:block}.public-nav-dropdown-menu a:hover{background:var(--bg)}.mobile-menu-group{display:flex;flex-direction:column;border-bottom:1px solid var(--border);padding-bottom:6px}.mobile-menu-group-label{font-weight:700;color:var(--text);padding:13px 4px 6px}.mobile-menu-sublink{padding:10px 4px 10px 16px!important;border-bottom:none!important;color:var(--muted);font-weight:500}.mobile-menu-sublink:hover,.mobile-menu-sublink.active{color:var(--primary)}.public-main{flex:1 1 auto}.public-hero{text-align:center;padding:72px 24px 56px;max-width:780px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:18px}.public-hero h1{font-size:2.6rem;line-height:1.15;margin:0}.public-hero-sub{font-size:1.1rem;color:var(--muted);line-height:1.6;margin:0;max-width:620px}.public-hero-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:6px}.public-hero-compact{padding:48px 24px 32px}.public-hero-compact h1{font-size:2.1rem}.public-trust-badges{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;margin-top:4px}.public-trust-badge{font-size:.8rem;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:5px}.public-trust-badge:before{content:"✓";color:var(--primary);font-weight:800}.public-hero-checklist{list-style:none;margin:20px auto 0;padding:20px 26px;max-width:560px;display:flex;flex-direction:column;gap:10px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0f231f0f}.public-hero-checklist li{padding-left:28px;position:relative;line-height:1.5;font-weight:600;font-size:.95rem}.public-hero-checklist li:before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:999px;background:var(--primary);color:#fff;font-size:.7rem;font-weight:800;display:flex;align-items:center;justify-content:center}.confirmation-card{max-width:480px;margin:0 auto;padding:32px 28px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0f231f0f;display:flex;flex-direction:column;align-items:center;gap:12px}.confirmation-check{width:52px;height:52px;border-radius:999px;flex-shrink:0;background:var(--accent);color:#fff;font-size:1.4rem;font-weight:800;display:flex;align-items:center;justify-content:center}.confirmation-card h1{font-size:1.5rem;margin:0}.confirmation-restaurant{font-size:1rem;color:var(--muted);margin:-6px 0 4px}.confirmation-details{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;width:100%;padding:14px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.confirmation-detail{display:flex;flex-direction:column;gap:2px}.confirmation-detail-label{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.confirmation-detail-value{font-size:1.05rem;font-weight:700}.confirmation-email-note{font-size:.85rem;color:var(--muted);line-height:1.5;margin:0}.public-page{max-width:1080px;margin:0 auto;padding:0 24px 40px}.public-section{max-width:1080px;margin:0 auto;padding:48px 24px}.public-section h2{font-size:1.6rem;margin:0 0 18px;text-align:center}.public-section-lede{max-width:720px;margin:0 auto 12px;text-align:center;color:var(--muted);line-height:1.7;font-size:1rem}.public-section-alt{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.public-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:24px}.public-feature-card{display:flex;flex-direction:column;gap:8px}.public-feature-list{list-style:none;margin:20px auto 0;padding:0;max-width:640px;display:flex;flex-direction:column;gap:10px}.public-feature-list li{padding-left:26px;position:relative;line-height:1.5;color:var(--text)}.public-feature-list li:before{content:"✓";position:absolute;left:0;color:var(--primary);font-weight:700}.public-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px;margin-top:24px}.public-step{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.public-step-number{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),var(--primary));color:#fff;font-weight:800;font-family:var(--font-heading)}.public-step-title{font-weight:700}.public-pill-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px}.public-pill{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:6px 16px;font-size:.85rem;font-weight:600;color:var(--primary-dark)}.public-cta{text-align:center;padding:56px 24px;display:flex;flex-direction:column;align-items:center;gap:14px;background:linear-gradient(180deg,var(--bg) 0%,#dcf0ea 100%)}.public-cta h2{margin:0;font-size:1.6rem}.public-detail-list{display:flex;flex-direction:column;gap:18px}.public-detail-card{display:flex;flex-direction:column;gap:4px}.public-detail-card .public-feature-list{margin:12px 0 0;max-width:none}.public-faq-list{display:flex;flex-direction:column;gap:12px;max-width:720px;margin:0 auto}.public-faq-item{padding:4px 20px}.public-faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:none;border:none;font:inherit;font-weight:700;text-align:left;padding:12px 0;cursor:pointer;color:var(--text)}.public-faq-answer{margin:0 0 12px;line-height:1.6}.public-consultation-form{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:16px;padding:28px}.public-slot-dates{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.public-slot-date-btn,.public-slot-time-btn{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:7px 12px;font-size:.85rem;font-weight:600;color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.public-slot-date-btn:hover,.public-slot-time-btn:hover{border-color:var(--primary)}.public-slot-date-btn.active,.public-slot-time-btn.active{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-brand-contrast)}.public-slot-times{display:flex;flex-wrap:wrap;gap:8px}.public-slot-fallback{flex-direction:row;align-items:center;gap:8px;margin-top:12px;font-weight:500;font-size:.85rem}.public-slot-fallback input{width:auto}.public-footer{background:var(--surface);border-top:1px solid var(--border);padding:40px 32px 20px;margin-top:auto}.public-footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:28px;max-width:1080px;margin:0 auto}.public-footer-brand{display:flex;flex-direction:column;gap:10px}.public-footer-brand p{max-width:320px}.public-footer-col{display:flex;flex-direction:column;gap:8px}.public-footer-col h4{margin:0 0 4px;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.public-footer-col a{color:var(--text);text-decoration:none;font-size:.9rem}.public-footer-col a:hover{color:var(--primary)}.public-footer-bottom{max-width:1080px;margin:28px auto 0;padding-top:16px;border-top:1px solid var(--border);text-align:center}@media (max-width: 720px){.public-footer-grid{grid-template-columns:1fr 1fr}.public-hero h1{font-size:2rem}}.location-field-toggle:hover{text-decoration:underline;background:none}.announcement-bar{display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 20px;background:var(--surface);border-bottom:1px solid var(--border);font-size:.85rem;text-align:center;position:relative}.announcement-bar p{margin:0;color:var(--text)}.announcement-bar a{color:var(--primary);font-weight:600;text-decoration:none;margin-left:4px}.announcement-bar a:hover{text-decoration:underline}.announcement-bar-close{position:absolute;right:16px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;line-height:0}.announcement-bar-close:hover{color:var(--text)}.public-nav{transition:background .2s ease,border-color .2s ease,backdrop-filter .2s ease}.public-nav-scrolled{background:var(--surface);background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}@media (max-width: 860px){.public-nav-scrolled{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface)}}.hero-tertiary-link{margin:4px 0 0}.hero-tertiary-link a{display:inline-flex;align-items:center;gap:6px;color:var(--primary-dark);font-weight:600;text-decoration:none;font-size:.92rem}.hero-tertiary-link a:hover{text-decoration:underline}.hero-with-visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);align-items:center;gap:40px;text-align:left;max-width:1180px;margin:0 auto;padding:64px 24px 48px}.hero-with-visual .hero-copy{display:flex;flex-direction:column;gap:18px;align-items:flex-start}.hero-with-visual h1{font-size:clamp(2.1rem,1.5rem + 2.4vw,3.2rem);line-height:1.1;margin:0}.hero-with-visual .public-hero-sub{margin:0;text-align:left;max-width:560px}.hero-with-visual .public-trust-badges{justify-content:flex-start;margin-top:10px}.hero-with-visual .public-hero-checklist{display:none}.hero-visual{display:flex;justify-content:center}.hero-call-sim{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 20px);padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-soft, 0 20px 50px rgba(0, 0, 0, .25))}.hero-call-sim-header{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:var(--muted)}.hero-call-sim-dot{width:8px;height:8px;border-radius:999px;background:var(--muted);flex-shrink:0}.hero-call-sim-dot.is-live{background:var(--danger);animation:hero-dot-pulse 1.4s ease-in-out infinite}.hero-call-sim-waveform{display:flex;align-items:center;justify-content:center;gap:4px;height:36px}.wave-bar{width:4px;height:8px;border-radius:999px;background:var(--border);flex-shrink:0;transition:background .2s ease}.wave-bar.is-active{background:var(--primary);animation:hero-wave 1s ease-in-out infinite}.hero-call-sim-transcript{display:flex;flex-direction:column;gap:8px;min-height:68px}.hero-call-sim-line{margin:0;font-size:.86rem;line-height:1.4;padding:8px 12px;border-radius:12px;max-width:92%;animation:hero-line-in .3s ease}.hero-call-sim-line.is-caller{background:var(--bg);align-self:flex-start;color:var(--text)}.hero-call-sim-line.is-aind{background:var(--primary);align-self:flex-end;color:#fff}.hero-call-sim-speaker{display:block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;opacity:.7;margin-bottom:2px}.hero-call-sim-status,.hero-call-sim-outcome{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;padding:8px 12px;border-radius:10px;background:var(--bg);color:var(--text)}.hero-call-sim-outcome{color:var(--primary-dark)}.hero-call-sim-spinner{width:12px;height:12px;border-radius:999px;border:2px solid var(--border);border-top-color:var(--primary);animation:hero-spin .8s linear infinite;flex-shrink:0}.trust-strip-section{text-align:center}.trust-strip-label{margin:0 0 20px}.trust-strip-track{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.trust-strip-row{display:flex;gap:48px;width:max-content;animation:trust-strip-scroll 24s linear infinite}.trust-strip-badge{font-weight:700;font-size:1.05rem;color:var(--muted);white-space:nowrap;opacity:.8}.process-flow{display:flex;flex-wrap:wrap;justify-content:center;gap:0;margin-top:28px}.process-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1 1 140px;position:relative;padding:0 12px}.process-step:not(:last-child):after{content:"";position:absolute;top:15px;left:calc(50% + 30px);right:calc(-50% + 30px);height:2px;background:var(--border)}.process-step-number{width:30px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:2px solid var(--primary);color:var(--primary-dark);font-weight:800;font-size:.85rem;z-index:1}.process-step-label{font-size:.82rem;font-weight:600;text-align:center;color:var(--text);max-width:140px}@media (max-width: 900px){.process-flow{flex-direction:column;align-items:stretch}.process-step{flex-direction:row;text-align:left;padding:0}.process-step:not(:last-child):after{display:none}.process-step-label{max-width:none}}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px}.bento-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 18px);padding:20px;display:flex;flex-direction:column;gap:8px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.bento-card:hover{transform:translateY(-3px);border-color:var(--accent)}.bento-card-lg{grid-column:span 2}.bento-card-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--primary);margin-bottom:4px}@media (max-width: 900px){.bento-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.bento-grid{grid-template-columns:1fr}.bento-card-lg{grid-column:span 1}}.dash-preview{display:grid;grid-template-columns:180px 1fr;gap:0;margin-top:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 18px);overflow:hidden;box-shadow:var(--shadow-soft, 0 20px 50px rgba(0, 0, 0, .25))}.dash-preview-sidebar{background:var(--bg);border-right:1px solid var(--border);padding:16px 10px;display:flex;flex-direction:column;gap:2px}.dash-preview-nav-item{padding:8px 12px;border-radius:8px;font-size:.82rem;font-weight:600;color:var(--muted)}.dash-preview-nav-item.active{background:var(--surface);color:var(--primary-dark)}.dash-preview-main{padding:20px;display:flex;flex-direction:column;gap:16px;min-width:0}.dash-preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.dash-preview-stat{background:var(--bg);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:2px}.dash-preview-stat-value{font-size:1.4rem;font-weight:800;font-family:var(--font-heading);color:var(--text)}.dash-preview-stat-label{font-size:.7rem;color:var(--muted)}.dash-preview-table{border:1px solid var(--border);border-radius:12px;overflow:hidden}.dash-preview-row{display:grid;grid-template-columns:1.3fr 1fr 1.2fr .8fr;gap:8px;padding:10px 14px;font-size:.82rem;border-bottom:1px solid var(--border);align-items:center}.dash-preview-row:last-child{border-bottom:none}.dash-preview-row-head{background:var(--bg);color:var(--muted);font-weight:700;text-transform:uppercase;font-size:.68rem;letter-spacing:.03em}.dash-preview-badge{align-self:flex-start;font-size:.72rem;font-weight:600;color:var(--muted);background:var(--bg);border:1px dashed var(--border);border-radius:999px;padding:4px 12px}.dash-preview-caption{text-align:center;margin-top:10px}.demo-scenario-card{cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%;transition:transform .2s ease,border-color .2s ease}.demo-scenario-card:hover{transform:translateY(-3px);border-color:var(--accent)}.demo-scenario-cta{display:inline-flex;align-items:center;gap:4px;font-weight:600;color:var(--primary);font-size:.85rem;margin-top:4px}.demo-player-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.demo-call-sim{max-width:560px;margin:0 auto}.demo-call-sim .hero-call-sim-transcript{min-height:0}.demo-player-controls{display:flex;gap:12px;justify-content:center;margin-top:20px;flex-wrap:wrap}.demo-outcome-card{max-width:560px;margin:24px auto 0}@media (max-width: 720px){.dash-preview{grid-template-columns:1fr}.dash-preview-sidebar{display:none}.dash-preview-stats{grid-template-columns:repeat(2,1fr)}.dash-preview-row{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}}.before-after-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px}.before-after-col{border-radius:var(--radius-lg, 18px);padding:22px;border:1px solid var(--border)}.before-col{background:var(--bg)}.after-col{background:var(--surface);border-color:var(--primary)}.before-after-heading{font-weight:800;margin-bottom:12px}.before-after-row{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:.92rem}.before-after-mark{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;flex-shrink:0;font-weight:800}.before-mark{background:#f8717126;color:var(--danger)}.after-mark{background:#22c55e26;color:var(--primary)}@media (max-width: 720px){.before-after-grid{grid-template-columns:1fr}}.steps-connected,.steps-connected .public-step{position:relative}.steps-connected .public-step:not(:last-child):after{content:"";position:absolute;top:20px;left:calc(50% + 32px);right:calc(-50% + 32px);height:2px;background:var(--border)}@media (max-width: 720px){.steps-connected .public-step:not(:last-child):after{display:none}}.plan-preview-grid .public-feature-card{position:relative}.plan-recommended{border-color:var(--primary)!important;box-shadow:0 0 0 1px var(--primary)}.plan-recommended-badge{position:absolute;top:-12px;left:18px;background:var(--primary);color:#fff;font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.testimonial-placeholder{align-items:center;text-align:center;gap:12px}.testimonial-avatar{width:48px;height:48px;border-radius:999px;background:var(--bg);border:1px dashed var(--border);margin:0 auto}.cta-glow{position:relative;overflow:hidden}.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes hero-dot-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes hero-wave{0%,to{height:8px}50%{height:26px}}@keyframes hero-line-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-spin{to{transform:rotate(360deg)}}@keyframes trust-strip-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.reveal{transition:none;opacity:1;transform:none}.hero-call-sim-dot.is-live,.wave-bar.is-active,.hero-call-sim-spinner,.trust-strip-row,.hero-call-sim-line{animation:none!important}.bento-card,.public-nav{transition:none!important}}@media (max-width: 900px){.hero-with-visual{grid-template-columns:1fr;text-align:center;padding:48px 20px 32px}.hero-with-visual .hero-copy{align-items:center}.hero-with-visual .public-hero-sub{text-align:center}.hero-with-visual .public-trust-badges{justify-content:center}.hero-visual{order:-1}}.admin-stat-bar{display:grid;grid-template-columns:repeat(var(--metric-count, 4),1fr);gap:12px;margin:4px 0 24px}.admin-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:12px 14px;display:flex;flex-direction:row;align-items:center;gap:10px;transition:transform .2s ease,border-color .2s ease;min-width:0}.admin-stat-card:hover{transform:translateY(-2px);border-color:var(--accent)}.admin-stat-body{display:flex;flex-direction:column;gap:2px}.admin-stat-icon{flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-sm, 10px);display:flex;align-items:center;justify-content:center;background:#22c55e1f;color:var(--primary)}.admin-stat-icon svg{width:16px;height:16px}.admin-stat-icon--info{background:#60a5fa24;color:var(--accent-info)}.admin-stat-icon--violet{background:#c084fc24;color:var(--accent-violet)}.admin-stat-icon--warning{background:#fbbf2424;color:var(--warning)}.admin-stat-icon--danger{background:#f8717124;color:var(--danger)}.admin-stat-value{font-size:1.5rem;font-weight:800;font-family:var(--font-heading);color:var(--text);line-height:1.1}.admin-stat-label{font-size:.76rem;color:var(--muted)}.admin-stat-card{position:relative}.admin-stat-value-row{display:flex;align-items:baseline;gap:5px}.admin-stat-secondary{font-size:.95rem;font-weight:600}.admin-stat-trend{display:block;font-size:.72rem;font-weight:600;margin-top:1px}.admin-stat-trend--up{color:var(--primary)}.admin-stat-trend--down{color:var(--danger)}.admin-stat-trend--flat{color:var(--muted)}.admin-stat-sparkline-wrap{margin-left:auto;flex-shrink:0;color:var(--accent);opacity:.8;align-self:center}@media (max-width: 1024px){.admin-stat-bar[data-metric-count="4"]{grid-template-columns:repeat(2,1fr)}.admin-stat-bar[data-metric-count="6"]{grid-template-columns:repeat(3,1fr)}.admin-stat-bar[data-metric-count="5"]{grid-template-columns:repeat(6,1fr)}.admin-stat-bar[data-metric-count="5"] .admin-stat-card:nth-child(-n+3){grid-column:span 2}.admin-stat-bar[data-metric-count="5"] .admin-stat-card:nth-child(n+4){grid-column:span 3}}@media (max-width: 720px){.admin-stat-bar{grid-template-columns:repeat(2,1fr)!important}.admin-stat-card{grid-column:auto!important}.admin-stat-sparkline-wrap{display:none}}.login-kicker{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary-dark);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:4px 12px;align-self:center}:root[data-theme=dark]{--bg: #0a0f0d;--surface: #131a18;--border: #223029;--text: #eef6f2;--muted: #93a39c;--primary: #22c55e;--primary-dark: #16a34a;--accent: #2dd4bf;--success: #22c55e;--warning: #fbbf24;--danger: #f87171;--color-page: var(--bg);--color-surface: var(--surface);--color-surface-raised: #16211d;--color-surface-muted: #0f1614;--color-surface-hover: rgba(255, 255, 255, .025);--color-surface-selected: rgba(34, 197, 94, .14);--color-text-primary: var(--text);--color-text-secondary: #c3d3cb;--color-text-muted: var(--muted);--color-text-inverse: #0a0f0d;--color-border: var(--border);--color-border-strong: #2f4038;--color-divider: #1a2521;--color-brand: var(--primary);--color-brand-hover: #16a34a;--color-brand-active: #1a9146;--color-brand-soft: rgba(34, 197, 94, .14);--color-brand-contrast: #06120c;--color-success: var(--success);--color-success-soft: rgba(34, 197, 94, .14);--color-warning: var(--warning);--color-warning-soft: rgba(251, 191, 36, .14);--color-danger: var(--danger);--color-danger-soft: rgba(248, 113, 113, .14);--color-info: #60a5fa;--color-info-soft: rgba(96, 165, 250, .14);--color-input-bg: var(--surface);--color-input-border: var(--border);--color-input-placeholder: var(--muted);--color-focus-ring: rgba(34, 197, 94, .55);--color-sidebar-bg: var(--bg);--color-topbar-bg: rgba(19, 26, 24, .85);--color-nav-hover: rgba(34, 197, 94, .08);--color-nav-active: rgba(34, 197, 94, .14);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 10px 30px rgba(0, 0, 0, .4);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .45);--shadow-brand: var(--shadow-glow);--chart-grid: rgba(238, 246, 242, .08);--chart-axis: var(--muted);--chart-series-1: var(--primary);--chart-series-2: #60a5fa;--chart-series-3: var(--warning);--chart-series-4: #c084fc;color-scheme:dark;background:var(--bg);color:var(--text);min-height:100vh}*:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}:root[data-theme=dark] ::selection{background:#22c55e59;color:#f4fbf8}:root[data-theme=dark] .card{box-shadow:0 1px #ffffff0a inset,0 6px 20px #00000059;transition:border-color .2s ease,box-shadow .2s ease}:root[data-theme=dark] .card:hover{border-color:#2dd4bf59}:root[data-theme=dark] .card-alert{background:#fbbf2414}:root[data-theme=dark] .navbar,:root[data-theme=dark] .public-nav,:root[data-theme=dark] .login-card{box-shadow:0 1px #ffffff0d,0 10px 30px #0006}:root[data-theme=dark] .public-hero-checklist{box-shadow:0 1px #ffffff0a inset,0 8px 24px #00000059}:root[data-theme=dark] .public-cta{background:radial-gradient(900px 400px at 50% 0%,rgba(34,197,94,.12),transparent 65%),var(--bg)}:root[data-theme=dark] .navbar-account-dropdown,:root[data-theme=dark] .navbar-group-dropdown,:root[data-theme=dark] .public-nav-dropdown-menu,:root[data-theme=dark] .modal{box-shadow:0 1px #ffffff0d inset,0 16px 40px #0000008c}:root[data-theme=dark] .public-nav-dropdown-menu{border-color:#ffffff1f}@keyframes dark-app-pop-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}:root[data-theme=dark] .navbar-account-dropdown,:root[data-theme=dark] .navbar-group-dropdown,:root[data-theme=dark] .public-nav-dropdown-menu{animation:dark-app-pop-in .15s ease}@keyframes dark-app-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}:root[data-theme=dark] .modal{animation:dark-app-modal-in .16s ease}:root[data-theme=dark] .modal-backdrop{background:#000000a6}:root[data-theme=dark] .navbar-brand,:root[data-theme=dark] .public-nav-brand{position:relative}:root[data-theme=dark] .navbar-logo,:root[data-theme=dark] .public-nav-logo,:root[data-theme=dark] .login-logo{filter:drop-shadow(0 0 10px rgba(34,197,94,.35))}:root[data-theme=dark] .login-page{background:radial-gradient(1200px 600px at 50% -10%,rgba(34,197,94,.14),transparent 60%),var(--bg)}:root[data-theme=dark] .btn-primary{box-shadow:0 0 0 1px #22c55e66,0 6px 18px #22c55e38}:root[data-theme=dark] .btn-primary:hover{box-shadow:0 0 0 1px #22c55e8c,0 8px 22px #22c55e52;transform:translateY(-1px)}:root[data-theme=dark] .btn-ghost:hover{background:#ffffff0d}:root[data-theme=dark] .btn-danger:hover{background:#f871711f}:root[data-theme=dark] .marketing-stat-number,:root[data-theme=dark] .tables-summary-number,:root[data-theme=dark] .plan-price{background:linear-gradient(135deg,var(--accent),var(--primary));-webkit-background-clip:text;background-clip:text;color:transparent}:root[data-theme=dark] .marketing-chat-window::-webkit-scrollbar,:root[data-theme=dark] .menu-picker::-webkit-scrollbar,:root[data-theme=dark] .modal::-webkit-scrollbar,:root[data-theme=dark] .navbar-group-dropdown::-webkit-scrollbar,:root[data-theme=dark] .navbar-account-dropdown::-webkit-scrollbar{width:8px}:root[data-theme=dark] .marketing-chat-window::-webkit-scrollbar-track,:root[data-theme=dark] .menu-picker::-webkit-scrollbar-track,:root[data-theme=dark] .modal::-webkit-scrollbar-track{background:transparent}:root[data-theme=dark] .marketing-chat-window::-webkit-scrollbar-thumb,:root[data-theme=dark] .menu-picker::-webkit-scrollbar-thumb,:root[data-theme=dark] .modal::-webkit-scrollbar-thumb,:root[data-theme=dark] .navbar-group-dropdown::-webkit-scrollbar-thumb,:root[data-theme=dark] .navbar-account-dropdown::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}:root[data-theme=dark] .marketing-chat-window::-webkit-scrollbar-thumb:hover,:root[data-theme=dark] .menu-picker::-webkit-scrollbar-thumb:hover{background:var(--primary)}:root[data-theme=dark] .status-confirmed,:root[data-theme=dark] .status-received,:root[data-theme=dark] .status-checked_in,:root[data-theme=dark] .status-in_progress,:root[data-theme=dark] .status-notified,:root[data-theme=dark] .status-open,:root[data-theme=dark] .status-pending_plan,:root[data-theme=dark] .status-scheduled,:root[data-theme=dark] .status-new,:root[data-theme=dark] .status-contacted,:root[data-theme=dark] .status-consultation_scheduled,:root[data-theme=dark] .status-sent,:root[data-theme=dark] .status-signed,:root[data-theme=dark] .catering-status-contacted{background:#3b82f626;color:#93c5fd;border:1px solid rgba(59,130,246,.35)}:root[data-theme=dark] .status-seated,:root[data-theme=dark] .status-preparing,:root[data-theme=dark] .status-waiting,:root[data-theme=dark] .status-past_due,:root[data-theme=dark] .status-no_payment_method,:root[data-theme=dark] .status-grace_period,:root[data-theme=dark] .status-alert,:root[data-theme=dark] .status-rescheduled,:root[data-theme=dark] .status-follow_up_required,:root[data-theme=dark] .status-viewed,:root[data-theme=dark] .status-setup,:root[data-theme=dark] .catering-status-new{background:#f59e0b26;color:#fcd34d;border:1px solid rgba(245,158,11,.35)}:root[data-theme=dark] .status-completed,:root[data-theme=dark] .status-ready,:root[data-theme=dark] .status-checked_out,:root[data-theme=dark] .status-approved,:root[data-theme=dark] .status-published,:root[data-theme=dark] .status-active,:root[data-theme=dark] .status-paid,:root[data-theme=dark] .status-consultation_completed,:root[data-theme=dark] .status-customer_accepted,:root[data-theme=dark] .status-won,:root[data-theme=dark] .status-accepted,:root[data-theme=dark] .status-live,:root[data-theme=dark] .catering-status-completed,:root[data-theme=dark] .catering-stale-tag{background:#22c55e26;color:#86efac;border:1px solid rgba(34,197,94,.35)}:root[data-theme=dark] .status-cancelled,:root[data-theme=dark] .status-no_show,:root[data-theme=dark] .status-failed,:root[data-theme=dark] .status-abandoned,:root[data-theme=dark] .status-rejected,:root[data-theme=dark] .status-deactivated,:root[data-theme=dark] .status-canceled,:root[data-theme=dark] .status-void,:root[data-theme=dark] .status-uncollectible,:root[data-theme=dark] .status-customer_declined,:root[data-theme=dark] .status-lost,:root[data-theme=dark] .status-declined,:root[data-theme=dark] .catering-status-cancelled{background:#f8717126;color:#fca5a5;border:1px solid rgba(248,113,113,.35)}:root[data-theme=dark] .status-draft,:root[data-theme=dark] .status-proposal_sent,:root[data-theme=dark] .status-proposal_accepted,:root[data-theme=dark] .catering-status-planned{background:#a78bfa26;color:#d8b4fe;border:1px solid rgba(167,139,250,.35)}:root[data-theme=dark] .status-expired{background:#94a3b826;color:#cbd5e1;border:1px solid rgba(148,163,184,.3)}:root[data-theme=dark] .allergen-tag{background:#f59e0b26;color:#fcd34d}:root[data-theme=dark] .alert-error{background:#f871711a;border-color:#f871714d}:root[data-theme=dark] .alert-warning{background:#fbbf241a;border-color:#fbbf244d}:root[data-theme=dark] .alert-success{background:#22c55e1a;border-color:#22c55e4d}:root[data-theme=dark] .table-card.occupied{border-color:#22c55e;background:#22c55e14}:root[data-theme=dark] .table-occupied-banner{background:#22c55e26;color:#86efac}:root[data-theme=dark] .table-number-badge{background:#2dd4bf29}:root[data-theme=dark] .catering-row-stale{background:#22c55e0d}:root[data-theme=dark] .catering-row-stale td:first-child{border-left-color:#22c55e}:root[data-theme=dark]{--shadow-soft: 0 24px 60px rgba(0, 0, 0, .45);--shadow-glow: 0 0 70px rgba(34, 197, 94, .16)}:root[data-theme=dark] .hero-call-sim,:root[data-theme=dark] .dash-preview{box-shadow:0 1px #ffffff0a inset,var(--shadow-soft)}:root[data-theme=dark] .bento-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(45,212,191,.35),transparent 60%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .2s ease;pointer-events:none}:root[data-theme=dark] .bento-card:hover:before{opacity:1}:root[data-theme=dark] .bento-card-icon{background:#22c55e1f}:root[data-theme=dark] .after-col{box-shadow:0 0 0 1px #22c55e40,var(--shadow-glow)}:root[data-theme=dark] .plan-recommended{box-shadow:0 0 0 1px var(--primary),var(--shadow-glow)}:root[data-theme=dark] .trust-strip-badge:hover{color:var(--accent)}:root[data-theme=dark] .cta-glow:before{content:"";position:absolute;inset:-40% -10% auto -10%;height:260px;background:radial-gradient(closest-side,rgba(34,197,94,.22),transparent 70%);animation:dark-cta-glow-pulse 6s ease-in-out infinite;pointer-events:none}@keyframes dark-cta-glow-pulse{0%,to{opacity:.6}50%{opacity:1}}@media (prefers-reduced-motion: reduce){:root[data-theme=dark] .cta-glow:before{animation:none;opacity:.75}}:root[data-theme=dark] .admin-stat-card{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 60%),var(--surface);box-shadow:0 1px #ffffff0d inset,0 10px 24px -14px #0000008c}:root[data-theme=dark] .admin-stat-card:hover{box-shadow:0 1px #ffffff0f inset,0 14px 32px -14px #0009}:root[data-theme=dark] .admin-stat-value{background:linear-gradient(135deg,var(--accent),var(--primary));-webkit-background-clip:text;background-clip:text;color:transparent}:root[data-theme=dark] .login-kicker{box-shadow:0 0 0 1px #22c55e33}@keyframes dark-login-card-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}:root[data-theme=dark] .login-card{animation:dark-login-card-in .35s ease}@media (prefers-reduced-motion: reduce){:root[data-theme=dark] .login-card{animation:none}}:root[data-theme=dark] .navbar-links a.active,:root[data-theme=dark] .public-nav-links a.active{text-shadow:0 0 14px rgba(34,197,94,.45)}.navbar-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:34px;height:34px;padding:0;background:none;border:1px solid var(--border);border-radius:8px;cursor:pointer;flex-shrink:0;order:2}.navbar-hamburger-bar{width:16px;height:2px;background:var(--text);border-radius:999px;transition:transform .15s ease,opacity .15s ease}.navbar-hamburger[aria-expanded=true] .navbar-hamburger-bar:nth-child(1){transform:translateY(6px) rotate(45deg)}.navbar-hamburger[aria-expanded=true] .navbar-hamburger-bar:nth-child(2){opacity:0}.navbar-hamburger[aria-expanded=true] .navbar-hamburger-bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.public-nav-actions-mobile{display:none}@media (max-width: 900px){.navbar{position:relative}.navbar-hamburger{display:flex;order:2;margin-left:auto}.navbar-account{order:3;margin-left:0}.navbar-links{display:none;order:4;flex-basis:100%;width:100%;flex-direction:column;align-items:stretch;gap:2px;position:fixed;top:60px;left:0;right:0;bottom:0;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 12px 24px #0000001f;padding:10px 16px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:15;-webkit-transform:translateZ(0);transform:translateZ(0)}.navbar-links.navbar-links-open{display:flex}.navbar-group-dropdown{-webkit-transform:translateZ(0);transform:translateZ(0)}.navbar-links a{padding:10px 4px;border-bottom:1px solid var(--border);white-space:normal}.navbar-links a:last-child{border-bottom:none}.navbar-group{width:100%}.navbar-group-trigger{width:100%;justify-content:space-between;padding:10px 4px;border-bottom:1px solid var(--border)}.navbar-group-dropdown{position:static;box-shadow:none;border:none;background:none;min-width:0;width:100%;padding:0 0 6px 14px}.navbar-group-item{padding:8px 4px}.navbar-links .dropdown-backdrop{display:none}}@media (max-width: 860px){.public-nav{position:sticky;top:10px;margin:10px 12px 0;padding:8px 8px 8px 18px;border-radius:999px;border:1px solid var(--border);border-bottom:1px solid var(--border);border-image:none;box-shadow:0 10px 30px #00000047;gap:10px}.public-nav-logo{height:26px}.public-nav-brand{gap:8px}.navbar-hamburger{display:flex}.public-nav-actions-desktop{display:none}.public-nav-actions-pill{display:flex;align-items:center;margin-left:auto;margin-right:4px}.public-nav-actions-mobile{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px calc(18px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--surface);position:sticky;bottom:0;z-index:2}.public-nav-actions-mobile .btn{text-align:center;flex-shrink:0}.public-nav-actions-mobile .public-nav-login{flex-shrink:0}}.mobile-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#00000073;display:flex;justify-content:flex-end;flex-direction:column}.mobile-menu-panel{background:var(--surface);width:100%;max-height:80vh;max-height:80dvh;margin-bottom:max(90px,env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:20px 20px 0 0;box-shadow:0 -12px 40px #0006;-webkit-transform:translateZ(0);transform:translateZ(0)}.mobile-menu-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface)}.mobile-menu-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:none;color:var(--text);font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-menu-links{display:flex;flex-direction:column;gap:2px;padding:8px 18px 18px}.mobile-menu-links>a{padding:12px 4px;border-bottom:1px solid var(--border);color:var(--muted);text-decoration:none;font-weight:500}.mobile-menu-links>a:hover,.mobile-menu-links>a.active{color:var(--primary)}@media (min-width: 861px){.mobile-menu-overlay{display:none}}@media (max-width: 420px){.public-nav{margin:8px 8px 0;padding:6px 6px 6px 14px}.public-nav-links{left:8px;right:8px}}.login-card,.signup-card,.modal{max-width:calc(100vw - 32px)}@media (max-width: 480px){.login-card{padding:28px 20px 24px}.modal{padding:18px}}@media (max-width: 720px){.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table th,.data-table td{white-space:nowrap}}@media (max-width: 600px){.page-header{flex-wrap:wrap}.tables-summary-bar{flex-wrap:wrap;gap:16px 28px}.main-content{padding:16px}.public-footer-grid{grid-template-columns:1fr;text-align:center}.public-footer-brand{align-items:center}.public-footer-brand p{max-width:none}}.search-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin-bottom:24px}.search-filters label{flex:1 1 160px;min-width:140px}.search-filters .btn{flex-shrink:0}.restaurant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}@media (max-width: 900px){.restaurant-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.restaurant-grid{grid-template-columns:1fr}}.restaurant-card{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:var(--text);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.restaurant-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:var(--shadow-soft)}.restaurant-card-photo{width:100%;aspect-ratio:16 / 10;object-fit:cover;background:var(--bg);display:block}.restaurant-card-photo-placeholder{width:100%;aspect-ratio:16 / 10;background:linear-gradient(135deg,var(--bg),var(--border));display:flex;align-items:center;justify-content:center;color:var(--muted);font-family:var(--font-heading);font-size:1.3rem}.restaurant-card-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}.restaurant-card-body h3{margin:0;font-size:1.1rem}.restaurant-card-meta{font-size:.85rem;color:var(--muted)}.restaurant-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.tag-chip{font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--bg);color:var(--primary);border:1px solid var(--border)}.favorite-btn{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:#ffffffe6;border:1px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;line-height:1;transition:transform .15s ease,background .15s ease}.favorite-btn:hover{transform:scale(1.08)}.favorite-btn.active{color:var(--danger)}:root[data-theme=dark] .favorite-btn{background:#141816d9}.restaurant-hero{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.restaurant-hero-photo{width:100%;max-height:340px;object-fit:cover;border-radius:var(--radius-lg)}.restaurant-hero-info{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 16px}.restaurant-hero-info h1{margin:0}.restaurant-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}@media (max-width: 860px){.restaurant-detail-grid{grid-template-columns:1fr}}.booking-widget{position:sticky;top:84px}.menu-item-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.menu-item-row:last-child{border-bottom:none}.menu-item-row .price{font-weight:700;color:var(--primary);white-space:nowrap}.info-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:.9rem}.info-row .label{color:var(--muted)}.account-tabs{display:flex;gap:6px;margin-bottom:20px;flex-wrap:wrap}.account-tab{padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-weight:600;cursor:pointer;font-size:.9rem}.account-tab.active{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-brand-contrast)}.reservation-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:10px;background:var(--surface)}.reservation-row .status-pill{font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px;text-transform:capitalize}.status-pill-confirmed{background:#22c55e26;color:var(--success)}.status-pill-cancelled{background:#b3261e1f;color:var(--danger)}.status-pill-completed{background:#64726d26;color:var(--muted)}.status-pill-seated,.status-pill-no_show{background:#b8790b26;color:var(--warning)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.call-log-kpis{margin-bottom:4px}.call-log-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.call-log-skeleton{display:flex;flex-direction:column;gap:8px;margin:16px 0}.call-log-skeleton-row{height:44px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@keyframes call-log-skeleton-pulse{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.call-log-skeleton-row{animation:none;opacity:.75}}.call-log-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:4px 0 16px}.call-log-search{flex:1 1 260px;min-width:220px}.call-log-search input{width:100%}.call-log-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.call-log-filter-field select{min-width:132px}.call-log-scope-note{margin:-8px 0 12px;font-size:.8rem}.call-log-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.call-log-table .status-pill{margin-right:6px}.call-log-link-chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--color-brand-soft);color:var(--color-brand);border:1px solid transparent}.call-log-detail-row td{padding:0;border-bottom:1px solid var(--color-border)}.call-log-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;padding:16px 18px;background:var(--color-surface-raised, var(--color-surface))}.call-log-detail-section h4{margin:0 0 8px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.call-log-detail-section dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 10px}.call-log-detail-section dt{font-size:.78rem;color:var(--color-text-muted)}.call-log-detail-section dd{margin:0;font-size:.85rem;color:var(--color-text)}.call-log-detail-summary{margin:0 0 8px;font-size:.88rem;color:var(--color-text)}.call-log-detail-transcript{margin:0;font-size:.82rem;color:var(--color-text-muted);white-space:pre-wrap;max-height:220px;overflow-y:auto}.call-log-quality{margin:6px 0 0;font-size:.82rem;color:var(--color-text-muted)}@media (max-width: 768px){.call-log-search{flex-basis:100%}.call-log-filters{width:100%}.call-log-filter-field{flex:1 1 140px}.call-log-filter-field select{width:100%}.call-log-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.call-log-table th,.call-log-table td{white-space:nowrap}}.waitlist-kpis{margin-bottom:4px}.waitlist-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.waitlist-skeleton{display:flex;flex-direction:column;gap:8px;margin:16px 0}.waitlist-skeleton-row{height:44px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.waitlist-skeleton-row{animation:none;opacity:.75}}.waitlist-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:4px 0 16px}.waitlist-search{flex:1 1 260px;min-width:220px}.waitlist-search input{width:100%}.waitlist-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.waitlist-filter-field select{min-width:132px}.waitlist-overquote-toggle{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--color-text-muted);white-space:nowrap}.waitlist-overquote-toggle input{width:auto}.waitlist-scope-note{margin:-8px 0 12px;font-size:.8rem}.waitlist-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.waitlist-guest-name{font-weight:600;color:var(--color-text)}.waitlist-guest-phone{font-size:.82rem}.waitlist-over-quote{margin-top:2px;font-size:.76rem;font-weight:600;color:var(--color-warning)}.waitlist-row-over-quote{background:var(--color-warning-soft)}.waitlist-card-over-quote{border-color:var(--color-warning)}.waitlist-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.waitlist-actions select{min-width:110px}.waitlist-row-error{margin-top:4px;font-size:.78rem;color:var(--color-danger)}.waitlist-table-wrap{display:block}.waitlist-cards{display:none;flex-direction:column;gap:10px}@media (max-width: 768px){.waitlist-search{flex-basis:100%}.waitlist-filters{width:100%}.waitlist-filter-field{flex:1 1 140px}.waitlist-filter-field select{width:100%}.waitlist-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.waitlist-table th,.waitlist-table td{white-space:nowrap}}@media (max-width: 640px){.waitlist-table-wrap{display:none}.waitlist-cards{display:flex}}.waitlist-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.waitlist-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.waitlist-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.82rem;color:var(--color-text-muted)}.waitlist-card-wait{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.85rem;color:var(--color-text)}.waitlist-card .waitlist-actions{margin-top:4px}.waitlist-card .waitlist-actions select{flex:1 1 auto}.reservations-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.reservations-skeleton{display:flex;flex-direction:column;gap:8px;margin:16px 0}.reservations-skeleton-row{height:44px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.reservations-skeleton-row{animation:none;opacity:.75}}.reservations-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:4px 0 16px}.reservations-search{flex:1 1 260px;min-width:220px}.reservations-search input{width:100%}.reservations-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.reservations-filter-field select{min-width:132px}.reservations-scope-note{margin:-8px 0 12px;font-size:.8rem}.reservations-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.reservations-guest-name{font-weight:600;color:var(--color-text)}.reservations-guest-phone{font-size:.82rem}.reservations-row-error{margin-top:4px;font-size:.78rem;color:var(--color-danger)}.reservations-table-wrap{display:block}.reservations-cards{display:none;flex-direction:column;gap:10px}@media (max-width: 768px){.reservations-search{flex-basis:100%}.reservations-filters{width:100%}.reservations-filter-field{flex:1 1 140px}.reservations-filter-field select{width:100%}.reservations-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.reservations-table th,.reservations-table td{white-space:nowrap}}@media (max-width: 640px){.reservations-table-wrap{display:none}.reservations-cards{display:flex}}.reservations-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.reservations-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.reservations-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.82rem;color:var(--color-text-muted)}.reservations-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.reservations-actions select{min-width:110px}.reservations-card .reservations-actions{margin-top:4px}.reservations-card .reservations-actions select{flex:1 1 auto}.reservations-unassigned-active{color:var(--color-warning);font-weight:600}.reservations-detail-toggle{margin-left:6px}.reservations-detail-row td{padding-top:4px;padding-bottom:12px}.reservations-detail{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--color-text)}.reservations-detail-label{font-weight:600;color:var(--color-text-muted);margin-right:6px}.reservations-card .reservations-detail{margin-top:8px;padding-top:8px;border-top:1px dashed var(--color-border)}.customers-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.customers-scope-note{margin:-8px 0 12px;font-size:.8rem}.customers-skeleton{display:flex;flex-direction:column;gap:8px;margin:16px 0}.customers-skeleton-row{height:44px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.customers-skeleton-row{animation:none;opacity:.75}}.customers-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:4px 0 16px}.customers-toolbar input[type=search]{flex:1 1 260px;min-width:220px}.customers-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.customers-table-wrap{display:block}.customers-cards{display:none;flex-direction:column;gap:10px}@media (max-width: 768px){.customers-toolbar{width:100%}.customers-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.customers-table th,.customers-table td{white-space:nowrap}}@media (max-width: 640px){.customers-table-wrap{display:none}.customers-cards{display:flex}}.customers-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.customers-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.customers-card-name{font-weight:600;color:var(--color-text)}.customers-card-phone{font-size:.82rem}.customers-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.82rem;color:var(--color-text-muted)}.customers-card-actions{display:flex;justify-content:flex-end}.customers-detail-modal{width:min(640px,92vw)}.customers-detail-metrics{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.85rem;color:var(--color-text);margin:4px 0}.customers-detail-label{font-weight:600;color:var(--color-text-muted);margin-right:6px}.customers-detail-since{margin:0 0 4px;font-size:.82rem}.customers-money-note{margin:0 0 12px;font-size:.78rem}.customers-field-hint{display:block;font-size:.8em;font-weight:400;margin:2px 0 4px}.customers-discard-modal{width:min(420px,92vw)}.reviews-workflow-note{background:var(--color-info-soft);border:1px solid var(--color-info);border-radius:var(--radius-lg);padding:12px 16px;margin:4px 0 16px}.reviews-workflow-note p{margin:0;font-size:.88rem;line-height:1.5;color:var(--color-text-secondary)}.reviews-error{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.reviews-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}.reviews-scope-note{margin:0 0 14px;font-size:.8rem}.reviews-skeleton{display:flex;flex-direction:column;gap:10px;margin:16px 0}.reviews-skeleton-row{height:120px;border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);animation:call-log-skeleton-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.reviews-skeleton-row{animation:none;opacity:.75}}.reviews-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.reviews-empty-hint{font-size:.85rem;max-width:46ch}.reviews-list{display:flex;flex-direction:column;gap:16px}.reviews-card{display:flex;flex-direction:column;gap:10px;padding:16px}.reviews-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.reviews-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.82rem;margin-top:2px}.reviews-card-text{margin:0;color:var(--color-text-primary);white-space:pre-wrap;overflow-wrap:anywhere}.reviews-card-response{display:block;font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.reviews-card-response textarea{width:100%;margin-top:4px;font-weight:400;color:var(--color-text-primary);font-size:.92rem;overflow-wrap:anywhere}.reviews-card-hint{font-size:.8rem;margin:-2px 0 0}.reviews-card-error{margin:0}.reviews-card-actions{display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 480px){.reviews-card-actions .btn{flex:1 1 auto}}.ai-assistant-header-actions{display:flex;flex-wrap:wrap;gap:8px}.ai-assistant-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 16px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.ai-assistant-list{display:flex;flex-direction:column;gap:12px;margin-top:4px}.ai-instruction-card{display:flex;flex-direction:column;gap:8px}.ai-instruction-card-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.ai-instruction-schedule-note{font-size:.8rem}.ai-instruction-content{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.ai-instruction-guidance{margin:0;font-size:.85rem}.ai-instruction-meta{margin:0;font-size:.78rem}.ai-instruction-actions{flex-wrap:wrap}.ai-assistant-composer{margin-bottom:4px}.ai-assistant-composer h2{margin:0 0 10px;font-size:1.05rem}.ai-assistant-composer-step{display:flex;flex-direction:column;align-items:stretch;gap:12px}.ai-assistant-composer-step textarea{width:100%}.ai-assistant-char-count{margin:-6px 0 0;font-size:.78rem;text-align:right}.ai-assistant-schedule-fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin:0;display:flex;flex-direction:column;gap:8px}.ai-assistant-schedule-fieldset legend{padding:0 6px;font-size:.82rem;font-weight:600}.ai-assistant-schedule-toggle{align-items:center}.ai-assistant-schedule-locked-note,.ai-assistant-schedule-tz-note{margin:0;font-size:.8rem}.ai-assistant-guidance-hint{margin:-4px 0 0;font-size:.85rem}.ai-assistant-delete-preview{margin:0;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width: 640px){.ai-assistant-header-actions{width:100%}.ai-assistant-header-actions .btn,.ai-instruction-actions .btn{flex:1 1 auto}}
