/* ─── Reset ──────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#0f1117;--surface:#1a1d27;--surface2:#22263a;--border:#2e3250;
  --accent:#4f9ef8;--accent2:#22c55e;--danger:#ef4444;--warn:#f59e0b;
  --text:#e2e8f0;--text-muted:#8892a4;--radius:8px;
  --font:'Segoe UI',system-ui,sans-serif;
}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;height:100vh;overflow:hidden;user-select:none;}
input,textarea,select{user-select:text;-webkit-user-select:text;cursor:text;}
select{cursor:pointer;}
#root,.app{height:100vh;display:flex;flex-direction:column;}

/* ─── Header ─────────────────────────────────────────────────────────────── */
.header{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--border);padding:0 16px;height:50px;flex-shrink:0;}
.header-left{display:flex;align-items:center;gap:10px;}
.logo{font-size:20px;}
.shop-name{font-size:15px;font-weight:700;}
.db-badge{font-size:11px;padding:2px 8px;border-radius:20px;font-weight:600;}
.db-badge.connected{color:var(--accent2);background:rgba(34,197,94,0.12);}
.db-badge.disconnected{color:var(--danger);background:rgba(239,68,68,0.12);}
.tabs{display:flex;gap:3px;}
.tab-btn{background:none;border:none;color:var(--text-muted);padding:5px 13px;border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:500;transition:all 0.15s;position:relative;}
.tab-btn:hover{background:var(--surface2);color:var(--text);}
.tab-btn.active{background:var(--accent);color:#fff;}
.badge{display:inline-flex;align-items:center;justify-content:center;background:var(--danger);color:#fff;border-radius:10px;font-size:10px;font-weight:700;min-width:16px;height:16px;padding:0 4px;margin-left:4px;}

/* ─── Toast ──────────────────────────────────────────────────────────────── */
.toast{position:fixed;top:58px;right:18px;z-index:9999;padding:10px 16px;border-radius:var(--radius);font-size:13px;font-weight:600;animation:slideIn 0.2s ease;box-shadow:0 4px 20px rgba(0,0,0,0.4);max-width:400px;}
.toast-success{background:#166534;color:#bbf7d0;border:1px solid #22c55e;}
.toast-warning{background:#78350f;color:#fef3c7;border:1px solid #f59e0b;}
.toast-error{background:#7f1d1d;color:#fee2e2;border:1px solid #ef4444;}
.toast-info{background:#1e3a5f;color:#bfdbfe;border:1px solid var(--accent);}
@keyframes slideIn{from{transform:translateX(40px);opacity:0}to{transform:translateX(0);opacity:1}}

/* ─── POS Screen ──────────────────────────────────────────────────────────── */
.pos-screen{display:flex;flex-direction:column;flex:1;overflow:hidden;padding:10px 14px 0;gap:8px;}
.barcode-bar{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;flex-shrink:0;}
.barcode-icon{font-size:18px;}
.barcode-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:15px;font-family:'Courier New',monospace;letter-spacing:1px;}
.barcode-input::placeholder{color:var(--text-muted);font-size:13px;letter-spacing:0;font-family:var(--font);}
.barcode-hint{font-size:11px;color:var(--text-muted);white-space:nowrap;}

/* ─── Cart Table ─────────────────────────────────────────────────────────── */
.cart-container{flex:1;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);}
.cart-container::-webkit-scrollbar{width:5px;}
.cart-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px;}
.cart-table{width:100%;border-collapse:collapse;}
.cart-table thead{position:sticky;top:0;z-index:10;background:var(--surface2);}
.cart-table th{padding:9px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;}
.cart-table th.right,.cart-table td.right{text-align:right;}
.cart-table th.center,.cart-table td.center{text-align:center;}
.cart-table tbody tr{border-bottom:1px solid rgba(46,50,80,0.5);transition:background 0.1s;}
.cart-table tbody tr:hover{background:var(--surface2);}
.cart-table td{padding:5px 10px;font-size:13px;}
.row-num{color:var(--text-muted);font-size:12px;}
.barcode-cell{font-family:'Courier New',monospace;font-size:12px;color:var(--text-muted);}
.cell-input{background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text);font-size:13px;padding:3px 6px;width:100%;transition:border-color 0.15s,background 0.15s;font-family:inherit;}
.cell-input:hover{border-color:var(--border);}
.cell-input:focus{outline:none;border-color:var(--accent);background:rgba(79,158,248,0.08);}
.cell-input.name-input{min-width:160px;}
.cell-input.num-input{width:80px;text-align:right;}
.cell-input.qty-input{width:60px;text-align:center;}
.line-total{font-weight:600;color:var(--text);text-align:right;}
.remove-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:15px;padding:2px 6px;border-radius:4px;transition:color 0.15s,background 0.15s;line-height:1;}
.remove-btn:hover{color:var(--danger);background:rgba(239,68,68,0.1);}
.empty-cart{text-align:center;padding:50px 20px;color:var(--text-muted);font-size:14px;}

/* ─── Totals Bar ─────────────────────────────────────────────────────────── */
.totals-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;display:flex;align-items:center;gap:16px;flex-shrink:0;margin-bottom:8px;flex-wrap:wrap;}
.totals-group{display:flex;gap:16px;flex:1;}
.total-item{display:flex;flex-direction:column;gap:2px;}
.total-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted);}
.total-value{font-size:17px;font-weight:700;}
.total-value.grand{font-size:21px;color:var(--accent2);}
.divider-v{width:1px;height:38px;background:var(--border);}
.customer-input-wrap{display:flex;flex-direction:column;gap:2px;}
.customer-label{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--text-muted);}
.customer-input{background:var(--surface2);border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:13px;padding:5px 10px;width:150px;}
.customer-input:focus{outline:none;border-color:var(--accent);}
.actions{display:flex;gap:6px;align-items:center;}
.payment-method-select:focus {
  outline: none;
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(79, 158, 248, 0.35);
  background: rgba(79, 158, 248, 0.08);
}

/* ─── Buttons ────────────────────────────────────────────────────────────── */
.btn{border:none;border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all 0.15s;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.btn:disabled{opacity:0.4;cursor:not-allowed;}
.btn-primary{background:var(--accent);color:#fff;}
.btn-primary:hover:not(:disabled){background:#3b86e8;}
.btn-success{background:var(--accent2);color:#fff;}
.btn-success:hover:not(:disabled){background:#16a34a;}
.btn-danger{background:var(--danger)!important;color:#fff!important;}
.btn-danger:hover:not(:disabled){background:#dc2626;}
.btn-ghost{background:var(--surface2);color:var(--text);border:1px solid var(--border);}
.btn-ghost:hover:not(:disabled){background:var(--border);}

/* ─── Orders History ─────────────────────────────────────────────────────── */
.orders-screen{flex:1;overflow:hidden;display:flex;gap:12px;padding:12px 14px;}
.orders-list-panel{width:55%;display:flex;flex-direction:column;gap:8px;overflow:hidden;}
.orders-detail-panel{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-y:auto;padding:14px;}
.orders-table-wrap{flex:1;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);}
.orders-table{width:100%;border-collapse:collapse;}
.orders-table thead{position:sticky;top:0;background:var(--surface2);}
.orders-table th{padding:8px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted);border-bottom:1px solid var(--border);}
.orders-table td{padding:7px 10px;font-size:13px;border-bottom:1px solid rgba(46,50,80,0.4);}
.orders-table tbody tr{cursor:pointer;transition:background 0.1s;}
.orders-table tbody tr:hover{background:var(--surface2);}
.orders-table tbody tr.selected{background:rgba(79,158,248,0.12);}
.status-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:rgba(34,197,94,0.15);color:var(--accent2);}
.order-detail-title{font-size:14px;font-weight:700;margin-bottom:10px;color:var(--accent);}
.detail-meta{font-size:12px;color:var(--text-muted);margin-bottom:12px;line-height:1.8;}
.detail-items-table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:10px;}
.detail-items-table th{padding:5px 6px;background:var(--surface2);color:var(--text-muted);text-align:left;font-size:11px;}
.detail-items-table td{padding:4px 6px;border-bottom:1px solid var(--border);}
.detail-totals{font-size:13px;}
.detail-totals div{display:flex;justify-content:space-between;padding:3px 0;}
.detail-totals .grand{font-weight:700;font-size:15px;color:var(--accent2);border-top:1px solid var(--border);margin-top:5px;padding-top:5px;}

/* ─── Settings ───────────────────────────────────────────────────────────── */
.settings-screen{flex:1;overflow-y:auto;padding:18px 24px;display:flex;flex-direction:column;gap:16px;}
.settings-inner{width:100%;max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;}
.settings-card-title{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--border);}
.settings-grid{display:grid;grid-template-columns:1fr;gap:12px;}
.settings-actions{display:flex;gap:8px;margin-top:8px;align-items:center;}
.settings-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.settings-save-bar{flex-shrink:0;display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 24px;background:var(--surface);border-top:1px solid var(--border);}
.settings-result{font-size:12px;padding:4px 10px;border-radius:4px;}
.settings-result.ok{color:var(--accent2);background:rgba(34,197,94,0.1);}
.settings-result.err{color:var(--danger);background:rgba(239,68,68,0.1);}

/* ─── Shared form elements ───────────────────────────────────────────────── */
.field{display:flex;flex-direction:column;gap:5px;}
.field.span2{grid-column:span 2;}
.field label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.4px;}
.form-input,.field input{background:var(--surface2);border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:13px;padding:7px 10px;transition:border-color 0.15s;width:100%;font-family:var(--font);}
.form-input:focus,.field input:focus{outline:none;border-color:var(--accent);}
.form-input::placeholder,.field input::placeholder{color:var(--text-muted);}
.form-select{background:var(--surface2);border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:13px;padding:7px 10px;width:100%;cursor:pointer;}
.form-select:focus{outline:none;border-color:var(--accent);}
.form-section-title{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:10px;}

/* ─── Full-screen layout ─────────────────────────────────────────────────── */
.full-screen{flex:1;overflow:hidden;display:flex;flex-direction:column;}
.screen-topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;flex-shrink:0;gap:10px;background:var(--surface);border-bottom:1px solid var(--border);}
.search-input{flex:1;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:13px;padding:7px 12px;max-width:400px;}
.search-input:focus{outline:none;border-color:var(--accent);}
.inv-table-wrap{flex:1;overflow-y:auto;margin:0;}
.inv-table-wrap::-webkit-scrollbar{width:5px;}
.inv-table-wrap::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px;}

/* ─── Data table (shared) ────────────────────────────────────────────────── */
.data-table{width:100%;border-collapse:collapse;}
.data-table thead{position:sticky;top:0;z-index:10;background:var(--surface2);}
.data-table th{padding:9px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;}
.data-table th.right,.data-table td.right{text-align:right;}
.data-table th.center,.data-table td.center{text-align:center;}
.data-table tbody tr{border-bottom:1px solid rgba(46,50,80,0.4);transition:background 0.1s;}
.data-table tbody tr:hover{background:var(--surface2);}
.data-table td{padding:7px 10px;font-size:13px;}

/* ─── Utility classes ────────────────────────────────────────────────────── */
.mono{font-family:'Courier New',monospace;font-size:12px;}
.muted{color:var(--text-muted);}
.bold{font-weight:600;}
.small{font-size:12px;}
.bold-green{font-weight:600;color:var(--accent2);}
.low-stock-val{color:var(--danger);font-weight:700;}
.muted-text{font-size:12px;color:var(--text-muted);}
.warn-chip{font-size:11px;color:var(--warn);background:rgba(245,158,11,0.1);border:1px solid rgba(245,158,11,0.3);padding:3px 8px;border-radius:20px;font-weight:600;}
.panel-title{font-size:13px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.5px;}
.info-bar{font-size:12px;color:var(--text-muted);padding:7px 14px;background:rgba(79,158,248,0.06);border-bottom:1px solid var(--border);flex-shrink:0;display:flex;gap:16px;align-items:center;}

/* Chips */
.chip{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;}
.chip-green{background:rgba(34,197,94,0.15);color:var(--accent2);}
.chip-yellow{background:rgba(245,158,11,0.15);color:var(--warn);}
.chip-red{background:rgba(239,68,68,0.15);color:var(--danger);}
.chip-blue{background:rgba(79,158,248,0.15);color:var(--accent);}

/* Row actions */
.row-actions{display:flex;gap:4px;}
.icon-btn{background:none;border:none;cursor:pointer;font-size:15px;padding:3px 6px;border-radius:4px;transition:background 0.1s;color:var(--text-muted);}
.icon-btn:hover{background:var(--surface2);}
.icon-btn.danger:hover{background:rgba(239,68,68,0.1);color:var(--danger);}

/* Margin display */
.margin-display{font-size:18px;font-weight:700;padding:6px 0;}
.margin-display.green{color:var(--accent2);}
.margin-display.yellow{color:var(--warn);}
.margin-display.red{color:var(--danger);}

/* ─── Drawer ─────────────────────────────────────────────────────────────── */
.drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:100;}
.drawer{position:fixed;right:0;top:0;bottom:0;width:480px;background:var(--surface);border-left:1px solid var(--border);z-index:101;display:flex;flex-direction:column;animation:slideRight 0.2s ease;}
@keyframes slideRight{from{transform:translateX(100%)}to{transform:translateX(0)}}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);font-size:14px;font-weight:700;flex-shrink:0;}
.drawer-body{flex:1;overflow-y:auto;padding:18px;}
.drawer-body::-webkit-scrollbar{width:5px;}
.drawer-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px;}
.drawer-footer{padding:14px 18px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;flex-shrink:0;}
.drawer-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;padding:2px 6px;border-radius:4px;}
.drawer-close:hover{color:var(--text);background:var(--surface2);}

/* ─── Modal ──────────────────────────────────────────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:200;display:flex;align-items:center;justify-content:center;}
.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;max-height:90vh;animation:fadeIn 0.15s ease;}
@keyframes fadeIn{from{opacity:0;transform:scale(0.97)}to{opacity:1;transform:scale(1)}}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);font-size:14px;font-weight:700;flex-shrink:0;}
.modal-body{flex:1;overflow-y:auto;padding:18px;}
.modal-body::-webkit-scrollbar{width:5px;}
.modal-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px;}
.modal-footer{padding:12px 18px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;}

/* ─── Product info box ───────────────────────────────────────────────────── */
.product-info-box{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:12px 14px;margin-bottom:12px;}
.pib-name{font-size:15px;font-weight:700;margin-bottom:8px;}
.pib-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:var(--text-muted);}
.pib-meta span b{color:var(--text);}

/* ─── Invoice Detail ─────────────────────────────────────────────────────── */
.inv-detail-meta{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:12px 14px;font-size:12px;line-height:2;display:flex;flex-wrap:wrap;gap:4px 30px;}
.inv-detail-meta b{color:var(--text);}
.inv-detail-meta .mono{font-size:11px;}

/* ─── Form grid ──────────────────────────────────────────────────────────── */
.form-grid{display:grid;gap:12px;}

/* ─── Orders Window ──────────────────────────────────────────────────────── */
.ow-root{height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--font);overflow:hidden;}
.ow-header{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border-bottom:1px solid var(--border);padding:0 12px;height:48px;flex-shrink:0;}
.ow-header-left{display:flex;align-items:center;gap:8px;}
.ow-title{font-size:14px;font-weight:700;}
.ow-filters{display:flex;align-items:center;gap:4px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;}
.ow-order-card{padding:12px 14px;border-bottom:1px solid rgba(46,50,80,0.5);cursor:pointer;transition:background 0.1s;}
.ow-order-card:hover{background:var(--surface);}
.ow-order-card.ow-order-new{border-left:3px solid var(--warn);}
.ow-card-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;}
.ow-order-id{font-weight:700;font-size:14px;}
.ow-card-customer{font-size:13px;color:var(--text-muted);}
.ow-card-total{font-weight:700;color:var(--accent2);}

/* ─── Login Screen ───────────────────────────────────────────────────────── */
.login-root{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);}
.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:32px 36px;width:360px;display:flex;flex-direction:column;gap:16px;}
.login-logo{font-size:36px;text-align:center;}
.login-title{font-size:18px;font-weight:800;text-align:center;color:var(--text);}
.login-subtitle{font-size:12px;color:var(--text-muted);text-align:center;margin-top:-8px;}
.login-system-id{display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:6px 10px;}
.login-sysid-input{background:transparent;border:none;outline:none;color:var(--accent);font-family:'Courier New',monospace;font-size:13px;font-weight:700;width:80px;}
.login-field{display:flex;flex-direction:column;gap:5px;}
.login-field label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.4px;}
.login-input{background:var(--surface2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:14px;padding:10px 12px;transition:border-color 0.15s;width:100%;}
.login-input:focus{outline:none;border-color:var(--accent);}
.login-error{background:rgba(239,68,68,0.1);border:1px solid var(--danger);border-radius:6px;padding:8px 12px;font-size:12px;color:var(--danger);}
.login-btn{width:100%;padding:11px;font-size:14px;justify-content:center;}

/* ─── Header user badge ──────────────────────────────────────────────────── */
.header-user{display:flex;align-items:center;gap:8px;margin-left:8px;}
.user-chip{font-size:12px;color:var(--text-muted);padding:3px 10px;background:var(--surface2);border:1px solid var(--border);border-radius:20px;}

/* ─── Reporting ──────────────────────────────────────────────────────────── */
.report-summary-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px;}
.report-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 14px;}
.report-card-label{font-size:11px;color:var(--text-muted);margin-bottom:4px;}
.report-card-value{font-size:18px;font-weight:700;}

/* ════════════════════════════════════════════════════════════
   LIGHT MODE
   ════════════════════════════════════════════════════════════ */
[data-theme="light"] {
  --bg:        #f0f2f5;
  --surface:   #ffffff;
  --surface2:  #f5f7fa;
  --border:    #dde1e9;
  --accent:    #1a73e8;
  --accent2:   #1e8e3e;
  --danger:    #d93025;
  --warn:      #f29900;
  --text:      #202124;
  --text-muted:#5f6368;
  --radius:    8px;
}

[data-theme="light"] body { background: var(--bg); color: var(--text); }

[data-theme="light"] .header { background: #fff; border-bottom: 1px solid var(--border); box-shadow: 0 1px 4px rgba(0,0,0,0.08); }
[data-theme="light"] .tab-btn:hover { background: #f1f3f4; color: var(--text); }
[data-theme="light"] .tab-btn.active { background: var(--accent); color: #fff; }
[data-theme="light"] .cart-container { background: #fff; }
[data-theme="light"] .data-table thead { background: #f8f9fa; }
[data-theme="light"] .data-table tbody tr:hover { background: #f1f3f4; }
[data-theme="light"] .totals-bar { background: #fff; }
[data-theme="light"] .pos-screen { background: var(--bg); }
[data-theme="light"] .settings-card { background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.07); }
[data-theme="light"] .form-input, [data-theme="light"] .field input { background: #f8f9fa; color: var(--text); }
[data-theme="light"] .form-select { background: #f8f9fa; color: var(--text); }
[data-theme="light"] .barcode-bar { background: #fff; }
[data-theme="light"] .drawer { background: #fff; }
[data-theme="light"] .modal { background: #fff; }
[data-theme="light"] .full-screen { background: var(--bg); }
[data-theme="light"] .screen-topbar { background: #fff; border-bottom: 1px solid var(--border); }
[data-theme="light"] .inv-table-wrap { background: #fff; }
[data-theme="light"] .user-chip { background: #f1f3f4; border-color: var(--border); }
[data-theme="light"] .product-info-box { background: #f8f9fa; }
[data-theme="light"] .orders-detail-panel { background: #fff; }
[data-theme="light"] .orders-table-wrap { background: #fff; }
[data-theme="light"] .login-card { background: #fff; box-shadow: 0 4px 24px rgba(0,0,0,0.10); }
[data-theme="light"] .login-input { background: #f8f9fa; }
[data-theme="light"] .login-root { background: #f0f2f5; }
[data-theme="light"] .info-bar { background: rgba(26,115,232,0.06); }
[data-theme="light"] .ow-root { background: #f0f2f5; }
[data-theme="light"] .ow-header { background: #fff; }
[data-theme="light"] .ow-order-card:hover { background: #f8f9fa; }
[data-theme="light"] .orders-screen { background: var(--bg); }

/* ── Theme toggle button ─────────────────────────────────────── */
.theme-toggle {
  background: none;
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 4px 10px;
  cursor: pointer;
  color: var(--text-muted);
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  transition: all 0.2s;
}
.theme-toggle:hover { background: var(--surface2); color: var(--text); }

/* ════════════════════════════════════════════
   FONT SIZE SYSTEM
   ════════════════════════════════════════════ */
:root {
  --fs-xs:   11px; --fs-sm: 12px; --fs-base: 14px;
  --fs-md:   15px; --fs-lg: 17px; --fs-xl:   20px;
  --fs-2xl:  24px; --fs-3xl: 28px;
}
[data-font-size="small"]  { --fs-xs:10px;--fs-sm:11px;--fs-base:12px;--fs-md:13px;--fs-lg:15px;--fs-xl:18px;--fs-2xl:22px;--fs-3xl:25px; }
[data-font-size="medium"] { --fs-xs:11px;--fs-sm:12px;--fs-base:14px;--fs-md:15px;--fs-lg:17px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:28px; }
[data-font-size="large"]  { --fs-xs:13px;--fs-sm:14px;--fs-base:16px;--fs-md:17px;--fs-lg:20px;--fs-xl:24px;--fs-2xl:28px;--fs-3xl:32px; }
[data-font-size="xlarge"] { --fs-xs:14px;--fs-sm:15px;--fs-base:18px;--fs-md:19px;--fs-lg:22px;--fs-xl:26px;--fs-2xl:32px;--fs-3xl:36px; }

body        { font-size: var(--fs-base); }
.tab-btn    { font-size: var(--fs-sm); }
.cart-table td { font-size: var(--fs-md); }
.total-value   { font-size: var(--fs-xl); }
.total-value.grand { font-size: var(--fs-2xl); }
.data-table td  { font-size: var(--fs-md); }
.data-table th  { font-size: var(--fs-xs); }
.field label    { font-size: var(--fs-xs); }
.form-input, .field input { font-size: var(--fs-md); }
.btn           { font-size: var(--fs-sm); }
.settings-card-title { font-size: var(--fs-xs); }

/* Apply the selected S/M/L/XL size to almost every screen, including inline React styles.
   Existing hard-coded inline font sizes are mapped to relative CSS vars so totals
   stay bigger while normal labels/buttons also scale. */
[data-font-size] body,
[data-font-size] .app,
[data-font-size] .ow-root,
[data-font-size] .modal,
[data-font-size] .drawer,
[data-font-size] .settings-screen,
[data-font-size] .screen,
[data-font-size] .screen-topbar { font-size: var(--fs-base); }

[data-font-size] button,
[data-font-size] input,
[data-font-size] select,
[data-font-size] textarea,
[data-font-size] .btn,
[data-font-size] .tab-btn,
[data-font-size] .form-input,
[data-font-size] .form-select,
[data-font-size] .search-input,
[data-font-size] .customer-input,
[data-font-size] .barcode-input,
[data-font-size] .cell-input { font-size: var(--fs-md) !important; }

[data-font-size] .small,
[data-font-size] .muted-text,
[data-font-size] .badge,
[data-font-size] .chip,
[data-font-size] .warn-chip,
[data-font-size] .settings-result,
[data-font-size] .field label,
[data-font-size] .total-label,
[data-font-size] .customer-label,
[data-font-size] .barcode-hint,
[data-font-size] .data-table th,
[data-font-size] .cart-table th,
[data-font-size] .orders-table th { font-size: var(--fs-xs) !important; }

[data-font-size] .data-table td,
[data-font-size] .cart-table td,
[data-font-size] .orders-table td,
[data-font-size] .detail-totals,
[data-font-size] .panel-title,
[data-font-size] .info-bar { font-size: var(--fs-base) !important; }

[data-font-size] .shop-name,
[data-font-size] .modal-header,
[data-font-size] .drawer-header,
[data-font-size] .settings-card-title,
[data-font-size] .order-detail-title,
[data-font-size] .ow-title { font-size: var(--fs-md) !important; }
[data-font-size] .total-value,
[data-font-size] .report-card-value,
[data-font-size] .margin-display { font-size: var(--fs-xl) !important; }
[data-font-size] .total-value.grand { font-size: var(--fs-2xl) !important; }

[data-font-size] [style*="font-size: 10px"], [data-font-size] [style*="font-size:10px"],
[data-font-size] [style*="font-size: 11px"], [data-font-size] [style*="font-size:11px"] { font-size: var(--fs-xs) !important; }
[data-font-size] [style*="font-size: 12px"], [data-font-size] [style*="font-size:12px"] { font-size: var(--fs-sm) !important; }
[data-font-size] [style*="font-size: 13px"], [data-font-size] [style*="font-size:13px"],
[data-font-size] [style*="font-size: 14px"], [data-font-size] [style*="font-size:14px"] { font-size: var(--fs-base) !important; }
[data-font-size] [style*="font-size: 15px"], [data-font-size] [style*="font-size:15px"],
[data-font-size] [style*="font-size: 16px"], [data-font-size] [style*="font-size:16px"],
[data-font-size] [style*="font-size: 17px"], [data-font-size] [style*="font-size:17px"] { font-size: var(--fs-lg) !important; }
[data-font-size] [style*="font-size: 18px"], [data-font-size] [style*="font-size:18px"],
[data-font-size] [style*="font-size: 20px"], [data-font-size] [style*="font-size:20px"] { font-size: var(--fs-xl) !important; }
[data-font-size] [style*="font-size: 21px"], [data-font-size] [style*="font-size:21px"],
[data-font-size] [style*="font-size: 22px"], [data-font-size] [style*="font-size:22px"],
[data-font-size] [style*="font-size: 24px"], [data-font-size] [style*="font-size:24px"],
[data-font-size] [style*="font-size: 26px"], [data-font-size] [style*="font-size:26px"] { font-size: var(--fs-2xl) !important; }
[data-font-size] [style*="font-size: 28px"], [data-font-size] [style*="font-size:28px"],
[data-font-size] [style*="font-size: 32px"], [data-font-size] [style*="font-size:32px"],
[data-font-size] [style*="font-size: 36px"], [data-font-size] [style*="font-size:36px"] { font-size: var(--fs-3xl) !important; }

.pos-cash-overview { display:grid; grid-template-columns:1fr; gap:6px; margin-bottom:2px; }
.pos-cash-stat { background:var(--surface2); border:1px solid var(--border); border-radius:8px; padding:8px 10px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
.pos-cash-stat-label { font-size:var(--fs-xs); font-weight:800; color:var(--text-muted); text-transform:uppercase; letter-spacing:.04em; }
.pos-cash-stat-value { font-size:var(--fs-lg); font-weight:900; color:var(--text); }
.pos-cash-stat.sales .pos-cash-stat-value { color:var(--accent2); }
.pos-cash-stat.drops .pos-cash-stat-value { color:var(--warn); }
.pos-cash-stat.till .pos-cash-stat-value { color:var(--accent); }
.till-report-btn{width:100%;font-size:var(--fs-xs)!important;padding:6px 8px!important;font-weight:900!important;}
.billing-only-box { background:rgba(245,158,11,.08); border:1px solid rgba(245,158,11,.30); color:var(--text); border-radius:8px; padding:10px 12px; font-size:var(--fs-sm); line-height:1.45; }

/* ── Customers screen ─────────────────────────────────────────── */
.customer-search-dropdown {
  position:absolute; top:100%; left:0; right:0; z-index:500;
  background:var(--surface); border:1px solid var(--border);
  border-radius:0 0 8px 8px; max-height:220px; overflow-y:auto;
  box-shadow:0 8px 24px rgba(0,0,0,0.2);
}
.customer-search-item {
  padding:8px 12px; cursor:pointer; border-bottom:1px solid var(--border);
  transition:background 0.1s; font-size:var(--fs-sm);
}
.customer-search-item:hover { background:var(--surface2); }

/* ── Offline badge ────────────────────────────────────────────── */
.offline-badge {
  background:rgba(239,68,68,0.15); color:var(--danger);
  border:1px solid var(--danger); border-radius:20px;
  padding:2px 10px; font-size:11px; font-weight:700;
  animation: pulse 2s infinite;
}
@keyframes pulse { 0%,100%{opacity:1} 50%{opacity:0.6} }

/* ── Update banner ────────────────────────────────────────────── */
.update-banner {
  background:var(--accent); color:#fff;
  padding:6px 16px; text-align:center; font-size:13px;
  display:flex; align-items:center; justify-content:center; gap:12px;
  flex-shrink:0;
}
/* ─── Native date input calendar icon — black by default in Electron/Chromium, ─── */
/* invisible against dark backgrounds without this.                              */
input[type="date"]::-webkit-calendar-picker-indicator {
  filter: invert(1);
  cursor: pointer;
}
[data-theme="light"] input[type="date"]::-webkit-calendar-picker-indicator {
  filter: none;
}


.live-orders-btn{position:relative;}
.live-orders-btn.has-attention{border-color:rgba(239,68,68,0.55);box-shadow:0 0 0 1px rgba(239,68,68,0.18);}
.attention-badge{background:var(--danger);animation:attentionPulse 1.15s ease-in-out infinite;}
@keyframes attentionPulse{
  0%{transform:scale(1);box-shadow:0 0 0 0 rgba(239,68,68,0.65);}
  70%{transform:scale(1.08);box-shadow:0 0 0 8px rgba(239,68,68,0);}
  100%{transform:scale(1);box-shadow:0 0 0 0 rgba(239,68,68,0);}
}

/* ── Supplier invoice fullscreen keyboard entry ───────────────────────── */
.manual-invoice-screen{background:var(--bg);}
.manual-entry-row{
  display:grid;
  grid-template-columns: 1.25fr 1.7fr .55fr .7fr .7fr .7fr 1fr .78fr .7fr auto;
  gap:8px;
  padding:12px 16px 8px;
  background:var(--surface2);
  border-bottom:1px solid var(--border);
  align-items:end;
  flex-shrink:0;
}
.manual-entry-row .field{min-width:0;}
.manual-entry-row .field label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.manual-scan-input{font-size:18px;font-weight:700;height:38px;}
.manual-row-total{height:36px;display:flex;align-items:center;justify-content:flex-end;font-weight:800;color:var(--accent2);font-size:16px;border:1px solid var(--border);border-radius:6px;padding:0 8px;background:var(--surface);}
.manual-help-line{padding:6px 16px;font-size:12px;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;}
.manual-invoice-table .cell-input.num-input{width:92px;}
.manual-invoice-table .cell-input.name-input{min-width:220px;}
.product-picker-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;padding:24px;}
.product-picker-window{width:min(1100px,96vw);height:min(760px,92vh);background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;box-shadow:0 24px 80px rgba(0,0,0,.45);}
.product-picker-list{flex:1;overflow:auto;padding:8px;}
.product-picker-row{padding:10px 12px;border:1px solid transparent;border-bottom-color:var(--border);border-radius:8px;cursor:pointer;display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:10px;align-items:center;}
.product-picker-row.active{background:rgba(79,158,248,.12);border-color:var(--accent);}
@media(max-width:1200px){.manual-entry-row{grid-template-columns:1fr 1fr .5fr .6fr .6fr .6fr .9fr .7fr .6fr auto;}.manual-scan-input{font-size:15px;}}

/* Product picker used by supplier invoice Alt+N search */
.product-picker-window{width:min(1450px,96vw);height:min(850px,92vh);}
.product-picker-list{flex:1;overflow:auto;padding:8px 10px 14px;}
.product-picker-table{width:100%;border-collapse:separate;border-spacing:0 4px;}
.product-picker-table thead th{position:sticky;top:0;z-index:2;background:var(--surface2);border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);}
.product-picker-table tbody tr.product-picker-row{cursor:pointer;transition:background .12s ease, box-shadow .12s ease, transform .08s ease;}
.product-picker-table tbody tr.product-picker-row td{border-top:1px solid transparent;border-bottom:1px solid var(--border);}
.product-picker-table tbody tr.product-picker-row.active td{background:rgba(79,158,248,.16);border-top-color:var(--accent);border-bottom-color:var(--accent);box-shadow:inset 0 1px 0 rgba(96,165,250,.25), inset 0 -1px 0 rgba(96,165,250,.25);}
.product-picker-table tbody tr.product-picker-row.active td:first-child{border-left:1px solid var(--accent);border-radius:8px 0 0 8px;}
.product-picker-table tbody tr.product-picker-row.active td:last-child{border-right:1px solid var(--accent);border-radius:0 8px 8px 0;}
.product-picker-table tbody tr.product-picker-row{display:table-row;padding:0;border:0;border-radius:0;}
.product-picker-table tbody tr.product-picker-row:hover{background:transparent;}
[data-theme="light"] .product-picker-table tbody tr.product-picker-row:hover{background:transparent;}

/* Supplier invoice scan box: do not use browser datalist with thousands of products */
.manual-scan-wrap{position:relative;}
.manual-scan-suggestions{position:absolute;top:calc(100% + 3px);left:0;right:0;z-index:10000;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 14px 36px rgba(0,0,0,.36);max-height:340px;overflow:auto;}
.manual-scan-suggestion-table{width:100%;border-collapse:collapse;font-size:12px;}
.manual-scan-suggestion-table th{position:sticky;top:0;z-index:1;background:var(--surface2);color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);}
.manual-scan-suggestion-table td{padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.manual-scan-suggestion-table tbody tr{cursor:pointer;}
.manual-scan-suggestion-table tbody tr.active td{background:rgba(79,158,248,.16);}
.manual-scan-suggestion-hint{padding:7px 10px;color:var(--text-muted);font-size:11px;background:var(--surface2);border-top:1px solid var(--border);}

/* ── POS dual scan row / quick refunds-exchanges ────────────────────────── */
.pos-scan-stack{display:flex;flex-direction:column;gap:6px;flex-shrink:0;background:var(--bg);}
.pos-scan-dropdown{position:absolute;top:100%;left:0;right:0;z-index:9999;background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 10px 10px;box-shadow:0 8px 24px rgba(0,0,0,.3);max-height:360px;overflow-y:auto;}
.pos-scan-suggestion{display:flex;align-items:center;gap:10px;padding:9px 14px;background:transparent;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s;}
.pos-scan-suggestion.active{background:rgba(79,158,248,.12);}
.pos-scan-thumb{width:40px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0;background:var(--surface2);display:flex;align-items:center;justify-content:center;}
.pos-scan-thumb img{width:100%;height:100%;object-fit:cover;}
.pos-scan-info{flex:1;min-width:0;}
.pos-scan-title{font-weight:800;font-size:var(--fs-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pos-scan-meta{font-size:var(--fs-xs);color:var(--text-muted);display:flex;gap:10px;margin-top:2px;}
.pos-scan-price{text-align:right;flex-shrink:0;font-size:var(--fs-sm);font-weight:900;color:var(--accent2);}
.pos-scan-price small{display:block;font-size:var(--fs-xs);font-weight:800;color:var(--accent2);margin-top:2px;}
.pos-scan-price small.warn{color:var(--warn);}.pos-scan-price small.danger{color:var(--danger);}
.pos-scan-help{padding:6px 14px;font-size:var(--fs-xs);color:var(--text-muted);border-top:1px solid var(--border);}

.pos-detail-scan-row{position:relative;display:grid;grid-template-columns:210px minmax(145px,.72fr) 78px 124px 108px 64px;gap:6px;align-items:end;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;}
.pos-detail-scan-row.return-mode{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.045);}
.pos-detail-scan-row.stock-warning{border-color:rgba(239,68,68,.55);}
.pos-detail-field{display:flex;flex-direction:column;gap:3px;min-width:0;}
.pos-detail-field label{font-size:var(--fs-xs);font-weight:900;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;}
.pos-detail-field input{height:32px;background:var(--surface2);border:1px solid var(--border);border-radius:7px;color:var(--text);padding:0 9px;font-family:var(--font);font-size:var(--fs-sm);font-weight:750;outline:none;}
.pos-detail-field input:focus{border-color:var(--accent);}
.pos-detail-field input[readonly]{color:var(--text-muted);}
.pos-detail-name input{font-size:var(--fs-xs);font-weight:750;}
.pos-detail-stock .pos-detail-readonly{justify-content:center;font-weight:900;}
.pos-detail-stock label{white-space:nowrap;}
.pos-detail-readonly{height:32px;display:flex;align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:7px;color:var(--text);padding:0 9px;font-size:var(--fs-sm);font-weight:850;}
.pos-detail-add{height:32px;padding:0 14px!important;font-size:var(--fs-sm)!important;font-weight:900!important;}
.pos-detail-dropdown{position:absolute;top:calc(100% + 2px);left:0;width:min(620px,90vw);z-index:9999;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 28px rgba(0,0,0,.35);overflow:hidden;}
.pos-detail-option{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:14px;padding:9px 12px;border-bottom:1px solid var(--border);cursor:pointer;align-items:center;}
.pos-detail-option.active{background:rgba(79,158,248,.14);}
.pos-detail-option strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-sm);}
.pos-detail-option span{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;}
.pos-stock-warning-text{position:absolute;right:86px;bottom:-19px;font-size:var(--fs-xs);font-weight:800;color:var(--danger);}
.quick-refund-box{background:rgba(245,158,11,.09);border:1px solid rgba(245,158,11,.32);border-radius:8px;padding:9px 11px;display:flex;flex-direction:column;gap:3px;}
.quick-refund-box span{font-size:var(--fs-xs);font-weight:900;color:var(--warn);text-transform:uppercase;letter-spacing:.04em;}
.quick-refund-box strong{font-size:var(--fs-lg);font-weight:950;color:var(--warn);}
.quick-refund-box small{font-size:var(--fs-xs);color:var(--text-muted);line-height:1.35;}
.pos-place-order-btn{font-size:14px!important;line-height:1.25!important;padding:10px 8px!important;min-height:50px;}
.pos-place-order-btn svg{width:16px!important;height:16px!important;}
[data-font-size="xlarge"] .pos-place-order-btn{font-size:15px!important;}
@media (max-width:1200px){.pos-detail-scan-row{grid-template-columns:168px minmax(120px,.65fr) 66px 110px 88px 56px;padding:7px 8px;gap:5px;}.pos-detail-option{grid-template-columns:1fr;gap:2px;}}

/* Supplier invoice entry uses the same compact keyboard-first scan row as POS. */
.supplier-entry-row.pos-detail-scan-row{
  grid-template-columns:210px minmax(230px,1fr) 62px 90px 78px 76px 76px 78px 132px 122px 74px;
  gap:6px;
  padding:8px 12px;
  border-radius:0;
  border-left:0;
  border-right:0;
  background:var(--surface);
}
.supplier-entry-row.discount-mode{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.035);}
.supplier-entry-row .manual-row-total{height:32px;font-size:var(--fs-sm);justify-content:flex-end;background:var(--surface2);color:var(--accent2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.supplier-entry-add{height:32px!important;min-width:70px;align-self:end;}
.supplier-detail-dropdown{width:min(880px,94vw);max-height:340px;overflow-y:auto;}
.supplier-detail-dropdown .pos-detail-option{grid-template-columns:minmax(260px,1fr) auto;}
.pos-detail-help{padding:6px 12px;font-size:var(--fs-xs);color:var(--text-muted);background:var(--surface2);border-top:1px solid var(--border);}
[data-font-size="large"] .pos-place-order-btn,
[data-font-size="xlarge"] .pos-place-order-btn{font-size:13px!important;line-height:1.2!important;padding:9px 8px!important;min-height:48px;}
@media (max-width:1300px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:170px minmax(180px,1fr) 56px 78px 70px 68px 68px 68px 112px 106px 64px;gap:5px;padding:7px 8px;}
  .supplier-detail-dropdown .pos-detail-option{grid-template-columns:1fr;gap:2px;}
}

/* Till closing / cash summary fixes */
.pos-cash-stat.drops .pos-cash-stat-value { color: var(--danger) !important; }
.cash-info-btn {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--text-muted);
  font-size: 10px;
  font-weight: 900;
  line-height: 14px;
  padding: 0;
  margin-left: 4px;
  cursor: help;
}
.cash-info-btn:hover { color: var(--danger); border-color: var(--danger); }
.till-close-modal { width: 520px; max-width: calc(100vw - 32px); }
.closing-hint {
  background: var(--surface2);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--text-muted);
  font-size: var(--fs-sm);
  line-height: 1.45;
  margin-bottom: 12px;
}
.closing-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: rgba(59,130,246,.08);
  border: 1px solid rgba(59,130,246,.22);
  border-radius: 8px;
  padding: 10px 12px;
  margin-bottom: 12px;
}
.closing-summary-row span { color: var(--text-muted); font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.closing-summary-row strong { color: var(--accent); font-size: var(--fs-xl); }
.till-close-actions { gap: 8px; }
.till-close-actions .btn { flex: 1; }
.chip-blue { background: rgba(59,130,246,.12); color: var(--accent); border: 1px solid rgba(59,130,246,.25); }

/* Supplier invoice row polish: shorter scan placeholder/field, full visible total, centered qty. */
.supplier-entry-row.pos-detail-scan-row{
  grid-template-columns:180px minmax(170px,1fr) 58px 88px 72px 68px 68px 70px 118px 108px 68px !important;
  gap:5px !important;
  padding:7px 10px !important;
}
.supplier-entry-row .manual-scan-input{font-size:var(--fs-sm)!important;}
.supplier-entry-row .manual-name-field input{font-size:var(--fs-sm)!important;}
.supplier-entry-row .mini-field input,
.supplier-entry-row .manual-row-total,
.supplier-entry-row .pos-detail-readonly{padding-left:6px!important;padding-right:6px!important;}
.supplier-entry-row .manual-row-total{font-size:var(--fs-xs)!important;}
.supplier-entry-row .pos-detail-field label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.manual-invoice-table .manual-barcode-th{width:130px;}
.manual-invoice-table .manual-barcode-cell{width:130px;max-width:130px;}
.manual-invoice-table .manual-barcode-list-input{width:130px!important;max-width:130px;}
.manual-invoice-table .manual-qty-cell{width:76px;}
.manual-invoice-table .manual-qty-cell .num-input{width:72px!important;text-align:center!important;}
.manual-invoice-table .center{text-align:center!important;}
.manual-invoice-table td,.manual-invoice-table th{vertical-align:middle;}
@media (max-width:1300px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:150px minmax(145px,1fr) 54px 78px 66px 62px 62px 64px 98px 92px 62px!important;}
}

/* Product add/edit drawer: wider and easier to TAB through. */
.inventory-product-drawer{width:min(820px,92vw)!important;}
.inventory-product-drawer .drawer-body{padding:18px 24px;}
.inventory-product-drawer .form-grid{align-items:end;}
.inventory-product-drawer .form-input,
.inventory-product-drawer .form-select{min-height:38px;}
.inventory-product-drawer .drawer-footer .btn{min-width:150px;}
@media (max-width:900px){
  .inventory-product-drawer{width:96vw!important;}
  .inventory-product-drawer .form-grid,
  .inventory-product-drawer .inventory-ending-grid{grid-template-columns:1fr 1fr!important;}
}

/* Inventory product image fetch/cache UI */
.inventory-image-row{
  display:flex;
  gap:10px;
  align-items:flex-end;
  margin-bottom:16px;
}
.inventory-image-url-field{flex:1;min-width:0;}
.inventory-fetch-image-btn{min-height:38px;white-space:nowrap;}
.inventory-image-preview{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:8px;
  border:1px solid var(--border);
  flex-shrink:0;
}
.inventory-row-actions{gap:6px;justify-content:flex-end;flex-wrap:wrap;}
.icon-btn.action-text-btn{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px 7px;
  border:1px solid var(--border);
  background:var(--surface2);
  color:var(--text);
  font-size:11px;
  font-weight:700;
  line-height:1;
}
.icon-btn.action-text-btn:hover{background:var(--surface3);}
.icon-btn.action-text-btn.danger{color:var(--danger);}
.z-product-movement-table .return-row{background:rgba(239,68,68,.06);}

@media(max-width:900px){
  .inventory-image-row{align-items:stretch;flex-wrap:wrap;}
  .inventory-fetch-image-btn{width:100%;}
}

/* Latest polish: supplier invoice row, inventory images, WP-style row actions */
.supplier-entry-row.pos-detail-scan-row{
  grid-template-columns:180px 360px 58px 92px 72px 72px 72px 72px 128px 116px 74px !important;
  justify-content:start;
  align-items:end;
  gap:5px!important;
  padding:7px 10px!important;
}
.supplier-entry-row .pos-detail-field label{font-size:10px!important;line-height:1.05!important;letter-spacing:.035em!important;}
.supplier-entry-row .manual-scan-input{font-size:var(--fs-xs)!important;font-weight:800!important;}
.supplier-entry-row .manual-name-field input{font-size:var(--fs-xs)!important;font-weight:800!important;}
.supplier-entry-row .pos-detail-field input,
.supplier-entry-row .pos-detail-readonly{height:32px!important;}
.supplier-entry-add{
  min-width:72px!important;
  height:32px!important;
  padding:0 10px!important;
  border-radius:8px!important;
  font-size:var(--fs-sm)!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
@media (max-width:1500px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:160px 290px 54px 84px 68px 66px 66px 68px 112px 104px 68px!important;}
}
@media (max-width:1250px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:145px 220px 52px 78px 62px 62px 62px 62px 96px 90px 64px!important;}
}

.inventory-product-drawer{width:min(980px,96vw)!important;}
.inventory-product-drawer .drawer-body{padding:20px 28px!important;}
.inventory-image-card{
  display:flex;
  align-items:center;
  gap:18px;
  padding:12px;
  margin-bottom:16px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:12px;
}
.inventory-image-preview-large-wrap{
  width:128px;
  height:128px;
  border-radius:12px;
  border:1px solid var(--border);
  background:var(--surface);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  flex-shrink:0;
}
.inventory-image-preview-large{width:100%;height:100%;object-fit:contain;background:#fff;}
.inventory-image-empty{color:var(--text-muted);font-size:var(--fs-xs);font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.inventory-image-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start;min-width:190px;}
.inventory-image-actions small{color:var(--text-muted);font-size:var(--fs-xs);line-height:1.35;max-width:260px;}
.inventory-fetch-image-btn{min-width:132px;min-height:38px;}

.inventory-name-cell{min-width:260px;}
.inventory-product-title{
  border:0;
  background:transparent;
  color:var(--text);
  font:inherit;
  font-weight:900;
  padding:0;
  margin:0;
  cursor:pointer;
  text-align:left;
}
.inventory-product-title:hover{color:var(--accent);text-decoration:underline;}
.inventory-row-actions-inline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  margin-top:4px;
  font-size:11px;
  color:var(--text-muted);
}
.row-action-link{
  border:0;
  background:transparent;
  color:var(--accent);
  padding:0;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.row-action-link:hover{text-decoration:underline;color:var(--accent2);}
.row-action-link.danger{color:var(--danger);}
.inventory-quick-view-modal{width:min(1080px,96vw);max-height:92vh;}
.inventory-qv-sub{font-size:var(--fs-xs);color:var(--text-muted);font-weight:700;margin-top:3px;}
.inventory-qv-body{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:start;}
.inventory-qv-image-wrap{width:180px;height:180px;border-radius:12px;border:1px solid var(--border);background:var(--surface2);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.inventory-qv-image{width:100%;height:100%;object-fit:contain;background:#fff;}
.inventory-qv-no-image{color:var(--text-muted);font-weight:800;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;}
.inventory-qv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.inventory-qv-grid div{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:10px 12px;}
.inventory-qv-grid span{display:block;color:var(--text-muted);font-size:var(--fs-xs);font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;}
.inventory-qv-grid strong{font-size:var(--fs-sm);}
.inventory-qv-actions{justify-content:flex-end!important;gap:8px!important;}
.inventory-qv-content{min-width:0;display:flex;flex-direction:column;gap:14px;}
.inventory-qv-electronics-loading{border:1px dashed var(--border);border-radius:10px;padding:14px;color:var(--text-muted);font-weight:800;background:var(--surface2);}
.inventory-qv-electronics-section{border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--primary) 4%,var(--surface));overflow:hidden;}
.inventory-qv-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--primary) 8%,var(--surface2));}
.inventory-qv-section-heading>div{display:flex;flex-direction:column;gap:3px;}.inventory-qv-section-heading strong{font-size:var(--fs-sm);}.inventory-qv-section-heading span{font-size:var(--fs-xs);color:var(--text-muted);font-weight:700;}
.inventory-qv-serialized-badge{display:inline-flex!important;align-items:center;border-radius:999px;padding:5px 9px;background:color-mix(in srgb,#0ea5e9 15%,var(--surface));color:#0369a1!important;border:1px solid color-mix(in srgb,#0ea5e9 35%,var(--border));font-size:11px!important;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;}
.inventory-qv-electronics-grid{padding:12px;grid-template-columns:repeat(4,minmax(0,1fr));}
.inventory-qv-electronics-grid>div{background:var(--surface);}
.inventory-qv-mini-heading{font-size:var(--fs-xs);font-weight:950;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px;}
.inventory-qv-specifications,.inventory-qv-units{padding:0 12px 12px;}
.inventory-qv-spec-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.inventory-qv-spec-grid>div{border:1px solid var(--border);border-radius:8px;padding:9px 10px;background:var(--surface);min-width:0;}
.inventory-qv-spec-grid span{display:block;text-transform:capitalize;color:var(--text-muted);font-size:var(--fs-xs);font-weight:850;margin-bottom:3px;}.inventory-qv-spec-grid strong{font-size:var(--fs-sm);overflow-wrap:anywhere;}
.inventory-qv-unit-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:9px;}.inventory-qv-unit-summary>span{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:5px 9px;font-size:var(--fs-xs);color:var(--text-muted);}.inventory-qv-unit-summary strong{color:var(--text);}
.inventory-qv-units-table-wrap{overflow:auto;max-height:280px;border:1px solid var(--border);border-radius:9px;background:var(--surface);}
.inventory-qv-units-table{width:100%;border-collapse:collapse;font-size:var(--fs-xs);}.inventory-qv-units-table th,.inventory-qv-units-table td{padding:8px 9px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;}.inventory-qv-units-table th{position:sticky;top:0;background:var(--surface2);z-index:1;text-transform:uppercase;letter-spacing:.035em;color:var(--text-muted);font-size:10px;}.inventory-qv-units-table tr:last-child td{border-bottom:0;}
.inventory-qv-unit-status{display:inline-flex;border-radius:999px;padding:3px 7px;font-weight:900;font-size:10px;text-transform:uppercase;letter-spacing:.025em;background:var(--surface2);border:1px solid var(--border);}.inventory-qv-unit-status.status-in-stock{color:#15803d;background:#dcfce7;border-color:#86efac}.inventory-qv-unit-status.status-sold{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.inventory-qv-unit-status.status-damaged{color:#b91c1c;background:#fee2e2;border-color:#fca5a5}.inventory-qv-unit-status.status-warranty-claim{color:#a16207;background:#fef3c7;border-color:#fcd34d}
.inventory-qv-more-units{padding-top:7px;color:var(--text-muted);font-size:var(--fs-xs);font-weight:700;}
@media(max-width:980px){.inventory-qv-electronics-grid{grid-template-columns:1fr 1fr}.inventory-qv-spec-grid{grid-template-columns:1fr 1fr}}

@media(max-width:720px){.inventory-qv-body{grid-template-columns:1fr}.inventory-qv-image-wrap{width:100%;height:220px}.inventory-qv-electronics-grid,.inventory-qv-spec-grid{grid-template-columns:1fr}.inventory-qv-section-heading{align-items:flex-start;flex-direction:column}.inventory-image-card{align-items:stretch;flex-direction:column}.inventory-image-preview-large-wrap{width:160px;height:160px}}

/* Final supplier invoice row width: product name gets the remaining width, inputs are readable, button says Enter. */
.supplier-entry-row.pos-detail-scan-row{
  grid-template-columns:200px minmax(420px,2.4fr) 72px 112px 90px 90px 90px 92px 150px 136px 96px !important;
  width:100% !important;
  gap:7px !important;
  padding:8px 12px !important;
}
.supplier-entry-row .manual-name-field{min-width:0!important;}
.supplier-entry-row .manual-name-field input{font-size:var(--fs-sm)!important;font-weight:850!important;}
.supplier-entry-row .manual-scan-input{font-size:var(--fs-sm)!important;font-weight:850!important;}
.supplier-entry-row .pos-detail-field input,
.supplier-entry-row .pos-detail-readonly,
.supplier-entry-row .manual-row-total{height:34px!important;}
.supplier-entry-add{
  min-width:96px!important;
  height:34px!important;
  border-radius:8px!important;
  font-size:var(--fs-sm)!important;
  font-weight:950!important;
}
@media (max-width:1500px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:175px minmax(320px,1.7fr) 64px 100px 78px 78px 78px 80px 124px 112px 84px!important;gap:6px!important;}
}
@media (max-width:1250px){
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:155px minmax(240px,1.2fr) 58px 88px 70px 70px 70px 72px 104px 96px 76px!important;gap:5px!important;}
}

/* Inventory row action links: keep WordPress-like text, but restore small SVG icons. */
.row-action-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  line-height:1.2!important;
}
.row-action-link .svg-html,
.inventory-qv-actions .svg-html,
.inventory-revisions-modal .modal-header .svg-html{
  display:inline-flex;
  align-items:center;
  vertical-align:-2px;
}
.inventory-row-actions-inline .svg-html svg{width:12px;height:12px;}
.inventory-qv-actions .btn{display:inline-flex;align-items:center;gap:6px;}

/* Product revision / stock history modal */
.inventory-revisions-modal{width:min(1180px,96vw);max-height:92vh;display:flex;flex-direction:column;}
.inventory-revisions-body{overflow:auto;display:flex;flex-direction:column;gap:10px;}
.inventory-revisions-body h3{margin:4px 0 2px;font-size:var(--fs-sm);font-weight:950;color:var(--text);text-transform:uppercase;letter-spacing:.04em;}
.revision-table-wrap{border:1px solid var(--border);border-radius:10px;overflow:auto;background:var(--surface);max-height:300px;}
.revision-table{min-width:980px;}
.revision-table th{position:sticky;top:0;background:var(--surface2);z-index:1;}
.revision-table td{vertical-align:top;}
.revision-positive td{background:rgba(34,197,94,.045);}
.revision-negative td{background:rgba(239,68,68,.045);}
.revision-positive td:nth-child(4){color:var(--accent2);}
.revision-negative td:nth-child(4){color:var(--danger);}
.revision-value-cell{max-width:260px;white-space:normal;word-break:break-word;}

/* Product revisions: readable date/time + pagination */
.revision-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:6px;
}
.revision-section-head span{
  color:var(--text-muted);
  font-size:var(--fs-xs);
  font-weight:700;
}
.revision-note{
  border:1px solid #f59e0b55;
  background:#fef3c7;
  color:#92400e;
  border-radius:10px;
  padding:9px 12px;
  font-size:var(--fs-xs);
  line-height:1.35;
}
.theme-dark .revision-note{
  background:#2a1f08;
  color:#fbbf24;
  border-color:#f59e0b66;
}
.revision-table-wrap{
  max-height:360px;
}
.revision-stock-table{min-width:1220px;}
.revision-field-table{min-width:980px;}
.revision-table .revision-date-cell{
  min-width:190px;
  white-space:normal;
  line-height:1.35;
}
.revision-pagination{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:4px 0 8px;
  color:var(--text-muted);
  font-size:var(--fs-xs);
  font-weight:800;
}
.revision-pagination .btn{
  padding:5px 10px;
  min-height:28px;
}

/* Final inventory action polish: lighter text + distinct, dark-mode-safe icon/action colors */
.inventory-row-actions-inline{
  gap:4px!important;
  font-size:11px!important;
  font-weight:500!important;
}
.inventory-row-actions-inline > span{
  color:var(--border-strong, var(--border))!important;
  font-weight:500!important;
}
.inventory-row-actions-inline .row-action-link,
.inventory-qv-actions .btn{
  font-weight:600!important;
  letter-spacing:0!important;
}
.inventory-row-actions-inline .row-action-link{
  opacity:.96;
  text-decoration:none!important;
}
.inventory-row-actions-inline .row-action-link:hover{
  opacity:1;
  text-decoration:underline!important;
}
.inventory-row-actions-inline .row-action-link .svg-html svg,
.inventory-qv-actions .btn .svg-html svg{
  width:13px!important;
  height:13px!important;
  color:currentColor!important;
}
.row-action-link.action-view,
.inventory-qv-actions .action-view{color:#0284c7!important;}
.row-action-link.action-stock,
.inventory-qv-actions .action-stock{color:#d97706!important;}
.row-action-link.action-label,
.inventory-qv-actions .action-label{color:#7c3aed!important;}
.row-action-link.action-edit,
.inventory-qv-actions .action-edit{color:#2563eb!important;}
.row-action-link.action-revisions,
.inventory-qv-actions .action-revisions{color:#0f766e!important;}
.row-action-link.action-delete,
.inventory-qv-actions .action-delete{color:#dc2626!important;}
.dark .row-action-link.action-view,
[data-theme="dark"] .row-action-link.action-view,
.dark .inventory-qv-actions .action-view,
[data-theme="dark"] .inventory-qv-actions .action-view{color:#38bdf8!important;}
.dark .row-action-link.action-stock,
[data-theme="dark"] .row-action-link.action-stock,
.dark .inventory-qv-actions .action-stock,
[data-theme="dark"] .inventory-qv-actions .action-stock{color:#fbbf24!important;}
.dark .row-action-link.action-label,
[data-theme="dark"] .row-action-link.action-label,
.dark .inventory-qv-actions .action-label,
[data-theme="dark"] .inventory-qv-actions .action-label{color:#a78bfa!important;}
.dark .row-action-link.action-edit,
[data-theme="dark"] .row-action-link.action-edit,
.dark .inventory-qv-actions .action-edit,
[data-theme="dark"] .inventory-qv-actions .action-edit{color:#60a5fa!important;}
.dark .row-action-link.action-revisions,
[data-theme="dark"] .row-action-link.action-revisions,
.dark .inventory-qv-actions .action-revisions,
[data-theme="dark"] .inventory-qv-actions .action-revisions{color:#2dd4bf!important;}
.dark .row-action-link.action-delete,
[data-theme="dark"] .row-action-link.action-delete,
.dark .inventory-qv-actions .action-delete,
[data-theme="dark"] .inventory-qv-actions .action-delete{color:#f87171!important;}
.inventory-qv-actions .btn.btn-primary.action-edit{color:#fff!important;}
.inventory-qv-actions .btn.btn-primary.action-edit .svg-html svg{color:#fff!important;}

/* POS second scan row: full width without leaking into payment panel. */
.pos-detail-scan-row:not(.supplier-entry-row){
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  grid-template-columns:minmax(230px,.85fr) minmax(280px,1.35fr) minmax(78px,.34fr) minmax(135px,.58fr) minmax(125px,.52fr) minmax(74px,.28fr) !important;
  gap:8px !important;
}
.pos-detail-scan-row:not(.supplier-entry-row) .pos-detail-field{min-width:0 !important;}
.pos-detail-scan-row:not(.supplier-entry-row) .pos-detail-stock .pos-detail-readonly,
.pos-detail-scan-row:not(.supplier-entry-row) .pos-detail-readonly,
.pos-detail-scan-row:not(.supplier-entry-row) .pos-detail-field input{
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}
.pos-detail-scan-row:not(.supplier-entry-row) .pos-detail-add{
  width:100% !important;
  min-width:0 !important;
  justify-content:center !important;
  padding-left:8px!important;
  padding-right:8px!important;
}
@media (max-width:1500px){
  .pos-detail-scan-row:not(.supplier-entry-row){
    grid-template-columns:minmax(190px,.82fr) minmax(240px,1.25fr) minmax(70px,.34fr) minmax(115px,.58fr) minmax(105px,.52fr) minmax(64px,.28fr) !important;
    gap:6px !important;
  }
}
@media (max-width:1200px){
  .pos-detail-scan-row:not(.supplier-entry-row){
    grid-template-columns:minmax(155px,.85fr) minmax(180px,1.1fr) minmax(58px,.34fr) minmax(92px,.54fr) minmax(82px,.48fr) minmax(56px,.28fr) !important;
    gap:5px !important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
}

.form-readonly{
  min-height: 40px;
  display:flex;
  align-items:center;
  padding: 9px 12px;
  border:1px solid var(--border);
  border-radius:8px;
  background: var(--surface2);
  color: var(--text);
  font-size: 13px;
  font-weight: 700;
  word-break: break-word;
}


/* Windows / low-height resolution safety */
.full-screen, .settings-wrap, .settings-screen, .cart-container, .inv-table-wrap, .orders-screen { min-height:0; }
.screen-topbar { min-width:0; overflow-x:auto; overflow-y:hidden; }
.screen-topbar::-webkit-scrollbar { height:5px; }
.screen-topbar::-webkit-scrollbar-thumb { background:var(--border); border-radius:4px; }
.pos-cash-tools { border:1px solid var(--border); border-radius:9px; overflow:hidden; background:var(--surface2); }
.pos-cash-tools-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; background:transparent; border:0; color:var(--text); font-size:12px; font-weight:800; cursor:pointer; }
.pos-cash-tools-toggle:hover { background:rgba(148,163,184,.10); }
.pos-cash-tools .pos-cash-overview { border-top:1px solid var(--border); border-radius:0; background:var(--surface); }
@media (max-height:760px){
  .header{ min-height:44px; }
  .pos-scan-stack{ gap:4px; }
  .cart-container{ overflow:auto; }
}


/* Inventory supplier filter and paging controls */
.inventory-supplier-filter {
  position: relative;
  z-index: 60;
  width: 210px;
  min-width: 170px;
  flex-shrink: 0;
}
.inventory-supplier-filter-input {
  width: 100%;
  height: 34px;
  padding-right: 50px;
  font-size: 12px;
}
.inventory-supplier-filter-toggle,
.inventory-supplier-filter-clear {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: var(--text-muted);
  cursor: pointer;
  line-height: 1;
  z-index: 2;
}
.inventory-supplier-filter-toggle { right: 8px; font-size: 13px; }
.inventory-supplier-filter-clear { right: 25px; font-size: 17px; }
.inventory-supplier-filter-menu {
  position: absolute;
  z-index: 10050;
  left: 0;
  right: 0;
  top: calc(100% + 4px);
  max-height: 280px;
  overflow-y: auto;
  padding: 4px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
}
.inventory-screen > .screen-topbar {
  position: relative;
  z-index: 50;
  overflow: visible;
}
.inventory-screen .inv-table-wrap {
  position: relative;
  z-index: 1;
}
.inventory-bulk-stock-modal {
  width: min(430px, calc(100vw - 32px));
}
.inventory-bulk-stock-input {
  height: 46px;
  font-size: 20px;
  font-weight: 800;
  text-align: center;
}
.inventory-bulk-stock-choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
}
.inventory-bulk-stock-note {
  margin-top: 12px;
  padding: 9px 10px;
  border-radius: 7px;
  background: var(--surface2);
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.45;
}
.inventory-bulk-stock-note.error {
  background: rgba(239,68,68,.10);
  color: var(--danger);
}
.inventory-supplier-filter-option {
  display: block;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: var(--text);
  text-align: left;
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}
.inventory-supplier-filter-option:hover { background: var(--surface2); }
.inventory-supplier-filter-option.selected { color: var(--accent); font-weight: 700; background: rgba(79,158,248,.08); }
.inventory-supplier-filter-empty { padding: 10px; color: var(--text-muted); font-size: 12px; }
.inventory-pagination {
  min-height: 54px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 8px 16px;
  border-top: 1px solid var(--border);
  flex-shrink: 0;
  font-size: 12px;
  color: var(--text-muted);
}
.inventory-page-size {
  display: flex;
  align-items: center;
  gap: 8px;
  grid-column: 1;
}
.inventory-page-size .form-select { width: 78px; min-width: 78px; padding: 5px 26px 5px 8px; font-size: 12px; }
.inventory-page-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  grid-column: 2;
}
@media (max-width: 1100px) {
  .inventory-supplier-filter { width: 175px; }
  .inventory-pagination { grid-template-columns: 1fr; gap: 8px; }
  .inventory-page-size, .inventory-page-nav { grid-column: 1; justify-content: center; }
}


/* v1.0.5 hotfix: inventory controls wrap cleanly on normal/low-resolution screens */
.inventory-topbar{
  align-items:flex-start;
  flex-wrap:wrap;
}
.inventory-topbar-filters{
  display:flex;
  gap:10px;
  flex:1 1 520px;
  min-width:0;
  align-items:center;
  flex-wrap:wrap;
}
.inventory-topbar-filters .inventory-product-search,
.inventory-topbar-filters .search-input{
  flex:1 1 260px;
  min-width:210px;
}
.inventory-topbar-actions{
  display:flex;
  gap:8px;
  flex:1 1 100%;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
}
.inventory-view-toggle{
  display:flex;
  gap:4px;
  margin-right:0;
}
.barcode-label-preview-shell{
  background:#fff;
  border-radius:8px;
  padding:12px;
  display:inline-block;
  border:1px solid var(--border);
  box-shadow:0 3px 12px rgba(0,0,0,.08);
}
@media (min-width:1500px){
  .inventory-topbar{flex-wrap:nowrap;align-items:center;}
  .inventory-topbar-actions{flex:0 0 auto;}
}
@media (max-width:1100px){
  .inventory-topbar-actions{justify-content:flex-start;}
  .inventory-topbar .btn{padding:7px 10px;font-size:12px;}
}

/* ── Application language / Urdu RTL support ─────────────────────────────── */
html[dir='rtl'] body {
  font-family: 'Noto Nastaliq Urdu', 'Noto Sans Arabic', Tahoma, 'Segoe UI', sans-serif;
  direction: rtl;
}

html[dir='rtl'] input,
html[dir='rtl'] textarea,
html[dir='rtl'] select {
  direction: rtl;
  text-align: right;
}

/* Codes, numbers, barcodes and generated receipts must remain readable LTR. */
html[dir='rtl'] input[type='number'],
html[dir='rtl'] input[type='date'],
html[dir='rtl'] input[type='time'],
html[dir='rtl'] input[type='datetime-local'],
html[dir='rtl'] .barcode-input,
html[dir='rtl'] .num-input,
html[dir='rtl'] .mono,
html[dir='rtl'] code,
html[dir='rtl'] pre,
html[dir='rtl'] iframe,
html[dir='rtl'] .barcode-label-preview-shell {
  direction: ltr;
  text-align: left;
}

html[dir='rtl'] .data-table th,
html[dir='rtl'] .data-table td {
  text-align: right;
}

html[dir='rtl'] .data-table .right,
html[dir='rtl'] .right,
html[dir='rtl'] .num-input {
  text-align: left;
}

html[dir='rtl'] .svg-html,
html[dir='rtl'] svg,
html[dir='rtl'] .bechify-logo {
  direction: ltr;
}

/* ═══════════════════════════════════════════════════════════════════════════
   2026 POS WORKSPACE REFRESH
   Header + user menu + compact cashier screen. Scoped so other screens keep
   their existing layouts.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --header-height:58px;
  --pos-toolbar-height:46px;
  --pos-sidebar-width:300px;
  --pos-row-height:39px;
  --shadow-soft:0 8px 28px rgba(15,23,42,.08);
}
[data-theme="dark"]{
  --bg:#080d14;
  --surface:#0f1620;
  --surface2:#141d29;
  --border:#243040;
  --text:#e8eef7;
  --text-muted:#91a0b3;
  --accent:#1677ff;
  --accent2:#18a94f;
  --shadow-soft:0 12px 32px rgba(0,0,0,.28);
}
[data-theme="light"]{
  --bg:#f5f7fb;
  --surface:#ffffff;
  --surface2:#f7f9fc;
  --border:#dfe6ef;
  --text:#162033;
  --text-muted:#66758a;
  --accent:#1267e8;
  --accent2:#159447;
  --shadow-soft:0 8px 28px rgba(37,55,85,.08);
}

/* Header */
.app-header{
  height:var(--header-height);
  min-height:var(--header-height);
  padding:0 14px;
  gap:12px;
  background:color-mix(in srgb,var(--surface) 96%,transparent);
  box-shadow:0 1px 0 rgba(148,163,184,.08);
  position:relative;
  z-index:300;
}
.app-brand{
  min-width:210px;
  max-width:270px;
  gap:10px;
  overflow:hidden;
}
.connection-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  flex:0 0 auto;
  box-shadow:0 0 0 4px rgba(148,163,184,.10);
}
.connection-dot.connected{background:var(--accent2);box-shadow:0 0 0 4px rgba(24,169,79,.12);}
.connection-dot.disconnected{background:var(--danger);box-shadow:0 0 0 4px rgba(239,68,68,.12);}
.brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.12;}
.brand-copy .shop-name{font-size:16px!important;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.brand-status{font-size:10px;color:var(--accent2);font-weight:700;margin-top:3px;}
.connection-dot.disconnected + .brand-copy .brand-status{color:var(--danger);}

.primary-tabs{
  min-width:0;
  flex:1 1 auto;
  justify-content:center;
  align-items:stretch;
  gap:2px;
  overflow:hidden;
  height:100%;
}
.primary-tabs .tab-btn{
  height:100%;
  padding:0 13px;
  border-radius:0;
  border-bottom:3px solid transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  color:var(--text-muted);
  background:transparent;
  white-space:nowrap;
  font-weight:650;
}
.primary-tabs .tab-btn:hover{background:rgba(18,103,232,.06);color:var(--text);}
.primary-tabs .tab-btn.active{
  color:var(--accent);
  background:linear-gradient(180deg,rgba(18,103,232,.08),rgba(18,103,232,.025));
  border-bottom-color:var(--accent);
}
.primary-tabs .tab-btn.active svg{color:var(--accent);}
.tab-label-short{display:none;}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto;min-width:0;}
.low-stock-chip,.lan-chip{
  height:30px;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--surface2);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:0 9px;
  cursor:pointer;
  font:inherit;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.low-stock-chip{color:var(--warn);border-color:rgba(245,158,11,.34);background:rgba(245,158,11,.08);}
.low-stock-chip.active{box-shadow:0 0 0 2px rgba(245,158,11,.13);}
.low-stock-chip strong{font-size:11px;}
.lan-chip{color:var(--text-muted);}
.lan-chip.connected{color:var(--accent2);border-color:rgba(24,169,79,.26);}
.lan-chip.pending{color:var(--warn);border-color:rgba(245,158,11,.32);}
.offline-badge{height:30px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap;}
.live-orders-btn.has-attention{border-bottom-color:var(--danger)!important;}

/* User menu */
.user-menu-wrap{position:relative;z-index:12000;}
.user-menu-trigger{
  min-width:132px;
  height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:3px 9px 3px 5px;
  background:var(--surface2);
  border:1px solid var(--border);
  border-radius:20px;
  color:var(--text);
  cursor:pointer;
  transition:border-color .15s,box-shadow .15s,background .15s;
}
.user-menu-trigger:hover,.user-menu-trigger.open{border-color:rgba(18,103,232,.48);box-shadow:0 0 0 3px rgba(18,103,232,.08);}
.user-avatar{
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:50%;
  background:linear-gradient(135deg,var(--accent),#6d5dfc);
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.user-avatar.large{width:38px;height:38px;font-size:15px;}
.user-trigger-copy{display:flex;flex-direction:column;min-width:0;text-align:left;line-height:1.12;}
.user-trigger-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:92px;}
.user-trigger-copy small{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:92px;margin-top:2px;}
.user-menu-chevron{font-size:13px;color:var(--text-muted);margin-left:auto;transform:translateY(-1px);}
.user-menu-popover{
  position:absolute;
  top:calc(100% + 8px);
  inset-inline-end:0;
  width:min(310px,calc(100vw - 18px));
  max-height:calc(100vh - 76px);
  overflow:auto;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:0 20px 55px rgba(15,23,42,.28);
  animation:fadeIn .12s ease;
}
[data-theme="dark"] .user-menu-popover{box-shadow:0 22px 60px rgba(0,0,0,.52);}
.user-menu-profile{display:flex;align-items:center;gap:11px;padding:13px 14px;background:linear-gradient(135deg,rgba(18,103,232,.10),rgba(109,93,252,.06));border-bottom:1px solid var(--border);}
.user-profile-name{font-size:14px;font-weight:850;}
.user-profile-meta{display:flex;align-items:center;gap:4px;color:var(--text-muted);font-size:10px;margin-top:3px;}
.user-menu-section{padding:6px;border-bottom:1px solid var(--border);}
.user-menu-section.compact{padding-top:5px;padding-bottom:5px;}
.user-menu-section-label,.preference-label{padding:4px 9px 5px;font-size:10px;color:var(--text-muted);font-weight:850;text-transform:uppercase;letter-spacing:.06em;}
.user-menu-item{
  width:100%;
  height:34px;
  padding:0 9px;
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--text);
  background:transparent;
  border:0;
  border-radius:7px;
  cursor:pointer;
  font:inherit;
  font-size:12px!important;
  text-align:start;
}
.user-menu-item:hover{background:var(--surface2);}
.user-menu-item.danger{color:var(--danger);}
.user-menu-item-icon{width:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);}
.user-menu-item.danger .user-menu-item-icon{color:var(--danger);}
.user-menu-item-arrow{margin-inline-start:auto;color:var(--text-muted);font-size:16px;}
.menu-text-icon{width:16px;text-align:center;font-weight:900;}
.user-menu-preferences{padding:7px 10px;border-bottom:1px solid var(--border);}
.preference-block{padding:3px 0 7px;}
.preference-block .preference-label{padding-inline:2px;}
.language-switcher,.font-size-switcher{display:grid;gap:5px;}
.language-switcher{grid-template-columns:1fr 1fr;}
.font-size-switcher{grid-template-columns:repeat(4,1fr);}
.language-switcher button,.font-size-switcher button{
  min-height:29px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--surface2);
  color:var(--text);
  cursor:pointer;
  font:inherit;
  font-size:11px!important;
  font-weight:800;
}
.language-switcher button.active,.font-size-switcher button.active{background:var(--accent);border-color:var(--accent);color:#fff;}
.theme-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 2px 9px;}
.theme-row-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650;}
.toggle-switch{width:39px;height:22px;padding:0;border:0;border-radius:999px;background:var(--border);cursor:pointer;position:relative;}
.toggle-switch span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .18s;}
.toggle-switch.on{background:var(--accent);}
.toggle-switch.on span{transform:translateX(17px);}
.user-menu-logout{padding:6px;}

/* POS toolbar and main split */
.pos-toolbar{
  min-height:var(--pos-toolbar-height);
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  background:var(--surface);
  border-bottom:1px solid var(--border);
  flex:0 0 auto;
  overflow:hidden;
}
.pos-toolbar-actions{display:flex;align-items:center;gap:5px;min-width:0;flex:0 1 auto;}
.pos-tool-btn{height:32px;padding:0 10px!important;font-size:11px!important;border-radius:7px;}
.shortcut-hint{font-size:9px;color:var(--text-muted);font-weight:650;}
.pos-shortcuts{margin-left:auto;font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pos-customer-search{flex:0 0 auto;display:flex;align-items:center;}
.pos-workspace{display:flex;flex:1;overflow:hidden;min-height:0;background:var(--bg);padding:8px;gap:8px;}
.pos-main-panel{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;gap:6px;}

/* Scan / add strip: intentionally compact to leave vertical room for items. */
.pos-scan-stack{gap:6px;background:transparent;}
.pos-scan-stack .barcode-bar{
  min-height:42px;
  padding:0 12px;
  border-radius:10px;
  box-shadow:none;
}
.pos-scan-stack .barcode-input{font-size:13px!important;}
.quick-scan-add-btn{height:28px;padding:0 11px!important;font-size:11px!important;flex:0 0 auto;}
.pos-detail-scan-row:not(.supplier-entry-row){
  grid-template-columns:minmax(180px,.82fr) minmax(220px,1.22fr) 70px 110px 108px 82px!important;
  gap:6px!important;
  padding:6px 8px!important;
  border-radius:10px;
  min-height:61px;
}
.pos-detail-field{gap:2px;}
.pos-detail-field label{font-size:9px!important;line-height:1.05;}
.pos-detail-field input,.pos-detail-readonly{height:30px;font-size:11px!important;padding:0 8px;}
.pos-detail-add{height:30px!important;min-height:30px!important;padding:0 8px!important;font-size:11px!important;border-radius:7px!important;gap:4px!important;}
.pos-stock-warning-text{bottom:-16px;}

/* Dense cart table */
.pos-cart-container{
  min-height:0;
  border-radius:10px;
  overflow:auto;
  box-shadow:none;
}
.pos-cart-table{table-layout:fixed;}
.pos-cart-table thead{background:var(--surface2);}
.pos-cart-table th{
  height:32px;
  padding:0 8px!important;
  font-size:9px!important;
  letter-spacing:.045em;
}
.pos-cart-table td{
  height:var(--pos-row-height);
  padding:3px 8px!important;
  font-size:12px!important;
  vertical-align:middle;
}
.pos-cart-table tbody tr{border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);}
.pos-cart-table tbody tr:last-child{border-bottom:0;}
.pos-cart-table tbody tr.price-error{background:rgba(239,68,68,.055);box-shadow:inset 3px 0 var(--danger);}
.pos-cart-table tbody tr.input-error:not(.price-error){background:rgba(245,158,11,.045);box-shadow:inset 3px 0 var(--warn);}
.pos-cart-table tbody tr.return-row{background:rgba(245,158,11,.045);}
.pos-cart-container.cart-keyboard-mode{
  box-shadow:0 0 0 2px rgba(var(--bechify-blue-rgb),.2);
}
.pos-cart-table tbody tr.keyboard-selected{
  background:rgba(var(--bechify-blue-rgb),.12)!important;
  box-shadow:inset 4px 0 var(--accent)!important;
  outline:1px solid rgba(var(--bechify-blue-rgb),.28);
  outline-offset:-1px;
}
.pos-cart-table tbody tr.keyboard-selected .row-num{
  color:var(--accent);
  font-weight:900;
}
.cart-col-index{width:38px;}
.cart-col-barcode{width:145px;}
.cart-col-price{width:125px;}
.cart-col-qty{width:74px;}
.cart-col-total{width:135px;}
.cart-col-remove{width:40px;}
.row-num{font-size:10px!important;font-weight:700;}
.cart-barcode-cell{overflow:hidden;}
.cart-barcode-value{display:block;font-family:'Cascadia Mono','Consolas',monospace;font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cart-item-badge{display:inline-flex;margin-top:2px;padding:1px 5px;border-radius:999px;font-size:8px;font-weight:850;line-height:1.3;}
.cart-item-badge.new{background:rgba(18,103,232,.12);color:var(--accent);}
.cart-item-badge.dark{background:rgba(168,85,247,.13);color:#a855f7;}
.cart-name-cell{min-width:0;}
.pos-cart-table .cell-input{height:28px;padding:0 5px!important;border-radius:5px;font-size:12px!important;}
.pos-cart-table .name-input{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pos-cart-table .qty-input{width:52px;height:28px;text-align:center;font-weight:800;background:var(--surface2);border-color:var(--border);}
.locked-price-cell{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;min-height:29px;line-height:1.05;}
.locked-price-cell strong{font-size:12px;font-weight:750;}
.locked-price-cell small{display:flex;align-items:center;justify-content:flex-end;gap:5px;margin-top:2px;font-size:8px;color:var(--text-muted);white-space:nowrap;}
.retail-price{text-decoration:line-through;opacity:.75;}
.fixed-saving{color:var(--accent2);font-weight:750;}
.line-total{text-align:right;line-height:1.06;}
.line-total strong{display:block;font-size:12px;font-weight:850;white-space:nowrap;}
.line-total small{display:block;margin-top:2px;font-size:8px;color:var(--accent2);font-weight:750;white-space:nowrap;}
.cart-line-error{display:inline-flex;align-items:center;gap:4px;color:var(--danger);font-size:10px;font-weight:800;}
.remove-btn{width:27px;height:27px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;color:var(--danger);}
.remove-btn:hover{border-color:rgba(239,68,68,.22);}
.empty-cart{height:48px!important;padding:0 14px!important;display:table-cell!important;text-align:center;vertical-align:middle;color:var(--text-muted);font-size:11px!important;}
.empty-cart svg{margin-inline-end:5px;}
.cart-validation-bar{display:flex;align-items:center;gap:6px;padding:5px 10px;border-top:1px solid rgba(239,68,68,.25);background:rgba(239,68,68,.06);color:var(--danger);font-size:10px;font-weight:750;}

/* Right checkout panel */
.pos-sidebar{
  width:var(--pos-sidebar-width);
  flex:0 0 var(--pos-sidebar-width);
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:0;
  overflow-y:auto;
  background:transparent;
}
.pos-sidebar-card{background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:none;}
.pos-payment-card{padding:10px;display:flex;flex-direction:column;gap:8px;}
.pos-summary-card{padding:11px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;}
.pos-cash-tools{border-radius:8px;}
.pos-cash-tools-toggle{min-height:34px;padding:6px 8px;font-size:11px!important;}
.pos-cash-overview{gap:4px;}
.pos-cash-stat{min-height:31px;padding:5px 8px;border-radius:6px;}
.pos-cash-stat-label{font-size:9px!important;}
.pos-cash-stat-value{font-size:12px!important;}
.till-report-btn{height:29px!important;padding:0 7px!important;}
.pos-payment-card .form-select{height:34px;min-height:34px;padding:0 30px 0 9px;font-size:12px!important;}
.pos-secondary-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.pos-secondary-actions .btn,.pos-preview-actions .btn{min-height:30px;padding:0 7px!important;font-size:10px!important;justify-content:center;border-radius:7px;}
.pos-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.pos-clear-btn{color:var(--danger)!important;}
.pos-summary-lines{display:flex;flex-direction:column;gap:5px;}
.pos-summary-line{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;color:var(--text-muted);}
.pos-summary-line strong{font-size:11px;color:var(--text);font-weight:650;}
.pos-summary-line.product-saving,.pos-summary-line.product-saving strong{color:var(--accent2);}
.pos-grand-total{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px dashed var(--border);padding-top:7px;margin-top:1px;}
.pos-grand-total span{font-size:12px;font-weight:850;text-transform:uppercase;}
.pos-grand-total strong{font-size:20px;font-weight:950;white-space:nowrap;}
.customer-gave-box{display:flex;align-items:center;background:var(--surface2);border:2px solid var(--border);border-radius:8px;overflow:hidden;min-height:43px;}
.customer-gave-box.has-change{border-color:var(--accent2);}
.customer-gave-box.shortfall{border-color:var(--danger);}
.customer-gave-currency{padding:0 9px;font-size:11px;color:var(--text-muted);border-inline-end:1px solid var(--border);line-height:39px;flex:0 0 auto;}
.customer-gave-input{flex:1;width:0;min-width:0;padding:3px 9px;background:transparent;border:0;outline:0;color:var(--text);font-family:inherit;font-size:20px!important;font-weight:900;text-align:right;}
.change-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:8px;padding:7px 9px;}
.change-summary.positive{background:rgba(24,169,79,.09);border:1px solid rgba(24,169,79,.25);}
.change-summary.negative{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.25);}
.pos-place-order-btn{
  width:100%;
  min-height:44px!important;
  padding:8px!important;
  border:0;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-size:12px!important;
  font-weight:900;
  transition:transform .12s,box-shadow .12s,background .12s;
}
.pos-place-order-btn[data-valid="true"]{background:var(--accent2);color:#fff;cursor:pointer;box-shadow:0 6px 18px rgba(24,169,79,.22);}
.pos-place-order-btn[data-valid="true"]:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(24,169,79,.28);}
.pos-place-order-btn[data-valid="false"]{background:var(--surface2);color:var(--text-muted);cursor:not-allowed;box-shadow:none;}

/* Low resolution / narrow Windows displays */
@media (max-width:1380px){
  :root{--pos-sidebar-width:278px;--header-height:54px;}
  .app-brand{min-width:175px;max-width:210px;}
  .primary-tabs .tab-btn{padding-inline:9px;gap:5px;}
  .low-stock-label{display:none;}
  .user-menu-trigger{min-width:118px;}
  .user-trigger-copy strong,.user-trigger-copy small{max-width:72px;}
  .pos-shortcuts{display:none;}
  .pos-customer-search{margin-left:auto;}
  .pos-detail-scan-row:not(.supplier-entry-row){grid-template-columns:minmax(150px,.78fr) minmax(170px,1fr) 58px 88px 86px 66px!important;gap:5px!important;}
  .cart-col-barcode{width:125px;}
  .cart-col-price{width:112px;}
  .cart-col-total{width:120px;}
}
@media (max-width:1160px){
  :root{--pos-sidebar-width:260px;}
  .app-header{gap:7px;padding-inline:9px;}
  .app-brand{min-width:145px;max-width:175px;}
  .brand-copy .shop-name{font-size:14px!important;}
  .brand-status{display:none;}
  .primary-tabs .tab-btn{padding-inline:7px;}
  .primary-tabs .tab-label{font-size:11px;}
  .primary-tabs .tab-btn.has-short-label .tab-label{display:none;}
  .primary-tabs .tab-btn.has-short-label .tab-label-short{display:inline;}
  .lan-chip{display:none;}
  .user-menu-trigger{min-width:auto;width:38px;padding:4px;}
  .user-trigger-copy,.user-menu-chevron{display:none;}
  .pos-tool-btn{padding-inline:7px!important;}
  .shortcut-hint{display:none;}
  .pos-customer-search{max-width:205px;}
  .pos-detail-scan-row:not(.supplier-entry-row){grid-template-columns:minmax(125px,.75fr) minmax(145px,1fr) 52px 76px 75px 58px!important;}
  .pos-detail-field input,.pos-detail-readonly{padding-inline:5px;}
  .cart-col-barcode{width:110px;}
  .cart-col-price{width:102px;}
  .cart-col-total{width:112px;}
  .fixed-saving{display:none;}
}
@media (max-height:760px){
  :root{--header-height:48px;--pos-toolbar-height:40px;--pos-row-height:34px;}
  .app-brand .shop-name{font-size:14px!important;}
  .user-menu-trigger{height:34px;}
  .pos-toolbar{padding-block:4px;}
  .pos-tool-btn{height:29px;}
  .pos-workspace{padding:5px;gap:5px;}
  .pos-main-panel{gap:4px;}
  .pos-scan-stack{gap:4px;}
  .pos-scan-stack .barcode-bar{min-height:36px;}
  .pos-detail-scan-row:not(.supplier-entry-row){min-height:53px;padding-block:4px!important;}
  .pos-detail-field input,.pos-detail-readonly,.pos-detail-add{height:27px!important;min-height:27px!important;}
  .pos-cart-table th{height:28px;}
  .pos-cart-table td{padding-block:2px!important;}
  .pos-cart-table .cell-input,.pos-cart-table .qty-input{height:25px;}
  .pos-sidebar{gap:5px;}
  .pos-payment-card,.pos-summary-card{padding:8px;gap:6px;}
  .pos-cash-tools-toggle{min-height:30px;}
  .pos-cash-stat{min-height:27px;padding-block:3px;}
  .pos-place-order-btn{min-height:39px!important;}
}
@media (max-height:660px){
  .pos-cash-overview{max-height:125px;overflow:auto;}
  .pos-summary-card{overflow:auto;}
  .pos-payment-card{flex:0 0 auto;}
}

/* RTL: keep account menu attached to the correct edge without remounting UI. */
html[dir="rtl"] .user-trigger-copy{text-align:right;}
html[dir="rtl"] .customer-gave-input{text-align:left;}
html[dir="rtl"] .line-total,html[dir="rtl"] .cart-price-cell{text-align:left;}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1.1 VISUAL CORRECTION
   - Uses Bechify's real logo blue (#0F6EAE)
   - Restores the compact original account menu
   - Keeps Header/POS compact even when the global XL font option is selected
   - Matches the approved clean light/dark POS concept more closely
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --bechify-blue:#0f6eae;
  --bechify-blue-hover:#0b5d94;
  --bechify-blue-strong:#0a527f;
  --bechify-blue-rgb:15,110,174;
  --header-height:62px;
  --pos-toolbar-height:48px;
  --pos-sidebar-width:316px;
  --pos-row-height:37px;
}

[data-theme="light"]{
  --bg:#f5f7fa;
  --surface:#ffffff;
  --surface2:#f7f9fc;
  --border:#e1e7ef;
  --text:#172033;
  --text-muted:#6b778a;
  --accent:var(--bechify-blue);
  --accent2:#159447;
  --shadow-soft:0 10px 28px rgba(30,52,77,.08);
}

[data-theme="dark"]{
  --bg:#081019;
  --surface:#0d1722;
  --surface2:#121e2b;
  --border:#233244;
  --text:#edf3f9;
  --text-muted:#91a1b4;
  --accent:#2389c7;
  --accent2:#22b95b;
  --shadow-soft:0 14px 34px rgba(0,0,0,.34);
}

/* Header: clean, low-height and stable at every global font setting. */
.app-header{
  min-height:var(--header-height);
  height:var(--header-height);
  padding:0 16px;
  gap:12px;
  background:var(--surface);
  border-bottom:1px solid var(--border);
  box-shadow:0 1px 0 rgba(15,23,42,.02),0 5px 20px rgba(38,55,74,.045);
}
.app-brand{
  min-width:218px;
  max-width:270px;
  gap:8px;
}
.brand-mark{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(var(--bechify-blue-rgb),.14);
  border-radius:10px;
  background:rgba(var(--bechify-blue-rgb),.055);
  box-shadow:0 3px 10px rgba(var(--bechify-blue-rgb),.08);
  overflow:hidden;
}
.brand-mark img{width:30px!important;height:30px!important;margin:0!important;}
.connection-dot{width:8px;height:8px;box-shadow:0 0 0 3px rgba(148,163,184,.11);}
.connection-dot.connected{box-shadow:0 0 0 3px rgba(21,148,71,.12);}
.brand-copy .shop-name{font-size:15px!important;font-weight:800!important;letter-spacing:-.01em;}
.brand-status{font-size:9px!important;font-weight:750;letter-spacing:.015em;}

.primary-tabs{
  justify-content:flex-start;
  align-items:center;
  gap:5px;
  height:100%;
}
.primary-tabs .tab-btn{
  height:38px;
  min-height:38px;
  margin:0;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:9px;
  border-bottom:1px solid transparent;
  color:var(--text-muted);
  background:transparent;
  font-size:12px!important;
  font-weight:650!important;
  line-height:1!important;
  gap:7px;
}
.primary-tabs .tab-btn:hover{
  color:var(--text);
  background:var(--surface2);
  border-color:var(--border);
}
.primary-tabs .tab-btn.active{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
  box-shadow:0 5px 14px rgba(var(--bechify-blue-rgb),.21);
}
.primary-tabs .tab-btn.active svg{color:#fff!important;}
.primary-tabs .badge{margin-inline-start:2px;}
.live-orders-btn.has-attention{border-color:rgba(239,68,68,.34)!important;}
.header-actions{gap:7px;}
.low-stock-chip,.lan-chip,.offline-badge{
  min-height:32px;
  height:32px;
  border-radius:9px;
  font-size:11px!important;
}
.low-stock-chip{
  padding-inline:10px;
  color:#d97706;
  background:#fff9ed;
  border-color:#f4c783;
}
[data-theme="dark"] .low-stock-chip{background:rgba(217,119,6,.12);border-color:rgba(245,158,11,.34);color:#f6a51c;}
.low-stock-chip.active{box-shadow:0 0 0 3px rgba(245,158,11,.11);}

/* Original compact user dropdown restored. */
.legacy-user-dropdown{z-index:12000;}
.legacy-user-trigger{
  min-width:0!important;
  max-width:190px;
  height:34px!important;
  padding:4px 10px!important;
  background:var(--surface2)!important;
  border-color:var(--border)!important;
  font-size:12px!important;
  line-height:1!important;
  box-shadow:none!important;
}
.legacy-user-trigger:hover,.legacy-user-trigger.open{
  background:var(--surface)!important;
  border-color:rgba(var(--bechify-blue-rgb),.42)!important;
  box-shadow:0 0 0 3px rgba(var(--bechify-blue-rgb),.08)!important;
}
.legacy-user-name{max-width:75px;overflow:hidden;text-overflow:ellipsis;}
.legacy-user-system{max-width:78px;overflow:hidden;text-overflow:ellipsis;}
.legacy-user-menu{
  border-radius:10px!important;
  border-color:var(--border)!important;
  box-shadow:0 18px 45px rgba(22,32,48,.22)!important;
}
[data-theme="dark"] .legacy-user-menu{box-shadow:0 20px 55px rgba(0,0,0,.48)!important;}
.legacy-user-profile{background:var(--surface2)!important;}
.legacy-user-menu,.legacy-user-menu button{font-size:13px!important;}
.legacy-user-menu-item{min-height:34px!important;font-size:13px!important;}
.legacy-user-menu-item:hover{background:rgba(var(--bechify-blue-rgb),.06)!important;}
.legacy-user-menu [data-no-i18n="true"] button{font-size:12px!important;}

/* POS command toolbar. */
.pos-toolbar{
  min-height:var(--pos-toolbar-height);
  height:var(--pos-toolbar-height);
  padding:7px 12px;
  gap:9px;
  background:var(--surface);
  border-bottom:1px solid var(--border);
}
.pos-toolbar-actions{gap:6px;}
.pos-tool-btn{
  height:32px!important;
  min-height:32px!important;
  padding:0 11px!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  background:var(--surface2)!important;
  color:var(--text)!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:0 1px 2px rgba(15,23,42,.025);
}
.pos-tool-btn:hover{background:var(--surface)!important;border-color:rgba(var(--bechify-blue-rgb),.30)!important;}
.shortcut-hint{font-size:8px!important;}
.pos-shortcuts{font-size:9px!important;}
.pos-customer-search .form-input{height:32px!important;font-size:11px!important;border-radius:8px!important;background:var(--surface2)!important;}

/* Main POS canvas and scan/add cards. */
.pos-workspace{
  padding:10px;
  gap:10px;
  background:var(--bg);
}
.pos-main-panel{gap:7px;}
.pos-scan-stack{gap:7px;}
.pos-scan-stack .barcode-bar{
  min-height:44px;
  height:44px;
  padding:0 13px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:11px;
  box-shadow:0 4px 15px rgba(34,52,73,.045);
}
.pos-scan-stack .barcode-icon{display:inline-flex;align-items:center;}
.pos-scan-stack .barcode-input{
  font-size:12px!important;
  font-family:'Segoe UI',system-ui,sans-serif!important;
  letter-spacing:0!important;
}
.pos-scan-stack .barcode-hint{font-size:10px!important;}
.quick-scan-add-btn{height:29px!important;padding:0 10px!important;font-size:10px!important;border-radius:7px!important;}
.pos-detail-scan-row:not(.supplier-entry-row){
  grid-template-columns:minmax(170px,.85fr) minmax(215px,1.25fr) 68px 108px 112px 76px!important;
  min-height:60px;
  padding:6px 8px!important;
  gap:6px!important;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:11px;
  box-shadow:0 4px 15px rgba(34,52,73,.045);
}
.pos-detail-field label{font-size:8px!important;font-weight:800!important;letter-spacing:.055em;}
.pos-detail-field input,.pos-detail-readonly{
  height:30px!important;
  min-height:30px!important;
  padding:0 8px!important;
  border-radius:7px!important;
  background:var(--surface2)!important;
  font-size:10px!important;
}
.pos-detail-name input{font-size:10px!important;}
.pos-detail-add{
  height:30px!important;
  min-height:30px!important;
  padding:0 9px!important;
  border-radius:7px!important;
  background:var(--accent)!important;
  border-color:var(--accent)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:850!important;
  box-shadow:0 4px 10px rgba(var(--bechify-blue-rgb),.16);
}
.pos-detail-add:hover:not(:disabled){background:var(--bechify-blue-hover)!important;}

/* Dense items table: deliberately low padding for busy shops. */
.pos-cart-container{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:11px;
  box-shadow:0 5px 18px rgba(34,52,73,.05);
}
.pos-cart-table thead{background:var(--surface2);}
.pos-cart-table th{
  height:31px!important;
  padding:0 8px!important;
  border-bottom:1px solid var(--border);
  font-size:8px!important;
  font-weight:800!important;
  color:#607087;
}
[data-theme="dark"] .pos-cart-table th{color:#9aaabc;}
.pos-cart-table td{
  height:var(--pos-row-height)!important;
  padding:2px 8px!important;
  font-size:11px!important;
}
.pos-cart-table tbody tr:hover{background:rgba(var(--bechify-blue-rgb),.025);}
.pos-cart-table .cell-input{
  height:26px!important;
  min-height:26px!important;
  padding:0 5px!important;
  font-size:11px!important;
}
.pos-cart-table .qty-input{width:50px!important;height:26px!important;}
.cart-barcode-value{font-size:9px!important;}
.locked-price-cell{min-height:26px;}
.locked-price-cell strong,.line-total strong{font-size:11px!important;}
.locked-price-cell small,.line-total small{font-size:7px!important;}
.remove-btn{width:25px!important;height:25px!important;border-radius:6px!important;}
.empty-cart{height:46px!important;font-size:10px!important;}
.cart-col-index{width:34px;}
.cart-col-barcode{width:138px;}
.cart-col-price{width:118px;}
.cart-col-qty{width:68px;}
.cart-col-total{width:128px;}
.cart-col-remove{width:36px;}

/* Right payment/receipt column. */
.pos-sidebar{gap:9px;}
.pos-sidebar-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:0 5px 18px rgba(34,52,73,.05);
}
.pos-payment-card{padding:10px;gap:8px;}
.pos-summary-card{padding:12px;gap:8px;}
.pos-cash-tools{border:1px solid var(--border);background:var(--surface2);overflow:hidden;}
.pos-cash-tools-toggle{
  min-height:36px!important;
  padding:6px 9px!important;
  background:transparent!important;
  font-size:11px!important;
  font-weight:800!important;
}
.pos-cash-overview{padding:0 7px 7px;}
.pos-cash-stat{min-height:30px!important;padding:5px 7px!important;background:var(--surface)!important;border:1px solid var(--border)!important;}
.pos-cash-stat-label{font-size:8px!important;}
.pos-cash-stat-value{font-size:11px!important;}
.till-report-btn{height:29px!important;font-size:9px!important;background:var(--surface)!important;}
.pos-payment-card .form-select{height:34px!important;font-size:11px!important;border-radius:8px!important;background:var(--surface2)!important;}
.pos-secondary-actions,.pos-preview-actions{gap:6px;}
.pos-secondary-actions .btn,.pos-preview-actions .btn{
  min-height:31px!important;
  padding:0 7px!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  background:var(--surface2)!important;
  font-size:9px!important;
  font-weight:700!important;
}
.pos-secondary-actions .btn:hover:not(:disabled),.pos-preview-actions .btn:hover:not(:disabled){background:var(--surface)!important;border-color:rgba(var(--bechify-blue-rgb),.28)!important;}
.pos-summary-line,.pos-summary-line strong{font-size:10px!important;}
.pos-grand-total{padding-top:8px;}
.pos-grand-total span{font-size:11px!important;}
.pos-grand-total strong{font-size:21px!important;letter-spacing:-.02em;}
.customer-gave-box{min-height:44px;border-width:1px;border-radius:9px;}
.customer-gave-currency{font-size:10px!important;line-height:42px;}
.customer-gave-input{font-size:20px!important;}
.change-summary{padding:7px 9px;border-radius:9px;}
.pos-place-order-btn{
  min-height:45px!important;
  border-radius:9px!important;
  font-size:11px!important;
  letter-spacing:.005em;
}
.pos-place-order-btn[data-valid="true"]{background:var(--accent2)!important;box-shadow:0 7px 17px rgba(21,148,71,.20)!important;}

/* XL accessibility must not destroy the cashier workspace density. Other
   screens still use the chosen font size; Header and POS remain operational. */
[data-font-size] .app-header .tab-btn{font-size:12px!important;}
[data-font-size] .app-header .shop-name{font-size:15px!important;}
[data-font-size] .app-header .brand-status{font-size:9px!important;}
[data-font-size] .app-header .low-stock-chip,
[data-font-size] .app-header .lan-chip,
[data-font-size] .app-header .offline-badge{font-size:11px!important;}
[data-font-size] .legacy-user-trigger{font-size:12px!important;}
[data-font-size] .legacy-user-menu,
[data-font-size] .legacy-user-menu button,
[data-font-size] .legacy-user-menu-item{font-size:13px!important;}
[data-font-size] .legacy-user-menu [data-no-i18n="true"] button{font-size:12px!important;}
[data-font-size] .pos-toolbar .btn{font-size:11px!important;}
[data-font-size] .pos-shortcuts{font-size:9px!important;}
[data-font-size] .pos-cart-table th{font-size:8px!important;}
[data-font-size] .pos-cart-table td{font-size:11px!important;}
[data-font-size] .pos-sidebar button,
[data-font-size] .pos-sidebar input,
[data-font-size] .pos-sidebar select{font-size:11px!important;}
[data-font-size] .pos-sidebar .customer-gave-input{font-size:20px!important;}
[data-font-size] .pos-sidebar .pos-grand-total strong{font-size:21px!important;}

/* Low-resolution Windows behaviour. */
@media (max-width:1380px){
  :root{--pos-sidebar-width:294px;--header-height:58px;}
  .app-header{padding-inline:11px;gap:8px;}
  .app-brand{min-width:188px;max-width:220px;}
  .brand-mark{width:32px;height:32px;flex-basis:32px;}
  .brand-mark img{width:27px!important;height:27px!important;}
  .primary-tabs{gap:3px;}
  .primary-tabs .tab-btn{height:36px;min-height:36px;padding-inline:9px;font-size:11px!important;gap:5px;}
  .legacy-user-trigger{max-width:160px;}
  .pos-detail-scan-row:not(.supplier-entry-row){grid-template-columns:minmax(148px,.78fr) minmax(185px,1.1fr) 58px 90px 92px 67px!important;}
  .cart-col-barcode{width:120px;}
  .cart-col-price{width:108px;}
  .cart-col-total{width:116px;}
}

@media (max-width:1180px){
  :root{--pos-sidebar-width:274px;}
  .app-brand{min-width:155px;max-width:180px;}
  .brand-mark{display:none;}
  .brand-status{display:none;}
  .primary-tabs .tab-btn{padding-inline:7px;font-size:10px!important;}
  .primary-tabs .tab-btn svg{width:13px;height:13px;}
  .low-stock-label{display:none;}
  .lan-chip{display:none;}
  .legacy-user-system{display:none;}
  .pos-shortcuts{display:none;}
  .pos-customer-search{margin-inline-start:auto;}
  .pos-detail-scan-row:not(.supplier-entry-row){grid-template-columns:minmax(128px,.72fr) minmax(150px,1fr) 52px 76px 82px 60px!important;gap:5px!important;}
  .fixed-saving{display:none;}
}

@media (max-width:1020px){
  :root{--pos-sidebar-width:252px;}
  .app-brand{min-width:136px;max-width:150px;}
  .brand-copy .shop-name{font-size:13px!important;}
  .primary-tabs{justify-content:center;}
  .primary-tabs .tab-btn{width:38px;min-width:38px;padding:0;}
  .primary-tabs .tab-label,.primary-tabs .tab-label-short{display:none!important;}
  .primary-tabs .badge{position:absolute;top:2px;right:1px;}
  .legacy-user-name{max-width:60px;}
  .pos-customer-search .form-input{width:150px!important;}
  .cart-col-barcode{width:100px;}
  .cart-col-price{width:98px;}
  .cart-col-total{width:106px;}
}

@media (max-height:760px){
  :root{--header-height:52px;--pos-toolbar-height:42px;--pos-row-height:33px;}
  .app-header{padding-inline:10px;}
  .brand-mark{width:30px;height:30px;flex-basis:30px;}
  .brand-mark img{width:25px!important;height:25px!important;}
  .primary-tabs .tab-btn{height:34px;min-height:34px;}
  .pos-toolbar{padding-block:5px;}
  .pos-tool-btn{height:29px!important;min-height:29px!important;}
  .pos-workspace{padding:6px;gap:6px;}
  .pos-main-panel,.pos-scan-stack{gap:5px;}
  .pos-scan-stack .barcode-bar{height:38px;min-height:38px;}
  .pos-detail-scan-row:not(.supplier-entry-row){min-height:54px;padding-block:4px!important;}
  .pos-detail-field input,.pos-detail-readonly,.pos-detail-add{height:27px!important;min-height:27px!important;}
  .pos-cart-table th{height:27px!important;}
  .pos-cart-table td{padding-block:1px!important;}
  .pos-cart-table .cell-input,.pos-cart-table .qty-input{height:24px!important;min-height:24px!important;}
  .pos-sidebar{gap:6px;}
  .pos-payment-card,.pos-summary-card{padding:8px;gap:6px;}
  .pos-cash-tools-toggle{min-height:30px!important;}
  .pos-cash-stat{min-height:27px!important;padding-block:3px!important;}
  .pos-place-order-btn{min-height:39px!important;}
}

html[dir="rtl"] .legacy-user-trigger{direction:rtl;}
html[dir="rtl"] .legacy-user-menu-item{text-align:right;}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v3 — APPROVED INVENTORY SCREEN
   Brand: Bechify blue #0F6EAE
   Columns intentionally removed: Pack, Weight, Retail
   All inventory action icons are exact inline SVGs from InventoryIcons.jsx
   ═══════════════════════════════════════════════════════════════════════════ */
.inventory-screen{
  padding:12px 14px 0;
  gap:10px;
  background:var(--bg);
}

.inventory-toolbar{
  position:relative!important;
  z-index:50!important;
  min-height:66px;
  padding:10px 12px!important;
  overflow:visible!important;
  border:1px solid var(--border)!important;
  border-radius:12px!important;
  background:var(--surface)!important;
  box-shadow:var(--shadow-soft);
}
.inventory-topbar-filters{
  display:flex;
  align-items:center;
  gap:10px;
  flex:1 1 auto;
  min-width:0;
  flex-wrap:nowrap;
}
.inventory-topbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
  flex-wrap:nowrap;
}
.inventory-product-search{
  position:relative;
  flex:1 1 360px;
  width:min(390px,32vw);
  min-width:250px;
  max-width:430px;
}
.inventory-product-search-icon{
  position:absolute;
  z-index:2;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:var(--text-muted);
  pointer-events:none;
}
.inventory-product-search-input{
  width:100%!important;
  max-width:none!important;
  height:40px!important;
  padding:0 13px 0 42px!important;
  border-radius:9px!important;
  background:var(--surface2)!important;
  border:1px solid var(--border)!important;
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:550;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25);
}
.inventory-product-search-input:focus{
  border-color:var(--accent)!important;
  box-shadow:0 0 0 3px rgba(var(--bechify-blue-rgb),.09)!important;
}
.inventory-product-search-input::placeholder{color:var(--text-muted)!important;}
.inventory-product-suggestions{border-radius:10px!important;box-shadow:0 16px 34px rgba(15,23,42,.16)!important;}

.inventory-supplier-filter{
  width:225px!important;
  min-width:185px!important;
  flex:0 0 225px!important;
}
.inventory-supplier-filter-input{
  height:40px!important;
  padding:0 48px 0 13px!important;
  border-radius:9px!important;
  background:var(--surface2)!important;
  border:1px solid var(--border)!important;
  font-size:12px!important;
  font-weight:550;
}
.inventory-supplier-filter-input:focus{
  border-color:var(--accent)!important;
  box-shadow:0 0 0 3px rgba(var(--bechify-blue-rgb),.09)!important;
}
.inventory-supplier-filter-toggle,
.inventory-supplier-filter-clear{
  width:24px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
}
.inventory-supplier-filter-toggle{right:7px!important;}
.inventory-supplier-filter-clear{right:29px!important;}
.inventory-supplier-filter-toggle:hover,
.inventory-supplier-filter-clear:hover{background:rgba(var(--bechify-blue-rgb),.07);color:var(--accent);}
.inventory-supplier-filter-menu{
  top:calc(100% + 7px)!important;
  padding:6px!important;
  border-radius:10px!important;
  box-shadow:0 16px 34px rgba(15,23,42,.18)!important;
}
.inventory-supplier-filter-option{padding:8px 10px!important;border-radius:7px!important;}
.inventory-supplier-filter-option.selected{background:rgba(var(--bechify-blue-rgb),.09)!important;color:var(--accent)!important;}
.inventory-product-count{
  color:var(--text-muted);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.inventory-low-stock-chip{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 11px!important;
  border-radius:9px!important;
  color:#d97706!important;
  background:rgba(245,158,11,.075)!important;
  border:1px solid rgba(245,158,11,.32)!important;
  font-size:11px!important;
  font-weight:800!important;
  white-space:nowrap;
}
.inventory-category-heading{display:flex;flex-direction:column;gap:2px;}
.inventory-category-heading strong{font-size:13px;}
.inventory-category-heading span{font-size:10px;color:var(--text-muted);}
.inventory-view-toggle{display:flex;gap:7px!important;}
.inventory-mode-btn{
  height:40px!important;
  min-height:40px!important;
  padding:0 13px!important;
  border-radius:9px!important;
  font-size:11px!important;
  font-weight:750!important;
  box-shadow:none!important;
}
.inventory-mode-btn.btn-ghost{background:var(--surface2)!important;border:1px solid var(--border)!important;}
.inventory-mode-btn.btn-ghost:hover{border-color:rgba(var(--bechify-blue-rgb),.28)!important;background:var(--surface)!important;}
.inventory-mode-btn.btn-primary{
  background:var(--accent)!important;
  border:1px solid var(--accent)!important;
  color:#fff!important;
  box-shadow:0 6px 14px rgba(var(--bechify-blue-rgb),.18)!important;
}

.inventory-table-shell{
  position:relative;
  z-index:1;
  flex:1 1 auto;
  min-height:0;
  overflow:auto!important;
  margin:0!important;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:var(--shadow-soft);
}
.inventory-table-shell::-webkit-scrollbar{width:7px;height:7px;}
.inventory-table-shell::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px;}
.inventory-data-table{
  min-width:1160px;
  width:100%;
  table-layout:fixed;
}
.inventory-data-table thead{background:var(--surface2)!important;}
.inventory-data-table th{
  height:43px;
  padding:0 9px!important;
  border-bottom:1px solid var(--border)!important;
  color:var(--text-muted)!important;
  font-size:9px!important;
  font-weight:850!important;
  letter-spacing:.045em!important;
  vertical-align:middle;
}
.inventory-data-table td{
  height:60px;
  padding:6px 9px!important;
  border-bottom:1px solid var(--border)!important;
  color:var(--text);
  font-size:11px!important;
  vertical-align:middle;
}
.inventory-data-table tbody tr{transition:background .12s ease,box-shadow .12s ease;}
.inventory-data-table tbody tr:hover{background:rgba(var(--bechify-blue-rgb),.032)!important;}
.inventory-data-table tbody tr.is-selected{background:rgba(var(--bechify-blue-rgb),.07)!important;box-shadow:inset 3px 0 0 var(--accent);}
.inventory-data-table input[type="checkbox"]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer;}
.inventory-data-table th:nth-child(1),.inventory-data-table td:nth-child(1){width:38px;}
.inventory-data-table th:nth-child(2),.inventory-data-table td:nth-child(2){width:52px;}
.inventory-data-table th:nth-child(3),.inventory-data-table td:nth-child(3){width:118px;}
.inventory-data-table th:nth-child(4),.inventory-data-table td:nth-child(4){width:138px;}
.inventory-data-table th:nth-child(5),.inventory-data-table td:nth-child(5){width:330px;}
.inventory-data-table th:nth-child(6),.inventory-data-table td:nth-child(6){width:112px;}
.inventory-data-table th:nth-child(7),.inventory-data-table td:nth-child(7){width:88px;}
.inventory-data-table th:nth-child(8),.inventory-data-table td:nth-child(8){width:88px;}
.inventory-data-table th:nth-child(9),.inventory-data-table td:nth-child(9){width:74px;}
.inventory-data-table th:nth-child(10),.inventory-data-table td:nth-child(10){width:70px;}
.inventory-data-table th:nth-child(11),.inventory-data-table td:nth-child(11){width:92px;}
.inventory-select-col{text-align:center!important;}
.inventory-image-col{text-align:center!important;padding-inline:5px!important;}
.inventory-thumbnail{
  width:37px;
  height:37px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--surface2);
  color:#92a1b3;
  cursor:pointer;
  transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease;
}
.inventory-thumbnail:hover{border-color:rgba(var(--bechify-blue-rgb),.42);transform:translateY(-1px);box-shadow:0 5px 12px rgba(25,43,65,.10);}
.inventory-thumbnail img{width:100%;height:100%;object-fit:contain;background:#fff;}
.inventory-code-cell,.inventory-barcode-cell{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.inventory-name-cell{min-width:330px!important;overflow:visible;}
.inventory-product-title{
  display:block;
  max-width:310px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text)!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.2;
  text-decoration:none!important;
}
.inventory-product-title:hover{color:var(--accent)!important;}
.inventory-row-actions-inline{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:9px!important;
  width:max-content;
  min-width:max-content;
  margin-top:4px!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-size:9px!important;
}
.inventory-row-actions-inline > span{display:none!important;}
.inventory-row-actions-inline .row-action-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  flex:0 0 auto!important;
  padding:1px 0!important;
  font-size:9px!important;
  font-weight:700!important;
  line-height:1!important;
  text-decoration:none!important;
}
.inventory-row-actions-inline .row-action-link:hover{text-decoration:none!important;filter:brightness(.86);}
.inventory-category-cell,.inventory-supplier-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.inventory-money-cell{font-variant-numeric:tabular-nums;white-space:nowrap;}
.inventory-margin-chip{
  min-width:43px;
  padding:3px 7px!important;
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:850!important;
}
.inventory-stock-ok{font-weight:800;color:var(--text);}
.low-stock-val{font-size:11px!important;font-weight:900!important;}
.inventory-empty-state{
  height:68px!important;
  padding:0 20px!important;
  display:table-cell!important;
  vertical-align:middle!important;
  color:var(--text-muted)!important;
}
.inventory-empty-state svg{vertical-align:middle;margin-right:6px;color:#f59e0b;}

.inventory-pagination{
  min-height:58px!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:14px!important;
  padding:8px 12px!important;
  border:1px solid var(--border)!important;
  border-radius:12px 12px 0 0!important;
  background:var(--surface)!important;
  box-shadow:var(--shadow-soft);
  color:var(--text-muted)!important;
  flex-shrink:0;
}
.inventory-page-size{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap;
  font-size:10px!important;
}
.inventory-page-size .form-select{
  width:70px!important;
  min-width:70px!important;
  height:36px!important;
  padding:0 24px 0 10px!important;
  border-radius:8px!important;
  background:var(--surface2)!important;
  font-size:11px!important;
}
.inventory-page-nav{
  grid-column:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  margin:0!important;
  white-space:nowrap;
  font-size:10px!important;
}
.inventory-pagination-btn{
  height:36px!important;
  min-height:36px!important;
  padding:0 11px!important;
  border-radius:8px!important;
  background:var(--surface2)!important;
  border:1px solid var(--border)!important;
  font-size:10px!important;
}
.inventory-footer-actions{
  grid-column:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  min-width:max-content;
  margin:0!important;
  white-space:nowrap!important;
}
.inventory-footer-btn{
  height:38px!important;
  min-height:38px!important;
  padding:0 12px!important;
  border-radius:9px!important;
  font-size:10px!important;
  font-weight:780!important;
}
.inventory-manage-stock-btn svg{color:#f59e0b;}
.inventory-delete-selected-btn{
  background:rgba(239,68,68,.04)!important;
  color:#dc2626!important;
  border:1px solid rgba(239,68,68,.42)!important;
}
.inventory-delete-selected-btn:hover:not(:disabled){background:rgba(239,68,68,.10)!important;}
.inventory-add-product-btn{
  background:var(--accent)!important;
  border:1px solid var(--accent)!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(var(--bechify-blue-rgb),.20)!important;
}
.inventory-add-product-btn:hover:not(:disabled){background:var(--bechify-blue-hover)!important;}

/* Dark inventory treatment matching the approved night mockup. */
[data-theme="dark"] .inventory-toolbar,
[data-theme="dark"] .inventory-table-shell,
[data-theme="dark"] .inventory-pagination{
  box-shadow:0 12px 30px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.015);
}
[data-theme="dark"] .inventory-product-search-input,
[data-theme="dark"] .inventory-supplier-filter-input,
[data-theme="dark"] .inventory-mode-btn.btn-ghost,
[data-theme="dark"] .inventory-page-size .form-select,
[data-theme="dark"] .inventory-pagination-btn{
  background:#0b1520!important;
  border-color:#263648!important;
}
[data-theme="dark"] .inventory-data-table thead{background:#0d1823!important;}
[data-theme="dark"] .inventory-data-table tbody tr:hover{background:rgba(35,137,199,.06)!important;}
[data-theme="dark"] .inventory-data-table tbody tr.is-selected{background:rgba(35,137,199,.11)!important;}
[data-theme="dark"] .inventory-thumbnail{background:#0c1722;border-color:#2a3a4c;color:#64788e;}
[data-theme="dark"] .inventory-delete-selected-btn{color:#ff6868!important;border-color:rgba(255,82,82,.48)!important;background:rgba(255,67,67,.035)!important;}
[data-theme="dark"] .inventory-low-stock-chip{color:#ffad28!important;background:rgba(245,158,11,.055)!important;}

/* Keep global XL accessibility from exploding this dense management screen. */
[data-font-size] .inventory-toolbar,
[data-font-size] .inventory-data-table,
[data-font-size] .inventory-pagination{font-size:12px!important;}
[data-font-size] .inventory-data-table th{font-size:9px!important;}
[data-font-size] .inventory-data-table td{font-size:11px!important;}
[data-font-size] .inventory-product-title{font-size:12px!important;}
[data-font-size] .inventory-row-actions-inline .row-action-link{font-size:9px!important;}
[data-font-size] .inventory-mode-btn,
[data-font-size] .inventory-footer-btn{font-size:10px!important;}

/* Low-resolution Windows: preserve density, allow safe horizontal scrolling. */
@media (max-width:1380px){
  .inventory-screen{padding:9px 10px 0;gap:8px;}
  .inventory-toolbar{padding:8px 9px!important;min-height:60px;}
  .inventory-product-search{min-width:225px;width:300px;}
  .inventory-supplier-filter{width:190px!important;min-width:170px!important;flex-basis:190px!important;}
  .inventory-mode-btn{padding-inline:10px!important;}
  .inventory-data-table{min-width:1110px;}
  .inventory-data-table th:nth-child(5),.inventory-data-table td:nth-child(5){width:310px;}
  .inventory-footer-btn{padding-inline:10px!important;}
}
@media (max-width:1160px){
  .inventory-toolbar{align-items:stretch!important;flex-wrap:wrap!important;}
  .inventory-topbar-filters{flex:1 1 100%;}
  .inventory-topbar-actions{flex:1 1 100%;justify-content:flex-end!important;}
  .inventory-product-search{flex:1 1 300px;max-width:none;width:auto;}
  .inventory-pagination{grid-template-columns:auto 1fr!important;overflow-x:auto;}
  .inventory-page-size{grid-column:1!important;}
  .inventory-page-nav{grid-column:2!important;justify-content:flex-end!important;}
  .inventory-footer-actions{grid-column:1 / -1!important;justify-content:flex-end!important;}
}
@media (max-width:820px){
  .inventory-topbar-filters{flex-wrap:wrap;}
  .inventory-product-search{flex-basis:100%;min-width:100%;}
  .inventory-supplier-filter{flex:1 1 180px!important;width:auto!important;}
  .inventory-product-count{margin-left:auto;}
  .inventory-topbar-actions{justify-content:flex-start!important;overflow-x:auto;}
  .inventory-pagination{display:flex!important;align-items:center!important;overflow-x:auto!important;}
  .inventory-page-size,.inventory-page-nav,.inventory-footer-actions{flex:0 0 auto!important;}
}
@media (max-height:760px){
  .inventory-screen{padding-top:7px;gap:7px;}
  .inventory-toolbar{min-height:54px;padding:6px 8px!important;}
  .inventory-product-search-input,.inventory-supplier-filter-input,.inventory-mode-btn{height:35px!important;min-height:35px!important;}
  .inventory-low-stock-chip{min-height:31px;}
  .inventory-data-table th{height:36px;}
  .inventory-data-table td{height:52px;padding-block:4px!important;}
  .inventory-thumbnail{width:33px;height:33px;}
  .inventory-pagination{min-height:50px!important;padding-block:6px!important;}
  .inventory-footer-btn,.inventory-pagination-btn,.inventory-page-size .form-select{height:34px!important;min-height:34px!important;}
}

html[dir="rtl"] .inventory-product-search-icon{left:auto;right:13px;}
html[dir="rtl"] .inventory-product-search-input{padding:0 42px 0 13px!important;}
html[dir="rtl"] .inventory-row-actions-inline{direction:rtl;}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v4 — SUPPLIER INVOICES / PRODUCT FORM / Z-REPORT POLISH
   - Compact supplier invoice tables with no unnecessary horizontal scrolling
   - Searchable supplier selectors
   - Brand blue #0F6EAE
   - Product drawer visual refresh
   - Z-report always overlays the application header
   ═══════════════════════════════════════════════════════════════════════════ */

/* Layering: dialogs and product drawers must cover the fixed application header. */
.toast{z-index:50000!important;}
.drawer-overlay{z-index:15000!important;backdrop-filter:blur(2px);background:rgba(4,12,20,.52)!important;}
.drawer{z-index:15001!important;}
.modal-overlay{z-index:20000!important;backdrop-filter:blur(3px);}
.product-picker-overlay{z-index:21000!important;}
.z-report-overlay{z-index:30000!important;padding:18px;background:rgba(4,10,18,.72)!important;}
.z-report-modal{
  width:min(1120px,96vw)!important;
  max-height:94vh!important;
  border-radius:16px!important;
  overflow:hidden;
  box-shadow:0 30px 100px rgba(0,0,0,.42);
}
.z-report-modal-header{
  position:sticky;
  top:0;
  z-index:4;
  min-height:58px;
  background:var(--surface);
  border-bottom:1px solid var(--border);
}

/* Shared searchable select */
.searchable-select-field{min-width:0;}
.searchable-select{position:relative;min-width:0;}
.searchable-select-input{
  width:100%;
  min-height:38px;
  padding:0 58px 0 36px;
  border:1px solid var(--border);
  border-radius:9px;
  background:var(--surface2);
  color:var(--text);
  font:inherit;
  font-size:12px;
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.searchable-select.open .searchable-select-input,
.searchable-select-input:focus{
  border-color:var(--accent);
  background:var(--surface);
  box-shadow:0 0 0 3px rgba(var(--bechify-blue-rgb),.12);
}
.searchable-select-icon{
  position:absolute;
  left:11px;
  top:50%;
  transform:translateY(-50%);
  display:inline-flex;
  color:var(--text-muted);
  pointer-events:none;
  z-index:2;
}
.searchable-select-toggle,.searchable-select-clear{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--text-muted);
  cursor:pointer;
  z-index:3;
}
.searchable-select-toggle{right:5px;}
.searchable-select-clear{right:31px;}
.searchable-select-toggle:hover,.searchable-select-clear:hover{background:var(--surface2);color:var(--text);}
.searchable-select-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 5px);
  z-index:80;
  max-height:260px;
  overflow:auto;
  padding:5px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface);
  box-shadow:0 18px 50px rgba(0,0,0,.28);
}
.searchable-select-option{
  width:100%;
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:7px 9px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.searchable-select-option:hover,.searchable-select-option.active{background:rgba(var(--bechify-blue-rgb),.10);}
.searchable-select-option.selected{color:var(--accent);}
.searchable-select-option-copy{display:flex;flex-direction:column;min-width:0;}
.searchable-select-option-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.searchable-select-option-copy small{font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.searchable-select-check{font-weight:900;color:var(--accent);}
.searchable-select-empty{padding:12px;color:var(--text-muted);font-size:12px;text-align:center;}
.searchable-select.disabled{opacity:.55;}

/* Shared supplier screen title treatment */
.supplier-screen-icon{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 36px;
  border:1px solid rgba(var(--bechify-blue-rgb),.18);
  border-radius:10px;
  color:var(--accent);
  background:rgba(var(--bechify-blue-rgb),.08);
}
.supplier-screen-title-copy{display:flex;flex-direction:column;min-width:0;line-height:1.15;}
.supplier-screen-title-copy h2{font-size:15px;font-weight:850;white-space:nowrap;}
.supplier-screen-title-copy small{margin-top:3px;color:var(--text-muted);font-size:10px;white-space:nowrap;}
.supplier-back-btn{height:34px!important;padding:0 11px!important;}

/* Supplier invoice list */
.supplier-invoices-screen{padding:10px 12px 12px;gap:9px;background:var(--bg);}
.supplier-invoices-topbar{
  min-height:58px;
  padding:8px 10px!important;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:var(--shadow-soft);
}
.supplier-invoices-title-wrap,.supplier-invoices-header-actions{display:flex;align-items:center;gap:10px;}
.supplier-invoices-toolbar-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
}
.supplier-status-tabs{display:flex;align-items:center;gap:5px;min-width:0;overflow-x:auto;}
.supplier-status-tab{
  height:32px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 11px;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--text-muted);
  font:inherit;
  font-size:11px;
  font-weight:750;
  cursor:pointer;
  white-space:nowrap;
}
.supplier-status-tab:hover{background:var(--surface2);color:var(--text);}
.supplier-status-tab.active{background:rgba(var(--bechify-blue-rgb),.11);border-color:rgba(var(--bechify-blue-rgb),.22);color:var(--accent);}
.supplier-status-tab strong{min-width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px;border-radius:999px;background:var(--surface2);font-size:9px;}
.supplier-status-tab.active strong{background:var(--accent);color:#fff;}
.supplier-webhook-hint{display:flex;align-items:center;gap:7px;max-width:420px;color:var(--text-muted);font-size:10px;text-align:right;}
.supplier-webhook-hint svg{color:var(--accent);flex-shrink:0;}
.supplier-invoices-table-wrap{
  flex:1;
  min-height:0;
  overflow:auto;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  box-shadow:var(--shadow-soft);
}
.supplier-invoices-table{table-layout:fixed;min-width:0!important;}
.supplier-invoices-table th{height:38px;padding:0 12px!important;font-size:10px!important;}
.supplier-invoices-table td{padding:9px 12px!important;vertical-align:middle;}
.supplier-invoices-table th:nth-child(1){width:19%;}
.supplier-invoices-table th:nth-child(2){width:23%;}
.supplier-invoices-table th:nth-child(3){width:18%;}
.supplier-invoices-table th:nth-child(4){width:7%;}
.supplier-invoices-table th:nth-child(5){width:13%;}
.supplier-invoices-table th:nth-child(6){width:12%;}
.supplier-invoices-table th:nth-child(7){width:8%;}
.supplier-invoice-list-row{cursor:pointer;transition:background .12s ease,box-shadow .12s ease;}
.supplier-invoice-list-row:hover{background:rgba(var(--bechify-blue-rgb),.045);box-shadow:inset 3px 0 var(--accent);}
.supplier-invoice-id-cell{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;row-gap:2px;min-width:0;}
.supplier-invoice-id-cell strong{font-size:13px;color:var(--accent);}
.supplier-invoice-id-cell span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:700;}
.supplier-invoice-id-cell small{grid-column:2;color:var(--text-muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em;}
.supplier-name-cell{display:flex;align-items:center;gap:9px;min-width:0;}
.supplier-avatar{width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 31px;border-radius:9px;background:rgba(var(--bechify-blue-rgb),.10);color:var(--accent);font-size:12px;font-weight:900;}
.supplier-name-cell div{min-width:0;display:flex;flex-direction:column;}
.supplier-name-cell strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;}
.supplier-name-cell small{font-size:9px;color:var(--text-muted);}
.supplier-items-count{min-width:28px;height:25px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:var(--surface2);font-weight:850;}
.supplier-invoice-total{font-size:12px;color:var(--text);}
.supplier-view-btn{
  height:30px;
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:0 9px;
  border:1px solid rgba(var(--bechify-blue-rgb),.20);
  border-radius:7px;
  background:rgba(var(--bechify-blue-rgb),.07);
  color:var(--accent);
  font:inherit;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.supplier-view-btn:hover{background:var(--accent);color:#fff;}
.supplier-empty-state{display:flex;flex-direction:column;align-items:center;gap:6px;padding:45px 20px;}
.supplier-empty-icon{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:15px;background:rgba(var(--bechify-blue-rgb),.08);color:var(--accent);}
.supplier-empty-state strong{color:var(--text);font-size:13px;}
.supplier-empty-state small{font-size:10px;}

/* New supplier invoice screen */
.manual-invoice-screen{padding:10px 12px 12px;gap:8px;}
.supplier-invoice-topbar{
  min-height:58px;
  padding:8px 10px!important;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:var(--shadow-soft);
}
.supplier-invoice-title-wrap,.supplier-invoice-header-actions{display:flex;align-items:center;gap:10px;min-width:0;}
.supplier-shortcuts-chip{display:inline-flex;align-items:center;height:27px;padding:0 9px;border:1px solid rgba(var(--bechify-blue-rgb),.18);border-radius:999px;background:rgba(var(--bechify-blue-rgb),.07);color:var(--accent);font-size:9px;font-weight:750;white-space:nowrap;}
.supplier-invoice-live-total{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;}
.supplier-invoice-live-total span{font-size:9px;color:var(--text-muted);text-transform:uppercase;font-weight:800;}
.supplier-invoice-live-total strong{margin-top:3px;font-size:14px;color:var(--accent);}
.supplier-save-btn{height:36px!important;padding-inline:14px!important;}
.supplier-invoice-meta-card{
  position:relative;
  z-index:90;
  display:grid;
  grid-template-columns:minmax(220px,.8fr) minmax(210px,.75fr) minmax(280px,1.6fr);
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
}
.supplier-invoice-meta-card .form-input{min-height:38px;}
.supplier-entry-row.pos-detail-scan-row{
  border:1px solid var(--border)!important;
  border-radius:12px!important;
  background:var(--surface)!important;
  box-shadow:none!important;
}
.manual-help-line{
  padding:5px 10px!important;
  border:0!important;
  border-radius:7px;
  background:rgba(var(--bechify-blue-rgb),.055)!important;
  color:var(--text-muted)!important;
  font-size:9px!important;
}
.supplier-invoice-table-wrap{
  min-height:0;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  box-shadow:var(--shadow-soft);
}
.supplier-invoice-compact-table{width:100%;min-width:0!important;table-layout:fixed!important;}
.supplier-invoice-compact-table col.supplier-col-product{width:27%;}
.supplier-invoice-compact-table col.supplier-col-qty{width:6%;}
.supplier-invoice-compact-table col.supplier-col-cost{width:15%;}
.supplier-invoice-compact-table col.supplier-col-selling{width:15%;}
.supplier-invoice-compact-table col.supplier-col-category{width:12%;}
.supplier-invoice-compact-table col.supplier-col-expiry{width:10%;}
.supplier-invoice-compact-table col.supplier-col-total{width:11%;}
.supplier-invoice-compact-table col.supplier-col-action{width:4%;}
.supplier-invoice-compact-table th{height:34px;padding:0 7px!important;font-size:9px!important;}
.supplier-invoice-compact-table td{padding:6px 7px!important;vertical-align:middle;}
.supplier-invoice-compact-table tbody tr:hover{background:rgba(var(--bechify-blue-rgb),.035);}
.supplier-product-cell{display:flex;flex-direction:column;gap:4px;min-width:0;}
.supplier-product-name-input{height:29px!important;min-width:0!important;font-weight:800!important;}
.supplier-product-meta-row{display:flex;align-items:center;gap:5px;min-width:0;}
.supplier-product-meta-label{font-size:8px;color:var(--text-muted);text-transform:uppercase;font-weight:850;}
.supplier-product-code-input{height:24px!important;min-width:0!important;flex:1;font-family:'Cascadia Mono','Consolas',monospace;font-size:9px!important;color:var(--text-muted);}
.supplier-stock-pill{height:22px;display:inline-flex;align-items:center;padding:0 6px;border-radius:999px;background:rgba(21,148,71,.10);color:var(--accent2);font-size:8px;font-weight:850;white-space:nowrap;}
.supplier-stock-pill.low{background:rgba(239,68,68,.09);color:var(--danger);}
.supplier-price-stack{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.supplier-price-stack label{display:flex;flex-direction:column;gap:2px;min-width:0;}
.supplier-price-stack label>span{font-size:7px;color:var(--text-muted);font-weight:850;text-transform:uppercase;}
.supplier-price-stack .num-input{width:100%!important;height:29px!important;padding:0 5px!important;font-size:10px!important;}
.supplier-invoice-compact-table .manual-qty-cell .num-input{width:100%!important;height:30px!important;}
.supplier-category-input,.supplier-expiry-input{height:30px!important;padding-inline:5px!important;font-size:9px!important;}
.supplier-line-total{font-size:11px!important;white-space:nowrap;color:var(--accent);}
.supplier-delete-btn{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(239,68,68,.18);
  border-radius:8px;
  background:rgba(239,68,68,.06);
  color:var(--danger);
  cursor:pointer;
  transition:background .12s ease,color .12s ease,transform .12s ease;
}
.supplier-delete-btn:hover{background:var(--danger);color:#fff;transform:translateY(-1px);}
.supplier-grand-total-row td{height:42px!important;border-top:2px solid var(--border)!important;background:var(--surface2);}
.supplier-grand-total-row td:nth-last-child(2){color:var(--accent);font-size:14px!important;}

/* Supplier invoice approval / preview */
.supplier-invoice-detail-screen{padding:10px 12px 12px;gap:8px;background:var(--bg);}
.supplier-detail-loading{display:flex;align-items:center;justify-content:center;color:var(--text-muted);}
.supplier-detail-topbar{
  min-height:58px;
  padding:8px 10px!important;
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:var(--shadow-soft);
}
.supplier-detail-title-wrap,.supplier-detail-header-actions{display:flex;align-items:center;gap:9px;min-width:0;}
.supplier-detail-layout{display:flex;flex:1;min-height:0;gap:9px;overflow:hidden;}
.supplier-detail-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;overflow:hidden;}
.supplier-detail-meta-card{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding:9px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
}
.supplier-detail-meta-card>div{min-width:0;padding:7px 9px;border-radius:8px;background:var(--surface2);display:flex;flex-direction:column;gap:3px;}
.supplier-detail-meta-card span{font-size:8px;color:var(--text-muted);font-weight:850;text-transform:uppercase;letter-spacing:.04em;}
.supplier-detail-meta-card strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.supplier-modification-notice{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(var(--bechify-blue-rgb),.18);border-radius:9px;background:rgba(var(--bechify-blue-rgb),.07);color:var(--accent);font-size:10px;font-weight:650;}
.supplier-approval-table-wrap{flex:1;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft);}
.supplier-approval-table{width:100%;min-width:0!important;table-layout:fixed;}
.supplier-approval-table col.approval-col-product{width:22%;}
.supplier-approval-table col.approval-col-qty{width:8%;}
.supplier-approval-table col.approval-col-cost{width:10%;}
.supplier-approval-table col.approval-col-sale{width:9%;}
.supplier-approval-table col.approval-col-catalog{width:16%;}
.supplier-approval-table col.approval-col-approved-qty{width:9%;}
.supplier-approval-table col.approval-col-approved-cost{width:10%;}
.supplier-approval-table col.approval-col-total{width:11%;}
.supplier-approval-table col.approval-col-stock{width:5%;}
.supplier-approval-table th{height:36px;padding:0 6px!important;font-size:8px!important;line-height:1.15;white-space:normal!important;}
.supplier-approval-table td{padding:6px!important;vertical-align:middle;font-size:10px!important;}
.supplier-approval-table .modified-row{background:rgba(var(--bechify-blue-rgb),.045);box-shadow:inset 3px 0 var(--accent);}
.supplier-approval-product{display:flex;flex-direction:column;gap:3px;min-width:0;}
.supplier-approval-product strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.supplier-approval-product small{font-size:8px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.supplier-approval-product .cell-input{height:27px!important;}
.supplier-approval-barcode{font-family:'Cascadia Mono','Consolas',monospace;font-size:8px!important;color:var(--text-muted)!important;}
.supplier-catalog-stack{display:flex;flex-direction:column;gap:4px;min-width:0;}
.supplier-catalog-stack .cell-input{height:28px!important;padding-inline:5px!important;font-size:9px!important;}
.supplier-catalog-stack span{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.supplier-catalog-stack small{color:var(--text-muted);font-size:8px;}
.supplier-approval-table .num-input{width:100%!important;height:29px!important;padding:0 5px!important;font-size:10px!important;}
.approved-heading{color:var(--accent)!important;background:rgba(var(--bechify-blue-rgb),.055);}
.approval-input{background:rgba(21,148,71,.04)!important;border-color:rgba(21,148,71,.17)!important;font-weight:800;}
.approval-input.changed{border-color:var(--accent)!important;box-shadow:0 0 0 2px rgba(var(--bechify-blue-rgb),.10);}
.supplier-approved-line-total{display:table-cell;white-space:nowrap;}
.supplier-approved-line-total strong{display:block;color:var(--accent);font-size:10px;}
.supplier-approved-line-total small{display:block;margin-top:2px;color:var(--text-muted);font-size:7px;}
.supplier-db-stock{min-width:27px;height:25px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:rgba(21,148,71,.10);color:var(--accent2);font-weight:850;}
.supplier-db-stock.low{background:rgba(239,68,68,.09);color:var(--danger);}
.supplier-db-stock.new{background:rgba(var(--bechify-blue-rgb),.08);color:var(--accent);font-size:8px;}
.supplier-detail-summary{width:286px;flex:0 0 286px;display:flex;flex-direction:column;gap:9px;overflow-y:auto;}
.supplier-summary-card,.supplier-payment-card{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-soft);}
.supplier-summary-card-title{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:var(--text);font-size:11px;font-weight:850;}
.supplier-summary-card-title svg{color:var(--accent);}
.supplier-summary-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--border);font-size:10px;}
.supplier-summary-row span{color:var(--text-muted);}
.supplier-summary-total{margin-top:10px;padding:10px;border-radius:9px;background:rgba(var(--bechify-blue-rgb),.08);display:flex;flex-direction:column;gap:3px;}
.supplier-summary-total span{font-size:8px;color:var(--accent);text-transform:uppercase;font-weight:850;}
.supplier-summary-total strong{font-size:18px;color:var(--accent);}
.supplier-payment-card{display:flex;flex-direction:column;gap:10px;}
.supplier-paid-input{height:42px!important;text-align:right;font-size:16px!important;font-weight:850;color:var(--accent)!important;}
.supplier-detail-notes{min-height:72px!important;resize:vertical;}
.supplier-detail-action-stack{display:flex;flex-direction:column;gap:7px;}
.supplier-detail-action-stack .btn{width:100%;justify-content:center;min-height:36px;}
.supplier-reject-top-btn{background:rgba(239,68,68,.08)!important;color:var(--danger)!important;border:1px solid rgba(239,68,68,.18)!important;}
.supplier-reject-top-btn:hover{background:var(--danger)!important;color:#fff!important;}

/* Edit/Add product drawer */
.inventory-product-form{
  width:min(980px,96vw)!important;
  border-left:1px solid var(--border)!important;
  background:var(--bg)!important;
  box-shadow:-28px 0 80px rgba(0,0,0,.22);
}
.inventory-product-header{
  min-height:66px;
  padding:10px 18px!important;
  background:var(--surface);
  box-shadow:0 1px 0 var(--border);
}
.inventory-product-header-copy{display:flex;align-items:center;gap:10px;min-width:0;}
.inventory-product-header-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:rgba(var(--bechify-blue-rgb),.09);border:1px solid rgba(var(--bechify-blue-rgb),.16);color:var(--accent);}
.inventory-product-header-copy>div{display:flex;flex-direction:column;min-width:0;}
.inventory-product-header-copy strong{font-size:14px;font-weight:850;}
.inventory-product-header-copy small{margin-top:3px;color:var(--text-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.inventory-product-body{padding:14px 18px 20px!important;}
.inventory-product-form .form-section-title{
  display:flex;
  align-items:center;
  gap:7px;
  margin:10px 0 8px!important;
  padding:0!important;
  border:0!important;
  color:var(--text)!important;
  font-size:10px!important;
  font-weight:900!important;
  letter-spacing:.055em;
}
.inventory-product-form .form-grid,
.inventory-product-form .inventory-image-card{
  padding:12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  box-shadow:0 8px 22px rgba(31,52,73,.04);
}
.inventory-product-form .form-grid{margin-bottom:12px!important;}
.inventory-product-form .field label{font-size:9px!important;}
.inventory-product-form .form-input,
.inventory-product-form .form-select,
.inventory-product-form .searchable-select-input{min-height:37px!important;border-radius:8px!important;background:var(--surface2);}
.inventory-product-form .form-input:focus,
.inventory-product-form .form-select:focus{background:var(--surface);box-shadow:0 0 0 3px rgba(var(--bechify-blue-rgb),.10);}
.inventory-product-form .inventory-image-card{margin-bottom:12px!important;}
.inventory-product-form .inventory-fetch-image-btn{background:rgba(var(--bechify-blue-rgb),.09)!important;color:var(--accent)!important;border:1px solid rgba(var(--bechify-blue-rgb),.17)!important;}
.inventory-product-form .inventory-fetch-image-btn:hover{background:var(--accent)!important;color:#fff!important;}
.inventory-product-footer{
  min-height:64px;
  padding:10px 18px!important;
  background:var(--surface);
  box-shadow:0 -1px 0 var(--border);
}
.inventory-product-footer .btn{min-width:130px!important;justify-content:center;}
.inventory-save-product-btn{background:var(--accent)!important;color:#fff!important;box-shadow:0 7px 18px rgba(var(--bechify-blue-rgb),.20);}
.inventory-save-product-btn:hover:not(:disabled){background:var(--bechify-blue-hover)!important;}

/* Stock validation remains active; only the intrusive text label is removed. */
.pos-stock-warning-text{display:none!important;}

@media (max-width:1250px){
  .supplier-webhook-hint{display:none;}
  .supplier-shortcuts-chip{display:none;}
  .supplier-invoice-meta-card{grid-template-columns:1fr 1fr;}
  .supplier-notes-field{grid-column:1/-1;}
  .supplier-detail-summary{width:255px;flex-basis:255px;}
  .supplier-approval-table col.approval-col-product{width:24%;}
  .supplier-approval-table col.approval-col-catalog{width:14%;}
  .supplier-approval-table th,.supplier-approval-table td{padding-inline:4px!important;}
}

@media (max-width:1024px){
  .supplier-invoices-screen,.manual-invoice-screen,.supplier-invoice-detail-screen{padding:7px 8px 8px;}
  .supplier-invoices-title-wrap small,.supplier-screen-title-copy small{display:none;}
  .supplier-invoices-table th:nth-child(3),.supplier-invoices-table td:nth-child(3){display:none;}
  .supplier-invoices-table th:nth-child(1){width:23%;}
  .supplier-invoices-table th:nth-child(2){width:28%;}
  .supplier-invoices-table th:nth-child(4){width:8%;}
  .supplier-invoices-table th:nth-child(5){width:16%;}
  .supplier-invoices-table th:nth-child(6){width:15%;}
  .supplier-invoices-table th:nth-child(7){width:10%;}
  .supplier-invoice-header-actions .supplier-invoice-live-total{display:none;}
  .supplier-invoice-meta-card{grid-template-columns:1fr 1fr;}
  .supplier-entry-row.pos-detail-scan-row{overflow-x:auto!important;}
  .supplier-invoice-compact-table col.supplier-col-product{width:28%;}
  .supplier-invoice-compact-table col.supplier-col-cost{width:16%;}
  .supplier-invoice-compact-table col.supplier-col-selling{width:16%;}
  .supplier-invoice-compact-table col.supplier-col-category{width:11%;}
  .supplier-invoice-compact-table col.supplier-col-expiry{width:10%;}
  .supplier-invoice-compact-table col.supplier-col-total{width:10%;}
  .supplier-detail-layout{overflow:auto;display:block;}
  .supplier-detail-main{overflow:visible;}
  .supplier-detail-summary{width:100%;margin-top:8px;display:grid;grid-template-columns:1fr 1fr;overflow:visible;}
  .supplier-detail-meta-card{grid-template-columns:repeat(2,minmax(0,1fr));}
  .supplier-approval-table-wrap{overflow-x:hidden;}
  .supplier-detail-header-actions .supplier-reject-top-btn{display:none;}
  .inventory-product-form{width:100vw!important;}
}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v5 — RESPONSIVE SETTINGS + SUPPLIER TABLE CORRECTIONS
   ═══════════════════════════════════════════════════════════════════════════ */

/* Settings: native desktop layout, two main columns, fixed save footer. */
.settings-v5-wrap{
  min-width:0;
  background:var(--bg);
}
.settings-v5-screen{
  padding:10px 12px 12px;
  gap:0;
  overscroll-behavior:contain;
}
.settings-responsive-grid{
  width:100%;
  max-width:none;
  margin:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:12px;
}
.settings-responsive-grid > .settings-card{
  min-width:0;
  margin:0;
}
.settings-responsive-grid > .full-width,
.settings-responsive-grid > .settings-span-2{
  grid-column:1 / -1;
}
.settings-page-head{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:2px 2px 4px;
}
.settings-page-head h1{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color:var(--text);
  font-size:19px;
  line-height:1.15;
  font-weight:850;
}
.settings-page-head h1 svg{color:var(--accent);}
.settings-page-head p{
  margin:5px 0 0;
  color:var(--text-muted);
  font-size:11px;
}
.settings-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.settings-summary-card{
  min-width:0;
  min-height:78px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:11px 13px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface);
  box-shadow:var(--shadow-soft);
}
.settings-summary-icon{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  border-radius:13px;
}
.settings-summary-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  line-height:1.15;
}
.settings-summary-copy > span{
  color:var(--text-muted);
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.settings-summary-copy strong{
  margin-top:4px;
  color:var(--text);
  font-size:15px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.settings-summary-copy small{
  margin-top:4px;
  color:var(--text-muted);
  font-size:9px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.settings-summary-card.tone-blue .settings-summary-icon{background:rgba(var(--bechify-blue-rgb),.11);color:var(--accent);}
.settings-summary-card.tone-purple .settings-summary-icon{background:rgba(139,92,246,.12);color:#8b5cf6;}
.settings-summary-card.tone-green .settings-summary-icon{background:rgba(34,197,94,.12);color:#16a34a;}
.settings-summary-card.tone-orange .settings-summary-icon{background:rgba(249,115,22,.12);color:#ea580c;}

.settings-responsive-grid .settings-card{
  padding:12px;
  border-radius:13px;
  box-shadow:var(--shadow-soft);
}
.settings-responsive-grid .settings-card-title{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:23px;
  margin:0 0 10px;
  padding:0 0 8px;
  color:var(--text);
  font-size:11px;
  font-weight:850;
  text-transform:none;
  letter-spacing:0;
}
.settings-responsive-grid .settings-card-title svg{flex:0 0 auto;}
.settings-responsive-grid .settings-grid{
  grid-template-columns:repeat(auto-fit,minmax(165px,1fr));
  gap:9px 10px;
}
.settings-responsive-grid .settings-grid.single{grid-template-columns:1fr;}
.settings-responsive-grid .field{min-width:0;}
.settings-responsive-grid .field label{
  margin-bottom:4px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.035em;
}
.settings-responsive-grid .form-input,
.settings-responsive-grid .form-select,
.settings-responsive-grid .form-readonly{
  min-height:34px;
  padding:0 10px;
  border-radius:8px;
  font-size:11px;
}
.settings-responsive-grid textarea.form-input{padding:8px 10px;}
.settings-responsive-grid .settings-actions{
  gap:7px;
}
.settings-responsive-grid .settings-actions .btn{
  min-height:32px;
  padding:0 10px;
  font-size:10px;
}
.settings-responsive-grid .settings-license-card{grid-column:auto;}

.settings-fixed-save-bar{
  min-height:64px;
  justify-content:space-between;
  padding:9px 14px;
  border-top:1px solid var(--border);
  background:color-mix(in srgb,var(--surface) 94%,transparent);
  box-shadow:0 -8px 24px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
  position:relative;
  z-index:40;
}
.settings-save-help{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--text-muted);
  font-size:10px;
}
.settings-save-help-icon{
  width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 24px;
  border-radius:50%;
  background:rgba(var(--bechify-blue-rgb),.10);
  color:var(--accent);
}
.settings-save-actions{display:flex;align-items:center;gap:10px;}
.settings-saving-text{color:var(--text-muted);font-size:10px;}
.settings-save-primary{
  min-width:168px;
  min-height:39px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border-radius:9px!important;
  box-shadow:0 7px 18px rgba(var(--bechify-blue-rgb),.19);
}

/* Manual supplier invoice: exact, compact columns. */
.manual-scan-input,
.manual-name-field input,
.supplier-entry-row .pos-detail-field > input{
  padding-left:12px!important;
  padding-right:12px!important;
}
.supplier-invoice-line-table{
  width:100%;
  min-width:0!important;
  table-layout:fixed;
}
.supplier-invoice-line-table th{
  height:36px;
  padding:0 7px!important;
  font-size:9px!important;
  white-space:nowrap;
}
.supplier-invoice-line-table td{
  padding:7px!important;
  vertical-align:middle;
}
.supplier-line-col-index{width:3.5%;}
.supplier-line-col-product{width:25%;}
.supplier-line-col-money{width:8.2%;}
.supplier-line-col-category{width:11.5%;}
.supplier-line-col-expiry{width:11.5%;}
.supplier-line-col-total{width:10%;}
.supplier-line-col-action{width:4%;}
.supplier-line-index{color:var(--text-muted);font-size:10px;font-weight:850;}
.supplier-product-cell{gap:5px;}
.supplier-product-name-input{
  min-height:30px!important;
  padding:0 8px!important;
  font-size:11px!important;
  font-weight:800;
}
.supplier-product-meta-compact{
  display:grid;
  grid-template-columns:auto minmax(70px,1fr) auto 54px;
  align-items:center;
  gap:5px;
}
.supplier-product-meta-label{
  color:var(--text-muted);
  font-size:8px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.supplier-product-code-input{
  min-width:0;
  width:100%!important;
  height:25px!important;
  padding:0 6px!important;
  font-size:9px!important;
}
.supplier-inline-qty-input{
  width:54px!important;
  height:25px!important;
  padding:0 4px!important;
  font-size:9px!important;
}
.supplier-line-money-input,
.supplier-category-input,
.supplier-expiry-input{
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  padding:0 6px!important;
  font-size:10px!important;
}
.supplier-expiry-input{padding:0 3px!important;}
.supplier-line-total{
  white-space:nowrap;
  color:var(--accent);
  font-size:11px;
}
.supplier-delete-btn{
  width:30px;
  height:30px;
  border-radius:8px;
}
.supplier-grand-total-row td{
  height:38px;
  background:var(--surface2);
}

@media (max-width:1250px){
  .settings-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .settings-responsive-grid{gap:10px;}
  .settings-responsive-grid .settings-card{padding:11px;}
  .supplier-invoice-line-table th{padding-inline:5px!important;font-size:8px!important;}
  .supplier-invoice-line-table td{padding:5px!important;}
  .supplier-line-col-product{width:27%;}
  .supplier-line-col-category{width:10.5%;}
  .supplier-line-col-expiry{width:10.5%;}
}

@media (max-width:900px){
  .settings-responsive-grid{grid-template-columns:1fr;}
  .settings-responsive-grid > .full-width,
  .settings-responsive-grid > .settings-span-2{grid-column:1;}
  .settings-v5-screen{padding:8px;}
  .settings-fixed-save-bar{min-height:58px;padding:8px 10px;}
  .settings-save-help span:last-child{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
}

@media (max-width:640px){
  .settings-summary-grid{grid-template-columns:1fr;}
  .settings-save-help{display:none;}
  .settings-fixed-save-bar{justify-content:flex-end;}
  .settings-save-primary{width:100%;min-width:0;}
}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v6 — FINAL APPEARANCE, SEARCH PADDING & STAFF EDITOR
   ═══════════════════════════════════════════════════════════════════════════ */

:root{--ui-scale:1;}
#root{transform-origin:top left;overflow:hidden;}

/* S / M / L / XL: keep the responsive layout, but make the complete Electron
   interface visibly scale even where legacy components still use px values. */
[data-font-size="small"]{
  --fs-xs:9px;--fs-sm:10px;--fs-base:11.5px;--fs-md:12px;
  --fs-lg:14px;--fs-xl:17px;--fs-2xl:21px;--fs-3xl:24px;
}
[data-font-size="medium"]{
  --fs-xs:10px;--fs-sm:11px;--fs-base:13px;--fs-md:13px;
  --fs-lg:15px;--fs-xl:18px;--fs-2xl:22px;--fs-3xl:26px;
}
[data-font-size="large"]{
  --fs-xs:10.5px;--fs-sm:11.5px;--fs-base:13.5px;--fs-md:14px;
  --fs-lg:16px;--fs-xl:19px;--fs-2xl:23px;--fs-3xl:27px;
}
[data-font-size="xlarge"]{
  --fs-xs:11px;--fs-sm:12px;--fs-base:14px;--fs-md:15px;
  --fs-lg:17px;--fs-xl:20px;--fs-2xl:25px;--fs-3xl:29px;
}

/* Logical padding prevents the search icon from sitting over typed text in
   either English or Urdu and remains comfortable at XL size. */
.searchable-select-input{
  padding-inline-start:44px!important;
  padding-inline-end:68px!important;
  text-indent:0!important;
}
.searchable-select-icon{
  left:auto!important;
  right:auto!important;
  inset-inline-start:13px!important;
}
.searchable-select-toggle{
  left:auto!important;
  right:auto!important;
  inset-inline-end:6px!important;
}
.searchable-select-clear{
  left:auto!important;
  right:auto!important;
  inset-inline-end:35px!important;
}
.inventory-product-form .searchable-select-input{
  min-height:39px!important;
  padding-inline-start:46px!important;
  padding-inline-end:70px!important;
}
.inventory-product-form .searchable-select-option{padding:9px 11px!important;}

/* Settings appearance card */
.settings-appearance-card{overflow:hidden;}
.settings-appearance-fields{grid-template-columns:minmax(180px,1.25fr) minmax(180px,1fr)!important;}
.settings-ui-size-switcher{
  min-height:34px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px;
}
.settings-ui-size-switcher button{
  min-width:0;
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--surface2);
  color:var(--text);
  font-family:var(--font);
  font-size:11px!important;
  font-weight:850;
  cursor:pointer;
  transition:all .14s ease;
}
.settings-ui-size-switcher button:hover{border-color:var(--accent);color:var(--accent);}
.settings-ui-size-switcher button.active{
  border-color:var(--accent);
  background:var(--accent);
  color:#fff;
  box-shadow:0 5px 14px rgba(var(--bechify-blue-rgb),.18);
}
.settings-font-preview{
  margin-top:10px;
  padding:9px 10px;
  display:flex;
  align-items:center;
  gap:10px;
  border:1px dashed color-mix(in srgb,var(--accent) 36%,var(--border));
  border-radius:9px;
  background:rgba(var(--bechify-blue-rgb),.045);
  min-width:0;
}
.settings-font-preview strong{color:var(--accent);font-size:13px;white-space:nowrap;}
.settings-font-preview span{min-width:0;color:var(--text-muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* Smooth staff add/edit screen */
.staff-editor-v6{
  width:100%;
  max-width:none;
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:10px 12px 0;
  background:var(--bg);
}
.staff-editor-head{
  min-height:58px;
  display:flex;
  align-items:center;
  gap:11px;
  flex:0 0 auto;
  margin-bottom:10px;
  padding:8px 10px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface);
  box-shadow:var(--shadow-soft);
}
.staff-back-btn{min-height:36px;padding-inline:12px!important;}
.staff-editor-title{min-width:0;display:flex;align-items:center;gap:10px;}
.staff-editor-title-icon{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:11px;background:rgba(var(--bechify-blue-rgb),.11);color:var(--accent);flex:0 0 38px;
}
.staff-editor-title h2{margin:0;font-size:15px;font-weight:900;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.staff-editor-title p{margin:3px 0 0;font-size:10px;color:var(--text-muted);}
.staff-edit-scroll{flex:1;min-height:0;overflow:auto;padding:0 3px 14px 0;}
.staff-edit-scroll > .settings-card{margin:0 0 10px;padding:13px;border-radius:13px;box-shadow:var(--shadow-soft);}
.staff-details-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.staff-details-card .field input,.staff-details-card .field select{min-height:37px;border-radius:8px;}
.staff-permissions-card{overflow:hidden;}
.staff-permission-section-head{
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px;
  margin:14px 0 7px;padding-top:12px;border-top:1px solid var(--border);
}
.staff-permission-section-head:first-of-type{margin-top:8px;}
.staff-permission-section-head h4{margin:0;font-size:11px;font-weight:900;color:var(--text);}
.staff-permission-section-head span{font-size:9px;color:var(--text-muted);text-align:end;}
.staff-permission-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:7px;
}
.staff-permission-item{
  min-width:0;
  min-height:38px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px 9px;
  border:1px solid var(--border);
  border-radius:9px;
  background:var(--surface2);
  color:var(--text);
  cursor:pointer;
  transition:border-color .14s ease,background .14s ease,transform .14s ease;
}
.staff-permission-item:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));transform:translateY(-1px);}
.staff-permission-item.checked{
  border-color:rgba(var(--bechify-blue-rgb),.42);
  background:rgba(var(--bechify-blue-rgb),.085);
}
.staff-permission-native{position:absolute;opacity:0;pointer-events:none;}
.staff-permission-check{
  width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;
  border:1px solid color-mix(in srgb,var(--text-muted) 56%,transparent);border-radius:6px;background:var(--surface);color:#fff;
}
.staff-permission-item.checked .staff-permission-check{border-color:var(--accent);background:var(--accent);box-shadow:0 3px 9px rgba(var(--bechify-blue-rgb),.18);}
.staff-permission-label{min-width:0;font-size:11px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.staff-reset-card .field input{min-height:37px;}
.staff-edit-actions{
  flex:0 0 auto;
  width:100%;
  min-height:62px;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:9px;
  padding:9px 2px 12px;
  border-top:1px solid var(--border);
  background:var(--bg);
}
.staff-edit-actions .btn{min-width:120px;min-height:38px;justify-content:center;border-radius:9px;}
.staff-save-btn{min-width:150px!important;box-shadow:0 7px 18px rgba(var(--bechify-blue-rgb),.20);}

@media(max-width:1100px){
  .settings-appearance-fields{grid-template-columns:1fr!important;}
  .staff-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .staff-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:780px){
  .staff-editor-v6{padding:7px 8px 0;}
  .staff-details-grid{grid-template-columns:1fr!important;}
  .staff-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .staff-permission-section-head span{display:none;}
}
@media(max-width:520px){
  .staff-permission-grid{grid-template-columns:1fr;}
  .staff-edit-actions .btn{flex:1;min-width:0!important;}
}
/* Root zoom compensation: every full-screen root child uses the compensated
   root height instead of another unscaled 100vh, so XL never clips the footer. */
#root > *{height:100%!important;min-height:0!important;}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v7 — SAFE FONT SCALING, HEADER RESTORE & GROUPED SETTINGS
   Never zoom the React root: zoom clipped the user menu and POS sidebar.
   ═══════════════════════════════════════════════════════════════════════════ */
html,body,#root{width:100%;height:100%;}
#root{
  zoom:1!important;
  width:100%!important;
  height:100vh!important;
  overflow:visible!important;
  transform:none!important;
  transform-origin:initial!important;
}
#root > *{height:100%!important;min-height:0!important;width:100%;}
.app{min-width:0;overflow:hidden;}
.app-header{width:100%;min-width:0;overflow:visible;}
.primary-tabs{min-width:0;}
.header-actions{min-width:max-content;flex-shrink:0;position:relative;z-index:12010;}
.user-menu-wrap{flex:0 0 auto;z-index:12020;}
.user-menu-popover{z-index:12030;}
.pos-workspace,.pos-main-panel{min-width:0;}
.pos-sidebar{max-width:38vw;}

/* S/M/L/XL changes typography and comfortable control density only. It does
   not resize the viewport or push the right side of the app off-screen. */
[data-font-size="small"]{
  --fs-xs:9px;--fs-sm:10px;--fs-base:12px;--fs-md:12px;
  --fs-lg:14px;--fs-xl:17px;--fs-2xl:21px;--fs-3xl:24px;
  --header-height:54px;--pos-row-height:36px;
}
[data-font-size="medium"]{
  --fs-xs:10px;--fs-sm:11px;--fs-base:14px;--fs-md:13px;
  --fs-lg:15px;--fs-xl:18px;--fs-2xl:22px;--fs-3xl:26px;
  --header-height:58px;--pos-row-height:39px;
}
[data-font-size="large"]{
  --fs-xs:11px;--fs-sm:12px;--fs-base:15px;--fs-md:14px;
  --fs-lg:16px;--fs-xl:19px;--fs-2xl:23px;--fs-3xl:28px;
  --header-height:61px;--pos-row-height:42px;
}
[data-font-size="xlarge"]{
  --fs-xs:12px;--fs-sm:13px;--fs-base:16px;--fs-md:15px;
  --fs-lg:17px;--fs-xl:20px;--fs-2xl:25px;--fs-3xl:30px;
  --header-height:64px;--pos-row-height:45px;
}
[data-font-size] body{font-size:var(--fs-base)!important;}
[data-font-size] .app-header .tab-btn{font-size:var(--fs-sm)!important;}
[data-font-size] .app-header .shop-name{font-size:var(--fs-lg)!important;}
[data-font-size] .app-header .brand-status{font-size:var(--fs-xs)!important;}
[data-font-size] .app-header .low-stock-chip,
[data-font-size] .app-header .lan-chip,
[data-font-size] .app-header .offline-badge{font-size:var(--fs-xs)!important;}
[data-font-size] .legacy-user-trigger,
[data-font-size] .user-menu-trigger{font-size:var(--fs-sm)!important;}
[data-font-size] .legacy-user-menu,
[data-font-size] .legacy-user-menu button,
[data-font-size] .legacy-user-menu-item,
[data-font-size] .user-menu-popover,
[data-font-size] .user-menu-item{font-size:var(--fs-sm)!important;}
[data-font-size] .pos-toolbar .btn{font-size:var(--fs-sm)!important;}
[data-font-size] .pos-shortcuts{font-size:var(--fs-xs)!important;}
[data-font-size] .pos-cart-table th,
[data-font-size] .inventory-data-table th{font-size:var(--fs-xs)!important;}
[data-font-size] .pos-cart-table td,
[data-font-size] .inventory-data-table td{font-size:var(--fs-sm)!important;}
[data-font-size] .inventory-product-title{font-size:var(--fs-base)!important;}
[data-font-size] .inventory-row-actions-inline .row-action-link{font-size:var(--fs-xs)!important;}
[data-font-size] .inventory-mode-btn,
[data-font-size] .inventory-footer-btn{font-size:var(--fs-sm)!important;}
[data-font-size] .pos-sidebar button,
[data-font-size] .pos-sidebar input,
[data-font-size] .pos-sidebar select{font-size:var(--fs-sm)!important;}

/* Grouped settings cards. */
.settings-subsection-title{
  margin:12px 0 9px;
  padding-top:11px;
  border-top:1px solid var(--border);
  color:var(--text-muted);
  font-size:var(--fs-xs);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.settings-subsection-grid{margin-bottom:2px;}
.settings-inline-warning{
  margin-top:11px;
  padding:10px 11px;
  border:1px solid rgba(245,158,11,.30);
  border-radius:9px;
  background:rgba(245,158,11,.08);
  color:var(--text-muted);
  font-size:var(--fs-sm);
  line-height:1.45;
}
.settings-inline-warning b{color:var(--warn);}
.settings-card-help{margin-top:8px;color:var(--text-muted);font-size:var(--fs-xs);line-height:1.45;}
.settings-actions-wrap{flex-wrap:wrap;}
.settings-log-preview{margin-top:10px;max-height:145px;overflow:auto;white-space:pre-wrap;font-size:var(--fs-xs);background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:9px;}
.settings-connection-state{display:flex;align-items:center;gap:8px;margin-bottom:11px;padding:8px 10px;background:var(--surface2);border:1px solid var(--border);border-radius:9px;font-size:var(--fs-sm);font-weight:700;}
.settings-connection-state>span{width:9px;height:9px;border-radius:50%;background:var(--danger);flex:0 0 auto;}
.settings-connection-state.is-connected>span{background:var(--accent2);}
.settings-connection-state .btn{margin-left:auto;}
.settings-runtime-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;}
.settings-runtime-stats>div{min-width:0;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);display:flex;flex-direction:column;gap:4px;}
.settings-runtime-stats span{font-size:var(--fs-xs);color:var(--text-muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.settings-runtime-stats strong{font-size:var(--fs-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.settings-runtime-monitor{margin-top:11px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:5px;font-size:var(--fs-sm);}
.settings-runtime-monitor div,.settings-runtime-monitor small{color:var(--text-muted);}
.settings-translation-last{grid-column:1/-1;}
.settings-translation-last>.settings-card{width:100%;margin:0;}

@media(max-width:1400px){
  .primary-tabs .tab-btn{padding-inline:9px;}
  .low-stock-label{display:none;}
  .user-menu-trigger{min-width:112px;}
  .settings-runtime-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:1120px){
  .primary-tabs .tab-label{display:none;}
  .primary-tabs .tab-label-short{display:inline;}
  .primary-tabs .tab-btn{width:42px;min-width:42px;padding:0;}
  .primary-tabs .tab-btn:has(.tab-label-short){width:auto;min-width:62px;padding-inline:8px;}
  .app-brand{min-width:155px;max-width:180px;}
  .user-trigger-copy{display:none;}
  .user-menu-trigger{min-width:38px;width:38px;padding:4px;}
}
@media(max-width:900px){
  .pos-sidebar{max-width:none;}
  .settings-runtime-stats{grid-template-columns:1fr 1fr;}
}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v8 — SETTINGS TITLE HIERARCHY / CARD POLISH
   Main merged card titles are intentionally stronger and dark in light mode,
   while nested section titles remain clearly secondary.
   ═══════════════════════════════════════════════════════════════════════════ */
.settings-responsive-grid .settings-card{
  border-color:color-mix(in srgb,var(--border) 82%,var(--accent) 18%);
  overflow:hidden;
}

.settings-responsive-grid .settings-card-title{
  min-height:30px;
  margin:0 0 12px;
  padding:0 1px 10px;
  gap:8px;
  border-bottom:1px solid color-mix(in srgb,var(--border) 78%,var(--accent) 22%);
  color:#0f172a;
  font-size:clamp(15px,var(--fs-md),18px)!important;
  line-height:1.2;
  font-weight:850;
  letter-spacing:-.015em;
  text-transform:none;
}

.settings-responsive-grid .settings-card-title > svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px;
  color:var(--accent);
}

.settings-subsection-title{
  display:flex;
  align-items:center;
  min-height:32px;
  margin:13px 0 10px;
  padding:7px 10px;
  border:0;
  border-left:3px solid var(--accent);
  border-radius:7px;
  background:rgba(var(--bechify-blue-rgb),.065);
  color:#1e293b;
  font-size:clamp(12px,var(--fs-sm),14px)!important;
  line-height:1.2;
  font-weight:850;
  letter-spacing:0;
  text-transform:none;
}

.settings-responsive-grid .field label{
  color:#526277;
  font-weight:800;
}

[data-theme="dark"] .settings-responsive-grid .settings-card-title{
  color:#f8fafc;
  border-bottom-color:color-mix(in srgb,var(--border) 74%,var(--accent) 26%);
}
[data-theme="dark"] .settings-subsection-title{
  color:#e2e8f0;
  background:rgba(var(--bechify-blue-rgb),.13);
}
[data-theme="dark"] .settings-responsive-grid .field label{color:#aeb9c9;}

@media(max-width:900px){
  .settings-responsive-grid .settings-card-title{
    font-size:clamp(14px,var(--fs-md),17px)!important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
   PHASE 1 v9 — CENTERED SINGLE-COLUMN SETTINGS LAYOUT
   Keep Settings readable on desktop: one full-width card per row, centered
   inside a fixed maximum content width. The bottom save bar remains full-width.
   ═══════════════════════════════════════════════════════════════════════════ */
.settings-v5-screen > .settings-page-head,
.settings-v5-screen > .settings-summary-grid,
.settings-v5-screen > .settings-responsive-grid{
  width:100%;
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}

.settings-responsive-grid{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch;
}

.settings-responsive-grid > .settings-card,
.settings-responsive-grid > .full-width,
.settings-responsive-grid > .settings-span-2,
.settings-responsive-grid > .settings-translation-last{
  grid-column:1!important;
  width:100%;
  max-width:none;
}

.settings-responsive-grid > .settings-card{
  justify-self:stretch;
}

@media(max-width:1020px){
  .settings-v5-screen > .settings-page-head,
  .settings-v5-screen > .settings-summary-grid,
  .settings-v5-screen > .settings-responsive-grid{
    max-width:100%;
  }
}

/* ─── v1.0.7 POS discounts + supplier invoice usability fixes ───────────── */
.product-image-hover-preview{
  position:fixed;
  top:90px;
  right:24px;
  z-index:20000;
  width:260px;
  max-height:340px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  pointer-events:auto;
}
.product-image-hover-preview img{display:block;width:100%;height:240px;object-fit:contain;background:#fff;border-radius:8px;}
.product-image-hover-preview strong{display:block;margin-top:8px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

.pos-product-thumb,.supplier-product-thumb{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--border) 88%,var(--text-muted));
  border-radius:8px;
  background:var(--surface2);
  color:var(--text-muted);
}
.pos-product-thumb img,.supplier-product-thumb img{width:100%;height:100%;object-fit:cover;}
.pos-product-name-wrap{display:flex;align-items:center;gap:9px;min-width:0;}
.pos-product-name-wrap .name-input{min-width:0!important;}
.cart-internal-code{display:block;color:var(--text-muted);font-size:9px;font-family:'Cascadia Mono','Consolas',monospace;margin-top:2px;}

/* Visible grid lines and clearly editable cells. */
.pos-cart-table,.supplier-invoice-line-table,.supplier-approval-table{border-collapse:separate!important;border-spacing:0!important;}
.pos-cart-table th,.pos-cart-table td,
.supplier-invoice-line-table th,.supplier-invoice-line-table td,
.supplier-approval-table th,.supplier-approval-table td{
  border-right:1px solid color-mix(in srgb,var(--border) 82%,transparent)!important;
  border-bottom:1px solid color-mix(in srgb,var(--border) 86%,transparent)!important;
}
.pos-cart-table th:last-child,.pos-cart-table td:last-child,
.supplier-invoice-line-table th:last-child,.supplier-invoice-line-table td:last-child,
.supplier-approval-table th:last-child,.supplier-approval-table td:last-child{border-right:0!important;}
.pos-cart-table .cell-input,
.supplier-invoice-line-table .cell-input,
.supplier-approval-table .cell-input{
  border-color:color-mix(in srgb,var(--border) 90%,var(--text-muted))!important;
  background:color-mix(in srgb,var(--surface2) 72%,transparent)!important;
}
.pos-cart-table .cell-input:focus,
.supplier-invoice-line-table .cell-input:focus,
.supplier-approval-table .cell-input:focus{
  border-color:var(--accent)!important;
  background:rgba(var(--bechify-blue-rgb),.07)!important;
  box-shadow:0 0 0 2px rgba(var(--bechify-blue-rgb),.10);
}
.pos-cart-table td{min-height:58px;}
.pos-cart-table .locked-price-cell{display:flex;flex-direction:column;align-items:flex-end;gap:2px;}
.pos-cart-table .pos-retail-old{text-decoration:line-through;color:var(--text-muted);font-size:10px;font-weight:750;}
.pos-cart-table .pos-sale-price{font-size:13px;color:var(--text);}
.pos-cart-table .fixed-saving,.pos-cart-table .line-total small{color:var(--danger);font-size:9px;font-weight:800;}
.pos-summary-line.product-saving strong{color:var(--danger)!important;}

/* Keep Enter visible even when the supplier entry row is wider than a small screen. */
.supplier-entry-row.pos-detail-scan-row{
  overflow-x:auto!important;
  overflow-y:visible!important;
  grid-template-columns:180px minmax(230px,1fr) 62px 90px 78px 76px 76px 78px 132px 122px 82px!important;
  scrollbar-width:thin;
}
.supplier-entry-row .supplier-entry-add{
  position:sticky!important;
  right:2px!important;
  z-index:8!important;
  min-width:82px!important;
  box-shadow:-8px 0 14px color-mix(in srgb,var(--surface) 84%,transparent);
}

/* Manual invoice line table now has a real Qty column and image/codes block. */
.supplier-line-col-index{width:3%;}
.supplier-line-col-product{width:26%;}
.supplier-line-col-qty{width:5.5%;}
.supplier-line-col-money{width:8%;}
.supplier-line-col-category{width:10%;}
.supplier-line-col-expiry{width:10%;}
.supplier-line-col-total{width:9.5%;}
.supplier-line-col-action{width:3.5%;}
.supplier-qty-heading{font-weight:950!important;color:var(--text)!important;}
.supplier-qty-cell .supplier-inline-qty-input{width:100%!important;min-width:48px;font-weight:950!important;font-size:13px!important;}
.supplier-product-cell-with-image{display:flex!important;align-items:center;gap:8px;min-width:0;}
.supplier-product-edit-stack{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.supplier-product-code-grid{display:grid;grid-template-columns:auto minmax(65px,1fr) auto minmax(65px,1fr);align-items:center;gap:4px;}
.supplier-product-code-grid>span{font-size:7px;font-weight:900;color:var(--text-muted);text-transform:uppercase;}
.supplier-product-code-grid .cell-input{height:25px!important;font-family:'Cascadia Mono','Consolas',monospace;font-size:8px!important;}
.supplier-picker-internal{display:block;margin-top:2px;font-size:8px;color:var(--text-muted);}
.product-picker-table th:first-child{width:64px;}
.product-picker-table td{vertical-align:middle;}

/* Approved/pending invoice preview: stronger data, totals and summary. */
.supplier-detail-summary{width:340px!important;flex-basis:340px!important;}
.supplier-detail-meta-card-expanded{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.supplier-detail-meta-card-expanded strong{font-size:12px!important;font-weight:900!important;}
.supplier-approval-table-enhanced col.approval-col-product{width:25%;}
.supplier-approval-table-enhanced col.approval-col-qty{width:6%;}
.supplier-approval-table-enhanced col.approval-col-cost{width:8%;}
.supplier-approval-table-enhanced col.approval-col-retail{width:8%;}
.supplier-approval-table-enhanced col.approval-col-sale{width:8%;}
.supplier-approval-table-enhanced col.approval-col-catalog{width:12%;}
.supplier-approval-table-enhanced col.approval-col-approved-qty{width:7%;}
.supplier-approval-table-enhanced col.approval-col-approved-cost{width:8%;}
.supplier-approval-table-enhanced col.approval-col-total{width:10%;}
.supplier-approval-table-enhanced col.approval-col-stock{width:5%;}
.supplier-approval-product-with-image{flex-direction:row!important;align-items:center;gap:8px;}
.supplier-approval-product-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px;}
.supplier-approval-product-copy strong{font-size:12px!important;font-weight:900!important;}
.supplier-qty-strong{font-size:13px!important;font-weight:950!important;color:var(--text)!important;}
.supplier-preview-totals-row td{background:var(--surface2)!important;border-top:2px solid var(--border)!important;font-size:12px!important;height:42px;}
.supplier-summary-card-large{padding:16px!important;}
.supplier-summary-card-large .supplier-summary-card-title{font-size:14px!important;margin-bottom:12px;}
.supplier-summary-card-large .supplier-summary-row{font-size:12px!important;padding:9px 0!important;}
.supplier-summary-card-large .supplier-summary-row strong{font-size:14px!important;font-weight:950!important;}
.supplier-summary-card-large .supplier-summary-row.discount strong{color:var(--danger);}
.supplier-summary-card-large .supplier-summary-row.profit strong{color:var(--accent2);font-size:16px!important;}
.supplier-summary-card-large .supplier-summary-total strong{font-size:22px!important;}

@media (max-width:1200px){
  .supplier-detail-layout{overflow:auto!important;}
  .supplier-detail-main{min-width:920px;}
  .supplier-detail-summary{min-width:300px!important;}
  .supplier-entry-row.pos-detail-scan-row{grid-template-columns:165px 250px 58px 86px 72px 70px 70px 72px 112px 104px 80px!important;}
}

/* ─── v1.0.7 supplier invoice scan/results hotfix ─────────────────────── */
.supplier-scan-portal{
  position:fixed!important;
  z-index:65000!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  max-width:calc(100vw - 24px)!important;
}
.supplier-scan-option{
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center!important;
  gap:10px!important;
  min-height:58px;
  padding:7px 10px!important;
}
.supplier-scan-option-copy{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.supplier-scan-option-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.supplier-scan-option-copy span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text-muted);
  font-size:9px;
}
.supplier-invoice-table-wrap{position:relative;z-index:1;}
.supplier-product-cell-with-image{
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
}
.supplier-product-cell-with-image>.supplier-product-thumb{
  flex:0 0 52px!important;
  align-self:center!important;
}
.supplier-product-cell-with-image>.supplier-product-edit-stack{
  flex:1 1 auto!important;
  min-width:0!important;
}
.supplier-product-cell-with-image .supplier-product-name-input{
  width:100%!important;
}


/* v1.0.7 focused POS/supplier polish */
/* POS has no product image or hover preview; keep product names full-width. */
.pos-cart-table .cart-name-cell > .name-input{
  width:100%!important;
  min-width:0!important;
}
.pos-cart-table .locked-price-cell{
  align-items:flex-end!important;
  justify-content:center!important;
  gap:3px!important;
}
.pos-cart-table .pos-sale-price{
  font-size:14px!important;
  line-height:1.1!important;
  font-weight:950!important;
  color:var(--text)!important;
}
.pos-cart-table .fixed-saving{
  display:block!important;
  font-size:9px!important;
  line-height:1.1!important;
  font-weight:850!important;
  color:var(--success, #16a34a)!important;
  white-space:nowrap!important;
}

/* Supplier codes must be readable, dark and visually important. */
.supplier-product-code-grid > span,
.supplier-product-meta-label{
  color:var(--text)!important;
  font-weight:950!important;
  opacity:.9!important;
}
.supplier-product-code-input,
.supplier-approval-barcode,
.supplier-product-code-grid .cell-input{
  color:var(--text)!important;
  font-weight:850!important;
  opacity:1!important;
  background:var(--surface)!important;
}
.supplier-approval-product-copy small,
.supplier-approval-product-copy small b,
.supplier-product-edit-stack small,
.supplier-product-cell small{
  color:var(--text)!important;
  font-weight:800!important;
  opacity:.92!important;
}

/* Portal-mounted supplier preview must beat every modal/header/scroll layer. */
.supplier-product-image-hover-preview{
  z-index:2147483000!important;
  isolation:isolate!important;
  pointer-events:auto!important;
}

/* Supplier invoice hover image belongs on the LEFT, beside the product-image side. */
.product-image-hover-preview.supplier-product-image-hover-preview,
.supplier-product-image-hover-preview{
  left:24px!important;
  right:auto!important;
  top:90px!important;
  z-index:2147483647!important;
  transform:none!important;
}

/* Keep supplier barcode/internal-code text strong in every invoice state. */
.supplier-product-code-grid > span,
.supplier-product-meta-label,
.supplier-approval-product-copy small,
.supplier-approval-product-copy small b{
  color:var(--text)!important;
  font-weight:900!important;
  opacity:1!important;
}
.supplier-product-code-input,
.supplier-approval-barcode,
.supplier-product-code-grid .cell-input{
  color:var(--text)!important;
  -webkit-text-fill-color:var(--text)!important;
  font-weight:900!important;
  opacity:1!important;
}

/* f102 supplier invoice pagination + fixed tax amount */
.supplier-invoice-pagination{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:7px 10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface);
  color:var(--text-muted);
  font-size:10px;
  box-shadow:var(--shadow-soft);
}
.supplier-invoice-pagination-actions{
  display:flex;
  align-items:center;
  gap:9px;
}
.supplier-invoice-pagination-actions strong{
  min-width:92px;
  text-align:center;
  color:var(--text);
  font-size:10px;
}
.supplier-invoice-pagination-actions .btn{
  min-height:32px!important;
  height:32px!important;
  padding-inline:11px!important;
}
.supplier-invoice-meta-card{
  grid-template-columns:minmax(210px,.8fr) minmax(190px,.7fr) minmax(130px,.45fr) minmax(240px,1.2fr);
}
.supplier-tax-field .form-input{
  font-weight:850;
  color:var(--accent);
}
.supplier-subtotal-row td,
.supplier-tax-total-row td{
  height:34px!important;
  background:var(--surface);
}
.supplier-tax-total-row td:nth-last-child(2){
  color:var(--text);
  font-weight:850;
}

@media (max-width:1000px){
  .supplier-invoice-meta-card{grid-template-columns:1fr 1fr;}
  .supplier-invoice-pagination{align-items:flex-start;flex-direction:column;}
  .supplier-invoice-pagination-actions{width:100%;justify-content:space-between;}
}
.pos-toolbar .pos-tool-btn.btn-danger:not(:disabled) {
  background: var(--danger) !important;
  color: #fff !important;
  border-color: var(--danger) !important;
}
.pos-toolbar .pos-tool-btn.btn-danger .shortcut-hint{
  color: #fff !important;
}
.pos-toolbar .pos-tool-btn.btn-danger:not(:disabled):hover {
  filter: brightness(0.92);
}
/* v34 supplier returns, summary adjustments, and expired inventory */
.supplier-invoice-content-layout{
  flex:1;
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  gap:10px;
  align-items:stretch;
}
.supplier-invoice-content-layout .supplier-invoice-table-wrap{min-height:0;}
.supplier-entry-summary{min-width:0;overflow:auto;}
.supplier-entry-summary .supplier-summary-card{position:sticky;top:0;}
.supplier-summary-input-field{margin:8px 0;}
.supplier-summary-input-field label{font-size:10px;font-weight:800;text-transform:uppercase;color:var(--text-muted);}
.supplier-return-row{background:rgba(239,68,68,.055)!important;}
.supplier-return-row:hover{background:rgba(239,68,68,.09)!important;}
.supplier-return-badge{
  display:inline-flex;
  width:max-content;
  margin-bottom:3px;
  padding:2px 6px;
  border-radius:999px;
  background:rgba(239,68,68,.12);
  color:var(--danger);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.supplier-return-summary,.supplier-returns-total-row{color:var(--danger);}
.supplier-discount-total-row{color:var(--warn);}
.supplier-return-help{display:block;margin-top:10px;line-height:1.4;}
.inventory-expired-filter-btn{white-space:nowrap;}
.inventory-expired-qty{
  display:block;
  margin-top:2px;
  color:var(--danger);
  font-size:9px;
  font-weight:900;
  line-height:1.1;
}
@media(max-width:1180px){
  .supplier-invoice-content-layout{grid-template-columns:minmax(0,1fr) 230px;}
}
@media(max-width:900px){
  .supplier-invoice-content-layout{display:flex;flex-direction:column;overflow:auto;}
  .supplier-entry-summary{overflow:visible;}
  .supplier-entry-summary .supplier-summary-card{position:static;}
}

/* v36 supplier line tax, full-width edit table, and expired supplier returns */
.supplier-invoice-content-layout{
  display:block;
  width:100%;
  min-height:0;
}
.supplier-invoice-content-layout .supplier-invoice-table-wrap{width:100%;min-height:0;}
.supplier-entry-row.pos-detail-scan-row{
  grid-template-columns:180px minmax(230px,1fr) 62px 90px 78px 76px 76px 70px 78px 132px 122px 82px!important;
}
.supplier-line-col-index{width:3%;}
.supplier-line-col-product{width:22%;}
.supplier-line-col-qty{width:5.5%;}
.supplier-line-col-money{width:7%;}
.supplier-line-col-tax{width:5.5%;}
.supplier-line-col-category{width:9%;}
.supplier-line-col-expiry{width:9%;}
.supplier-line-col-total{width:10%;}
.supplier-line-col-action{width:3.5%;}
.supplier-line-tax-input{
  width:100%!important;
  min-width:0!important;
  height:30px!important;
  padding:0 5px!important;
  font-size:10px!important;
}
.supplier-line-total{display:table-cell!important;}
.supplier-line-total>span{display:block;white-space:nowrap;}
.supplier-line-total>small{
  display:block;
  margin-top:3px;
  color:var(--text-muted);
  font-size:7.5px;
  font-weight:750;
  white-space:normal;
  line-height:1.25;
}
.supplier-footer-input{
  width:100%!important;
  min-width:96px;
  height:32px!important;
  padding:0 8px!important;
  font-weight:900;
}
.supplier-item-tax-total-row{color:var(--accent);}
.supplier-additional-tax-total-row{color:var(--text);}
.supplier-return-help-row td{padding:7px 10px!important;font-size:9px!important;line-height:1.35;}

.supplier-expired-items-card{
  margin:0 0 8px;
  border:1px solid color-mix(in srgb,var(--danger) 24%,var(--border));
  border-radius:11px;
  background:color-mix(in srgb,var(--danger) 4%,var(--surface));
  overflow:hidden;
}
.supplier-expired-items-header{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 12px;
  border-bottom:1px solid var(--border);
}
.supplier-expired-items-header>div{min-width:0;display:flex;flex-direction:column;gap:2px;}
.supplier-expired-items-header strong{font-size:11px;font-weight:950;color:var(--danger);}
.supplier-expired-items-header small{font-size:9px;color:var(--text-muted);}
.supplier-expired-items-header>span{
  flex:0 0 auto;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(239,68,68,.1);
  color:var(--danger);
  font-size:9px;
  font-weight:900;
}
.supplier-expired-items-list{
  display:flex;
  gap:7px;
  padding:8px;
  overflow-x:auto;
  scrollbar-width:thin;
}
.supplier-expired-item{
  min-width:330px;
  max-width:410px;
  flex:0 0 auto;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 58px auto;
  align-items:center;
  gap:8px;
  padding:7px;
  border:1px solid var(--border);
  border-radius:9px;
  background:var(--surface);
}
.supplier-expired-item-copy{min-width:0;display:flex;flex-direction:column;gap:3px;}
.supplier-expired-item-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:900;}
.supplier-expired-item-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;color:var(--text-muted);}
.supplier-expired-item-qty{display:flex;flex-direction:column;align-items:flex-end;gap:1px;}
.supplier-expired-item-qty small{font-size:7px;color:var(--text-muted);text-transform:uppercase;font-weight:850;}
.supplier-expired-item-qty strong{font-size:13px;color:var(--danger);}
.supplier-expired-add-btn{min-width:78px!important;height:31px!important;padding:0 8px!important;font-size:9px!important;}
.supplier-expired-empty{padding:9px 12px;color:var(--text-muted);font-size:9px;}

@media(max-width:1180px){
  .supplier-invoice-content-layout{display:block;}
  .supplier-line-col-product{width:24%;}
  .supplier-line-col-category{width:8%;}
  .supplier-line-col-expiry{width:8%;}
}

/* v1.2.0 electronics masters, serialized units and installment workspace */
.electronics-masters-modal{width:min(1120px,96vw);max-height:92vh}.electronics-master-tabs{display:flex;gap:6px;padding:10px 16px;border-bottom:1px solid var(--border);overflow:auto}.electronics-master-tabs button{border:1px solid var(--border);background:var(--surface2);color:var(--text);padding:7px 12px;border-radius:8px;font-weight:700;white-space:nowrap;cursor:pointer}.electronics-master-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff}.electronics-masters-body{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(380px,1.25fr);gap:16px;min-height:480px}.electronics-master-form,.electronics-master-list{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--surface2)}.electronics-master-form h3{margin:0 0 12px}.electronics-master-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.electronics-master-list{display:flex;flex-direction:column;min-height:0}.electronics-master-list-scroll{overflow:auto;margin-top:10px;display:flex;flex-direction:column;gap:7px}.electronics-master-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.electronics-master-row strong,.electronics-master-row small{display:block}.electronics-master-row small{margin-top:2px;color:var(--text-muted)}.electronics-master-row>div:last-child{display:flex;gap:5px}.electronics-section-title{display:flex!important;justify-content:space-between;align-items:center}.electronics-section-title>span{display:flex;align-items:center;gap:6px}.electronics-spec-card,.electronics-serialized-card{border:1px solid var(--border);border-radius:12px;background:var(--surface2);padding:13px;margin-bottom:14px}.electronics-spec-heading{font-weight:800;margin-bottom:10px}.electronics-serialized-toggle{display:flex;align-items:center;gap:9px;font-weight:800;font-size:15px}.serialized-units-editor{margin-top:12px}.serialized-units-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.serialized-units-head strong,.serialized-units-head small{display:block}.serialized-units-head small{color:var(--text-muted);font-weight:400;margin-top:2px}.serialized-units-empty{width:100%;padding:18px;border:1px dashed var(--accent);border-radius:10px;background:rgba(2,132,199,.06);color:var(--accent);font-weight:800;cursor:pointer}.serialized-units-list{display:flex;flex-direction:column;gap:9px}.serialized-unit-card{position:relative;border:1px solid var(--border);border-radius:11px;padding:12px;background:var(--surface)}.serialized-unit-number{font-size:11px;text-transform:uppercase;letter-spacing:.4px;font-weight:900;color:var(--text-muted);margin-bottom:8px}.serialized-unit-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:9px;align-items:end}.input-error{border-color:var(--danger)!important;box-shadow:0 0 0 2px rgba(239,68,68,.1)!important}
.installments-screen{padding:16px;overflow:auto}.installments-topbar{margin-bottom:14px}.installments-topbar h2{margin:0;display:flex;align-items:center;gap:8px}.installment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.installment-summary-card{padding:14px}.installment-summary-card>div{font-size:11px;text-transform:uppercase;font-weight:800;color:var(--text-muted)}.installment-summary-card>strong{display:block;font-size:20px;margin-top:6px}.danger{color:var(--danger)!important}.installment-filters{padding:12px;margin-bottom:12px;display:grid;grid-template-columns:1fr 210px;gap:10px;align-items:end}.installment-contract-table-wrap{overflow:auto}.contract-status{font-size:11px;letter-spacing:.25px}.contract-status.paid{color:var(--accent2)}.contract-status.overdue{color:var(--danger)}.contract-status.active,.contract-status.pending,.contract-status.partial{color:var(--warn)}.installment-contract-modal{width:min(1180px,97vw);max-height:94vh}.installment-contract-body{overflow:auto}.contract-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.contract-kpi-grid>div{padding:11px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.contract-kpi-grid span,.contract-kpi-grid strong{display:block}.contract-kpi-grid span{font-size:10px;color:var(--text-muted);font-weight:800;text-transform:uppercase}.contract-kpi-grid strong{margin-top:5px}.contract-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contract-panel{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);margin-bottom:12px;overflow:auto}.contract-panel h3{margin:0 0 9px;font-size:14px}.contract-note{margin-top:9px;padding:9px;background:var(--surface2);border-radius:8px;white-space:pre-wrap}.guarantor-chip{padding:8px;border-bottom:1px solid var(--border)}.guarantor-chip:last-child{border-bottom:0}.guarantor-chip small,.contract-panel td small{display:block;color:var(--text-muted);margin-top:2px}.num{text-align:right}.contract-collection-box{border:2px solid var(--accent);border-radius:12px;padding:14px;background:rgba(2,132,199,.05)}.contract-collection-box h3{margin:0 0 12px}.collection-total{display:flex;justify-content:space-between;font-size:18px;padding:12px 0}.collection-actions{display:flex;justify-content:flex-end;gap:8px}.invoice-field-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.invoice-field-toggle{display:flex;align-items:center;gap:8px;border:1px solid var(--border);padding:9px;border-radius:8px;background:var(--surface2);font-weight:700;cursor:pointer}.invoice-field-toggle input{width:17px;height:17px}
@media(max-width:900px){.electronics-masters-body{grid-template-columns:1fr}.serialized-unit-grid{grid-template-columns:1fr 1fr}.installment-summary-grid,.contract-kpi-grid{grid-template-columns:1fr 1fr}.installment-filters,.contract-columns{grid-template-columns:1fr}}


/* v1.2.0 performance/cosmetic refinement: installment plan and contract */
.installment-plan-modal{width:min(980px,96vw);max-height:94vh;display:flex;flex-direction:column}
.installment-plan-body{overflow:auto;padding-bottom:16px}
.installment-plan-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.installment-guarantor-picker{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.installment-guarantor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
.installment-guarantor-head strong,.installment-guarantor-head small{display:block}
.installment-guarantor-head small{margin-top:3px;color:var(--text-muted);font-weight:500}
.installment-guarantor-head>span{flex:0 0 auto;padding:5px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--border);font-size:11px;font-weight:800;color:var(--text-muted)}
.selected-guarantors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.selected-guarantor-chip{display:flex;align-items:center;gap:7px;min-width:210px;max-width:100%;padding:7px 8px;border:1px solid rgba(2,132,199,.35);border-radius:10px;background:rgba(2,132,199,.08)}
.selected-guarantor-main{min-width:0;flex:1;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;padding:0}
.selected-guarantor-main b,.selected-guarantor-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.selected-guarantor-main small{font-size:10px;color:var(--text-muted);margin-top:2px}
.selected-guarantor-chip em,.guarantor-option em{font-style:normal;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.35px;color:var(--accent);background:var(--surface);border:1px solid rgba(2,132,199,.3);border-radius:999px;padding:3px 6px}
.selected-guarantor-remove{width:25px;height:25px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--text-muted);cursor:pointer}
.selected-guarantor-remove:hover{background:rgba(239,68,68,.12);color:var(--danger)}
.guarantor-search{margin-bottom:9px}
.installment-guarantor-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:210px;overflow:auto;padding:1px}
.guarantor-option{display:flex;align-items:center;gap:9px;width:100%;min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:9px 10px;text-align:left;cursor:pointer}
.guarantor-option:hover{border-color:rgba(2,132,199,.45);background:rgba(2,132,199,.05)}
.guarantor-option.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:rgba(2,132,199,.08)}
.guarantor-check{flex:0 0 19px;width:19px;height:19px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;font-size:12px;font-weight:900;color:#fff}
.guarantor-option.selected .guarantor-check{background:var(--accent);border-color:var(--accent)}
.guarantor-copy{min-width:0;flex:1}
.guarantor-copy b,.guarantor-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guarantor-copy small{font-size:10px;color:var(--text-muted);margin-top:2px}
.installment-plan-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}
.installment-plan-summary>div{padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}
.installment-plan-summary span,.installment-plan-summary strong{display:block}
.installment-plan-summary span{font-size:10px;color:var(--text-muted);font-weight:800;text-transform:uppercase}
.installment-plan-summary strong{font-size:16px;margin-top:5px}
.installment-contract-overlay{padding:0!important;align-items:stretch!important;justify-content:stretch!important;background:var(--bg)!important;backdrop-filter:none!important}
.installment-contract-modal{width:100vw!important;max-width:none!important;height:100vh!important;max-height:none!important;border-radius:0!important;border:0!important;display:flex!important;flex-direction:column!important}
.installment-contract-modal>.modal-header,.installment-contract-modal>.modal-footer{flex:0 0 auto}
.installment-contract-body{flex:1 1 auto;min-height:0;overflow:auto;padding:18px 22px}
@media(max-width:760px){.installment-plan-fields,.installment-guarantor-list,.installment-plan-summary{grid-template-columns:1fr}.selected-guarantor-chip{min-width:100%}.installment-contract-body{padding:12px}.contract-kpi-grid{grid-template-columns:1fr 1fr}}

/* Dedicated title-area appearance switch. It stays beside the user/window area
   instead of being buried inside the account dropdown. */
.title-theme-toggle{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid transparent;
  border-radius:8px;
  background:transparent;
  color:var(--text-muted);
  cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.title-theme-toggle:hover,
.title-theme-toggle:focus-visible{
  color:var(--text);
  background:var(--surface2);
  border-color:var(--border);
  outline:none;
}
[data-theme="dark"] .title-theme-toggle{
  color:#f8fafc;
}
html[dir="rtl"] .title-theme-toggle{
  transform:none;
}

/* v1.2.0 final HR attendance cards, time ledger and finance workspace */
.hr-staff-avatar{overflow:hidden;background:linear-gradient(145deg,rgba(14,116,185,.18),rgba(34,197,94,.12));border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));display:flex;align-items:center;justify-content:center;color:var(--accent);font-weight:900;box-shadow:0 5px 15px rgba(15,23,42,.08)}
.hr-staff-avatar img{width:100%;height:100%;object-fit:cover}.hr-staff-avatar span{font-size:.42em}
.hr-staff-cell{display:flex;align-items:center;gap:10px;min-width:0}.hr-staff-cell>div:last-child{min-width:0}.hr-staff-cell b,.hr-staff-cell small{display:block}.hr-staff-cell small{color:var(--text-muted);font-size:10px;margin-top:2px}.hr-staff-cell button{display:block;border:0;background:none;color:var(--accent);padding:2px 0;font-size:10px;font-weight:700;cursor:pointer;text-align:left}
.hr-profile-editor{flex:1;overflow:auto;padding:20px 24px 28px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,var(--bg)),var(--bg) 210px)}
.hr-profile-hero{max-width:1120px;margin:0 auto 16px;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 12px 32px rgba(15,23,42,.07)}
.hr-profile-hero-copy{min-width:0;flex:1}.hr-profile-hero-copy h2{margin:0 0 4px;font-size:20px}.hr-profile-hero-copy>div{color:var(--text-muted);font-size:13px}.hr-profile-hero-copy small{display:block;margin-top:6px;color:var(--accent);font-weight:700}.hr-profile-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.hr-profile-form-grid{max-width:1120px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hr-profile-footer{max-width:1120px;margin:16px auto 0;display:flex;justify-content:flex-end;gap:9px}.hr-shift-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hr-auto-fraction-toggle{display:flex;gap:10px;padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);cursor:pointer}.hr-auto-fraction-toggle input{width:18px;height:18px;margin-top:2px}.hr-auto-fraction-toggle span,.hr-auto-fraction-toggle b,.hr-auto-fraction-toggle small{display:block}.hr-auto-fraction-toggle small{font-weight:400;color:var(--text-muted);margin-top:3px;line-height:1.35}.hr-attendance-code-box{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));border:1px dashed color-mix(in srgb,var(--accent) 40%,var(--border));font-size:11px}.hr-attendance-code-box span{color:var(--text-muted);text-transform:uppercase;font-weight:800}.hr-card-ready{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(34,197,94,.11);color:var(--accent2);font-size:10px;font-weight:800}
.hr-attendance-workspace{flex:1;display:flex;min-height:0;overflow:hidden;background:var(--bg)}.hr-attendance-main{flex:1;min-width:0;display:flex;flex-direction:column}.hr-attendance-toolbar{padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hr-month-title{font-size:14px;font-weight:800;min-width:132px;text-align:center}.hr-bulk-attendance{margin-left:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hr-bulk-attendance>span{font-size:11px;color:var(--text-muted);font-weight:700}.hr-bulk-attendance .form-input{width:138px}.hr-bulk-attendance .form-select{width:130px}
.hr-attendance-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:7px 14px;border-bottom:1px solid var(--border);background:var(--surface2)}.hr-attendance-legend>div{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-muted)}.hr-attendance-legend>small{margin-left:auto;color:var(--text-muted)}.hr-leave-cell{width:16px;height:16px;border-radius:4px;background:rgba(79,158,248,.18);color:var(--accent);display:grid;place-items:center;font-size:9px;font-weight:900}
.hr-attendance-grid-wrap{flex:1;overflow:auto}.hr-attendance-grid{border-collapse:collapse;font-size:12px}.hr-attendance-grid th,.hr-attendance-grid td{border-bottom:1px solid var(--border)}.hr-attendance-grid thead th{position:sticky;top:0;z-index:5;background:var(--surface);padding:5px 2px;min-width:32px;text-align:center}.hr-attendance-grid thead th small,.hr-attendance-grid thead th b{display:block}.hr-attendance-grid thead th small{font-size:9px;color:var(--text-muted)}.hr-attendance-grid .today{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}.hr-attendance-grid td{padding:2px;text-align:center}.hr-sticky-staff{position:sticky!important;left:0!important;z-index:6!important;background:var(--surface)!important;min-width:190px!important;text-align:left!important;padding:6px 10px!important;border-right:1px solid var(--border)}.hr-sticky-summary{position:sticky!important;right:0!important;z-index:6!important;background:var(--surface)!important;min-width:112px!important;border-left:1px solid var(--border)}.hr-sticky-summary>*{display:block}.hr-sticky-summary>b{color:var(--accent2);font-size:12px}.hr-sticky-summary span{font-size:9px;margin-top:1px}.hr-sticky-summary small{font-size:9px;color:var(--text-muted);margin-top:2px}.hr-future-cell{width:28px;height:28px;margin:auto;border-radius:5px;background:var(--surface2);opacity:.35}
.hr-time-ledger{width:min(420px,38vw);min-width:340px;border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;box-shadow:-15px 0 30px rgba(15,23,42,.08);z-index:10}.hr-time-ledger-head{padding:14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 12%,var(--surface)),var(--surface))}.hr-time-ledger-head h3{margin:0;font-size:15px}.hr-time-ledger-body{flex:1;overflow:auto;padding:12px}.hr-ledger-day{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:10px}.hr-ledger-day>header{display:flex;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--surface2)}.hr-ledger-day>header div:last-child{text-align:right}.hr-ledger-day header b,.hr-ledger-day header small{display:block}.hr-ledger-day header small{font-size:9px;color:var(--text-muted);margin-top:2px}.hr-ledger-session{display:grid;grid-template-columns:24px 1fr 1fr auto;gap:8px;align-items:center;padding:9px 11px;border-top:1px solid var(--border)}.hr-ledger-session>span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-size:9px;font-weight:900}.hr-ledger-session b,.hr-ledger-session small{display:block}.hr-ledger-session b{font-size:10px}.hr-ledger-session small{font-size:8px;color:var(--text-muted);margin-top:2px}.hr-ledger-session>strong{font-size:10px;color:var(--accent2)}

.installments-screen{background:radial-gradient(circle at 15% 0,color-mix(in srgb,var(--accent) 9%,transparent),transparent 32%),var(--bg)}
.installments-topbar{padding:14px 18px!important;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 12%,var(--surface)),var(--surface));box-shadow:0 12px 30px rgba(15,23,42,.07)}.installments-title-mark{display:flex;align-items:center;gap:12px}.installments-title-mark>span{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#155eaa);color:#fff;box-shadow:0 10px 20px rgba(14,116,185,.25)}.installments-title-mark h2{font-size:20px!important}.installments-title-mark div div{font-size:11px;color:var(--text-muted);margin-top:3px}
.installment-summary-card{position:relative;overflow:hidden;border-radius:14px!important;border-color:color-mix(in srgb,var(--accent) 15%,var(--border))!important;box-shadow:0 9px 22px rgba(15,23,42,.055)}.installment-summary-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}.installment-summary-card:nth-child(2):before{background:#7c3aed}.installment-summary-card:nth-child(3):before{background:#0f9f68}.installment-summary-card:nth-child(4):before{background:#dc4c4c}.installment-contract-table-wrap{border-radius:14px!important;box-shadow:0 12px 30px rgba(15,23,42,.055)}.installment-contract-table-wrap tbody tr{transition:background .15s,transform .15s}.installment-contract-table-wrap tbody tr:hover{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
.contract-view-header{flex:0 0 auto;min-height:76px;padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#0b355e,#0d6fb8 58%,#0c8e82);color:#fff}.contract-view-title{display:flex;align-items:center;gap:12px}.contract-view-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22)}.contract-view-title small,.contract-view-title strong,.contract-view-title div{display:block}.contract-view-title small{font-size:9px;letter-spacing:1.1px;opacity:.75}.contract-view-title strong{font-size:20px;margin:2px 0}.contract-view-title div{font-size:11px;opacity:.8}.contract-view-header-actions{display:flex;align-items:center;gap:12px}.contract-view-header .contract-status{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.15);color:#fff!important}.contract-view-header .drawer-close{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08)}
.contract-hero{display:grid;grid-template-columns:auto minmax(220px,1.3fr) minmax(180px,.7fr) minmax(240px,1fr);gap:14px;align-items:center;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 9%,var(--surface)),var(--surface));margin-bottom:14px;box-shadow:0 10px 26px rgba(15,23,42,.055)}.contract-customer-avatar,.contract-mini-avatar{display:grid;place-items:center;font-weight:900;color:#fff;background:linear-gradient(145deg,var(--accent),#0c8e82)}.contract-customer-avatar{width:58px;height:58px;border-radius:18px;font-size:18px}.contract-hero-customer small,.contract-hero-due small{font-size:9px;color:var(--text-muted);font-weight:900;letter-spacing:.7px}.contract-hero-customer h2{font-size:18px;margin:3px 0}.contract-hero-customer div{font-size:11px;color:var(--text-muted)}.contract-hero-due strong,.contract-hero-due span{display:block}.contract-hero-due strong{font-size:19px;color:var(--accent)}.contract-hero-due span{font-size:10px;color:var(--text-muted);margin-top:3px}.contract-progress>div:first-child{display:flex;justify-content:space-between;font-size:10px;font-weight:800}.contract-progress-track{height:8px;border-radius:999px;background:var(--surface2);overflow:hidden;margin:7px 0}.contract-progress-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .25s}.contract-progress>small{font-size:9px;color:var(--text-muted)}
.contract-kpi-grid>div{border-radius:12px!important;position:relative;overflow:hidden}.contract-kpi-grid>div:nth-child(6){border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 5%,var(--surface))}.contract-panel{border-radius:14px!important;box-shadow:0 7px 18px rgba(15,23,42,.035)}.contract-panel h3{display:flex;align-items:center;gap:7px}.contract-panel h3>span,.contract-section-number{width:25px;height:25px;border-radius:8px;display:inline-grid;place-items:center;background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent);font-size:9px;font-weight:900}.contract-identity-card,.guarantor-card{display:flex;align-items:flex-start;gap:10px}.contract-mini-avatar{width:38px;height:38px;min-width:38px;border-radius:12px}.contract-identity-card b,.contract-identity-card small,.contract-identity-card p,.guarantor-card b,.guarantor-card small,.guarantor-card p{display:block;margin:0}.contract-identity-card small,.guarantor-card small{font-size:10px;color:var(--text-muted);margin-top:2px}.contract-identity-card p,.guarantor-card p{font-size:10px;color:var(--text-muted);margin-top:5px}.contract-note>div{display:flex;justify-content:space-between;gap:10px}.contract-note span{color:var(--text-muted);font-size:10px}.contract-note p{margin:8px 0 0;font-size:11px;line-height:1.45}.guarantor-card{padding:10px;border:1px solid var(--border);border-radius:11px;margin-bottom:8px;background:var(--surface2);position:relative}.guarantor-card.primary{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.guarantor-card>div:nth-child(2){flex:1}.guarantor-card em{font-style:normal;font-size:8px;margin-left:6px;padding:2px 6px;border-radius:99px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.guarantor-card>span{font-size:9px;color:var(--text-muted);font-weight:900}.contract-empty-state{padding:24px;text-align:center;border:1px dashed var(--border);border-radius:10px;color:var(--text-muted);font-size:11px}
@media(max-width:980px){.hr-profile-form-grid{grid-template-columns:1fr}.hr-profile-hero{align-items:flex-start;flex-wrap:wrap}.hr-profile-card-actions{width:100%;justify-content:flex-start}.hr-time-ledger{position:absolute;right:0;top:0;bottom:0;width:min(420px,92vw)}.contract-hero{grid-template-columns:auto 1fr}.contract-hero-due,.contract-progress{grid-column:1/-1}.contract-columns{grid-template-columns:1fr}}

/* Customer/document photos — final profile + contract visibility pass */
.customer-profile-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 5%,var(--surface)),var(--surface))}
.customer-profile-heading{min-width:0;flex:1}.customer-profile-heading h2{font-size:20px;font-weight:800;margin:3px 0 6px}.customer-profile-meta{font-size:12px;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:7px 14px}.customer-profile-meta span{display:inline-flex;align-items:center;gap:4px}.customer-profile-edit{margin-left:auto}
img.contract-customer-avatar,img.contract-mini-avatar{display:block!important;object-fit:cover!important;background:var(--surface2)!important;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));overflow:hidden}
.contract-customer-avatar{flex:0 0 58px}.contract-mini-avatar{flex:0 0 38px}
@media(max-width:900px){.customer-profile-header{flex-wrap:wrap}.customer-profile-edit{margin-left:0}.contract-hero{grid-template-columns:auto 1fr!important}.contract-hero-due,.contract-progress{grid-column:1/-1}}


/* Store branding uses the persisted AppData image through a renderer-safe data URL. */
.brand-mark .store-header-logo{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  object-fit:cover;
  display:block;
  border-radius:inherit;
}
.settings-store-logo-preview{
  display:block;
  width:180px;
  max-width:100%;
  height:72px;
  object-fit:contain;
  margin-top:8px;
  border:1px solid var(--border);
  border-radius:8px;
  padding:6px;
  background:#fff;
}


/* Final settings sign-off: keep store branding in a dedicated compact column
   so the logo preview cannot stretch unrelated form rows. */
.settings-shop-information-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 210px;
  gap:18px;
  align-items:start;
}
.settings-shop-information-fields{
  min-width:0;
}
.settings-store-logo-column{
  min-width:0;
  align-self:stretch;
  display:flex;
  flex-direction:column;
  gap:9px;
}
.settings-store-logo-box{
  width:100%;
  aspect-ratio:1.45/1;
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px dashed var(--border);
  border-radius:12px;
  background:var(--surface2);
}
.settings-store-logo-column .settings-store-logo-preview{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  margin:0;
  border:0;
  border-radius:0;
  object-fit:contain;
  background:transparent;
}
.settings-store-logo-empty{
  padding:14px;
  text-align:center;
  color:var(--text-muted);
  font-size:12px;
  font-weight:700;
}
.settings-store-logo-column .btn{
  width:100%;
  justify-content:center;
}
@media (max-width:900px){
  .settings-shop-information-layout{grid-template-columns:1fr}
  .settings-store-logo-column{max-width:280px}
}

/* v1.3.0 attendance reports, manual movement controls and payroll working days */
.hr-working-days-field{display:grid;grid-template-columns:auto 72px;grid-template-rows:auto auto;column-gap:7px;align-items:center;padding:4px 8px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
.hr-working-days-field>span{font-size:10px;font-weight:800;color:var(--text)}
.hr-working-days-field>.form-input{width:72px;grid-column:2;grid-row:1/3;height:30px;padding:4px 7px;text-align:center}
.hr-working-days-field>small{font-size:8px;color:var(--text-muted)}
.hr-report-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.hr-report-actions .form-input{width:138px}
.hr-manual-attendance{padding:9px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 4%,var(--surface));display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.hr-manual-attendance-title{min-width:220px;margin-right:auto}
.hr-manual-attendance-title b,.hr-manual-attendance-title span{display:block}
.hr-manual-attendance-title b{font-size:11px}
.hr-manual-attendance-title span{font-size:9px;color:var(--text-muted);margin-top:2px}
.hr-manual-attendance>.form-select{width:190px}
.hr-time-ledger-actions{display:flex;align-items:center;gap:6px}
.hr-time-ledger-actions .btn{font-size:10px;padding:5px 9px}
@media(max-width:1100px){.hr-bulk-attendance{margin-left:0}.hr-manual-attendance-title{width:100%;margin-right:0}.hr-report-actions{width:100%}}


/* MERGED fullcloud.css: do not split on Hostinger */
html,body,#app{height:100%;margin:0}body{overflow:hidden;background:var(--bg);color:var(--text)}
.cloud-app{height:100vh}.cloud-main{height:calc(100vh - 55px);overflow:hidden}.cloud-screen{height:100%;display:flex;flex-direction:column;background:var(--bg)}
.cloud-screen-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;border-bottom:1px solid var(--border);background:var(--surface)}.cloud-screen-heading h2{margin:0;font-size:20px}.cloud-screen-heading p{margin:4px 0 0;color:var(--text-muted);font-size:12px}.cloud-screen-body{flex:1;overflow:auto;padding:14px 16px 24px}.cloud-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:9px 16px;background:var(--surface2);border-bottom:1px solid var(--border)}.cloud-toolbar .form-select{width:auto;min-width:190px}.cloud-toolbar .form-input{width:auto}.cloud-search{position:relative;display:flex;align-items:center}.cloud-search svg{position:absolute;left:10px;pointer-events:none;color:var(--text-muted)}.cloud-search input{padding-left:32px!important;min-width:260px}.cloud-readonly{margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:11px;font-weight:700;background:var(--surface);border:1px solid var(--border);padding:5px 9px;border-radius:999px}.cloud-header-branch{max-width:220px;min-width:150px;padding:6px 30px 6px 9px!important;font-size:12px}
.cloud-stats-grid{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;margin-bottom:14px}.cloud-stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px;box-shadow:var(--shadow-sm)}.cloud-stat.accent{border-top:3px solid var(--accent)}.cloud-stat.success{border-top:3px solid var(--accent2)}.cloud-stat.warning{border-top:3px solid var(--warn)}.cloud-stat.danger{border-top:3px solid var(--danger)}.cloud-stat-label{font-size:11px;color:var(--text-muted);margin-bottom:7px}.cloud-stat-value{font-size:20px;font-weight:800;overflow-wrap:anywhere}.cloud-stat-note{font-size:10px;color:var(--text-muted);margin-top:5px}
.cloud-card{padding:0;overflow:hidden;margin-bottom:14px}.cloud-card-title{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid var(--border);font-weight:800;font-size:13px}.cloud-dashboard-grid,.cloud-two-columns,.cloud-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cloud-location-list{padding:4px 12px}.cloud-location-row{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;border-bottom:1px solid var(--border)}.cloud-location-row:last-child{border-bottom:0}.cloud-location-row>div:last-child{text-align:right}.cloud-quick-grid{padding:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.cloud-quick-grid button{background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:9px;padding:14px 10px;display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:700}.cloud-quick-grid button:hover{border-color:var(--accent);color:var(--accent)}
.cloud-table-wrap{overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:9px}.cloud-table{margin:0;width:100%}.cloud-table td,.cloud-table th{vertical-align:middle}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--hover)!important}.cloud-thumb{width:42px;height:42px;object-fit:cover;border-radius:7px;border:1px solid var(--border)}.cloud-avatar{width:38px;height:38px;object-fit:cover;border-radius:50%;border:1px solid var(--border)}.cloud-thumb.placeholder,.cloud-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:var(--surface2);color:var(--text-muted)}.cloud-badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:var(--surface2);border:1px solid var(--border);font-size:10px;font-weight:800;text-transform:capitalize}.cloud-badge.ok{color:var(--accent2);border-color:color-mix(in srgb,var(--accent2) 40%,var(--border))}.cloud-badge.off{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.cloud-badge.warn{color:var(--warn)}.cloud-pager{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;color:var(--text-muted);font-size:11px}.cloud-pager>div{display:flex;gap:6px}.cloud-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-muted)}.cloud-error{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:10px;color:var(--danger)}.cloud-error .btn{margin-top:5px}.cloud-modal-body{overflow:auto;max-height:calc(92vh - 58px)}.cloud-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cloud-detail-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:15px}.cloud-detail-grid>div{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:9px;min-width:0}.cloud-detail-grid span{display:block;font-size:10px;color:var(--text-muted);text-transform:capitalize;margin-bottom:4px}.cloud-detail-grid b{display:block;font-size:12px;overflow-wrap:anywhere}.cloud-summary-line{display:flex;align-items:center;gap:12px;padding:11px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);margin-bottom:12px}
.cloud-template-layout{display:grid;grid-template-columns:360px 1fr;gap:18px;align-items:start}.cloud-margin-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px}.cloud-margin-grid label span{display:block;font-size:11px;color:var(--text-muted);margin-bottom:4px;text-transform:capitalize}.cloud-edge-toggle{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--border);font-weight:700}.cloud-paper-shell{background:#cbd5e1;padding:22px;min-height:650px;overflow:auto;border-radius:10px}.cloud-paper{width:min(210mm,100%);min-height:297mm;margin:0 auto;background:#fff;color:#111;box-shadow:0 8px 32px rgba(0,0,0,.2);box-sizing:border-box;transition:padding .15s}.cloud-paper-content{text-align:center;border:1px dashed #bbb;min-height:250mm;padding:12mm;box-sizing:border-box}.cloud-fake-lines{display:flex;flex-direction:column;gap:10px;margin:30px 0;align-items:flex-start}.cloud-fake-lines span{height:7px;background:#d1d5db;border-radius:4px}.cloud-credentials{display:grid;gap:6px}.cloud-credentials code{display:block;white-space:pre-wrap;overflow-wrap:anywhere;background:#0f172a;color:#e2e8f0;padding:10px;border-radius:7px}.cloud-info-grid ul{margin:12px 20px 18px;padding-left:17px;line-height:1.8;font-size:12px}
.cloud-auth-shell{height:100vh;display:grid;grid-template-columns:minmax(420px,42%) 1fr;background:var(--bg)}.cloud-auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px}.cloud-auth-brand{width:min(460px,100%);display:flex;align-items:center;gap:14px;margin-bottom:18px}.cloud-auth-brand h1{margin:0;font-size:25px}.cloud-auth-brand p{margin:3px 0 0;color:var(--text-muted)}.cloud-auth-card{width:min(460px,100%);padding:24px;display:flex;flex-direction:column;gap:13px}.cloud-auth-card h2{margin:0}.cloud-auth-card>p{margin:0 0 5px;color:var(--text-muted)}.cloud-auth-card label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}.cloud-auth-card .btn{justify-content:center;padding:10px}.cloud-auth-error{padding:9px 11px;border:1px solid color-mix(in srgb,var(--danger) 40%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger);border-radius:7px;font-size:12px}.cloud-auth-art{display:flex;align-items:flex-end;padding:60px;background:linear-gradient(140deg,#0f2a6b,#1565f5 58%,#4f8cff);color:#fff}.cloud-auth-art h2{font-size:52px;line-height:1.02;margin:0 0 20px}.cloud-auth-art p{font-size:17px;max-width:660px;line-height:1.6;color:rgba(255,255,255,.82)}.cloud-boot{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--bg);color:var(--text-muted)}
@media(max-width:1200px){.cloud-stats-grid{grid-template-columns:repeat(3,1fr)}.cloud-header-branch{display:none}}@media(max-width:820px){.cloud-stats-grid{grid-template-columns:repeat(2,1fr)}.cloud-dashboard-grid,.cloud-two-columns,.cloud-info-grid,.cloud-template-layout{grid-template-columns:1fr}.cloud-auth-shell{grid-template-columns:1fr}.cloud-auth-art{display:none}.cloud-detail-grid,.cloud-detail-grid.compact{grid-template-columns:1fr 1fr}.cloud-readonly{display:none}}
@media print{.app-header,.cloud-screen-heading,.cloud-toolbar,.legacy-user-dropdown{display:none!important}.cloud-main,.cloud-screen,.cloud-screen-body{height:auto!important;overflow:visible!important;padding:0!important}.cloud-card{break-inside:avoid}.cloud-paper-shell{padding:0;background:none}.cloud-paper{box-shadow:none;width:100%;min-height:auto}.cloud-paper-content{min-height:auto}}
.cloud-logo{width:48px;height:48px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:#1565f5;color:#fff;font-weight:950;font-size:28px;box-shadow:0 5px 16px rgba(21,101,245,.3)}.cloud-logo.small{width:31px;height:31px;border-radius:8px;font-size:18px}.cloud-user-wrap{position:relative}.cloud-user-wrap .legacy-user-trigger{display:flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:20px;cursor:pointer;font-weight:700}.cloud-user-menu{position:absolute;right:0;top:calc(100% + 7px);width:250px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 36px rgba(0,0,0,.28);padding:6px;z-index:9999;display:none;max-height:calc(100vh - 75px);overflow:auto}.cloud-user-menu.open{display:block}.cloud-user-menu button{width:100%;display:flex;align-items:center;gap:9px;padding:9px 10px;border:0;background:transparent;color:var(--text);border-radius:7px;cursor:pointer;text-align:left;font-weight:650}.cloud-user-menu button:hover,.cloud-user-menu button.active{background:var(--surface2);color:var(--accent)}.cloud-menu-divider{height:1px;background:var(--border);margin:5px}.cloud-auth-card .cloud-credentials code{white-space:pre-wrap}.cloud-screen .screen-topbar{min-height:auto}.cloud-paper-content .cloud-logo{margin:auto}.cloud-auth-panel .cloud-logo{flex:0 0 auto}


/* ─── Bechify Cloud brand overrides / Hostinger-safe merged layout ─── */
:root{
  --accent:#0c8fc7;
  --accent2:#f7941d;
  --cloud-blue:#0c8fc7;
  --cloud-blue-dark:#08689c;
  --cloud-orange:#f7941d;
}
[data-theme="light"]{
  --accent:#087fb6;
  --accent2:#e9780c;
}
.cloud-auth-art{background:linear-gradient(140deg,#075f92 0%,#0c8fc7 56%,#2bb6dd 100%)}
.cloud-auth-card{border-top:4px solid var(--cloud-orange)}
.cloud-auth-card .btn-primary,.cloud-screen .btn-primary{background:var(--cloud-blue);color:#fff}
.cloud-auth-card .btn-primary:hover,.cloud-screen .btn-primary:hover{background:var(--cloud-blue-dark)}
.cloud-brand-logo{width:52px;height:52px;display:block;object-fit:contain;filter:drop-shadow(0 5px 12px rgba(5,90,135,.24));flex:0 0 auto}
.cloud-brand-logo.small{width:32px;height:32px;filter:none}
.cloud-paper-logo{width:64px;height:64px;object-fit:contain;margin:0 auto 8px;display:block}
.cloud-auth-brand{align-items:center}
.cloud-auth-brand h1{color:var(--text)}
.cloud-auth-brand p{color:var(--text-muted)}
@media(max-width:760px){.cloud-brand-logo{width:46px;height:46px}}
