:root{--bg:#f5f7fb;--card:#fff;--ink:#172033;--muted:#6b7280;--primary:#0f766e;--primary2:#115e59;--danger:#dc2626;--warn:#d97706;--ok:#16a34a;--line:#e5e7eb;--shadow:0 18px 50px rgba(15,23,42,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Segoe UI",Tahoma,Arial,sans-serif}.sidebar{position:fixed;right:0;top:0;bottom:0;width:280px;background:linear-gradient(180deg,#0f172a,#113d38);color:#fff;padding:22px 18px;overflow-y:auto}.brand{display:flex;gap:12px;align-items:center;margin-bottom:24px}.brand-mark{width:48px;height:48px;border-radius:18px;background:#2dd4bf;display:grid;place-items:center;font-weight:900;color:#052e2b;font-size:26px}.brand span{display:block;color:#b7d7d3;font-size:13px;margin-top:3px}.sidebar nav{display:grid;gap:7px}.sidebar a{color:#e6fffb;text-decoration:none;padding:12px 14px;border-radius:15px;background:rgba(255,255,255,.06);transition:.2s}.sidebar a:hover{background:rgba(45,212,191,.25);transform:translateX(-3px)}.main{margin-right:280px;min-height:100vh;padding:26px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar h1{margin:0;font-size:30px}.topbar p{margin:6px 0 0;color:var(--muted)}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow)}.stat{position:relative;overflow:hidden}.stat small{color:var(--muted);display:block;margin-bottom:8px}.stat strong{font-size:30px}.stat:after{content:"";position:absolute;left:-40px;top:-40px;width:120px;height:120px;border-radius:50%;background:rgba(15,118,110,.12)}.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px}.form-inline{display:flex;gap:8px;align-items:center}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:18px;overflow:hidden}.table th,.table td{padding:13px;border-bottom:1px solid var(--line);text-align:right;vertical-align:middle}.table th{background:#f8fafc;color:#334155;font-size:14px}.badge{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e2e8f0;font-size:12px}.badge.ok{background:#dcfce7;color:#166534}.badge.warn{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.btn{border:0;border-radius:14px;padding:11px 16px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;gap:8px;align-items:center}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary2)}.btn-light{background:#fff;color:#111827;border:1px solid var(--line)}.btn-danger{background:var(--danger);color:#fff}.btn-warn{background:var(--warn);color:#fff}.alert{border-radius:18px;padding:14px 16px;margin-bottom:16px}.alert.success{background:#dcfce7;color:#166534}.alert.danger{background:#fee2e2;color:#991b1b}.form{display:grid;gap:14px}.field label{display:block;margin-bottom:7px;font-weight:700}.input,select,textarea{width:100%;border:1px solid var(--line);border-radius:15px;background:#fff;padding:12px 13px;outline:none;font:inherit}.input:focus,select:focus,textarea:focus{border-color:#14b8a6;box-shadow:0 0 0 4px rgba(20,184,166,.12)}.validation{color:#dc2626;font-size:13px}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#2dd4bf33,transparent 35%),linear-gradient(135deg,#0f172a,#0f766e)}.login-card{width:min(440px,92vw);background:#fff;border-radius:30px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.login-card h1{margin:0 0 6px}.login-card p{color:var(--muted);margin:0 0 22px}.invoice{background:#fff;padding:28px;border-radius:20px}.invoice-head{display:flex;justify-content:space-between;border-bottom:2px dashed var(--line);padding-bottom:16px;margin-bottom:16px}.print-only{display:none}@media(max-width:980px){.sidebar{position:static;width:auto}.main{margin-right:0}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.topbar{display:block}.toolbar{display:block}.form-inline{margin-top:10px;flex-wrap:wrap}}@media print{.sidebar,.topbar,.no-print,.btn,.alert{display:none!important}.main{margin:0;padding:0}.card{box-shadow:none;border:0}.invoice{padding:0}.print-only{display:block}body{background:#fff}}
.muted{color:var(--muted)}.json-box{white-space:pre-wrap;direction:ltr;text-align:left;max-width:520px;overflow:auto;background:#0f172a;color:#e2e8f0;border-radius:12px;padding:12px}.receipt-header{text-align:center;border-bottom:1px dashed var(--line);padding-bottom:12px;margin-bottom:12px}.receipt-header h2,.receipt-header h3{margin:6px 0}.receipt-header p{margin:3px 0;color:#334155}.invoice-logo{max-height:70px;max-width:140px;object-fit:contain}.receipt-meta{display:grid;gap:6px;margin-bottom:12px}.receipt-total{display:grid;gap:6px;border-top:1px dashed var(--line);padding-top:12px;margin-top:12px}.receipt-total div{display:flex;justify-content:space-between;gap:14px}.receipt-notes{border-top:1px dashed var(--line);padding-top:10px}.signature-line{margin-top:26px}.thanks{text-align:center;font-weight:800;margin-top:18px}.thermal-invoice{max-width:var(--paper-width);margin-inline:auto}.thermal-invoice .table th,.thermal-invoice .table td{padding:8px 6px;font-size:13px}@page{size:auto;margin:8mm}@media print{.thermal-invoice{width:var(--paper-width)!important;max-width:var(--paper-width)!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}.receipt-table th,.receipt-table td{font-size:11px;padding:4px 2px}.receipt-header h2{font-size:16px}.receipt-header h3{font-size:14px}.receipt-header p,.receipt-meta,.receipt-total,.signature-line,.thanks{font-size:11px}.json-box{color:#111;background:#fff}}
.mt-16{margin-top:16px}.mono{font-family:Consolas,monospace;direction:ltr;display:inline-block}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions form{display:inline}.link-danger{background:none;border:0;color:#dc2626;cursor:pointer;font:inherit;padding:0}.module-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#fff,#ecfeff);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:20px;margin-bottom:18px}.module-hero.compact{padding:14px;margin-bottom:12px}.module-hero h2{margin:0 0 6px;font-size:24px}.module-hero p{margin:0;color:var(--muted)}.module-icon{width:58px;height:58px;border-radius:22px;background:#ccfbf1;display:inline-grid;place-items:center;font-size:30px;margin-left:12px}.advanced-filter{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:10px;margin-bottom:14px;align-items:center}.check{display:flex;gap:8px;align-items:center;white-space:nowrap}.pager{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:10px}.nav-groups{display:block}.nav-groups details{background:rgba(255,255,255,.05);border-radius:18px;margin-bottom:9px;overflow:hidden}.nav-groups summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#e6fffb}.nav-groups a{display:block;margin:0 8px 7px 8px;padding:10px 12px}.mobile-menu{display:none;position:fixed;top:14px;right:14px;z-index:10;border:0;border-radius:14px;background:#0f766e;color:#fff;padding:10px 13px;font-size:22px}.pos-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.barcode-search{position:relative;margin:14px 0}.pos-barcode{font-size:22px;padding:18px;border-width:2px}.search-results{position:absolute;top:100%;right:0;left:0;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);z-index:5;overflow:hidden;display:none}.search-result-item{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer}.search-result-item:hover{background:#f0fdfa}.pos-table input{width:95px;padding:8px;border:1px solid var(--line);border-radius:10px}.pos-summary{position:sticky;top:18px;height:max-content}.summary-line{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:12px 0}.summary-line.total{font-size:20px}.summary-line.grand{font-size:24px;background:#ecfeff;padding:16px;border-radius:16px;border-bottom:0}.touch-actions{display:flex;gap:10px;margin-top:16px}.btn-xl{font-size:18px;padding:16px 22px}.touch-pad{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.touch-pad button{border:0;background:#f1f5f9;border-radius:16px;padding:16px;font-weight:900;font-size:18px;cursor:pointer}.barcode-sheet{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.barcode-label{background:#fff;border:1px dashed #94a3b8;border-radius:12px;padding:10px;text-align:center;break-inside:avoid}.barcode-label.wide{min-width:240px}.barcode-label strong,.barcode-label small,.barcode-label b{display:block;margin:3px 0}.barcode39{width:100%;height:56px}.purchase-add-panel{background:#f8fafc;border:1px solid var(--line);border-radius:22px;padding:16px;margin:14px 0}.income-card{max-width:760px}.stat.mini{min-width:220px;background:#fff}.quick-kpis{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.table.smart-grid tbody tr:hover{background:#f8fafc}@media(max-width:1180px){.pos-shell{grid-template-columns:1fr}.pos-summary{position:static}.advanced-filter{grid-template-columns:repeat(2,minmax(120px,1fr))}.quick-kpis{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media(max-width:780px){.mobile-menu{display:block}.sidebar{position:fixed;right:-310px;width:290px;z-index:9;transition:.25s}.sidebar.open{right:0}.main{margin-right:0;padding:70px 12px 18px}.module-hero{display:block}.module-hero .btn{margin-top:10px}.advanced-filter{grid-template-columns:1fr}.table{display:block;overflow-x:auto;white-space:nowrap}.touch-actions{display:grid}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr!important}.pos-barcode{font-size:18px}.topbar h1{font-size:22px}.barcode-sheet{grid-template-columns:repeat(2,minmax(140px,1fr))}}@media print{.module-hero,.toolbar,.advanced-filter,.pager,.mobile-menu{display:none!important}.barcode-sheet{grid-template-columns:repeat(3,1fr);gap:4mm}.barcode-label{border:1px solid #000;border-radius:0;box-shadow:none}.main{padding:0}.table{white-space:normal}}
.sidebar a.active{background:linear-gradient(135deg,#2dd4bf,#0f766e);color:#042f2e;font-weight:900;box-shadow:0 10px 25px rgba(45,212,191,.25)}
.nav-groups details[open] summary{background:rgba(45,212,191,.14)}
.settings-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid var(--line);padding-bottom:12px}.settings-tabs button{border:1px solid var(--line);background:#fff;border-radius:14px;padding:11px 14px;font-weight:800;cursor:pointer}.settings-tabs button.active{background:#0f766e;color:#fff;border-color:#0f766e}.tab-panel{display:none}.tab-panel.active{display:block}.warning-list{display:grid;gap:10px}.warning-item{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;padding:12px;background:#fff7ed}.warning-item.danger{background:#fff1f2}.warning-item.ok{background:#f0fdf4}.credit-box{background:#fffbeb;border:1px solid #fde68a;border-radius:18px;padding:12px}
.demo-step{min-height:220px;text-decoration:none;color:inherit;display:flex;flex-direction:column;justify-content:space-between}.demo-icon{width:64px;height:64px;border-radius:22px;background:#ecfeff;display:grid;place-items:center;font-size:34px}.settings-card h2{margin-top:0}.report-card{text-decoration:none;color:inherit;transition:.2s}.report-card:hover{transform:translateY(-3px);box-shadow:0 22px 60px rgba(15,23,42,.12)}.production-ok{background:#f0fdf4}.production-warn{background:#fffbeb}.pwa-banner{background:#ecfeff;border:1px solid #99f6e4;border-radius:18px;padding:12px;margin-bottom:14px}.table .number{text-align:left;direction:ltr}.sticky-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--line);padding:12px;border-radius:18px;box-shadow:0 -10px 30px rgba(15,23,42,.06)}
@media(max-width:780px){.demo-step{min-height:auto}.card.stat strong{font-size:22px}.settings-tabs{overflow:auto;white-space:nowrap;display:flex;flex-wrap:nowrap}.settings-tabs button{min-width:max-content}.topbar form{margin-top:10px}.receipt-total div{font-size:14px}.pos-summary{box-shadow:none}.touch-pad{grid-template-columns:repeat(4,1fr)}}
/* V8 mobile/PWA refinements */
.no-print{print-color-adjust:exact}.offline-pill{display:none;position:fixed;left:14px;bottom:14px;z-index:99;background:#fef3c7;color:#92400e;border:1px solid #fde68a;border-radius:999px;padding:8px 12px;font-weight:800}.offline .offline-pill{display:block}.mobile-bottom-nav{display:none}@media(max-width:780px){body{background:#f8fafc}.card{border-radius:18px;padding:14px}.btn{min-height:44px;justify-content:center}.input,select,textarea{min-height:44px}.main{padding-bottom:88px}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;position:fixed;right:0;left:0;bottom:0;background:#fff;border-top:1px solid var(--line);padding:8px;z-index:8;box-shadow:0 -10px 30px rgba(15,23,42,.08)}.mobile-bottom-nav a{text-decoration:none;color:#0f172a;text-align:center;font-size:12px;padding:8px;border-radius:12px;background:#f8fafc}.mobile-bottom-nav a.active{background:#ccfbf1;color:#115e59;font-weight:900}.topbar{position:sticky;top:0;background:rgba(245,247,251,.92);backdrop-filter:blur(10px);z-index:6;padding:8px 0}.smart-grid td:before{content:attr(data-label);font-weight:900;color:#64748b;margin-left:6px}.report-print{border-radius:0;box-shadow:none}}@media print{.no-print,.mobile-bottom-nav,.sidebar,.topbar,.offline-pill{display:none!important}.main{margin:0!important;padding:0!important}.card,.invoice{box-shadow:none!important;border:0!important}.table th{background:#f1f5f9!important}}
/* Sidebar usability refinements */
@media(min-width:981px){.sidebar{width:330px}.main{margin-right:330px}}
.nav-groups summary,.sidebar a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-groups summary{line-height:1.25;font-size:16px}
.nav-groups a{line-height:1.3}
@media(max-width:780px){.sidebar{width:330px;right:-350px}}
.search-select{position:relative;width:100%}.search-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;margin:0!important;padding:0!important;border:0!important}.search-select-trigger{width:100%;min-height:44px;border:1px solid var(--line);border-radius:15px;background:#fff;padding:12px 42px 12px 13px;outline:none;font:inherit;text-align:right;cursor:pointer;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.search-select-trigger:before{content:"⌕";position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#64748b;font-weight:900}.search-select-trigger.placeholder{color:#64748b}.search-select.open .search-select-trigger,.search-select-trigger:focus{border-color:#14b8a6;box-shadow:0 0 0 4px rgba(20,184,166,.12)}.search-select-panel{display:none;position:absolute;right:0;left:0;top:calc(100% + 6px);z-index:30;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:10px}.search-select.open .search-select-panel{display:block}.search-select-search{width:100%;border:1px solid var(--line);border-radius:13px;background:#f8fafc;padding:11px 12px;outline:none;font:inherit;margin-bottom:8px}.search-select-search:focus{border-color:#14b8a6;box-shadow:0 0 0 3px rgba(20,184,166,.1)}.search-select-list{display:grid;gap:4px;max-height:260px;overflow:auto}.search-select-option{border:0;background:#fff;border-radius:11px;padding:10px 12px;text-align:right;font:inherit;cursor:pointer;color:var(--ink)}.search-select-option:hover,.search-select-option[aria-selected="true"]{background:#ecfeff;color:#115e59;font-weight:800}.search-select-empty{padding:12px;color:var(--muted);text-align:center}@media(max-width:780px){.search-select-panel{position:fixed;right:12px;left:12px;top:96px;max-height:calc(100vh - 140px);overflow:auto}.search-select-list{max-height:calc(100vh - 230px)}}
.cash-customer-locked .search-select-trigger,.cash-supplier-locked .search-select-trigger{background:#f8fafc;color:#334155}.cash-customer-locked label:after,.cash-supplier-locked label:after{content:" - تلقائي مع الكاش";color:#0f766e;font-weight:700}
/* Production visual polish for data-entry screens */
:root{
  --bg:#f3f7f8;
  --card:#ffffff;
  --ink:#172033;
  --muted:#667085;
  --primary:#08766f;
  --primary2:#055f5a;
  --primary-soft:#e9fbf8;
  --accent:#d97706;
  --accent-soft:#fff7e6;
  --line:#d9e3e8;
  --input-bg:#fbfdfe;
  --input-border:#cfdce3;
  --shadow:0 16px 38px rgba(16,24,40,.07);
}
body{background:linear-gradient(180deg,#f8fbfc 0%,var(--bg) 100%);line-height:1.55}
.main{padding-top:24px}
.topbar{background:rgba(243,247,248,.86);backdrop-filter:blur(10px);border:1px solid rgba(217,227,232,.7);border-radius:18px;padding:14px 16px;box-shadow:0 10px 26px rgba(16,24,40,.04)}
.topbar h1{font-size:28px;color:#122033}
.topbar p{color:#718096}
.sidebar{background:linear-gradient(180deg,#102238 0%,#0b3f3d 56%,#083331 100%)}
.brand-mark{background:#b9f5e9;color:#063b38;border-radius:16px}
.nav-groups details{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.06)}
.nav-groups summary,.sidebar a{border-radius:12px}
.sidebar a{background:rgba(255,255,255,.065)}
.sidebar a:hover{background:rgba(185,245,233,.18);transform:translateX(-2px)}
.sidebar a.active{background:#b9f5e9;color:#063b38;box-shadow:0 10px 24px rgba(20,184,166,.22)}
.card,.invoice,.purchase-add-panel,.search-results,.search-select-panel{border-color:var(--line);box-shadow:var(--shadow)}
.card{border-radius:18px}
.card h2,.card h3{color:#142033}
.module-hero{background:linear-gradient(135deg,#ffffff 0%,#eef9fb 62%,#fff8eb 100%);border-color:#d7e8eb;border-radius:18px}
.module-hero h2{color:#142033}
.module-icon{background:#e4fbf7;color:#075e59;border-radius:16px}
.form,.advanced-filter,.form-inline{gap:12px}
.field label{color:#243246;font-size:14px;margin-bottom:8px}
.input,select,textarea,.search-select-trigger,.search-select-search,.pos-table input{
  background:var(--input-bg);
  border:1px solid var(--input-border);
  border-radius:12px;
  color:var(--ink);
  min-height:46px;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.input:hover,select:hover,textarea:hover,.search-select-trigger:hover,.search-select-search:hover,.pos-table input:hover{border-color:#a8c4cc;background:#fff}
.input:focus,select:focus,textarea:focus,.search-select.open .search-select-trigger,.search-select-trigger:focus,.search-select-search:focus,.pos-table input:focus{
  border-color:#0ea5a0;
  background:#fff;
  box-shadow:0 0 0 4px rgba(14,165,160,.13);
}
textarea{min-height:104px;resize:vertical}
.input[readonly],.input:disabled,select:disabled,textarea:disabled{background:#eef3f5;color:#667085;cursor:not-allowed}
input[type="checkbox"],input[type="radio"]{accent-color:var(--primary)}
input[type="file"].input{padding:8px;background:#fff}
input[type="file"].input::file-selector-button{border:0;border-radius:10px;background:var(--primary-soft);color:var(--primary2);font-weight:800;padding:9px 12px;margin-left:10px;cursor:pointer}
.validation{color:#b42318;font-weight:700}
.btn{border-radius:12px;min-height:42px;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--primary),#0b8f87);box-shadow:0 10px 22px rgba(8,118,111,.18)}
.btn-primary:hover{background:linear-gradient(135deg,var(--primary2),var(--primary))}
.btn-light{background:#fff;color:#243246;border:1px solid var(--line)}
.btn-light:hover{background:#f7fbfc}
.btn-warn{background:#b45309;color:#fff}
.btn-danger{background:#c2412d;color:#fff}
.badge{border-radius:999px;font-weight:800}
.badge.ok{background:#dcfce7;color:#166534}
.badge.warn{background:var(--accent-soft);color:#9a4a00}
.badge.danger{background:#fee4e2;color:#b42318}
.table{border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 22px rgba(16,24,40,.035)}
.table th{background:#f2f7f9;color:#344054;font-weight:900}
.table td{color:#243246}
.table tbody tr:hover{background:#f9fcfd}
.toolbar{background:rgba(255,255,255,.74);border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:0 8px 22px rgba(16,24,40,.04)}
.advanced-filter{background:#f9fcfd;border:1px solid var(--line);border-radius:16px;padding:12px}
.check{background:#f8fbfc;border:1px solid var(--line);border-radius:12px;padding:10px 12px;color:#344054}
.settings-tabs{border-bottom-color:var(--line)}
.settings-tabs button{border-radius:12px;color:#344054;background:#fff}
.settings-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.warning-item,.credit-box,.pwa-banner{border-radius:14px}
.pos-shell .card,.pos-summary{background:#fff}
.summary-line.grand{background:linear-gradient(135deg,#e6fbf7,#fff7e6);border:1px solid #cdeee8}
.touch-pad button{background:#eef4f7;color:#142033;border:1px solid #dbe7ec}
.touch-pad button:hover{background:#e4fbf7;border-color:#9ee6dc}
.search-result-item:hover,.search-select-option:hover,.search-select-option[aria-selected="true"]{background:var(--primary-soft);color:var(--primary2)}
.search-select-trigger:before{content:"\1F50D";color:#667085}
.cash-customer-locked .search-select-trigger,.cash-supplier-locked .search-select-trigger{background:#eef4f7!important;color:#344054!important}
.cash-customer-locked label:after,.cash-supplier-locked label:after{content:" - \062A\0644\0642\0627\0626\064A \0645\0639 \0627\0644\0643\0627\0634"!important;color:var(--primary)!important;font-weight:800!important}
@media(max-width:780px){
  .topbar{border-radius:14px;padding:10px 12px}
  .topbar h1{font-size:22px}
  .toolbar,.advanced-filter{display:grid;grid-template-columns:1fr}
  .input,select,textarea,.search-select-trigger,.search-select-search{font-size:16px}
}

/* Action buttons and overflow fixes */
.module-hero,.toolbar,.form-inline,.actions{flex-wrap:wrap}
.module-hero>div:first-child{min-width:0}
.advanced-filter{
  grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr))!important;
  width:100%;
  max-width:100%;
  overflow:visible;
}
.advanced-filter .input,.advanced-filter select,.advanced-filter .search-select,.advanced-filter .btn{min-width:0}
.card{max-width:100%}
.card:has(> .table),.card:has(.smart-grid){overflow-x:auto}
.table th,.table td{white-space:normal}
.table td.actions,.actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.action-chip,
.actions a:not(.btn),
.actions button:not(.btn),
.table td:last-child>a:not(.btn),
.table td:last-child>form>button:not(.btn){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:7px 10px;
  border:1px solid #cfe0e6;
  border-radius:10px;
  background:#fff;
  color:#243246;
  font-weight:800;
  font-size:13px;
  line-height:1;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(16,24,40,.04);
}
.action-chip:hover,
.actions a:not(.btn):hover,
.actions button:not(.btn):hover,
.table td:last-child>a:not(.btn):hover,
.table td:last-child>form>button:not(.btn):hover{
  background:#f5fbfc;
  border-color:#9ed8d2;
  color:#075e59;
}
.action-chip:before,
.actions a:not(.btn):before,
.actions button:not(.btn):before,
.table td:last-child>a:not(.btn):before,
.table td:last-child>form>button:not(.btn):before{content:"\2197";font-weight:900}
[data-action="add"]:before{content:"+"}
[data-action="edit"]:before{content:"\270E"}
[data-action="delete"]:before,.link-danger:before{content:"\2715"}
[data-action="view"]:before,[data-action="details"]:before,[data-action="statement"]:before{content:"\25CE"}
[data-action="invoice"]:before{content:"\2630"}
[data-action="print"]:before{content:"\2399"}
[data-action="search"]:before,[data-action="filter"]:before{content:"\1F50D"}
[data-action="save"]:before{content:"\2713"}
[data-action="close"]:before{content:"\23FB"}
[data-action="pay"]:before{content:"\0024"}
[data-action="send"]:before{content:"\2192"}
[data-action="report"]:before{content:"\25A3"}
[data-action="back"]:before{content:"\2039"}
.link-danger,.action-chip[data-action="delete"],[data-action="delete"]{
  color:#b42318!important;
  border-color:#f3c6c2!important;
  background:#fff7f6!important;
}
.link-danger:hover,.action-chip[data-action="delete"]:hover,[data-action="delete"]:hover{background:#fee4e2!important}
@media(max-width:780px){
  .module-hero .actions,.toolbar .actions,.table td.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}
  .action-chip,.actions a:not(.btn),.actions button:not(.btn),.table td:last-child>a:not(.btn),.table td:last-child>form>button:not(.btn){width:100%}
}

.inline-pair{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.excel-import{justify-content:flex-start;background:#f8fafc;border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:12px}
.excel-import input[type=file]{max-width:320px}
.quick-customer-panel{border:1px solid var(--line);border-radius:16px;background:#f8fafc;padding:12px;margin:10px 0 14px}
.pos-gallery-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;flex-wrap:wrap}
.segmented{display:inline-flex;background:#eef6f6;border:1px solid var(--line);border-radius:14px;padding:4px;gap:4px}
.segmented button{border:0;background:transparent;border-radius:10px;padding:8px 12px;font-weight:800;cursor:pointer;color:#334155}
.segmented button.active{background:#0f766e;color:#fff}
.product-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;max-height:380px;overflow:auto;padding:4px;margin-bottom:14px}
.product-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:8px;display:grid;gap:5px;text-align:right;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.06);min-width:0;overflow:hidden}
.product-card:hover{border-color:#14b8a6;box-shadow:0 12px 30px rgba(20,184,166,.16)}
.product-card-image{height:96px;border-radius:12px;background:#f1f5f9;display:grid;place-items:center;overflow:hidden;font-size:30px}
.product-card-image img{width:100%;height:100%;object-fit:cover}
.product-card-title{font-weight:900;line-height:1.3;min-height:34px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.product-card-code,.product-card small{color:#64748b;font-size:12px}
.product-card strong{color:#0f172a;line-height:1.1}
.search-result-item.with-image{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center}
.search-result-item.with-image img,.result-placeholder{width:42px;height:42px;border-radius:10px;background:#f1f5f9;object-fit:cover;display:grid;place-items:center}
.cart-item-cell{display:flex;align-items:center;gap:8px}
.cart-thumb,.product-thumb{width:54px;height:54px;border-radius:10px;background:#f1f5f9;object-fit:cover;display:grid;place-items:center;font-size:22px;flex:0 0 54px}
.product-thumb{width:96px;height:96px}
@media(max-width:780px){
  .inline-pair{grid-template-columns:1fr}
  .product-gallery{grid-template-columns:repeat(2,minmax(120px,1fr));max-height:none}
}

/* Collapsible desktop sidebar */
.sidebar{transition:width .18s ease,padding .18s ease}
.main{transition:margin-right .18s ease}
.sidebar-collapse{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  color:#e6fffb;
  font-size:24px;
  font-weight:900;
  cursor:pointer;
  display:grid;
  place-items:center;
  margin-right:auto;
}
.sidebar-collapse:hover{background:rgba(185,245,233,.18)}
.nav-groups summary::-webkit-details-marker{display:none}
@media(min-width:981px){
  body.sidebar-collapsed .sidebar{
    width:86px;
    padding:18px 10px;
    overflow-x:visible;
  }
  body.sidebar-collapsed .main{margin-right:86px}
  body.sidebar-collapsed .brand{
    display:grid;
    justify-items:center;
    gap:8px;
    margin-bottom:18px;
  }
  body.sidebar-collapsed .brand>div:not(.brand-mark){display:none}
  body.sidebar-collapsed .brand-mark{
    width:46px;
    height:46px;
    border-radius:14px;
    font-size:22px;
  }
  body.sidebar-collapsed .sidebar-collapse{
    margin:0;
    width:46px;
    height:38px;
  }
  body.sidebar-collapsed .nav-groups{
    display:grid;
    gap:9px;
  }
  body.sidebar-collapsed .nav-groups details{
    margin:0;
    overflow:visible;
    border:0;
    background:transparent;
  }
  body.sidebar-collapsed .nav-groups summary{
    width:56px;
    height:52px;
    display:grid;
    place-items:center;
    padding:0;
    border-radius:16px;
    font-size:0;
    background:rgba(255,255,255,.08);
    position:relative;
  }
  body.sidebar-collapsed .nav-groups summary:after{
    content:attr(data-icon);
    font-size:22px;
    line-height:1;
  }
  body.sidebar-collapsed .nav-groups details[open] summary{
    background:#b9f5e9;
    color:#063b38;
  }
  body.sidebar-collapsed .nav-groups a{display:none}
  body.sidebar-collapsed .nav-groups summary:hover:before{
    content:attr(data-title);
    position:absolute;
    right:calc(100% + 10px);
    top:50%;
    transform:translateY(-50%);
    width:max-content;
    max-width:230px;
    background:#102238;
    color:#fff;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    padding:9px 11px;
    box-shadow:0 16px 34px rgba(0,0,0,.18);
    font-size:13px;
    white-space:nowrap;
    z-index:120;
  }
}
@media(max-width:980px){.sidebar-collapse{display:none}}

/* Faster cashier workspace */
.pos-workspace{
  direction:ltr;
  display:grid;
  grid-template-columns:minmax(360px,420px) minmax(0,1fr);
  grid-template-areas:"cart products";
  gap:16px;
  align-items:stretch;
  min-height:calc(100vh - 150px);
}
.pos-workspace>*{direction:rtl}
.pos-workspace .pos-left{
  grid-area:products;
  display:flex;
  flex-direction:column;
  min-width:0;
  max-height:calc(100vh - 150px);
  overflow:hidden;
  padding:16px;
}
.pos-workspace .pos-summary{
  grid-area:cart;
  position:sticky;
  top:18px;
  max-height:calc(100vh - 150px);
  overflow:auto;
  padding:16px;
}
.pos-control-grid{
  display:grid;
  grid-template-columns:minmax(260px,1.3fr) minmax(150px,.75fr) minmax(150px,.75fr);
  gap:12px;
  align-items:end;
}
.pos-workspace .barcode-search{margin:12px 0}
.pos-workspace .pos-barcode{
  font-size:20px;
  padding:15px 16px;
}
.pos-workspace .pos-gallery-bar{
  margin:0 0 10px;
}
.pos-workspace .product-gallery{
  flex:1;
  min-height:0;
  max-height:none;
  overflow:auto;
  grid-template-columns:repeat(auto-fill,minmax(170px,1fr));
  align-content:start;
  gap:12px;
  padding:4px 4px 12px;
  margin:0;
}
.pos-workspace .product-card{
  height:232px;
  min-height:232px;
  grid-template-rows:96px 36px 17px 22px 16px;
  align-content:start;
  border-radius:12px;
}
.pos-workspace .product-card-image{height:96px}
.pos-workspace .product-card-title{
  min-height:36px;
  max-height:36px;
}
.pos-workspace .product-card-code,
.pos-workspace .product-card small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  line-height:1.2;
}
.pos-cart-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.pos-cart-head h3{margin:0;font-size:20px}
.pos-cart-head span{
  background:#e9fbf8;
  color:#075e59;
  border:1px solid #b7ece5;
  border-radius:999px;
  padding:5px 10px;
  font-weight:900;
}
.pos-cart-list{
  display:grid;
  gap:10px;
  max-height:min(28vh,260px);
  overflow:auto;
  padding:2px 0 10px;
  margin-bottom:10px;
}
.cart-empty{
  border:1px dashed #b7c8d0;
  border-radius:14px;
  background:#f8fbfc;
  color:#667085;
  padding:16px;
  text-align:center;
  font-weight:800;
}
.cart-line{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  padding:8px;
  box-shadow:0 8px 20px rgba(16,24,40,.045);
}
.cart-line-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
  margin-bottom:7px;
}
.pos-workspace .cart-thumb{
  width:46px;
  height:46px;
  flex-basis:46px;
}
.cart-item-cell span{
  display:grid;
  gap:2px;
  min-width:0;
  font-weight:900;
}
.cart-item-cell small{
  display:block;
  font-size:12px;
  font-weight:700;
}
.cart-line-controls{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  gap:8px;
}
.cart-line-controls label{
  display:grid;
  gap:3px;
  color:#475467;
  font-size:11px;
  font-weight:900;
}
.cart-line-controls input{
  width:100%;
  min-height:34px;
  border:1px solid var(--input-border);
  border-radius:10px;
  background:#fbfdfe;
  padding:5px 7px;
  font:inherit;
}
.qty-stepper{
  display:grid;
  grid-template-columns:30px minmax(42px,1fr) 30px;
  gap:4px;
}
.qty-stepper button{
  border:1px solid #cfe0e6;
  border-radius:10px;
  background:#eef7f7;
  color:#075e59;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
}
.qty-stepper button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.cart-line-total{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  background:#f6fafb;
  border:1px solid var(--line);
  border-radius:12px;
  padding:7px 9px;
  font-weight:900;
}
.pos-pay-grid{
  gap:10px;
  margin:10px 0;
}
.pos-summary .summary-line{padding:6px 0}
.pos-summary .summary-line.total{font-size:19px}
.pos-summary .summary-line.grand{
  margin-top:6px;
  font-size:21px;
}
.pos-pay-grid .field label{
  font-size:12px;
  margin-bottom:4px;
}
.pos-pay-grid .input{min-height:38px}
.pos-summary .touch-pad{
  grid-template-columns:repeat(5,1fr);
  gap:6px;
}
.pos-summary .touch-pad button{
  min-height:42px;
  padding:8px 6px;
  font-size:15px;
}
.pos-summary .touch-pad [data-payall]{grid-column:auto}
.pos-extra-panel{
  border:1px solid var(--line);
  border-radius:14px;
  background:#f9fcfd;
  margin-top:12px;
  overflow:hidden;
}
.pos-extra-panel summary{
  cursor:pointer;
  padding:8px 12px;
  color:#243246;
  font-weight:900;
}
.pos-extra-panel>*:not(summary){margin-inline:12px}
.pos-extra-panel[open]{padding-bottom:12px}
.payment-panel{
  border-top:1px solid var(--line);
  padding-top:12px;
}
.payment-panel h3{
  margin:0 0 10px;
  font-size:16px;
}
.pos-submit-bar{
  position:static;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  background:#fff;
  border-top:1px solid var(--line);
  padding-top:12px;
  margin-top:12px;
}
.pos-submit-bar .btn-xl{
  min-height:42px;
  padding:10px 14px;
  font-size:16px;
}
.pos-submit-bar .btn{
  width:100%;
  justify-content:center;
}
.pos-submit-bar a{grid-column:1/-1}
@media(max-width:1280px){
  .pos-workspace{grid-template-columns:minmax(340px,380px) minmax(0,1fr)}
  .pos-control-grid{grid-template-columns:1fr 1fr}
  .pos-control-grid .field:first-child{grid-column:1/-1}
  .pos-workspace .product-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
}
@media(max-width:980px){
  .pos-workspace{
    direction:rtl;
    grid-template-columns:1fr;
    grid-template-areas:"products" "cart";
    min-height:auto;
  }
  .pos-workspace .pos-left,
  .pos-workspace .pos-summary{
    max-height:none;
    overflow:visible;
    position:static;
  }
  .pos-workspace .product-gallery{
    max-height:none;
    overflow:visible;
  }
}
@media(max-width:780px){
  .pos-control-grid{grid-template-columns:1fr}
  .pos-workspace .product-gallery{grid-template-columns:repeat(2,minmax(125px,1fr))}
  .cart-line-controls{grid-template-columns:1fr}
  .pos-submit-bar{grid-template-columns:1fr}
  .pos-submit-bar a{grid-column:auto}
}
