/* Shared visual rhythm; ordering and payment permissions remain in the existing modules. */
:root{--bg:#f3f5f4;--ink:#213a33;--muted:#687c73;--line:#e0e8e3;--brand:#157865;--brand-strong:#106352;--shadow:0 4px 18px #183b3006}
button,input,select,textarea,a{touch-action:manipulation}
:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #238d78;outline-offset:3px}
button:disabled{cursor:not-allowed}
.sidebar{background:#12392e;gap:28px;border-right:1px solid #21483d}
.nav-btn{border-radius:10px;transition:background .15s;color:#bad0c5}
.nav-btn.active{background:#dceee3;color:#174f3f;box-shadow:inset 3px 0 #5fb58e}
.nav-btn:not(.active):hover{background:#214c3d}
.topbar{padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:16px}
.topbar h1{font-weight:700;letter-spacing:-.7px}.topbar .eyebrow{letter-spacing:.15em}
.topbar-actions .icon-btn,.topbar-actions .secondary-btn{background:#fff;border-color:var(--line)}
.role-pill{border:1px solid #dbe6df;background:#eaf1ed!important}
.account-popup{border:1px solid var(--line)}
.retail-tools--compact{gap:10px}.retail-quick-actions{align-items:center}
#barcode-form input{background:#fff;border-color:var(--line)}
#view-sales .shift-strip{border-radius:12px;background:#fff}
.shift-tile{min-height:49px}.shift-tile span{font-size:11px}.shift-tile:first-child{background:#e8f2ec}
.menu-pane{min-width:0}.menu-pane .section-head{margin-bottom:2px}
.menu-pane h2{font-size:19px;letter-spacing:-.4px}
.menu-pane .search-box{background:#fff;max-width:340px}
.category-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:12px 0 16px;gap:7px}
.category-tabs button{flex-shrink:0;border-radius:20px;min-height:38px;padding:8px 16px;background:#fff;border-color:var(--line);font-weight:600}
.category-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}
#view-sales .menu-grid{gap:12px;align-content:start;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
#view-sales .menu-item{min-height:112px;padding:14px;gap:13px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 2px 5px #183b3003;transition:border-color .15s,box-shadow .15s}
#view-sales .menu-item:hover{border-color:#75af95;box-shadow:0 4px 14px #183b300c}
#view-sales .menu-item:active{background:#eff7f2}
#view-sales .menu-item .dish-art{width:56px;height:64px;border-radius:11px}
#view-sales .menu-info{gap:7px}#view-sales .menu-info strong{font-size:14px;font-weight:650;line-height:20px}
#view-sales .menu-info small{font-size:11px;color:#718278}
#view-sales .price-line{align-items:center;gap:6px}#view-sales .price-line>span{font-size:15px;font-weight:700;color:#17694f}
#view-sales .price-line .add-item{min-width:32px;min-height:32px}
.order-pane{border-radius:16px;padding:18px;background:#fff;box-shadow:0 5px 24px #183b3008;scroll-margin-top:16px}
.order-title{padding-bottom:14px;border-bottom:1px solid var(--line)}.order-title h2{font-size:21px;margin-top:5px;letter-spacing:-.4px}
.order-title .eyebrow{font-size:10px;letter-spacing:.1em}.order-title select{max-width:135px;background:#f7faf8}
.order-pane .table-tools{margin:12px 0}.order-pane .table-tools>button{background:#f6f9f7}
.order-pane .order-item{padding:15px 0;gap:10px}.order-pane .order-item strong{font-size:14px;line-height:20px;font-weight:650}
.order-pane .order-meta{margin:5px 0;color:#6b8075}.order-pane .qty-control{gap:7px}.order-pane .qty-btn{width:34px;height:36px;background:#f5f9f6;border:1px solid #dbe7de;border-radius:9px;font-size:16px}
.line-note-btn{min-height:32px;display:inline-flex;align-items:center;font-size:12px}
.line-more summary{min-width:32px;min-height:32px;display:grid;place-items:center}
.order-pane .remove-btn{min-height:36px}.line-note-text{line-height:1.5}
.order-pane .empty-state{background:#f6f9f7;min-height:180px;display:grid;place-items:center;text-align:center;line-height:1.7}
.order-extra{border-top:1px dashed var(--line);padding-top:6px}.order-extra>summary{min-height:42px;display:list-item;margin-left:15px;font-size:12px}
.order-pane .payment-panel{background:#fff;padding-top:15px;gap:10px}.order-promotions button{border-style:dashed;background:#f8faf9;min-height:40px}
.order-pane .grand-total{padding:8px 0!important;font-size:14px}.order-pane .grand-total strong{font-size:27px;letter-spacing:-.7px;font-variant-numeric:tabular-nums}
.order-workflow-status{background:#f1f6f3;border-radius:7px;padding:8px 10px;font-size:12px;line-height:1.5}
.order-pane .checkout-btn{min-height:50px;border-radius:11px;font-size:14px;font-weight:650;background:var(--brand);box-shadow:none}
.order-pane .checkout-btn:hover{background:var(--brand-strong)}
.dialog-card{border-radius:16px}.dialog-head{padding-bottom:12px;border-bottom:1px solid var(--line)}
.dialog-card input,.dialog-card select{min-height:44px}.dialog-card footer{gap:10px}
.pos-mobile-switch{display:none}
@media(min-width:1100px){.workspace{padding:22px 26px}.sales-grid{gap:24px;grid-template-columns:minmax(0,1fr) 390px}.order-pane{height:calc(100dvh - 220px);min-height:500px;max-height:none}}
@media(min-width:1600px){.sales-grid{grid-template-columns:minmax(0,1fr) 420px}#view-sales .menu-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr))}}
@media(min-width:851px) and (max-width:1099px){.sales-grid{grid-template-columns:minmax(0,1fr) 350px;gap:14px}#view-sales .menu-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}#view-sales .menu-item{padding:11px;gap:10px;grid-template-columns:42px minmax(0,1fr)}#view-sales .menu-item .dish-art{width:42px;height:52px}.order-pane{padding:14px}}
@media(max-width:850px){.topbar{gap:10px}.topbar-actions{flex-wrap:wrap}.order-pane{border-radius:14px;height:auto;min-height:440px}.order-pane .order-scroll-region{max-height:440px}.order-pane .order-list{min-height:120px}.order-pane .empty-state{min-height:120px}#view-sales .menu-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}#view-sales .menu-item{min-height:104px}.sales-grid{gap:20px}.menu-pane{scroll-margin-top:16px}}
@media(max-width:600px){.workspace{padding:14px 12px}.topbar{align-items:start}.topbar-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.topbar-actions>.account-tools{width:100%;justify-content:flex-end}.menu-pane .section-head{flex-wrap:wrap;gap:10px}.menu-pane .search-box{flex-basis:100%;max-width:none}.category-tabs{padding-top:12px;padding-bottom:12px}#view-sales .menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}#view-sales .menu-item{grid-template-columns:minmax(0,1fr);padding:12px;gap:10px;align-content:start}#view-sales .menu-item .dish-art{width:42px;height:42px}#view-sales .menu-info strong{font-size:13px;min-height:40px;line-height:20px}#view-sales .menu-info small{font-size:10px}#view-sales .price-line>span{font-size:13px}.order-pane{padding:15px}.order-promotions{gap:7px}.order-promotions button{font-size:11px}.pos-mobile-switch{display:flex;position:sticky;bottom:10px;margin:16px 0 8px;padding:6px;gap:6px;background:#143b30;border:1px solid #2b5645;border-radius:14px;box-shadow:0 4px 20px #143b3028;z-index:8}.pos-mobile-switch a{flex:1;text-align:center;padding:12px 8px;color:#fff;border-radius:9px;font-size:13px;text-decoration:none}.pos-mobile-switch a:last-child{background:#deeee3;color:#174d39;font-weight:650}}
@media(max-width:600px){.topbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:10px 6px}.topbar>div:first-child{grid-column:1;grid-row:1}.topbar .eyebrow{display:none}.topbar h1{font-size:18px;white-space:nowrap}.topbar-actions{display:contents}.topbar-actions>.account-tools{grid-column:2 / -1;grid-row:1;order:initial;margin:0;gap:4px}.account-tools .role-pill{max-width:96px;padding:7px;font-size:10px}.account-tools .language-select{width:100px}.account-tools .icon-btn{width:36px}.topbar-actions>button{min-height:40px}.topbar #send-kitchen-btn{display:none!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.order-pane .order-title{display:grid;grid-template-columns:minmax(0,1fr) 40px;grid-template-rows:auto auto;gap:4px 12px;align-items:center}
.order-title>div:first-child{grid-column:1;grid-row:1}.order-title #current-table-label[hidden]{display:none!important}
.order-title #table-select{grid-column:1;grid-row:2;width:100%;max-width:none;min-height:38px;padding:3px 25px 3px 0;border:0;background-color:transparent;font-size:21px;font-weight:700;letter-spacing:-.4px;cursor:pointer}
.order-pane .order-title>.table-tools{grid-column:2;grid-row:1 / 3;margin:0;display:block}
.order-title .table-more>summary{width:40px;height:40px;display:grid;place-items:center;background:#f5f9f6;border:1px solid var(--line);border-radius:9px;cursor:pointer;list-style:none}
.order-title .table-more>summary::-webkit-details-marker{display:none}
.order-pane .order-note-field{margin:12px 0 8px;display:grid;gap:7px;font-size:12px;color:var(--muted)}
.order-pane .order-service-row{grid-template-columns:1fr}.order-pane .order-list{min-height:0}
.order-pane.is-empty .order-note-field,.order-pane.is-empty .order-extra,.order-pane.is-empty .order-promotions,.order-pane.is-empty #order-promotion-status,.order-pane.is-empty #order-workflow-status{display:none!important}
.order-pane.is-empty .order-list{height:100%;display:grid;align-items:center}.order-pane.is-empty .empty-state{min-height:160px}
.order-pane #order-workflow-status[hidden]{display:none!important}
@media print{.pos-mobile-switch{display:none!important}}
