:root{
  --navy:#071d3d;--navy-2:#0e356b;--gold:#d8aa3e;--cream:#fff7df;--paper:#fff;
  --bg:#eef2f7;--ink:#152033;--muted:#667085;--line:#d8dee9;--ok:#157b61;--danger:#b42318;
  --zomato:#e23744;--swiggy:#f5741a;--shadow:0 8px 22px rgba(7,29,61,.08)
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg)}
button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}.hidden{display:none!important}
body{overflow-x:hidden}.app-shell{min-height:100vh}.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.primary-btn,.secondary-btn,.icon-btn,.top-action,.small-btn{border-radius:11px;padding:11px 15px;font-weight:800;border:1px solid transparent}
.primary-btn{background:var(--navy);color:#fff}.primary-btn:hover{background:var(--navy-2)}.primary-btn:disabled{opacity:.45;cursor:not-allowed}
.secondary-btn{background:#fff;border-color:var(--line);color:var(--navy)}.secondary-btn:hover{border-color:var(--gold)}
.compact{padding:9px 12px}.link-btn{border:0;background:transparent;color:var(--navy-2);font-weight:800;padding:5px}.danger{color:var(--danger)!important}
.badge{display:inline-flex;align-items:center;border-radius:999px;background:#edf2f9;color:var(--navy);padding:5px 9px;font-size:12px;font-weight:800}.count-pill{display:inline-grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:var(--gold);color:var(--navy);font-size:11px;font-weight:900;padding:0 6px}
.toast{position:fixed;z-index:100;left:50%;bottom:22px;transform:translate(-50%,24px);background:#111827;color:#fff;border-radius:11px;padding:11px 17px;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}

.login-screen{min-height:100vh;display:grid;place-items:center;padding:22px;background:linear-gradient(145deg,var(--navy),#123d76)}
.login-card{width:min(470px,94vw);background:#fff;border-radius:22px;padding:24px 28px 28px;box-shadow:0 25px 70px rgba(0,0,0,.28);text-align:center}.login-brand-lockup{width:min(390px,100%);height:112px;object-fit:contain;border-radius:14px}.login-card h1{margin:9px 0 2px;font-size:27px;color:var(--navy)}.login-card h1 span{display:block;font-size:15px;color:#e01f2d;margin-top:3px}.login-card>p{color:var(--muted)}
.login-card label{display:grid;text-align:left;gap:6px;margin:13px 0;font-weight:750}.login-card input{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px}.login-card .primary-btn{width:100%;font-size:17px}
.demo-credentials{display:grid;gap:4px;margin-top:16px;padding:12px;background:#f6f8fb;border-radius:12px;font-size:12px;text-align:left}.error-text{color:var(--danger)!important}

.topbar{background:var(--navy);color:#fff;display:grid;grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:18px;padding:10px 16px;border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:15}
.brand{display:flex;align-items:center;gap:10px}.brand-lockup{width:158px;height:48px;object-fit:contain;background:#fff;border-radius:10px;padding:2px}.brand h1{margin:0;font-size:19px}.brand h1 span{display:block;font-size:11px;color:#ff6b73;font-weight:800}.brand p{margin:1px 0 0;color:#e7d7a8;font-size:9px;letter-spacing:.3px}.store-context{display:grid}.store-context span{color:#bbc8da;font-size:12px}
.top-quick-actions{display:flex;gap:8px}.top-action{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff;padding:9px 11px}.pending-action{border-color:rgba(216,170,62,.65)}
.user-box{display:flex;align-items:center;gap:9px}.user-box>div{display:grid}.user-box small{color:#c5d1e2}.user-box .badge{background:#173d70;color:#fff}.icon-btn{background:transparent;border-color:rgba(255,255,255,.22);color:#fff;padding:8px 10px}
.main-nav{display:flex;gap:7px;padding:9px 14px;background:#fff;border-bottom:1px solid var(--line);overflow-x:auto;position:sticky;top:65px;z-index:14}.nav-btn{border:1px solid transparent;background:transparent;border-radius:10px;padding:9px 13px;font-weight:800;color:#39465d;white-space:nowrap}.nav-btn.active{background:var(--navy);color:#fff}.nav-btn .count-pill{margin-left:5px}
main{padding:13px}.view{display:none}.view.active{display:block}.eyebrow{font-size:10px;letter-spacing:1px;color:var(--muted);font-weight:900}.helper{font-size:12px;color:var(--muted);margin:7px 0}.helper.ok{color:var(--ok)}.helper.error{color:var(--danger)}

.customer-gate{padding:13px 15px;margin-bottom:11px}.gate-main{display:flex;align-items:center;justify-content:space-between;gap:15px}.gate-main h2{margin:3px 0 0;font-size:18px}.mobile-lookup{display:flex;gap:8px}.mobile-lookup input,.new-customer input{border:1px solid var(--line);border-radius:11px;padding:11px 12px;font-size:16px}.mobile-lookup input{width:225px}.new-customer{display:flex;gap:8px;margin-top:9px}.new-customer input{min-width:280px}
.customer-profile{display:grid;grid-template-columns:auto minmax(145px,1fr) repeat(3,minmax(105px,auto)) auto;gap:12px;align-items:center;padding-top:9px;border-top:1px dashed var(--line)}.profile-avatar{width:42px;height:42px;border-radius:50%;background:var(--gold);display:grid;place-items:center;font-weight:950;color:var(--navy)}.profile-main{display:grid}.profile-main span,.profile-stat span{font-size:11px;color:var(--muted)}.profile-stat{display:grid;padding:5px 9px;border-left:1px solid var(--line)}.profile-stat strong{font-size:13px}.profile-stat.favourite{max-width:180px}

.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:11px;align-items:start}.catalog-panel{min-width:0}.pricing-banner{display:flex;align-items:center;gap:20px;padding:10px 14px;margin-bottom:9px}.pricing-banner>div{display:grid}.pricing-banner strong{color:var(--navy)}.pricing-banner span{font-size:11px;color:var(--muted)}.source-select{margin-left:auto;display:flex!important;flex-direction:row!important;align-items:center;gap:6px}.source-btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 9px;font-weight:800}.source-btn.active{background:var(--navy);color:#fff}.source-btn.zomato{color:var(--zomato)}.source-btn.swiggy{color:var(--swiggy)}.source-btn.zomato.active,.source-btn.swiggy.active{color:#fff}
.quick-sell{display:flex;gap:9px;align-items:stretch;padding:9px;margin-bottom:9px;min-height:58px}.feature-button{border:0;border-radius:12px;background:linear-gradient(135deg,var(--gold),#f3d17d);color:var(--navy);padding:9px 14px;display:grid;text-align:left;min-width:220px}.feature-button small{font-weight:700}.feature-button strong{font-size:15px}.combo-quick-buttons{display:flex;gap:8px;overflow-x:auto;flex:1}.combo-quick{border:1px solid #ead59a;background:var(--cream);color:var(--navy);border-radius:12px;padding:9px 13px;white-space:nowrap;font-weight:850}
.catalog-tools{display:flex;align-items:center;gap:10px;padding:9px;margin-bottom:9px}.category-bar{display:flex;gap:7px;overflow-x:auto;flex:1}.category-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-weight:850;white-space:nowrap}.category-btn.active{background:var(--gold);border-color:var(--gold);color:var(--navy)}.catalog-tools input{border:1px solid var(--line);border-radius:11px;padding:10px;width:210px}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:9px;max-height:calc(100vh - 345px);overflow-y:auto;padding:1px 3px 22px}.product-grid.locked{opacity:.18;pointer-events:none}.product-card{min-height:119px;border:1px solid var(--line);background:#fff;border-radius:15px;padding:11px;display:flex;flex-direction:column;text-align:left;justify-content:space-between;box-shadow:0 2px 7px rgba(7,29,61,.04)}.product-card:hover{border-color:var(--gold)}.product-card:active{transform:scale(.98)}.product-card:disabled{opacity:.4}.product-icon{font-size:32px}.product-name{font-weight:850;line-height:1.15;margin:6px 0}.product-meta{display:flex;justify-content:space-between;align-items:end;gap:5px}.product-price{font-weight:950;color:var(--navy)}.stock-mini{font-size:10px;color:var(--muted)}.catalog-lock{min-height:285px;border:2px dashed #c9d0dc;border-radius:16px;display:grid;place-content:center;text-align:center;color:var(--muted);background:rgba(255,255,255,.62)}.lock-icon{font-size:40px}.catalog-lock h3{margin:7px 0 2px}.addon-guide{grid-column:1/-1;background:#fff;border:1px solid var(--line);border-radius:16px;padding:25px;text-align:center}.addon-guide h3{color:var(--navy)}

.cart{position:sticky;top:118px;min-height:calc(100vh - 135px);max-height:calc(100vh - 135px);display:grid;grid-template-rows:auto auto 1fr auto auto;overflow:hidden}.cart-head{display:flex;align-items:start;justify-content:space-between;padding:13px;border-bottom:1px solid var(--line)}.cart-head h2{font-size:18px;margin:3px 0}.cart-head small{color:var(--ok);font-size:11px}.order-settings{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px;border-bottom:1px solid var(--line)}.order-settings select{border:1px solid var(--line);border-radius:9px;padding:9px}.cart-items{padding:7px 11px;overflow-y:auto}.cart-empty{height:100%;display:grid;place-content:center;text-align:center;color:var(--muted)}.cart-empty span{font-size:44px}.cart-row{padding:9px 0;border-bottom:1px solid #edf0f5}.cart-row-top{display:flex;justify-content:space-between;gap:8px}.cart-row-name{font-weight:800}.cart-row-meta{font-size:10px;color:var(--muted);margin-top:2px}.qty-control{display:flex;align-items:center;gap:8px;margin-top:7px}.qty-control button{width:31px;height:31px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:18px}.cart-edit-addon{margin-left:auto;border:0;background:#fff7de;color:var(--navy);border-radius:8px;padding:6px 8px;font-size:11px;font-weight:800}.addon-line{margin-left:17px;padding:6px 8px;border-left:3px solid var(--gold);background:#fffaf0;border-radius:0 8px 8px 0}.addon-line .cart-row-name{font-size:12px}.remove-addon{border:0;background:transparent;color:var(--danger);font-size:11px;font-weight:800}.combo-components{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.35}
.bill-lines{padding:10px 13px;border-top:1px solid var(--line);display:grid;gap:5px}.bill-lines>div{display:flex;justify-content:space-between}.bill-lines .grand{font-size:20px;font-weight:950;padding-top:7px;border-top:1px dashed var(--line)}.checkout-actions{display:grid;grid-template-columns:90px 1fr;gap:8px;padding:0 12px 12px}.checkout{font-size:16px}.checkout-secondary{padding:12px}

.page-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.page-header h2,.page-header h3{margin:0}.page-header p{margin:4px 0;color:var(--muted)}.page-header input[type=date]{border:1px solid var(--line);border-radius:10px;padding:10px}.compact-header{margin:5px 0 10px}.pending-orders,.online-orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(305px,1fr));gap:10px}.pending-card,.online-order{padding:13px}.pending-head,.online-order-head{display:flex;justify-content:space-between;gap:10px}.pending-card small,.online-order small{color:var(--muted)}.pending-items{font-size:12px;color:#3d4a5f;margin:9px 0;max-height:95px;overflow:auto}.pending-actions{display:flex;gap:7px;flex-wrap:wrap}.status-chip{border-radius:999px;padding:5px 8px;background:#fff7db;color:#715400;font-size:11px;font-weight:850}.status-chip.held{background:#e8f0ff;color:#164887}
.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:10px;margin-bottom:11px}.integration-card{display:flex;align-items:center;gap:11px;padding:14px;border-radius:15px;color:#fff}.integration-card>div:nth-child(2){display:grid;flex:1}.integration-card span{font-size:11px;opacity:.9}.zomato-card{background:var(--zomato)}.swiggy-card{background:var(--swiggy)}.platform-logo{width:43px;height:43px;border-radius:12px;background:rgba(255,255,255,.2);display:grid;place-items:center;font-size:23px;font-weight:950}.platform-tag{font-weight:900}.platform-tag.zomato{color:var(--zomato)}.platform-tag.swiggy{color:var(--swiggy)}.status-flow{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.status-btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 8px;font-size:11px}.status-btn.active{background:var(--navy);color:#fff}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:11px}.kpi{padding:13px;display:grid}.kpi span{color:var(--muted);font-size:12px}.kpi strong{font-size:24px;color:var(--navy)}.two-panel,.scm-layout{display:grid;grid-template-columns:1fr 1fr;gap:11px}.panel-card{padding:15px}.panel-card h3{margin-top:0}.inline-form{display:flex;gap:7px}.inline-form input,.settings-form input,.settings-form select,.settings-form textarea,.settings-grid input,.settings-grid select,.settings-grid textarea,textarea{border:1px solid var(--line);border-radius:10px;padding:10px;width:100%}.detail-placeholder{padding:24px;text-align:center;color:var(--muted);background:#f8fafc;border-radius:12px;margin-top:11px}.data-list,.history-list{display:grid}.data-row,.history-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.data-row div,.history-row div{display:grid}.data-row small,.history-row small{color:var(--muted)}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:11px 0}.mini-metric{background:#f5f7fb;border-radius:10px;padding:9px;display:grid}.mini-metric span{font-size:11px;color:var(--muted)}
.panel-head{display:flex;justify-content:space-between}.inventory-order-table{display:grid;max-height:500px;overflow-y:auto}.inventory-order-row{display:grid;grid-template-columns:1fr 55px 85px;gap:7px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.inventory-order-row>div{display:grid}.inventory-order-row small{color:var(--muted)}.inventory-order-row input{border:1px solid var(--line);border-radius:8px;padding:7px;width:100%}.stock-orders{display:grid;gap:9px}.stock-order-card{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}.stock-order-head{display:flex;justify-content:space-between;gap:9px}.stock-order-head>div{display:grid}.stock-order-head small{color:var(--muted)}.status-select{border:1px solid var(--line);border-radius:8px;padding:7px}.stock-order-card ul{margin:8px 0;padding-left:18px}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.report-card{padding:14px}.report-card.wide{grid-column:1/-1}.report-card h3{margin-top:0}.bar-chart{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:minmax(110px,190px) 1fr 90px;gap:8px;align-items:center;font-size:12px}.bar-track{height:10px;background:#edf0f5;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:var(--gold);border-radius:999px}.bar-row strong{text-align:right}.horizontal-hours{display:flex!important;align-items:end;gap:10px;overflow-x:auto;min-height:205px}.hour-col{min-width:56px;display:grid;justify-items:center;gap:5px}.hour-stick{height:145px;display:flex;align-items:end;width:25px;background:#edf0f5;border-radius:7px 7px 2px 2px;overflow:hidden}.hour-stick span{display:block;width:100%;background:var(--gold)}.hour-col b{font-size:10px}.hour-col small{font-size:10px;color:var(--muted)}

.admin-tabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:11px}.admin-tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 13px;font-weight:800;white-space:nowrap}.admin-tab.active{background:var(--navy);color:#fff}.admin-section{display:none}.admin-section.active{display:block}.admin-table{width:100%;border-collapse:collapse;font-size:12px}.admin-table th,.admin-table td{padding:9px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{color:var(--muted)}.small-btn{padding:6px 8px;border-color:var(--line);background:#fff;font-size:11px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.settings-grid label{display:grid;gap:5px;font-weight:750;font-size:12px}.wide-label{grid-column:1/-1}.check-label{display:flex!important;align-items:center;gap:7px}.check-label input{width:auto!important}.settings-form{max-width:900px}.settings-form .primary-btn{margin-top:12px}.settings-grid fieldset{border:1px solid var(--line);border-radius:11px;padding:10px}.settings-grid fieldset label{display:inline-flex;margin-right:15px}

.modal-backdrop{position:fixed;inset:0;background:rgba(2,12,28,.64);z-index:50;display:grid;place-items:center;padding:18px}.modal-card{width:min(790px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;padding:20px;position:relative}.modal-close{position:absolute;right:12px;top:10px;border:0;background:#eef1f6;width:33px;height:33px;border-radius:9px;font-size:21px}.modal-card h2{margin-top:4px;color:var(--navy)}.addon-modal-card,.combo-modal-card{width:min(900px,97vw)}.parent-selector{display:flex;gap:7px;overflow-x:auto;margin:8px 0 12px}.parent-button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 11px;font-weight:750;white-space:nowrap}.parent-button.active{background:var(--navy);color:#fff}.addon-grid,.combo-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px;margin:10px 0 14px}.addon-choice,.combo-choice{min-height:92px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:10px;display:grid;text-align:left}.addon-choice.selected,.combo-choice.selected{border:2px solid var(--gold);background:var(--cream)}.addon-choice strong,.combo-choice strong{font-size:13px}.addon-choice span,.combo-choice span{font-size:24px}.receipt-modal{width:min(470px,96vw)}.receipt-content{width:80mm;max-width:100%;margin:auto;border:1px dashed #999;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;background:#fff}.receipt-header{text-align:center}.receipt-logo{display:block;width:44mm;max-height:26mm;object-fit:contain;margin:0 auto 4px}.receipt-header h2{font-size:17px;margin:2px}.receipt-header p{margin:2px}.receipt-rule{border-top:1px dashed #111;margin:7px 0}.receipt-line{display:flex;justify-content:space-between;gap:8px}.receipt-item{margin:5px 0}.receipt-item small{display:block;padding-left:8px}.receipt-total{font-size:14px;font-weight:900}.receipt-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.receipt-actions .primary-btn{grid-column:1/-1}.combo-count-badge{display:inline-flex;margin-left:6px;background:var(--gold);color:var(--navy);border-radius:999px;padding:3px 7px;font-weight:900}


.software-brand-footer{padding:7px 14px;text-align:center;background:#fff;border-top:1px solid var(--line);color:var(--navy);font-size:11px;font-weight:800;letter-spacing:.2px}
@media(max-width:1050px){.topbar{grid-template-columns:auto 1fr auto}.top-quick-actions{display:none}.user-box .badge{display:none}.pos-layout{grid-template-columns:minmax(0,1fr) 340px}.customer-profile{grid-template-columns:auto 1fr repeat(2,auto)}.profile-stat.favourite{display:none}}
@media(max-width:820px){body{overflow:auto}.topbar{position:static;grid-template-columns:1fr auto}.store-context{display:none}.main-nav{top:0}.pos-layout{grid-template-columns:1fr}.cart{position:static;min-height:530px;max-height:none}.product-grid{max-height:58vh}.gate-main{display:grid}.mobile-lookup{width:100%}.mobile-lookup input{flex:1;width:auto}.customer-profile{grid-template-columns:auto 1fr auto}.profile-stat:nth-of-type(n+2){display:none}.pricing-banner{flex-wrap:wrap}.source-select{margin-left:0}.two-panel,.scm-layout,.report-grid{grid-template-columns:1fr}.report-card.wide{grid-column:auto}.integration-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.wide-label{grid-column:auto}.admin-table{display:block;overflow-x:auto}.main-nav{position:static}}
@media(max-width:520px){main{padding:8px}.brand-lockup{width:112px;height:40px}.brand p{display:none}.brand h1{font-size:14px}.brand h1 span{font-size:9px}.user-box>div{display:none}.customer-gate{padding:10px}.gate-main h2{font-size:15px}.mobile-lookup{display:grid;grid-template-columns:1fr auto}.mobile-lookup input{grid-column:1/-1}.customer-profile{grid-template-columns:auto 1fr auto}.pricing-banner>div:nth-child(2){display:none}.source-select{width:100%}.quick-sell{display:grid}.feature-button{min-width:0}.catalog-tools{display:grid}.catalog-tools input{width:100%}.product-grid{grid-template-columns:repeat(2,minmax(125px,1fr))}.product-card{min-height:110px}.pos-layout{gap:8px}.cart{border-radius:12px}.pending-orders,.online-orders{grid-template-columns:1fr}.receipt-actions{grid-template-columns:1fr}.receipt-actions .primary-btn{grid-column:auto}}

@media print{
  @page{size:80mm auto;margin:0}
  body *{visibility:hidden!important}
  #receiptContent,#receiptContent *{visibility:visible!important}
  #receiptContent{position:absolute;left:0;top:0;width:80mm!important;max-width:80mm!important;border:0!important;padding:3mm!important;font-size:9pt!important;overflow:visible!important}
  .modal-backdrop{position:static;background:#fff;padding:0;display:block}
  .receipt-modal{position:static;width:80mm;max-width:80mm;padding:0;overflow:visible;max-height:none}
  .receipt-actions,.modal-close{display:none!important}
  .receipt-item,.receipt-line,.receipt-header{break-inside:avoid;page-break-inside:avoid}
}

/* v0.5 operational modules */
.inventory-master-table{max-height:520px;overflow:auto}.inventory-panels{align-items:start}.compact-settings{grid-template-columns:1fr 1fr}.three-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.operations-grid .panel-card{display:grid;gap:9px;align-content:start}.operations-grid label{display:grid;gap:5px;font-weight:750;font-size:12px}.positive-stock{color:var(--ok)}.negative-stock{color:var(--danger)}
.invoice-delivery{padding:12px;margin-top:12px;display:grid;gap:8px}.invoice-delivery h3{margin:0;color:var(--navy)}.feedback-qr{display:grid;justify-items:center;gap:4px;margin:8px auto;text-align:center}.feedback-qr img{width:92px;height:92px}.feedback-qr strong{font-size:10px;max-width:210px}.profile-main small{font-size:10px;color:var(--muted)}
@media(max-width:950px){.three-panel{grid-template-columns:1fr}.compact-settings{grid-template-columns:1fr}}

/* RestroMate product identity */
.restromate-lockup{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:#fff;
  font-weight:950;
  letter-spacing:-.3px;
}
.restromate-mark{
  display:inline-grid;
  place-items:center;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border-radius:5px;
  background:var(--gold);
  color:var(--navy);
  font-size:8px;
  font-weight:950;
  letter-spacing:-.5px;
}
.brand .restromate-lockup{
  width:auto;
  height:18px;
  min-width:0;
  padding:0;
  background:transparent;
  border-radius:0;
  font-size:14px;
}
.login-card .restromate-lockup{
  width:auto;
  height:auto;
  min-height:54px;
  padding:9px 16px;
  border-radius:15px;
  background:var(--navy);
  font-size:28px;
}
.login-card .restromate-mark{width:38px;height:38px;flex-basis:38px;border-radius:10px;font-size:15px}
@media print{.invoice-delivery{display:none!important}.feedback-qr img{width:24mm!important;height:24mm!important}.receipt-logo{width:42mm!important;max-height:24mm!important}}

/* v0.7 multi-store cloud administration */
.store-selector-wrap{display:grid;gap:3px;font-size:10px;color:#cbd5e1;font-weight:800;min-width:280px}.store-selector-wrap select{border:1px solid rgba(255,255,255,.25);background:#fff;color:var(--navy);border-radius:9px;padding:8px 10px;font-weight:800;width:100%}.wide-modal{width:min(980px,97vw)}
#adminStoreTable,#adminUserTable{overflow-x:auto}.compact-header>div p{margin:3px 0 0}.admin-table td .small-btn{margin:2px}
@media(max-width:1050px){.store-selector-wrap{min-width:210px}.topbar{grid-template-columns:auto minmax(190px,1fr) auto}}
@media(max-width:820px){.store-selector-wrap{display:none!important}}

/* v0.8.0 admin visibility and browser-cache hotfix */
.version-badge{background:var(--gold);color:var(--navy);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:950;white-space:nowrap}
.admin-shortcut{background:#fff6d8!important;color:var(--navy)!important;border-color:var(--gold)!important}
.admin-access-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff8df;border:1px solid #e2bd5d;border-radius:13px;padding:13px 15px;margin-bottom:11px;color:var(--navy)}
.admin-access-banner>div:first-child{display:grid;gap:3px}.admin-access-banner span{font-size:12px;color:#5f5131}.admin-access-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-load-status{min-height:0;margin:0 0 8px;color:var(--danger);font-weight:800}
@media(max-width:820px){.admin-access-banner{align-items:flex-start;flex-direction:column}.admin-access-actions{width:100%}.admin-access-actions button{flex:1}.version-badge{display:none}}

/* v0.8.0 guaranteed multi-store admin visibility */
.admin-title-row{align-items:center}.admin-hero-btn{min-width:210px;font-size:14px;padding:13px 18px}.build-proof{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:9px 12px;border-radius:10px;background:#eaf8f3;border:1px solid #83cbb4;color:#0c5e48}.build-proof span{font-size:12px}.company-admin-action{background:var(--gold)!important;color:var(--navy)!important;font-weight:950!important}.admin-shortcut{order:-3;background:var(--gold)!important;color:var(--navy)!important;border-color:var(--gold)!important}.main-nav #adminNav{order:-2;background:#eef3fb;border-color:#b9c7db}.admin-tabs .admin-tab[data-admin-section="stores"],.admin-tabs .admin-tab[data-admin-section="users"]{border:2px solid var(--gold);font-weight:950}.admin-access-actions{align-items:center}
@media(max-width:820px){.admin-title-row{align-items:flex-start;gap:10px}.admin-hero-btn{width:100%}.build-proof{align-items:flex-start;flex-direction:column}}

/* RestroMate recipe, materials, GRN and Excel import */
.recipe-component-rows,.grn-line-rows{display:grid;gap:8px;margin:10px 0 14px}
.recipe-component-row{display:grid;grid-template-columns:minmax(220px,2fr) 120px 110px minmax(180px,1.5fr) 70px;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
.grn-line-row{display:grid;grid-template-columns:minmax(240px,2fr) 110px 110px 85px 110px 145px 70px;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
.recipe-component-row input,.recipe-component-row select,.grn-line-row input,.grn-line-row select{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff}
.excel-import-zone{display:flex;align-items:center;gap:20px;border:2px dashed #98a6ba;border-radius:16px;padding:22px;background:#f8fafc;margin-bottom:14px}
.excel-import-zone input[type=file]{max-width:320px}
.import-result{margin-top:16px;padding:16px;border-radius:12px;border:1px solid var(--line);max-height:360px;overflow:auto}
.import-ok{border-color:#82c7ad;background:#effaf5}.import-error{border-color:#e7a59f;background:#fff4f2}
.admin-table small{display:block;color:var(--muted);margin-top:3px}
.company-only.hidden{display:none!important}
@media(max-width:1100px){.recipe-component-row,.grn-line-row{grid-template-columns:1fr 1fr}.recipe-component-row .remove-component,.grn-line-row .remove-grn-line{grid-column:span 2}.excel-import-zone{align-items:flex-start;flex-direction:column}}

/* v0.8.1 Touch POS viewport lock and partnership header alignment */
.brand-lockup{
  width:272px;
  height:68px;
  object-fit:contain;
  object-position:center;
  background:transparent;
  border-radius:12px;
  padding:0;
  flex:0 0 auto;
}
.login-brand-lockup{
  width:min(430px,100%);
  height:112px;
  object-fit:contain;
  object-position:center;
  border-radius:15px;
}
.brand{min-width:0;align-items:center}.brand>div{min-width:118px}.brand h1{line-height:1.05}.topbar{min-height:82px}

@media (min-width:821px){
  html,body{height:100%}
  body.pos-mode{height:100vh;overflow:hidden}
  body.pos-mode .app-shell{
    height:100vh;
    min-height:0;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    overflow:hidden;
  }
  body.pos-mode .topbar,
  body.pos-mode .main-nav{position:static;top:auto}
  body.pos-mode .main-nav{min-height:48px;align-items:center}
  body.pos-mode main{
    min-height:0;
    overflow:hidden;
    padding:9px 12px;
  }
  body.pos-mode #view-pos.active{
    height:100%;
    min-height:0;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    gap:9px;
    overflow:hidden;
  }
  body.pos-mode .customer-gate{margin:0;flex:0 0 auto}
  body.pos-mode .pos-layout{
    height:100%;
    min-height:0;
    align-items:stretch;
    overflow:hidden;
  }
  body.pos-mode .catalog-panel{
    min-height:0;
    display:grid;
    grid-template-rows:auto auto auto minmax(0,1fr);
    overflow:hidden;
  }
  body.pos-mode .pricing-banner,
  body.pos-mode .quick-sell,
  body.pos-mode .catalog-tools{margin-bottom:7px}
  body.pos-mode .product-grid{
    min-height:0;
    max-height:none;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    padding-bottom:8px;
  }
  body.pos-mode .catalog-lock{
    min-height:0;
    height:100%;
    overflow:hidden;
  }
  body.pos-mode .cart{
    position:static;
    top:auto;
    height:100%;
    min-height:0;
    max-height:none;
    align-self:stretch;
  }
  body.pos-mode .cart-items{
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
  }
  body.pos-mode .software-brand-footer{padding:5px 14px;line-height:1.2}
}

@media (max-width:1180px) and (min-width:821px){
  .brand-lockup{width:218px;height:58px}
  .brand>div{display:none}
  .topbar{gap:11px;grid-template-columns:auto minmax(180px,1fr) auto auto}
  .top-action{padding:8px 9px;font-size:12px}
}
@media (max-width:820px){
  .brand-lockup{width:190px;height:54px}
  .brand>div{display:none}
  .topbar{min-height:68px}
}
@media (max-width:520px){
  .brand-lockup{width:150px;height:46px}
}

/* Compact POS shell and workspace controls */
.topbar{
  min-height:34px;
  grid-template-columns:auto auto minmax(160px,1fr) auto auto;
  gap:10px;
  padding:4px 10px;
  border-bottom-width:2px;
}
.brand{gap:6px}
.brand-lockup{
  width:76px;
  height:18px;
  border-radius:3px;
}
.brand>div{display:none}
.version-badge{padding:3px 6px;font-size:8px}
.store-context{display:flex;align-items:center;min-width:0}
.store-context>div{display:flex;align-items:center;gap:4px;min-width:0}
.store-context strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.store-context span{font-size:9px}
.top-action,.icon-btn{padding:6px 9px;border-radius:8px;font-size:11px}
.user-box{gap:7px}.user-box strong{font-size:11px}.user-box small{font-size:9px}.user-box .badge{padding:4px 7px;font-size:9px}
.nav-toggle{
  display:inline-flex;
  align-items:center;
  gap:5px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:7px;
  background:rgba(255,255,255,.1);
  color:#fff;
  padding:5px 7px;
  font-size:10px;
  font-weight:850;
  white-space:nowrap;
}
.app-shell.nav-collapsed .main-nav{display:none}
.main-nav{top:34px;padding:6px 10px;min-height:40px}
.nav-btn{padding:7px 10px;font-size:12px}
.pos-layout{grid-template-columns:minmax(0,3fr) minmax(360px,1fr)}
.cart-head-actions{display:flex;align-items:center;gap:2px}
.potd-card{position:relative;border-color:#e2bd5d;background:linear-gradient(160deg,#fff,#fff8df)}
.product-ribbon{align-self:flex-start;border-radius:999px;background:var(--gold);color:var(--navy);padding:3px 7px;font-size:9px;font-weight:950;letter-spacing:.25px}
.customer-modal-card{width:min(760px,96vw)}
.customer-modal-card .customer-gate{padding:0;margin:0}
.customer-modal-card .gate-main,.customer-modal-card .mobile-lookup{width:100%}
.customer-modal-card .mobile-lookup input{flex:1;width:auto}
.customer-modal-card .new-customer{display:grid;grid-template-columns:1fr 1fr auto}
.customer-modal-card .new-customer input{min-width:0}
.customer-modal-card .customer-profile{grid-template-columns:auto minmax(145px,1fr) repeat(3,minmax(90px,auto)) auto}
.status-bar{
  min-height:26px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:4px 12px;
  border-top:1px solid #b9c7db;
  background:var(--navy);
  color:#dce6f3;
  font-size:10px;
  line-height:1.2;
}
.status-group{display:flex;align-items:center;gap:12px;min-width:0}
.status-group>span{white-space:nowrap}
.status-group-right{justify-content:flex-end}
.system-status{display:inline-flex;align-items:center;gap:5px;color:#a7f3d0}
.status-dot{width:7px;height:7px;border-radius:50%;background:#21c58b;box-shadow:0 0 0 3px rgba(33,197,139,.16)}
.status-bar.offline .system-status{color:#fecaca}.status-bar.offline .status-dot{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.16)}
.status-action{border:0;background:transparent;color:inherit;font:inherit;font-weight:800;padding:2px 4px;cursor:pointer}
.status-action:hover{text-decoration:underline;color:#fff}
.activation-card{width:min(560px,94vw)}
.activation-card textarea{width:100%;resize:vertical;box-sizing:border-box}
.activation-facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;margin:14px 0;padding:12px;border-radius:10px;background:#f2f6fb;text-align:left;font-size:12px}
.activation-facts strong{overflow-wrap:anywhere}
.activation-pay{display:block;text-decoration:none;text-align:center;margin-top:9px}
.app-shell.diagnostic-mode .topbar{
  background:#f8d7e2;
  color:#4b1730;
  border-bottom-color:#df6f94;
  box-shadow:0 3px 12px rgba(157,42,82,.22);
}
.app-shell.diagnostic-mode .topbar .restromate-lockup,
.app-shell.diagnostic-mode .topbar .nav-toggle,
.app-shell.diagnostic-mode .topbar .icon-btn,
.app-shell.diagnostic-mode .topbar .top-action{color:#4b1730}
.app-shell.diagnostic-mode .topbar .nav-toggle,
.app-shell.diagnostic-mode .topbar .icon-btn,
.app-shell.diagnostic-mode .topbar .top-action{
  background:rgba(255,255,255,.55);
  border-color:rgba(126,34,72,.28);
}
.app-shell.diagnostic-mode .topbar .store-context span,
.app-shell.diagnostic-mode .topbar .user-box small{color:#7d3b58}
.app-shell.diagnostic-mode .topbar .user-box .badge{background:#fff1f5;color:#762543}
.app-shell.diagnostic-mode #exitDiagnosticTopBtn{
  background:#b42353;
  border-color:#8e153e;
  color:#fff;
  animation:diagnostic-mode-blink 1.15s ease-in-out infinite;
}
@keyframes diagnostic-mode-blink{
  0%,45%,100%{opacity:1}
  55%,90%{opacity:.3}
}
@media (prefers-reduced-motion:reduce){
  .app-shell.diagnostic-mode #exitDiagnosticTopBtn{animation:none}
}
.overlord-tools{align-items:start}
.patch-drop-zone{display:grid;justify-items:center;gap:6px;width:100%;box-sizing:border-box;margin:12px 0;padding:20px 14px;border:2px dashed #9eacc0;border-radius:12px;background:#f8fafc;color:#526176;text-align:center;transition:.18s}
.patch-drop-zone:hover,.patch-drop-zone:focus,.patch-drop-zone.drag-active{border-color:#b42353;background:#fff0f5;color:#762543;outline:none;transform:translateY(-1px)}
.patch-drop-zone .rm-icon{width:30px;height:30px;color:var(--navy)}
.patch-drop-zone strong{color:var(--navy)}
.patch-drop-zone span{font-size:12px}
.patch-drop-zone small{font-weight:800;overflow-wrap:anywhere}
.patch-progress{display:grid;gap:7px;margin:10px 0 12px}
.patch-progress-track{height:12px;border-radius:999px;background:#e5eaf1;overflow:hidden}
.patch-progress-bar{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--navy-2),#2f80ed);transition:width .15s ease}
.patch-progress-copy{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#526176}
.patch-progress-copy strong{color:var(--navy)}
.patch-progress[data-state="verifying"] .patch-progress-bar{background:linear-gradient(90deg,#d8aa3e,#f0c95f);animation:patch-verifying-pulse 1s ease-in-out infinite}
.patch-progress[data-state="complete"] .patch-progress-bar{background:#157b61}
.patch-progress[data-state="error"] .patch-progress-bar{background:#b42318}
@keyframes patch-verifying-pulse{50%{opacity:.5}}
.patch-status{display:flex;flex-direction:column;gap:5px;text-align:left}
.patch-status strong{color:var(--navy);font-size:14px}
.patch-status span,.patch-status small{overflow-wrap:anywhere}
.diagnostic-list{display:grid;grid-template-columns:minmax(110px,auto) minmax(0,1fr);gap:8px 14px;margin:0}
.diagnostic-list dt{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.45px;color:#64748b}
.diagnostic-list dd{margin:0;font-weight:750;overflow-wrap:anywhere}

@media (min-width:821px){
  body.pos-mode .app-shell>.topbar{grid-row:1}
  body.pos-mode .app-shell>.main-nav{grid-row:2}
  body.pos-mode .app-shell>main{grid-row:3}
  body.pos-mode .app-shell>.status-bar{grid-row:4}
  body.pos-mode .app-shell.nav-collapsed{grid-template-rows:auto 0 minmax(0,1fr) auto}
  body.pos-mode .main-nav{min-height:40px}
  body.pos-mode #view-pos.active{grid-template-rows:minmax(0,1fr);gap:0}
  body.pos-mode .catalog-panel{grid-template-rows:auto minmax(0,1fr)}
  body.pos-mode .catalog-tools{margin-bottom:7px}
}

@media (max-width:1180px) and (min-width:821px){
  .brand-lockup{width:72px;height:18px}
  .topbar{grid-template-columns:auto auto minmax(130px,1fr) auto auto;gap:7px}
  .nav-toggle span{display:none}
  .pos-layout{grid-template-columns:minmax(0,3fr) minmax(330px,1fr)}
}

@media (max-width:820px){
  .topbar{min-height:42px;grid-template-columns:auto auto 1fr auto;padding:5px 8px}
  .brand-lockup{width:72px;height:18px}
  .top-quick-actions{display:none}
  .nav-toggle span{display:none}
  .status-bar{position:static;flex-wrap:wrap}
  .status-group{gap:7px}
  .status-group-right{display:none}
  .customer-modal-card .new-customer{grid-template-columns:1fr}
  .customer-modal-card .customer-profile{grid-template-columns:auto 1fr auto}
}

.brand>.restromate-lockup{display:inline-flex}

/* Original RestroMate icon language */
.rm-icon{
  display:inline-block;
  width:1.15em;
  height:1.15em;
  flex:0 0 auto;
  overflow:visible;
  vertical-align:-.18em;
}
.restromate-mark{
  display:block;
  object-fit:contain;
  background:transparent;
  color:inherit;
  padding:0;
}
.nav-btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.nav-icon{width:17px;height:17px}
.nav-btn.active .nav-icon{filter:none}
.nav-toggle .rm-icon,.icon-btn .rm-icon{width:15px;height:15px}
.category-btn{display:inline-flex;align-items:center;gap:6px}
.category-btn .rm-icon{width:18px;height:18px}
.product-icon{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:11px;
  background:#fff7df;
  color:var(--navy);
}
.product-icon .rm-icon{width:29px;height:29px}
.product-card:nth-child(4n+2) .product-icon{background:#e9f7f4}
.product-card:nth-child(4n+3) .product-icon{background:#eef3fb}
.product-card:nth-child(4n+4) .product-icon{background:#f8ecf2}
.cart-row-name{display:inline-flex;align-items:center;gap:6px}
.cart-row-name .rm-icon{width:18px;height:18px;color:var(--navy)}
.addon-choice>span,.combo-choice>span{display:inline-flex;align-items:center}
.addon-choice .rm-icon,.combo-choice .rm-icon{width:28px;height:28px;color:var(--navy)}
.lock-icon{display:flex;justify-content:center;color:var(--navy)}
.lock-icon .rm-icon{width:44px;height:44px}
.cart-empty>span{display:flex;justify-content:center;color:var(--navy)}
.cart-empty .rm-icon{width:48px;height:48px}
.addon-guide-icon{display:flex;justify-content:center;color:var(--navy);margin-bottom:4px}
.addon-guide-icon .rm-icon{width:44px;height:44px}
.platform-logo{font-size:inherit}
.platform-logo .rm-icon{width:27px;height:27px;color:#fff}
.admin-product-icon{display:inline-flex;align-items:center;gap:6px}
.admin-product-icon .rm-icon{width:20px;height:20px;color:var(--navy)}
