:root{
  --bg:#f3f8f7;--surface:#fff;--surface-2:#f8fbfa;--ink:#21343b;--muted:#6f8389;--line:#dce8e6;--primary:#317f7a;--primary-2:#e7f3f1;--blue:#5874b4;--blue-soft:#edf1fa;--lav:#816da0;--lav-soft:#f1eef7;--coral:#d56f5f;--coral-soft:#faeeeb;--warning:#b97839;--warning-soft:#fff4e7;--danger:#bd5c58;--danger-soft:#faeceb;--success:#3f8a6c;--success-soft:#e9f5ef;--shadow:0 16px 44px rgba(53,81,86,.09);--radius:18px;--radius-sm:12px;--sidebar:244px
}
*{box-sizing:border-box}html{font-size:15px;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%}.hidden{display:none!important}.mobile-only{display:none!important}.muted{color:var(--muted)}.eyebrow{margin:0 0 6px;color:var(--primary);font-size:.71rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.eyebrow.light{color:#d7efec}.positive{color:var(--success)}.negative{color:var(--danger)}.full{width:100%}.full-field{grid-column:1/-1}.modal-open{overflow:hidden}.pure-logo,.company-logo-pure{object-fit:contain;background:transparent;border:0;border-radius:0;box-shadow:none}.pure-logo{width:38px;height:38px}.brand-fallback{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--primary-2);color:var(--primary);font-weight:900;font-size:.82rem}

.btn,.mini-btn,.icon-btn,.text-btn,.add-round{border:0;background:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border-radius:11px;font-weight:750;text-decoration:none;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--primary);color:#fff;box-shadow:0 8px 22px rgba(49,127,122,.18)}.btn.secondary{background:var(--surface);border:1px solid var(--line);color:var(--primary)}.btn.ghost{background:var(--surface-2);border:1px solid var(--line)}.btn.danger{background:var(--danger);color:#fff}.btn.danger-outline{color:var(--danger);border:1px solid #ecc8c5;background:#fff}.btn.compact{min-height:35px;padding:0 11px;font-size:.82rem}.icon-btn{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-weight:800}.text-btn{padding:4px;color:var(--primary);font-weight:800}.text-btn:disabled{opacity:.4;cursor:not-allowed}.danger-text{color:var(--danger)}.mini-btn{padding:7px 10px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font-size:.78rem;font-weight:800}.button-row,.modal-actions{display:flex;align-items:center;gap:10px}.button-row.wrap,.modal-actions.wrap{flex-wrap:wrap}.modal-actions{justify-content:flex-end;margin-top:20px}

label{display:flex;flex-direction:column;gap:7px;color:#526a70;font-size:.82rem;font-weight:750}input,select,textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:11px 12px;outline:none;transition:.16s}input:focus,select:focus,textarea:focus{border-color:#8dc3be;box-shadow:0 0 0 3px rgba(49,127,122,.1)}textarea{min-height:92px;resize:vertical}.search-input{min-width:240px}.form-error{min-height:20px;margin:2px 0;color:var(--danger);font-size:.83rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid fieldset{margin:0;border:1px solid var(--line);border-radius:12px;padding:13px}.form-grid legend{padding:0 6px;font-weight:800}.switch-row{flex-direction:row;align-items:center;gap:10px}.switch-row input{width:auto}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.checkbox-grid.seven{grid-template-columns:repeat(4,minmax(0,1fr))}.checkbox-grid label{flex-direction:row;align-items:center;font-weight:600}.checkbox-grid input{width:auto}.code-area{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;min-height:180px}.code-area.tall{min-height:220px}

.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr);background:#fff}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:48px 56px;color:#fff;background:linear-gradient(145deg,#2f7773,#4e8c87 56%,#6a8f9b);overflow:hidden}.login-visual:before,.login-visual:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.login-visual:before{width:420px;height:420px;right:-170px;top:-80px}.login-visual:after{width:280px;height:280px;left:-100px;bottom:-100px}.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;font-weight:850}.login-brand img{width:36px;height:36px}.login-copy{position:relative;z-index:1;max-width:620px}.login-copy h1{margin:0 0 18px;font-size:clamp(2.6rem,5vw,5.2rem);line-height:.97;letter-spacing:-.055em}.login-copy p:last-child{max-width:570px;color:#d8e9e7;font-size:1.05rem}.login-proof{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px}.login-proof span{padding:8px 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;font-size:.76rem}.login-panel{display:grid;place-items:center;padding:40px}.login-card{width:min(430px,100%)}.login-card h2{margin:0 0 8px;font-size:2rem;letter-spacing:-.035em}.login-card>label{margin-top:18px}.login-card>.btn{margin-top:8px}.demo-accounts{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.demo-accounts small{width:100%;color:var(--muted)}.demo-accounts button{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;padding:7px 11px;font-size:.75rem}

.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:var(--sidebar);display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);padding:20px 14px}.brand-area{display:flex;align-items:center;gap:11px;padding:4px 8px 22px}.brand-area>div:last-child{min-width:0}.brand-area strong,.brand-area small{display:block}.brand-area strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-area small{color:var(--muted);font-size:.73rem}.nav-list{display:flex;flex-direction:column;gap:6px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:11px;background:none;color:#61767c;font-weight:750;text-align:left}.nav-item:hover,.nav-item.active{background:var(--primary-2);color:var(--primary)}.nav-icon{display:grid;place-items:center;width:20px}.nav-item b{margin-left:auto;min-width:20px;padding:2px 6px;border-radius:999px;background:var(--coral-soft);color:var(--coral);font-size:.68rem;text-align:center}.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:8px;padding:14px 6px 0;border-top:1px solid var(--line)}.user-mini{min-width:0;display:flex;align-items:center;gap:9px;flex:1}.user-mini>span{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:10px;background:var(--blue-soft);color:var(--blue);font-weight:850}.user-mini div{min-width:0}.user-mini b,.user-mini small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini small{color:var(--muted);font-size:.7rem}.sidebar-foot .icon-btn{width:35px;height:35px}.main-area{min-height:100vh;margin-left:var(--sidebar)}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;min-height:84px;padding:14px 28px;background:rgba(243,248,247,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.page-heading{min-width:0}.page-heading h1{margin:0;font-size:1.75rem;line-height:1.05;letter-spacing:-.035em}.page-heading small{display:block;margin-top:5px;font-size:.72rem}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.notification-btn{position:relative}.notif-dot{position:absolute;right:7px;top:7px;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:var(--coral)}

.global-filters{position:sticky;top:84px;z-index:17;margin:18px 28px 0;display:flex;align-items:end;gap:10px}.global-filters label{min-width:130px}.global-filters .quick-range{margin-right:auto}.view{display:none;padding:22px 28px 46px}.view.active{display:block}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 7px 28px rgba(55,84,88,.04)}.compact-panel{padding:11px 13px;border-radius:14px}.panel-head,.view-actions,.toolbar,.intro-panel{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-head{margin-bottom:16px}.panel-head h2,.intro-panel h2{margin:0;font-size:1.2rem;letter-spacing:-.02em}.panel-head p,.intro-panel p{margin-top:0}.intro-panel>div{max-width:760px}.view-actions{margin-bottom:16px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.metrics-grid.six{grid-template-columns:repeat(6,minmax(0,1fr))}.metric-card{min-height:128px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);display:flex;flex-direction:column}.metric-card span{color:var(--muted);font-size:.76rem;font-weight:750}.metric-card strong{margin:14px 0 6px;font-size:1.6rem;letter-spacing:-.04em}.metric-card small{margin-top:auto;color:var(--muted);font-size:.72rem}.metric-card.primary-metric{background:linear-gradient(145deg,#f3fbf9,#fff);border-color:#c8e3df}.metric-card.warning-metric{background:var(--warning-soft)}.metric-card.danger-metric{background:var(--danger-soft)}.content-grid{display:grid;gap:16px;margin-bottom:16px}.content-grid.two-one{grid-template-columns:2fr 1fr}.content-grid.equal{grid-template-columns:1fr 1fr}

.segmented{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);white-space:nowrap}.segmented button{border:0;border-radius:8px;background:none;padding:7px 10px;color:var(--muted);font-size:.76rem;font-weight:800}.segmented button.active{background:#fff;color:var(--primary);box-shadow:0 2px 9px rgba(55,84,88,.08)}.orders-toolbar{flex-wrap:wrap}.toolbar-right{display:flex;align-items:center;gap:10px}.order-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:center;gap:12px;width:100%;padding:13px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left}.order-row:last-child{border-bottom:0}.order-row>div:first-child strong,.order-row>div:first-child small{display:block}.order-row small{color:var(--muted);font-size:.72rem}.order-row-status{display:flex;gap:5px}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:3px 8px;border-radius:999px;font-size:.67rem;font-weight:850;white-space:nowrap}.op-submitted,.pay-pending_verification{background:var(--warning-soft);color:var(--warning)}.op-accepted,.op-preparing{background:var(--blue-soft);color:var(--blue)}.op-ready,.op-delivered,.op-completed,.pay-paid{background:var(--success-soft);color:var(--success)}.op-cancelled,.pay-voided,.pay-refunded{background:var(--danger-soft);color:var(--danger)}.pay-unpaid{background:#f0f1f3;color:#68757a}.payment-method-badge{background:#eef3f8;color:#163c61}.status-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.sla-pill{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;font-size:.68rem;font-weight:850}.sla-pill.good{background:var(--success-soft);color:var(--success)}.sla-pill.warning{background:var(--warning-soft);color:var(--warning)}.sla-pill.danger{background:var(--danger-soft);color:var(--danger)}.rank-row{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.rank-row:last-child{border-bottom:0}.rank-row>b{color:#91a2a6}.rank-row strong,.rank-row small{display:block}.rank-row small{margin-top:3px;color:var(--muted);font-size:.72rem}.bar-chart{height:250px;display:flex;align-items:end;gap:5px;padding-top:14px}.bar-item{height:100%;min-width:0;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:5px}.bar-fill{width:70%;min-height:3px;border-radius:6px 6px 2px 2px;background:linear-gradient(to top,#4f8f89,#91c9c4)}.bar-item small{color:var(--muted);font-size:.62rem}.performance-row,.breakdown-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(80px,1fr) auto;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.performance-row:last-child,.breakdown-row:last-child{border-bottom:0}.performance-row strong,.performance-row small,.breakdown-row strong,.breakdown-row small{display:block}.performance-row small,.breakdown-row small{margin-top:3px;color:var(--muted);font-size:.7rem}.progress-track{height:7px;border-radius:999px;background:#edf3f2;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),#7fbbb5)}

.orders-board{margin-top:16px}.order-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.order-card{display:flex;flex-direction:column;min-height:250px;padding:17px;border:1px solid var(--line);border-top:4px solid var(--success);border-radius:16px;background:#fff}.order-card.sla-warning{border-top-color:var(--warning)}.order-card.sla-danger{border-top-color:var(--danger)}.order-card-head{display:flex;justify-content:space-between;gap:10px}.order-card h3{margin:0 0 3px;font-size:1rem}.order-card small{color:var(--muted)}.order-status-stack{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.order-items-summary{color:#51676d;font-size:.8rem;line-height:1.6}.order-meta{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:13px;border-top:1px solid var(--line);font-size:.74rem}.order-meta strong{margin-left:auto}.order-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.kitchen-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.kitchen-column{min-width:0;padding:12px;border:1px solid var(--line);border-radius:16px;background:#edf4f3}.kitchen-column-head{display:flex;align-items:center;justify-content:space-between;padding:5px 4px 13px}.kitchen-column-head h2{margin:0;font-size:1.05rem}.kitchen-column-head span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:999px;background:#fff;font-size:.72rem;font-weight:850}.kitchen-ticket{margin-bottom:10px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--success);border-radius:13px;background:#fff}.kitchen-ticket.warning{border-left-color:var(--warning)}.kitchen-ticket.danger{border-left-color:var(--danger)}.ticket-head{display:flex;justify-content:space-between;gap:10px}.ticket-head strong,.ticket-head small{display:block}.ticket-head small{color:var(--muted);font-size:.68rem}.ticket-items{margin:12px 0}.ticket-items>div{display:flex;gap:8px;padding:7px 0;border-top:1px dashed var(--line)}.ticket-items span,.ticket-items small,.ticket-items em{display:block}.ticket-items small{color:var(--muted);font-size:.7rem}.ticket-items em{color:var(--coral);font-size:.7rem}.ticket-note{padding:8px;border-radius:8px;background:var(--warning-soft);font-size:.73rem}

.outlet-tabs,.category-tabs{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.outlet-tabs button,.category-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 13px;color:var(--muted);font-size:.76rem;font-weight:800}.outlet-tabs button.active,.category-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.menu-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.menu-admin-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}.menu-admin-image{position:relative;height:170px;background:#edf3f2}.menu-admin-image img{width:100%;height:100%;object-fit:cover}.menu-admin-image>span{display:grid;place-items:center;height:100%;color:var(--muted)}.availability{position:absolute;left:10px;top:10px;padding:5px 8px;border-radius:999px;font-style:normal;font-size:.67rem;font-weight:850}.availability.on{background:#fff;color:var(--success)}.availability.off{background:var(--danger-soft);color:var(--danger)}.menu-admin-copy{padding:15px}.menu-admin-copy h3{margin:0 0 6px}.menu-admin-copy>p:not(.eyebrow){min-height:42px;color:var(--muted);font-size:.78rem}.chip-row{display:flex;flex-wrap:wrap;gap:5px}.chip-row span,.menu-tags span{padding:4px 7px;border-radius:999px;background:var(--primary-2);color:var(--primary);font-size:.64rem;font-weight:750}.chip-row .allergen,.menu-tags .allergen{background:var(--coral-soft);color:var(--coral)}.card-footer{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.card-footer span{color:var(--muted);font-size:.72rem}.card-footer .text-btn{margin-left:auto}

.qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px}.qr-card{position:relative;display:grid;grid-template-columns:150px 1fr;gap:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.qr-preview{display:grid;place-items:center;padding:9px;border:1px solid var(--line);border-radius:13px}.qr-preview img{width:128px;height:128px}.qr-copy{min-width:0}.qr-copy h3{margin:0 0 6px}.qr-copy p{color:var(--muted)}.qr-copy code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:9px;border-radius:8px;background:var(--surface-2);font-size:.68rem}.status-dot{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.67rem;font-weight:850}.status-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#b5c0c2}.status-dot.active:before{background:var(--success)}.qr-card>.status-dot{position:absolute;right:14px;top:14px}

.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:850px}.table-wrap th,.table-wrap td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:.75rem;vertical-align:top}.table-wrap th{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.table-wrap td small{display:block;color:var(--muted)}.table-link{border:0;background:none;padding:0;color:var(--primary);font-weight:800}.user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.user-card{position:relative;display:grid;grid-template-columns:48px 1fr auto;gap:13px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:16px;background:#fff}.user-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:var(--blue-soft);color:var(--blue);font-weight:900}.user-card h3,.user-card p{margin:0}.user-card p{margin:3px 0 9px;color:var(--muted);font-size:.75rem}.user-card>.text-btn{position:absolute;right:13px;bottom:11px}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full-span{grid-column:1/-1}.company-profile{display:flex;gap:18px;align-items:flex-start}.company-logo-pure{width:120px;height:90px}.company-logo-empty{display:grid;place-items:center;flex:0 0 120px;height:90px;border:1px dashed var(--line);color:var(--muted);font-size:.7rem}.company-profile h3,.company-profile p{margin:0 0 5px}.company-profile small{color:var(--muted)}.setting-lines>div,.config-row{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.setting-lines code{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem}.promotion-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.promotion-setting-card{position:relative;display:grid;grid-template-columns:120px 1fr;gap:14px;padding:13px;border:1px solid var(--line);border-radius:14px}.promotion-thumb{position:relative;height:105px;border-radius:10px;overflow:hidden;background:var(--surface-2)}.promotion-thumb img{width:100%;height:100%;object-fit:cover}.promotion-thumb span{position:absolute;left:7px;bottom:7px;padding:4px 7px;border-radius:999px;background:#fff;font-size:.62rem;font-weight:850}.promotion-setting-card h3,.promotion-setting-card p{margin:0 0 6px}.promotion-setting-card p{color:var(--muted);font-size:.74rem}.promotion-setting-card>.status-dot{position:absolute;right:11px;top:10px}.config-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.config-columns h4{margin-top:0}.config-row{font-size:.75rem}

.modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:rgba(36,58,63,.36);backdrop-filter:blur(5px)}.modal-panel{position:relative;width:min(610px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:25px;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.modal-panel.wide{width:min(920px,100%)}.modal-close{position:sticky;float:right;top:0;z-index:2;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:1.2rem}.modal-title{margin-bottom:18px}.modal-title h2{margin:0;font-size:1.55rem}.order-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.detail-block{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.detail-block h4{margin:0 0 12px}.detail-line,.detail-item{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.78rem}.detail-item>div small{display:block;color:var(--muted);margin-top:3px}.detail-line:last-child,.detail-item:last-child{border-bottom:0}.detail-line.discount,.cart-totals .discount{color:var(--success)}.detail-line.total{padding-top:12px;font-size:.9rem}.detail-note{padding:10px;border-radius:9px;background:var(--warning-soft);font-size:.75rem}.timeline-block{margin-top:14px}.timeline-item{display:grid;grid-template-columns:11px 1fr;gap:10px;padding:0 0 14px}.timeline-item i{position:relative;width:9px;height:9px;margin-top:5px;border-radius:50%;background:var(--primary)}.timeline-item i:after{content:"";position:absolute;left:4px;top:10px;width:1px;height:calc(100% + 5px);background:var(--line)}.timeline-item:last-child i:after{display:none}.timeline-item b,.timeline-item small{display:block}.timeline-item small{color:var(--muted);font-size:.69rem}.timeline-item p{margin:4px 0 0;color:var(--muted);font-size:.72rem}.permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.permission-groups fieldset{display:flex;flex-direction:column;gap:8px}.permission-groups label{flex-direction:row;align-items:center;font-weight:600}.permission-groups input{width:auto}

.notification-drawer{position:fixed;z-index:90;right:16px;top:16px;bottom:16px;width:min(390px,calc(100vw - 32px));display:flex;flex-direction:column;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}.drawer-head,.drawer-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:0}.drawer-foot{margin-top:auto;border-top:1px solid var(--line);border-bottom:0}.drawer-foot .switch-row{font-size:.73rem}.notification-drawer>#notificationList{overflow:auto;padding:8px}.notification-item{display:block;width:100%;padding:12px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left}.notification-item.unread{background:var(--primary-2)}.notification-item strong,.notification-item small{display:block}.notification-item p{margin:4px 0;color:var(--muted);font-size:.75rem}.notification-item small{font-size:.66rem;color:#93a3a6}.toast-stack{position:fixed;z-index:120;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px}.toast{min-width:240px;max-width:380px;padding:12px 14px;border:1px solid #cbe1dc;border-radius:11px;background:#fff;box-shadow:var(--shadow);font-size:.78rem;font-weight:750}.toast.error{border-color:#efcbc8;color:var(--danger)}.empty-state{padding:35px 20px;text-align:center;color:var(--muted)}.empty-state strong{color:var(--ink)}.empty-state p{margin:5px 0}.fatal-state{display:grid;place-items:center;min-height:100vh;padding:30px;text-align:center}

/* Guest ordering */
.guest-body{background:#f4f8f7;padding-bottom:95px}.guest-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;padding:12px max(20px,calc((100vw - 1240px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.guest-brand{display:flex;align-items:center;gap:11px}.guest-brand strong,.guest-brand small{display:block}.guest-brand small{color:var(--muted);font-size:.7rem}.guest-header-actions{display:flex;gap:8px}.guest-main{width:min(1240px,calc(100% - 32px));margin:0 auto}.guest-hero{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:32px 0 24px}.guest-hero h1{margin:0 0 7px;font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.055em}.location-line,.estimate-line{margin:5px 0;color:var(--muted)}.estimate-line{font-size:.78rem}.locked-mark{display:inline-flex;padding:3px 7px;border-radius:999px;background:var(--primary-2);color:var(--primary);font-size:.65rem;font-weight:850}.guest-outlet-select{min-width:230px}.promotion-section{margin-bottom:25px}.section-heading h2{margin:0}.promotion-carousel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.promotion-card{display:grid;grid-template-columns:42% 1fr;min-height:230px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 8px 28px rgba(55,84,88,.05)}.promotion-image{position:relative;background:#eaf2f1}.promotion-image img{width:100%;height:100%;object-fit:cover}.promotion-image>span{position:absolute;left:12px;top:12px;padding:6px 9px;border-radius:999px;background:#fff;color:var(--primary);font-size:.7rem;font-weight:850}.promotion-copy{display:flex;flex-direction:column;padding:22px}.promotion-copy h3{margin:0 0 8px;font-size:1.35rem}.promotion-copy>p:not(.eyebrow){color:var(--muted);font-size:.82rem}.promotion-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.promotion-actions span{color:var(--muted);font-size:.7rem}.guest-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:22px}.menu-column{min-width:0}.sticky-discovery{position:sticky;top:72px;z-index:18;padding:12px 0;background:rgba(244,248,247,.96);backdrop-filter:blur(12px)}.guest-search{display:flex;align-items:center;gap:9px;margin-bottom:9px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:#fff}.guest-search input{border:0;padding-left:0;box-shadow:none}.guest-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-bottom:30px}.guest-menu-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.18s}.guest-menu-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(55,84,88,.08)}.guest-menu-card.sold-out{opacity:.65}.guest-menu-image{position:relative;height:190px;background:#eaf1f0}.guest-menu-image img{width:100%;height:100%;object-fit:cover}.guest-menu-image>span{display:grid;place-items:center;height:100%;color:var(--muted)}.guest-menu-image i{position:absolute;inset:0;display:grid;place-items:center;background:rgba(255,255,255,.65);font-style:normal;font-weight:900}.guest-menu-copy{padding:15px}.guest-menu-copy h3{margin:0 0 6px;font-size:1rem}.guest-menu-copy>p:not(.eyebrow){min-height:42px;margin:0 0 9px;color:var(--muted);font-size:.77rem}.menu-tags{display:flex;flex-wrap:wrap;gap:5px;min-height:24px}.guest-menu-footer{display:flex;align-items:center;gap:9px;margin-top:13px}.guest-menu-footer span{color:var(--muted);font-size:.7rem}.add-round{display:grid;place-items:center;width:34px;height:34px;margin-left:auto;border-radius:10px;background:var(--primary);color:#fff;font-size:1.2rem}.add-round:disabled{background:#b7c3c3}.guest-cart{position:sticky;top:92px;align-self:start;max-height:calc(100vh - 112px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.cart-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cart-head h2{margin:0}.cart-head>span{color:var(--muted);font-size:.72rem}.cart-lines{margin:15px 0}.cart-line{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.cart-line img{width:52px;height:52px;border-radius:10px;object-fit:cover;background:var(--surface-2)}.cart-line strong,.cart-line small,.cart-line span{display:block}.cart-line strong{font-size:.78rem}.cart-line small{color:var(--muted);font-size:.66rem}.cart-line span{margin-top:3px;color:var(--primary);font-size:.72rem;font-weight:800}.cart-qty{display:flex;align-items:center;gap:7px}.cart-qty button,.quantity-picker button{display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:8px;background:#fff}.promo-entry{display:flex;gap:7px;margin:13px 0}.promo-entry input{min-width:0}.promo-entry.large{margin:16px 0}.applied-promo{display:flex;justify-content:space-between;gap:12px;padding:10px;border-radius:10px;background:var(--success-soft);color:var(--success);font-size:.75rem}.cart-warning{margin:12px 0;padding:11px 12px;border:1px solid #ecc8c5;border-radius:11px;background:var(--danger-soft);color:var(--danger)}.cart-warning b,.cart-warning span{display:block}.cart-warning b{font-size:.78rem}.cart-warning span{margin-top:3px;font-size:.7rem}.btn:disabled,.mini-btn:disabled,.icon-btn:disabled,.add-round:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none}.cart-totals{margin:13px 0}.cart-totals>div{display:flex;justify-content:space-between;padding:5px 0;color:var(--muted);font-size:.75rem}.cart-totals .total{margin-top:7px;padding-top:11px;border-top:1px solid var(--line);color:var(--ink);font-size:.9rem}.cart-empty{padding:38px 8px;text-align:center}.cart-empty>span{display:block;font-size:2rem;color:#9aabaa}.cart-empty strong{display:block}.cart-empty p{color:var(--muted);font-size:.75rem}.mobile-cart-bar{display:none}.menu-detail-hero{display:grid;grid-template-columns:250px 1fr;gap:20px}.menu-detail-hero img{width:100%;height:220px;object-fit:cover;border-radius:15px}.menu-detail-hero h2{margin:0 0 8px;font-size:1.7rem}.menu-detail-hero p:not(.eyebrow){color:var(--muted)}.modifier-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.modifier-group{margin:0;padding:13px;border:1px solid var(--line);border-radius:13px}.modifier-group legend{font-weight:850}.modifier-group legend span{margin-left:5px;color:var(--primary);font-size:.65rem}.modifier-group>p{margin:0 0 8px;color:var(--muted);font-size:.7rem}.modifier-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:8px 0;border-top:1px solid var(--line);font-weight:600}.modifier-option input{width:auto}.modifier-option b{font-size:.7rem}.line-note{margin-top:12px}.quantity-picker{display:flex;align-items:center;justify-content:center;gap:13px;margin:15px 0}.quantity-picker button{width:36px;height:36px}.checkout-progress{display:flex;align-items:center;gap:8px;margin-bottom:22px}.checkout-progress span{color:var(--muted);font-size:.73rem;font-weight:800}.checkout-progress span.active,.checkout-progress span.done{color:var(--primary)}.checkout-progress i{height:1px;flex:1;background:var(--line)}.review-lines{border:1px solid var(--line);border-radius:13px;padding:5px 14px}.review-line{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.review-line:last-child{border-bottom:0}.review-line b,.review-line small{display:block}.review-line small{color:var(--muted);font-size:.7rem}.review-total{padding:12px;border-radius:12px;background:var(--surface-2)}.section-label{display:block;margin-bottom:8px}.option-grid,.payment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-option,.payment-option{padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left}.service-option.active,.payment-option.active{border-color:#79b4ae;background:var(--primary-2)}.service-option b,.service-option small,.payment-option b,.payment-option small{display:block}.service-option small,.payment-option small{margin-top:4px;color:var(--muted);font-size:.67rem}.service-option:disabled{cursor:default}.locked-location,.secure-checkout{padding:13px;border:1px solid #cbe3df;border-radius:12px;background:var(--primary-2)}.locked-location span,.locked-location strong,.locked-location small{display:block}.locked-location small,.secure-checkout p{margin:4px 0 0;color:var(--muted);font-size:.7rem}.secure-checkout span{font-weight:850}.success-mark{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 15px;border-radius:50%;background:var(--success-soft);color:var(--success);font-size:1.8rem;font-weight:900}.tracking-head{text-align:center;margin-bottom:17px}.tracking-head h2{margin:0 0 7px}.tracking-head .status-row{justify-content:center}.tracking-progress{display:flex;gap:0;margin:24px 0}.progress-step{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;gap:7px;color:var(--muted);font-size:.62rem;text-align:center}.progress-step:before{content:"";position:absolute;top:7px;left:-50%;width:100%;height:2px;background:var(--line)}.progress-step:first-child:before{display:none}.progress-step i{position:relative;z-index:1;width:16px;height:16px;border:3px solid #fff;border-radius:50%;background:#cbd5d5;box-shadow:0 0 0 1px var(--line)}.progress-step.done i,.progress-step.done:before{background:var(--primary)}

@media(max-width:1180px){.metrics-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.order-list,.menu-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-layout{grid-template-columns:minmax(0,1fr) 320px}.promotion-card{grid-template-columns:38% 1fr}}
@media(max-width:940px){:root{--sidebar:220px}.desktop-only{display:none!important}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid.two-one,.content-grid.equal{grid-template-columns:1fr}.order-list{grid-template-columns:repeat(2,minmax(0,1fr))}.qr-grid{grid-template-columns:1fr}.settings-layout{grid-template-columns:1fr}.promotion-settings-grid{grid-template-columns:1fr}.config-columns{grid-template-columns:1fr}.guest-layout{grid-template-columns:1fr}.desktop-cart{display:none}.guest-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-cart-bar{position:fixed;z-index:45;left:16px;right:16px;bottom:max(14px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:0;border-radius:15px;background:var(--primary);color:#fff;box-shadow:0 14px 34px rgba(49,127,122,.3)}.mobile-cart-bar span{text-align:left}.mobile-cart-bar b,.mobile-cart-bar small{display:block}.mobile-cart-bar small{opacity:.8;font-size:.68rem}.mobile-cart-sheet #guestCart{display:block;position:static;max-height:none;border:0;padding:0}}
@media(max-width:760px){html{font-size:14px}.mobile-only{display:grid!important}.sidebar{transform:translateX(-105%);transition:.2s}.sidebar.open{transform:translateX(0);box-shadow:var(--shadow)}.sidebar-backdrop{position:fixed;inset:0;z-index:25;background:rgba(34,55,60,.28)}.main-area{margin-left:0}.topbar{min-height:72px;padding:10px 15px}.page-heading h1{font-size:1.42rem}.global-filters{position:static;margin:12px 15px 0;display:grid;grid-template-columns:1fr 1fr}.global-filters .quick-range{grid-column:1/-1;max-width:100%;overflow:auto}.global-filters .btn{align-self:end}.view{padding:15px 15px 35px}.metrics-grid,.metrics-grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:112px;padding:14px}.metric-card strong{font-size:1.35rem}.toolbar-right{width:100%;flex-wrap:wrap}.orders-toolbar .search-input{flex:1;min-width:180px}.order-list,.menu-admin-grid,.user-grid{grid-template-columns:1fr}.kitchen-board{display:flex;overflow:auto;scroll-snap-type:x mandatory}.kitchen-column{flex:0 0 86vw;scroll-snap-align:start}.qr-card{grid-template-columns:110px 1fr}.qr-preview img{width:95px;height:95px}.panel{padding:16px}.promotion-carousel{display:flex;overflow:auto;scroll-snap-type:x mandatory}.promotion-card{flex:0 0 88vw;grid-template-columns:38% 1fr;scroll-snap-align:start}.guest-header{padding:10px 15px}.guest-main{width:min(100% - 24px,1240px)}.guest-hero{align-items:flex-start;padding:25px 0 18px}.guest-hero h1{font-size:2.25rem}.guest-outlet-select{min-width:170px}.sticky-discovery{top:64px}.guest-menu-grid{grid-template-columns:1fr}.guest-menu-card{display:grid;grid-template-columns:124px 1fr}.guest-menu-image{height:100%;min-height:150px}.guest-menu-copy>p:not(.eyebrow){min-height:0}.menu-detail-hero{grid-template-columns:1fr}.menu-detail-hero img{height:210px}.modifier-groups{grid-template-columns:1fr}.option-grid,.payment-grid{grid-template-columns:1fr 1fr}.order-detail-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid>*{grid-column:1}.permission-groups{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:1fr}.modal{padding:9px}.modal-panel{max-height:calc(100vh - 18px);padding:18px;border-radius:16px}.toast-stack{left:12px;right:12px;bottom:90px}.toast{min-width:0;max-width:none}.notification-drawer{right:8px;top:8px;bottom:8px;width:calc(100vw - 16px)}}
@media(max-width:520px){.guest-header-actions .btn{padding:0 10px}.guest-brand strong{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-hero{display:block}.guest-outlet-select{margin-top:14px;width:100%}.promotion-card{flex-basis:94vw;grid-template-columns:1fr;min-height:360px}.promotion-image{height:160px}.metrics-grid,.metrics-grid.six{grid-template-columns:1fr 1fr;gap:9px}.metric-card{min-height:108px}.order-row{grid-template-columns:1fr auto}.order-row-status{grid-column:1/-1}.order-row>.sla-pill{display:none}.qr-card{grid-template-columns:1fr}.qr-preview{width:140px}.guest-menu-card{grid-template-columns:112px 1fr}.guest-menu-image{min-height:145px}.guest-menu-copy{padding:12px}.guest-menu-footer{flex-wrap:wrap}.menu-tags span{font-size:.58rem}.option-grid,.payment-grid{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1}.tracking-progress{overflow:auto}.progress-step{min-width:82px}.progress-step:before{left:-50%}.checkbox-grid.seven{grid-template-columns:repeat(2,1fr)}}

/* v6 operational UI */
.settings-nav{position:sticky;top:158px;z-index:12;display:flex;align-items:center;gap:7px;margin-bottom:16px;overflow:auto;scrollbar-width:none;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.settings-nav::-webkit-scrollbar{display:none}.settings-nav a{flex:0 0 auto;padding:8px 12px;border-radius:10px;color:var(--muted);font-size:.76rem;font-weight:800;text-decoration:none}.settings-nav a:hover{background:var(--primary-2);color:var(--primary)}
.url-health{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.url-health article{padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.url-health span,.url-health b,.url-health code{display:block}.url-health span{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.url-health b{margin:7px 0 4px}.url-health code{overflow:hidden;text-overflow:ellipsis;color:var(--primary);font-size:.72rem;white-space:nowrap}.url-health .good{border-color:#b9decf;background:var(--success-soft)}.url-health .warn{border-color:#ead3b6;background:var(--warning-soft)}
.url-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice-card{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.choice-card:has(input:checked){border-color:#75b5af;background:var(--primary-2);box-shadow:0 0 0 2px rgba(49,127,122,.08)}.choice-card input{width:auto;margin-top:4px}.choice-card b,.choice-card small{display:block}.choice-card small{margin-top:4px;color:var(--muted);font-weight:500}.url-preview{padding:14px;border:1px dashed #9ac6c2;border-radius:12px;background:var(--primary-2)}.url-preview span,.url-preview code{display:block}.url-preview span{margin-bottom:6px;color:var(--muted);font-size:.7rem;font-weight:800}.url-preview code{overflow-wrap:anywhere;color:var(--primary);font-size:.82rem}
.alert-controls{display:grid;gap:12px;padding:14px;border-top:1px solid var(--line);background:var(--surface-2)}.alert-controls>label:not(.switch-row){display:grid;grid-template-columns:86px 1fr;align-items:center}.alert-controls input[type=range]{padding:0}.live-popup-stack{position:fixed;z-index:120;right:22px;top:104px;display:grid;width:min(390px,calc(100vw - 28px));gap:10px;pointer-events:none}.live-popup{position:relative;padding:17px 18px;border:1px solid var(--line);border-left:5px solid var(--primary);border-radius:15px;background:#fff;box-shadow:0 20px 54px rgba(35,62,67,.2);animation:popupIn .22s ease-out;pointer-events:auto}.live-popup.new-order{border-left-color:var(--primary)}.live-popup.payment{border-left-color:var(--success)}.live-popup.overdue{border-left-color:var(--danger)}.live-popup.guest-request{border-left-color:var(--blue)}.live-popup h3{margin:0 32px 5px 0;font-size:1.02rem}.live-popup>p:not(.eyebrow){margin:0 0 8px;color:var(--muted)}.live-popup>small{display:block;margin:0 0 12px;color:var(--primary);font-weight:800}.popup-close{position:absolute;right:9px;top:8px;width:30px;height:30px;border:0;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:1.1rem}.live-popup .button-row{margin-top:12px}@keyframes popupIn{from{opacity:0;transform:translateX(18px) scale(.98)}to{opacity:1;transform:none}}
.qr-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:11px 0}.qr-stat-grid span{padding:8px;border-radius:9px;background:var(--surface-2);text-align:center}.qr-stat-grid b,.qr-stat-grid small{display:block}.qr-stat-grid b{font-size:.8rem}.qr-stat-grid small{margin-top:2px;color:var(--muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.04em}.qr-design-preview{display:grid;place-items:center;min-height:320px;padding:18px;border:1px dashed var(--line);border-radius:15px;background:#f5f8f8}.qr-design-preview canvas{max-width:100%;height:auto;border-radius:10px;box-shadow:var(--shadow)}
.visual-builder{padding:16px!important}.modifier-builder-group{margin:12px 0;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.builder-head h3,.builder-head p{margin:0}.builder-head p{margin-top:4px;color:var(--muted);font-size:.75rem}.compact-grid{gap:10px}.modifier-options-builder{display:grid;gap:7px;margin:11px 0}.modifier-option-row{display:grid;grid-template-columns:1fr 1.35fr .75fr 40px;gap:7px;align-items:center}.modifier-option-row input{min-width:0}.hours-editor{display:grid;gap:7px}.hours-row{display:grid;grid-template-columns:145px 1fr auto 1fr;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--surface-2)}.hours-row input[type=time]{padding:8px}.hours-row>span{color:var(--muted);font-size:.72rem}
.visual-config-section{margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.config-editor-row{display:grid;grid-template-columns:1fr 1.25fr auto 40px;align-items:center;gap:8px;margin-top:8px;padding:9px;border:1px solid var(--line);border-radius:11px;background:#fff}.config-editor-row.payment{grid-template-columns:.8fr 1fr 1.35fr auto auto 40px}.config-editor-row.shift{grid-template-columns:.8fr 1fr .75fr .75fr auto 40px}.config-editor-row .switch-row{justify-content:center;font-size:.72rem}
.outlet-operation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.outlet-operation-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.outlet-operation-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.outlet-operation-card h3,.outlet-operation-card p{margin:0}.outlet-operation-card p{margin-top:4px;color:var(--muted);font-size:.72rem}.outlet-operation-card .status-badge{margin-left:auto}.outlet-operation-card dl{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:13px 0}.outlet-operation-card dl div{padding:8px;border-radius:9px;background:#fff}.outlet-operation-card dt{color:var(--muted);font-size:.62rem;text-transform:uppercase}.outlet-operation-card dd{margin:3px 0 0;font-size:.78rem;font-weight:800}
.guest-request-strip{margin-bottom:16px;padding:16px;border:1px solid #cbdaf0;border-radius:16px;background:var(--blue-soft)}.guest-request-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.guest-request-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgba(88,116,180,.18);border-radius:12px;background:#fff}.guest-request-card b,.guest-request-card span,.guest-request-card small{display:block}.guest-request-card span{margin-top:3px;color:var(--muted);font-size:.7rem}.guest-request-card small{margin-top:5px}
.outlet-status-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;width:min(100% - 32px,1240px);margin:10px auto 0;padding:11px 15px;border-radius:13px}.outlet-status-banner.open{border:1px solid #c2dfd2;background:var(--success-soft);color:#2d6e57}.outlet-status-banner.closed{border:1px solid #ecc8c5;background:var(--danger-soft);color:#994643}.outlet-status-banner b,.outlet-status-banner span{display:block}.outlet-status-banner span{margin-top:2px;font-size:.72rem}.outlet-status-banner small{font-weight:800}
.promotion-image{position:relative}.promotion-image i{position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,47,52,.14),transparent 72%);pointer-events:none}.promotion-terms{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.promotion-terms span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.78);color:var(--muted);font-size:.62rem;font-weight:800}.guest-menu-card.recommend{border-color:#bcdcd8;box-shadow:0 8px 28px rgba(49,127,122,.08)}.recommended-pairing{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.recommended-pairing>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.recommended-pairing button{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left}.recommended-pairing b{color:var(--primary);font-size:.72rem}.remaining-time{display:inline-flex;align-items:baseline;gap:7px;margin-top:12px;padding:9px 12px;border-radius:11px;background:var(--primary-2)}.remaining-time b{font-size:1.25rem;color:var(--primary)}.remaining-time span{color:var(--muted);font-size:.68rem}.assistance-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.assistance-options label{position:relative;display:block;cursor:pointer}.assistance-options input{position:absolute;opacity:0;pointer-events:none}.assistance-options span{display:block;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;font-weight:750}.assistance-options label:has(input:checked) span{border-color:#77b5af;background:var(--primary-2);color:var(--primary)}

@media(max-width:940px){.settings-nav{top:150px}.url-health{grid-template-columns:1fr}.outlet-operation-grid,.guest-request-list{grid-template-columns:1fr}.config-editor-row.payment,.config-editor-row.shift{grid-template-columns:1fr 1fr}.config-editor-row.payment .icon-btn,.config-editor-row.shift .icon-btn{justify-self:end}.live-popup-stack{top:88px}}
@media(max-width:760px){.settings-nav{position:static;margin-bottom:12px}.url-mode-grid{grid-template-columns:1fr}.modifier-option-row{grid-template-columns:1fr 1fr 42px}.modifier-option-row [data-opt-price]{grid-column:1/3}.hours-row{grid-template-columns:1fr 1fr auto 1fr}.hours-row label{grid-column:1/-1}.config-editor-row,.config-editor-row.payment,.config-editor-row.shift{grid-template-columns:1fr}.config-editor-row .icon-btn{justify-self:end}.live-popup-stack{left:12px;right:12px;top:82px;width:auto}.alert-controls>label:not(.switch-row){grid-template-columns:1fr}.qr-stat-grid{grid-template-columns:repeat(2,1fr)}.guest-request-card{align-items:flex-start;flex-direction:column}.outlet-status-banner{width:calc(100% - 24px)}.recommended-pairing>div{grid-template-columns:1fr}}
@media(max-width:520px){.outlet-status-banner{align-items:flex-start;flex-direction:column}.assistance-options{grid-template-columns:1fr}.hours-row{grid-template-columns:1fr auto 1fr}.hours-row label{grid-column:1/-1}.live-popup .button-row .btn{flex:1}.qr-design-preview{min-height:240px}}
.settings-nav button{flex:0 0 auto;border:0;border-radius:10px;background:transparent;padding:8px 12px;color:var(--muted);font-size:.76rem;font-weight:800;white-space:nowrap}.settings-nav button:hover,.settings-nav button.active{background:var(--primary-2);color:var(--primary)}
.url-health.warning,.url-health.good{display:block;margin-top:12px;padding:11px 12px;border-radius:11px;font-size:.74rem;font-weight:750}.url-health.warning{border:1px solid #ead3b6;background:var(--warning-soft);color:#8b5b28}.url-health.good{border:1px solid #b9decf;background:var(--success-soft);color:#2d6e57}
.guest-experience-summary{margin-bottom:16px}.guest-feature-chips{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.guest-feature-chips span{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.guest-feature-chips b,.guest-feature-chips small{display:block}.guest-feature-chips b{font-size:.78rem}.guest-feature-chips small{margin-top:4px;color:var(--muted);font-size:.62rem}
@media(max-width:1180px){.guest-feature-chips{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.guest-feature-chips{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* =========================================================
   SBR v7 — Porcelain hospitality design system
   Light, premium, responsive. No dark or gold theme.
   ========================================================= */
:root{
  --bg:#f4f7f9;
  --surface:#ffffff;
  --surface-2:#f7fafb;
  --surface-3:#eef5f5;
  --ink:#24373d;
  --muted:#71858b;
  --line:#dce7e9;
  --line-strong:#cbdadd;
  --primary:#347b7d;
  --primary-hover:#286a6d;
  --primary-2:#e8f3f3;
  --blue:#5e79b4;
  --blue-soft:#eef2fa;
  --lav:#7d70a0;
  --lav-soft:#f2eff8;
  --coral:#ce7869;
  --coral-soft:#faefec;
  --warning:#aa733e;
  --warning-soft:#fff4e8;
  --danger:#b95f5b;
  --danger-soft:#faeceb;
  --success:#3e8167;
  --success-soft:#eaf5ef;
  --shadow-sm:0 4px 14px rgba(45,74,81,.055);
  --shadow:0 18px 50px rgba(45,74,81,.10);
  --radius:20px;
  --radius-sm:13px;
  --sidebar:258px;
}
html{font-size:15px}
body{overflow-x:hidden;background:var(--bg);font-family:Inter,"Aptos","Segoe UI",ui-sans-serif,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--ink);letter-spacing:-.005em}
.ui-icon{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.btn .ui-icon,.icon-btn .ui-icon{width:18px;height:18px}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(52,123,125,.18);outline-offset:2px}
.btn{min-height:42px;border-radius:12px;padding-inline:16px;font-weight:760;box-shadow:none}
.btn.primary{background:linear-gradient(135deg,var(--primary),#448d8e);box-shadow:0 9px 22px rgba(52,123,125,.18)}
.btn.primary:hover{background:linear-gradient(135deg,var(--primary-hover),var(--primary))}
.btn.secondary{border-color:var(--line-strong);background:rgba(255,255,255,.95)}
.btn.ghost{background:#f8fbfb}
.icon-btn{border-color:var(--line-strong);border-radius:12px;color:#526c73;box-shadow:0 2px 8px rgba(46,75,82,.04)}
input,select,textarea{min-height:43px;border-color:var(--line-strong);border-radius:12px;background:#fff;padding:10px 12px}
textarea{min-height:98px}
label{gap:7px;color:#536b72;font-size:.79rem;letter-spacing:.005em}
.eyebrow{font-size:.67rem;letter-spacing:.16em;color:#4f8586}

/* Login */
.login-shell{background:#f4f8f9}
.login-visual{color:var(--ink);background:linear-gradient(145deg,#eaf4f4 0%,#f2f5fb 58%,#f8f3f7 100%);border-right:1px solid var(--line)}
.login-visual:before{background:rgba(80,139,141,.11)}
.login-visual:after{background:rgba(115,104,155,.08)}
.login-brand{color:var(--primary)}
.login-copy h1{max-width:780px;color:#29434a;font-size:clamp(2.65rem,5vw,4.9rem);line-height:1.01}
.login-copy p:last-child{color:#617a80}
.login-proof span{border-color:rgba(52,123,125,.22);background:rgba(255,255,255,.48);color:#526f75}
.login-card{padding:34px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}
.login-card h2{font-size:1.85rem}
.demo-accounts button{background:#f8fbfb;color:#547078}

/* App chrome */
.sidebar{width:var(--sidebar);padding:20px 15px 15px;border-right:1px solid #e1eaec;background:rgba(255,255,255,.98);box-shadow:8px 0 30px rgba(53,80,86,.035)}
.brand-area{padding:5px 8px 24px;gap:12px}
.brand-area strong{font-size:.93rem;letter-spacing:-.015em}
.brand-area small{margin-top:2px;font-size:.68rem}
.brand-fallback{border-radius:12px;background:linear-gradient(145deg,#e4f2f2,#f1f3fa);box-shadow:inset 0 0 0 1px #d5e7e7}
.nav-list{gap:5px}
.nav-item{min-height:46px;border:1px solid transparent;border-radius:13px;padding:0 12px;color:#687d83;font-size:.86rem}
.nav-item:hover{border-color:#e2ecee;background:#f7fafb;color:var(--primary)}
.nav-item.active{border-color:#d2e6e6;background:linear-gradient(100deg,#e7f3f3,#f2f7f8);color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}
.nav-icon{width:22px;color:#789196}
.nav-item.active .nav-icon{color:var(--primary)}
.nav-item b{background:#f8e9e7;color:#bc655a}
.sidebar-foot{padding:15px 7px 0}
.user-mini>span{border-radius:12px;background:linear-gradient(145deg,#e9effa,#f1edf7);color:#5f73a8}
.main-area{margin-left:var(--sidebar)}
.topbar{min-height:82px;padding:14px 28px;border-bottom:1px solid rgba(213,226,228,.9);background:rgba(244,247,249,.88);backdrop-filter:blur(18px) saturate(1.2)}
.page-heading h1{font-size:1.65rem;color:#294047}
.topbar-actions{gap:9px}
.notification-btn{background:#fff}
.notif-dot{right:6px;top:6px;width:9px;height:9px;box-shadow:0 0 0 3px rgba(206,120,105,.13)}
.global-filters{top:82px;margin:16px 28px 0;padding:10px 12px;border-color:#d9e5e7;background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm);backdrop-filter:blur(14px)}
.global-filters label{font-size:.68rem}
.segmented{border-color:var(--line);border-radius:12px;background:#f3f7f8}
.segmented button{min-height:34px;border-radius:9px;padding:6px 11px}
.segmented button.active{color:var(--primary);box-shadow:0 3px 10px rgba(52,79,86,.08)}
.view{padding:21px 28px 50px}
.panel{border-color:#dce7e9;border-radius:20px;padding:20px;box-shadow:var(--shadow-sm)}
.panel-head{margin-bottom:18px}
.panel-head h2,.intro-panel h2{font-size:1.14rem;color:#2c454b}
.compact-panel{border-radius:15px}
.content-grid{gap:17px;margin-bottom:17px}

/* Dashboard cards */
.metrics-grid{gap:13px;margin-bottom:17px}
.metric-card{position:relative;min-height:142px;overflow:hidden;border-color:#dce7e9;border-radius:18px;padding:17px 18px;background:linear-gradient(155deg,#fff 0%,#fbfdfd 100%);box-shadow:var(--shadow-sm)}
.metric-card:after{content:"";position:absolute;right:-25px;bottom:-42px;width:95px;height:95px;border-radius:50%;background:rgba(52,123,125,.035)}
.metric-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.metric-card-head>span{color:#6b8086;font-size:.73rem;font-weight:760}
.metric-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--primary-2);color:var(--primary)}
.metric-icon .ui-icon{width:18px;height:18px}
.metric-card strong{margin:15px 0 6px;font-size:1.5rem;color:#294249}
.metric-card small{position:relative;z-index:1;font-size:.69rem}
.metric-card.primary-metric{border-color:#cce2e2;background:linear-gradient(145deg,#edf7f6,#fff)}
.metric-card.warning-metric{border-color:#efdfca;background:linear-gradient(145deg,#fff7ed,#fff)}
.metric-card.danger-metric{border-color:#ecd3d0;background:linear-gradient(145deg,#fbefee,#fff)}
.order-row{min-height:68px;padding:12px 4px;grid-template-columns:minmax(180px,1fr) auto auto auto;border-bottom-color:#e7edef}
.order-row:hover{background:#f8fbfb}
.status-badge{min-height:26px;padding:4px 9px}
.sla-pill{padding:5px 9px}
.rank-row{padding:13px 2px}
.rank-row>b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#f2f6f7;color:#779096;font-size:.69rem}
.bar-chart{height:265px}
.bar-fill{width:64%;background:linear-gradient(to top,#4c8c8d,#9accca)}
.performance-row,.breakdown-row{padding:14px 2px}

/* Operational cards */
.order-card,.menu-admin-card,.qr-card,.user-card{border-color:#dce7e9;border-radius:18px;box-shadow:0 5px 18px rgba(49,77,84,.045)}
.order-card{min-height:260px;border-top-width:3px}
.order-card-head h3{font-size:.98rem}
.order-actions .btn{min-height:37px}
.kitchen-column{border-color:#d9e6e7;background:#edf4f4}
.kitchen-ticket{border-radius:14px;box-shadow:0 4px 14px rgba(54,80,86,.04)}
.menu-admin-card{transition:transform .18s,box-shadow .18s}
.menu-admin-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(48,76,82,.08)}
.menu-admin-image{height:180px}
.menu-admin-copy h3{font-size:1rem}
.qr-card{grid-template-columns:140px minmax(0,1fr);padding:17px}
.qr-preview{border-color:#d7e3e5;background:#fbfdfd}
.qr-url-status{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:15px;padding:14px 16px;border:1px solid #cfe2e2;border-radius:15px;background:linear-gradient(100deg,#edf7f6,#f7fafc)}
.qr-url-status>div{display:flex;align-items:center;gap:12px;min-width:0}
.qr-url-status>div>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}
.qr-url-status b,.qr-url-status code,.qr-url-status small{display:block}
.qr-url-status code{max-width:650px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--primary);font-size:.75rem}
.qr-url-status small{margin-top:3px;color:var(--muted);font-size:.66rem}
.table-wrap{border:1px solid #e1eaec;border-radius:14px}
.table-wrap th{background:#f7fafb}
.table-wrap th,.table-wrap td{padding:13px 12px}
.settings-layout{gap:17px}
.settings-nav{border-color:#dbe6e8;box-shadow:var(--shadow-sm)}
.setting-lines>div,.config-row{padding:12px 0}
.sound-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}
.sound-summary-grid>span{min-width:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#f8fbfb}
.sound-summary-grid i{display:grid;place-items:center;width:31px;height:31px;margin-bottom:9px;border-radius:9px;background:var(--primary-2);color:var(--primary)}
.sound-summary-grid b,.sound-summary-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sound-summary-grid b{font-size:.73rem;text-transform:capitalize}
.sound-summary-grid small{margin-top:3px;color:var(--muted);font-size:.61rem}
.sound-config-list{display:grid;gap:9px}
.sound-config-row{display:grid;grid-template-columns:42px minmax(180px,1fr) minmax(170px,220px) 42px;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:13px;background:#fff}
.sound-config-row>i{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--primary-2);color:var(--primary)}
.sound-config-row b,.sound-config-row small{display:block}
.sound-config-row small{margin-top:3px;color:var(--muted);font-size:.68rem}
.sound-config-row select{min-height:39px}
.range-field{display:grid;grid-template-columns:1fr 54px;align-items:center;gap:10px}
.range-field input{min-height:0;padding:0}
.range-field output{font-weight:800;color:var(--primary)}
.outlet-operation-card,.promotion-setting-card,.visual-config-section{border-color:#dce7e9;border-radius:16px}

/* Notification presentation */
.notification-drawer{border-color:#d7e3e5;border-radius:22px;box-shadow:0 28px 75px rgba(37,66,73,.18)}
.notification-item{border-radius:11px;border-bottom:0;margin-bottom:4px}
.notification-item.unread{background:linear-gradient(100deg,#eaf5f4,#f5f8fb)}
.live-popup-stack{width:min(410px,calc(100vw - 28px));gap:11px}
.live-popup{padding:17px 18px 17px 64px;border:1px solid #d8e5e7;border-left:0;border-radius:17px;box-shadow:0 22px 58px rgba(36,65,72,.18)}
.live-popup:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:17px 0 0 17px;background:var(--primary)}
.live-popup.guest-request:before{background:var(--blue)}
.live-popup.payment:before{background:var(--success)}
.live-popup.overdue:before{background:var(--danger)}
.popup-event-icon{position:absolute;left:16px;top:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--primary-2);color:var(--primary)}
.live-popup.guest-request .popup-event-icon{background:var(--blue-soft);color:var(--blue)}
.live-popup.payment .popup-event-icon{background:var(--success-soft);color:var(--success)}
.popup-event-icon .ui-icon{width:18px;height:18px}
.toast{border-radius:13px;box-shadow:0 15px 40px rgba(44,73,80,.14)}

/* =========================================================
   Guest ordering — premium light mobile-first interface
   ========================================================= */
.guest-body{min-height:100vh;background:linear-gradient(180deg,#f7fafb 0,#f3f7f8 40%,#f5f8f9 100%);padding-bottom:110px}
.guest-header{min-height:68px;padding:10px max(16px,calc((100vw - 1200px)/2));border-bottom-color:#dee8ea;background:rgba(255,255,255,.93);backdrop-filter:blur(18px) saturate(1.2)}
.guest-brand{min-width:0;gap:10px}
.guest-brand>div:last-child{min-width:0}
.guest-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}
.guest-brand small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guest-brand .pure-logo,.guest-brand .brand-fallback{width:36px;height:36px;flex:0 0 36px}
.guest-header-actions{align-items:center;gap:6px;flex:0 0 auto}
.guest-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;color:#47646b;font-size:.75rem;font-weight:780;white-space:nowrap;box-shadow:0 2px 8px rgba(48,76,83,.035)}
.guest-action-btn:hover{border-color:#bcd4d6;background:#f8fbfb;color:var(--primary)}
.guest-action-btn .ui-icon{width:17px;height:17px}
.language-action{min-width:56px}
.guest-main{width:min(1200px,calc(100% - 28px))}
.outlet-status-banner{width:min(1200px,calc(100% - 28px));margin-top:12px;padding:11px 14px;border-radius:14px}
.guest-hero{align-items:center;margin-top:14px;padding:22px 24px;border:1px solid #dce7e9;border-radius:22px;background:linear-gradient(120deg,#fff 0%,#f5faf9 62%,#f3f4fa 100%);box-shadow:var(--shadow-sm)}
.guest-hero h1{font-size:clamp(1.75rem,3.3vw,2.7rem);line-height:1.04;letter-spacing:-.045em}
.location-line{font-weight:700;color:#536f76}
.estimate-line{font-size:.76rem}
.locked-mark{padding:4px 8px;border:1px solid #cfe3e3}
.guest-outlet-select{min-width:220px}
.promotion-section{margin:24px 0 25px}
.section-heading{margin-bottom:12px}
.section-heading h2{font-size:1.2rem;color:#2d474d}
.promotion-carousel{gap:14px}
.promotion-card{min-height:220px;border-color:#dbe7e9;border-radius:20px;box-shadow:var(--shadow-sm);transition:transform .18s,box-shadow .18s}
.promotion-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(49,77,84,.09)}
.promotion-image>span{border:1px solid rgba(217,230,232,.9);box-shadow:0 4px 14px rgba(43,70,76,.08)}
.promotion-image i{display:flex;align-items:flex-end;padding:14px;color:#fff;font-size:.67rem;font-weight:800;background:linear-gradient(180deg,transparent 50%,rgba(34,55,61,.42))}
.promotion-copy{padding:20px}
.promotion-copy h3{font-size:1.22rem;line-height:1.18}
.promotion-copy>p:not(.eyebrow){display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.guest-layout{grid-template-columns:minmax(0,1fr) 342px;gap:20px}
.sticky-discovery{top:68px;padding:10px 0 12px;background:rgba(244,248,249,.94);backdrop-filter:blur(16px)}
.guest-search{height:47px;margin-bottom:9px;border-color:#d8e4e6;border-radius:14px;box-shadow:0 3px 12px rgba(48,75,82,.035)}
.guest-search .ui-icon{width:18px;height:18px;color:#7a9297}
.guest-search input{min-height:43px;font-size:.85rem}
.category-tabs{gap:7px;padding-bottom:2px}
.category-tabs button{min-height:36px;padding:7px 13px;border-color:#d7e3e5;background:#fff}
.category-tabs button.active{background:linear-gradient(135deg,var(--primary),#438c8d);box-shadow:0 6px 16px rgba(52,123,125,.17)}
.guest-menu-grid{gap:14px}
.guest-menu-card{min-width:0;border-color:#dbe6e8;border-radius:18px;box-shadow:var(--shadow-sm);cursor:pointer}
.guest-menu-card:hover{box-shadow:0 14px 32px rgba(48,76,83,.09)}
.guest-menu-image{height:184px;background:#eaf1f2}
.guest-menu-image img{transition:transform .3s}
.guest-menu-card:hover .guest-menu-image img{transform:scale(1.025)}
.recommend-badge,.soldout-badge{position:absolute;left:10px;top:10px;z-index:2;display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--primary);font-size:.62rem;font-weight:850;box-shadow:0 4px 12px rgba(42,70,76,.08)}
.soldout-badge{color:var(--danger);background:rgba(255,246,245,.96)}
.guest-menu-copy{min-width:0;padding:14px 15px 15px}
.guest-menu-copy h3{margin-bottom:5px;font-size:1rem;line-height:1.25;color:#2c454b}
.guest-menu-copy>p:not(.eyebrow){display:-webkit-box;min-height:38px;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.48}
.menu-tags{max-height:25px;min-height:25px;overflow:hidden;flex-wrap:nowrap}
.menu-tags span{flex:0 0 auto;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guest-menu-footer{justify-content:space-between;margin-top:12px}
.guest-menu-footer>div{min-width:0}
.guest-menu-footer strong,.guest-menu-footer span{display:block}
.guest-menu-footer strong{font-size:.91rem;color:#29474d}
.guest-menu-footer span{margin-top:2px;font-size:.64rem}
.add-round{flex:0 0 38px;width:38px;height:38px;margin-left:10px;border-radius:12px;background:linear-gradient(135deg,var(--primary),#468f90);box-shadow:0 7px 17px rgba(52,123,125,.2)}
.add-round .ui-icon{width:19px;height:19px}
.guest-cart{top:88px;border-color:#d9e5e7;border-radius:20px;padding:18px;box-shadow:var(--shadow-sm)}
.cart-head h2{font-size:1.08rem}
.cart-line{grid-template-columns:50px minmax(0,1fr) auto}
.cart-line img{border-radius:11px}
.cart-empty-icon{display:grid!important;place-items:center;width:56px;height:56px;margin:0 auto 12px;border-radius:17px;background:var(--primary-2);color:var(--primary)}
.cart-empty-icon .ui-icon{width:25px;height:25px}
.mobile-cart-bar{border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#347b7d,#4a9292)}
.menu-detail-hero img{border-radius:17px}
.modifier-group{border-color:#dce7e9;background:#fbfdfd}
.service-option,.payment-option{min-height:78px;border-color:#d9e5e7;border-radius:14px}
.service-option.active,.payment-option.active{border-color:#74b0b1;background:linear-gradient(135deg,#e7f3f3,#f6fafb);box-shadow:inset 0 0 0 1px rgba(52,123,125,.08)}
.assistance-options span{display:flex;align-items:center;gap:10px;min-height:58px}
.assistance-options span i{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;background:var(--primary-2);color:var(--primary)}
.assistance-options span b{font-size:.78rem}
.assistance-options label:has(input:checked) span i{background:#fff}

/* Responsive dashboard */
@media(max-width:1240px){
  .metrics-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sound-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1020px){
  :root{--sidebar:224px}
  .global-filters{overflow-x:auto;align-items:end}
  .global-filters>*{flex:0 0 auto}
  .global-filters .quick-range{margin-right:8px}
  .guest-layout{grid-template-columns:1fr}
  .desktop-cart{display:none}
  .mobile-cart-bar{display:flex}
  .guest-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  html{font-size:14px}
  .sidebar{width:min(286px,84vw)}
  .topbar{min-height:68px;padding:9px 13px}
  .page-heading .eyebrow{display:none}
  .page-heading h1{font-size:1.35rem}
  .page-heading small{max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar-actions{gap:6px}
  #enableAlertsBtn{max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .global-filters{position:static;margin:10px 12px 0;padding:9px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .global-filters .quick-range{grid-column:1/-1;width:100%;overflow-x:auto}
  .global-filters label{min-width:0}
  .global-filters .btn{width:100%}
  .view{padding:14px 12px 36px}
  .panel{padding:15px;border-radius:17px}
  .metrics-grid,.metrics-grid.six{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .metric-card{min-height:122px;padding:13px}
  .metric-card strong{font-size:1.28rem}
  .metric-icon{width:31px;height:31px}
  .order-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .order-row-status{grid-column:1/-1}
  .order-row>.sla-pill{display:none}
  .qr-url-status{align-items:flex-start;flex-direction:column}
  .qr-url-status code{max-width:72vw}
  .sound-config-row{grid-template-columns:38px minmax(0,1fr) 40px}
  .sound-config-row select{grid-column:2/4}
  .sound-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .live-popup{padding-left:58px}

  /* Guest mobile */
  .guest-header{min-height:62px;padding:8px 11px}
  .guest-brand{max-width:calc(100vw - 154px)}
  .guest-brand .pure-logo,.guest-brand .brand-fallback{width:34px;height:34px;flex-basis:34px}
  .guest-brand strong{font-size:.82rem}
  .guest-brand small{font-size:.61rem}
  .guest-header-actions{gap:4px}
  .guest-action-btn{width:39px;min-width:39px;height:39px;min-height:39px;padding:0;border-radius:11px}
  .guest-action-btn .action-label{display:none}
  .language-action .action-label{display:block;font-size:.65rem}
  .language-action .ui-icon{display:none}
  .guest-main{width:calc(100% - 22px)}
  .outlet-status-banner{width:calc(100% - 22px);margin-top:9px;padding:9px 11px}
  .outlet-status-banner span{font-size:.66rem}
  .guest-hero{display:block;margin-top:10px;padding:17px;border-radius:18px}
  .guest-hero h1{font-size:1.65rem;line-height:1.08}
  .guest-hero .eyebrow{margin-bottom:4px}
  .location-line,.estimate-line{font-size:.72rem}
  .guest-outlet-select{width:100%;min-width:0;margin-top:13px}
  .promotion-section{margin:19px 0}
  .section-heading h2{font-size:1.06rem}
  .promotion-carousel{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:1px 1px 9px;scrollbar-width:none}
  .promotion-carousel::-webkit-scrollbar{display:none}
  .promotion-card{flex:0 0 85vw;grid-template-columns:40% minmax(0,1fr);min-height:185px;border-radius:17px;scroll-snap-align:start}
  .promotion-image{height:auto;min-height:185px}
  .promotion-copy{min-width:0;padding:14px}
  .promotion-copy h3{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:1rem}
  .promotion-copy>p:not(.eyebrow){-webkit-line-clamp:2;margin:0 0 7px;font-size:.7rem}
  .promotion-terms{max-height:27px;overflow:hidden;flex-wrap:nowrap}
  .promotion-actions{align-items:flex-end;gap:4px}
  .promotion-actions .text-btn{font-size:.69rem}
  .sticky-discovery{top:62px;margin-inline:-1px;padding:9px 0 10px}
  .guest-search{height:44px;border-radius:13px}
  .category-tabs button{min-height:34px;padding:6px 12px}
  .guest-menu-grid{grid-template-columns:1fr;gap:10px;padding-bottom:20px}
  .guest-menu-card{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:145px;border-radius:16px}
  .guest-menu-image{height:100%;min-height:145px}
  .guest-menu-copy{display:flex;flex-direction:column;padding:11px 11px 10px}
  .guest-menu-copy .eyebrow{margin-bottom:3px;font-size:.58rem}
  .guest-menu-copy h3{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:4px;font-size:.92rem}
  .guest-menu-copy>p:not(.eyebrow){min-height:0;margin-bottom:6px;font-size:.68rem;line-height:1.4}
  .menu-tags{height:21px;min-height:21px;max-height:21px;gap:4px}
  .menu-tags span{max-width:110px;padding:3px 6px;font-size:.54rem}
  .guest-menu-footer{margin-top:auto;padding-top:7px}
  .guest-menu-footer strong{font-size:.82rem}
  .guest-menu-footer span{font-size:.58rem}
  .add-round{width:35px;height:35px;flex-basis:35px;border-radius:11px}
  .mobile-cart-bar{left:11px;right:11px;bottom:max(10px,env(safe-area-inset-bottom));min-height:57px;padding:10px 14px;border-radius:16px}
  .guest-body .modal{align-items:end;padding:0;background:rgba(38,61,67,.32)}
  .guest-modal-panel{width:100%!important;max-height:92svh!important;border-radius:22px 22px 0 0!important;padding:19px 16px max(20px,env(safe-area-inset-bottom))!important}
  .guest-modal-panel:before{content:"";display:block;width:42px;height:4px;margin:-7px auto 13px;border-radius:999px;background:#d5e1e3}
  .guest-modal-panel .modal-close{position:absolute;right:14px;top:14px}
  .menu-detail-hero{grid-template-columns:1fr}
  .menu-detail-hero img{height:200px}
  .modifier-groups{grid-template-columns:1fr}
  .option-grid,.payment-grid{grid-template-columns:1fr 1fr}
  .assistance-options{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .metrics-grid,.metrics-grid.six{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .metric-card{min-height:117px}
  .metric-card-head>span{font-size:.67rem}
  .metric-card strong{font-size:1.18rem}
  .qr-card{grid-template-columns:1fr}
  .qr-preview{width:132px}
  .sound-config-row{grid-template-columns:36px minmax(0,1fr) 38px;padding:9px;gap:8px}
  .sound-config-row small{font-size:.61rem}
  .guest-brand{max-width:calc(100vw - 142px)}
  .guest-brand strong{max-width:116px}
  .guest-hero{padding:15px}
  .promotion-card{flex-basis:88vw;grid-template-columns:39% minmax(0,1fr);min-height:178px}
  .promotion-image{min-height:178px}
  .promotion-copy{padding:12px}
  .promotion-terms{display:none}
  .promotion-actions>span{display:none}
  .guest-menu-card{grid-template-columns:104px minmax(0,1fr);min-height:137px}
  .guest-menu-image{min-height:137px}
  .guest-menu-copy{padding:10px}
  .guest-menu-copy>p:not(.eyebrow){-webkit-line-clamp:2}
  .option-grid,.payment-grid{grid-template-columns:1fr}
  .assistance-options{grid-template-columns:1fr}
  .modal-actions{gap:7px}
  .modal-actions .btn{min-width:0;padding-inline:11px}
}

/* v7.1 mobile containment — keep every staff page inside the viewport */
@media(max-width:760px){
  .app-shell,.main-area{width:100%;max-width:100%;min-width:0}
  .main-area{margin-left:0!important;overflow-x:hidden}
  .topbar,.global-filters,.view{max-width:100%;min-width:0}
  .view>*{min-width:0;max-width:100%}
  .content-grid,.metrics-grid,.order-list,.menu-admin-grid,.qr-grid,.user-grid,.settings-layout,.settings-nav,.kitchen-board{min-width:0;max-width:100%}
  .panel,.metric-card,.order-card,.menu-admin-card,.qr-card,.user-card,.outlet-operation-card,.promotion-setting-card{min-width:0;max-width:100%}
  .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .toolbar,.view-actions,.panel-head{min-width:0;max-width:100%}
  .toolbar-right{min-width:0}
}
@media(max-width:520px){
  .global-filters{width:calc(100% - 24px)}
  .settings-layout{display:block}
  .settings-layout>.panel{margin-bottom:12px}
}

/* SBR v10.1 interaction fixes */
.orders-toolbar{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px}
.orders-toolbar>#orderFilters{display:flex;max-width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
.orders-toolbar .toolbar-right{display:grid;grid-template-columns:minmax(140px,180px) max-content minmax(220px,1fr);align-items:end;gap:10px;width:100%;min-width:0}
.orders-toolbar .outlet-mini-filter,.orders-toolbar #orderViewMode,.orders-toolbar #orderSearch{min-width:0;max-width:100%}
.orders-toolbar #orderSearch{width:100%}
.live-popup-stack{max-height:calc(100dvh - 122px);overflow-y:auto;overscroll-behavior:contain;padding:0 4px 8px 0;scrollbar-width:thin}
.live-popup{flex:0 0 auto}
.persistent-alert-note{display:grid;gap:4px;align-content:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}
.persistent-alert-note b{color:var(--ink);font-size:.8rem}.persistent-alert-note small{color:var(--muted);font-size:.72rem}
.checkout-sticky{display:flex;position:sticky;z-index:25;bottom:14px;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 0;padding:14px 16px;border:1px solid var(--guest-line);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 16px 38px rgba(16,42,67,.13);backdrop-filter:blur(12px)}
.checkout-sticky>div small,.checkout-sticky>div b{display:block}.checkout-sticky>div small{color:var(--guest-muted);font-size:.74rem}.checkout-sticky>div b{color:var(--guest-navy);font-size:1.05rem}.checkout-sticky .primary-action{min-width:190px}
@media(max-width:1100px) and (min-width:761px){.orders-toolbar .toolbar-right{grid-template-columns:minmax(140px,1fr) max-content}.orders-toolbar #orderSearch{grid-column:1/-1}}
@media(max-width:760px){.orders-toolbar .toolbar-right{grid-template-columns:1fr!important}.orders-toolbar #orderViewMode{width:max-content;max-width:100%}.live-popup-stack{max-height:calc(100dvh - 96px)}.checkout-sticky{position:fixed;display:grid;margin:0;border-radius:0}}
