:root{
  --bg:#EEF2F6; --card:#FFFFFF; --header:#1F4E78; --accent:#2563EB;
  --green:#1A7F37; --orange:#BC4C00; --red:#CF222E; --hilite:#FFF59D;
  --short:#F8CBAD; --over:#BDD7EE; --match:#C6EFCE; --line:#D9E2EC;
  --muted:#5B6B7B;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Segoe UI",Tahoma,"Noto Naskh Arabic",sans-serif;
  background:var(--bg); color:#11202E; direction:rtl;
}
.hidden{display:none !important}
button{font-family:inherit;cursor:pointer;border:none;border-radius:8px;
  padding:9px 14px;font-size:15px;font-weight:600;background:#E2E8F0;color:#11202E}
button:hover{filter:brightness(.97)}
button.primary{background:var(--accent);color:#fff}
button.green{background:var(--green);color:#fff}
button.red{background:var(--red);color:#fff}
button.ghost{background:transparent;color:var(--header);border:1px solid var(--line)}
button:disabled{opacity:.5;cursor:not-allowed}
input,select{font-family:inherit;font-size:15px;padding:9px 10px;border:1px solid var(--line);
  border-radius:8px;background:#fff;width:100%}
label{font-size:13px;color:var(--muted);display:block;margin-bottom:4px}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.col{flex:1;min-width:120px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;
  box-shadow:0 1px 3px rgba(16,32,46,.06)}

/* رأس الصفحة */
header.topbar{background:var(--header);color:#fff;padding:12px 18px;display:flex;
  justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
header.topbar .brand{font-size:19px;font-weight:800;letter-spacing:.3px}
header.topbar .session-pill{background:#2c6aa8;border-radius:999px;padding:6px 14px;font-size:13px}
header.topbar .who{font-size:13px;opacity:.9}

.wrap{max-width:1180px;margin:0 auto;padding:18px}

/* شاشات الدخول/الإعداد */
.center-screen{min-height:80vh;display:flex;align-items:center;justify-content:center}
.center-screen .card{width:min(460px,94vw)}
.center-screen h1{margin:0 0 4px;font-size:22px;color:var(--header)}
.center-screen p.sub{margin:0 0 18px;color:var(--muted);font-size:14px}

/* منطقة المسح */
.scan-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-bottom:14px}
@media(max-width:820px){.scan-grid{grid-template-columns:1fr}}
.bigsearch input{font-size:20px;padding:14px;font-weight:700}
.banner{margin-top:10px;border-radius:10px;padding:10px 14px;font-weight:700;font-size:15px;display:none}
.banner.found{display:block;background:#E7F6EC;color:var(--green);border:1px solid #BBE5C7}
.banner.unknown{display:block;background:#FDECEA;color:var(--red);border:1px solid #F5C2BD}
.item-photo{margin-top:10px;display:flex;align-items:center;gap:10px}
.item-photo img{max-height:130px;max-width:100%;border-radius:10px;border:1px solid var(--line);
  background:#fff;object-fit:contain;cursor:zoom-in}
.item-photo .ph-msg{font-size:12.5px;color:var(--muted)}
.qty-row .col input{text-align:center;font-size:18px;font-weight:700}
.lv-piece{color:#0969DA}.lv-box{color:#1A7F37}.lv-ctn{color:#BC4C00}

.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:6px 0 12px}
.spacer{flex:1}
.check{display:flex;align-items:center;gap:6px;font-size:14px;color:#11202E}
.check input{width:auto}

/* الجدول */
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff;max-height:52vh}
table{border-collapse:collapse;width:100%;font-size:13.5px}
th,td{padding:7px 9px;border-bottom:1px solid #EDF1F5;text-align:center;white-space:nowrap}
th{position:sticky;top:0;background:var(--header);color:#fff;z-index:1;font-weight:700}
td.name,th.name{text-align:right;white-space:normal;min-width:220px}
tr.short td{background:var(--short)}
tr.over  td{background:var(--over)}
tr.match td{background:var(--match)}
tr.unk   td{background:#FDECEA}
tr.sel td{outline:2px solid var(--accent)}
.stockcol{display:none}
body.reveal .stockcol{display:table-cell}

.progress{height:14px;background:#E2E8F0;border-radius:999px;overflow:hidden;margin-top:10px}
.progress > div{height:100%;background:var(--green);width:0%}
.progress-txt{font-size:13px;color:var(--muted);margin-top:5px}

.totals{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;font-size:14px;color:#11202E}
.totals b{color:var(--header)}

/* النافذة المنبثقة */
.modal-bg{position:fixed;inset:0;background:rgba(16,32,46,.55);display:flex;align-items:center;
  justify-content:center;z-index:50;padding:14px}
.modal{background:#fff;border-radius:14px;padding:18px;width:min(520px,96vw);max-height:92vh;overflow:auto}
.modal h3{margin:0 0 12px;color:var(--header)}
#reader{width:100%}
.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#11202E;color:#fff;
  padding:10px 18px;border-radius:10px;font-size:14px;z-index:60;opacity:0;transition:opacity .2s}
.toast.show{opacity:.95}
.warnote{font-size:12.5px;color:var(--muted);margin-top:6px}
.pill{display:inline-block;background:#EEF2F6;border:1px solid var(--line);border-radius:999px;
  padding:2px 10px;font-size:12px;margin:2px}
