
:root{
  --bg:#f0f0ea;--card:#fff;--ink:#111111;--muted:#5f5f58;--line:#e2e2da;--line2:#cfcfc5;
  --navy:#111111;--navy2:#2a2a2a;--green:#111111;--green2:#2a2a2a;--red:#b42318;--amber:#b54708;--blue:#175cd3;--violet:#6941c6;--teal:#0e7490;
  --r:12px;--shadow:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.08);
  --s-intake:#98a2b3;--s-pricing:#0e7490;--s-approvals:#b54708;--s-ready:#16a34a;--s-preparing:#6941c6;--s-ready_to_ship:#7a5af8;--s-shipped:#175cd3;--s-in_city:#2e90fa;--s-with_courier:#0086c9;--s-partial:#dc6803;--s-completed:#067647;--s-on_hold:#b42318;--s-cancelled:#667085;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:14px/1.6 Tahoma,Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{margin:0;line-height:1.3}
h1{font-size:22px;font-weight:600}h2{font-size:16px;font-weight:600}h3{font-size:14px;font-weight:600}
.num,code,.ltr{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}.small{font-size:12px}.nowrap{white-space:nowrap}
.hidden{display:none!important}

/* رأس الصفحة */
.top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:10px 20px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none!important;margin-inline-end:auto}
.brand .logo{width:44px;height:38px;background:url(/logo-mark.png) center/contain no-repeat;font-size:0;flex:none}
.brand b{letter-spacing:.2px}
.brand .en{font-weight:600;letter-spacing:2px;font-size:10px;color:var(--ink);direction:ltr;display:block}
.login .brand{flex-direction:column;text-align:center;margin:0 auto}
.login .brand .logo{width:150px;height:148px;background-image:url(/logo.png)}
.brand b{font-size:16px;display:block}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:-2px}
.top nav{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line2);background:#fff;border-radius:9px;padding:7px 12px;cursor:pointer;font-weight:600;font-size:13px;white-space:nowrap;text-decoration:none!important;color:var(--ink);transition:background .12s,border-color .12s}
.btn:hover{background:#f6f6f1;border-color:#b5b5aa}
.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:hover{background:var(--green2)}
.btn.navy{background:var(--navy);border-color:var(--navy);color:#fff}.btn.navy:hover{background:var(--navy2)}
.btn.danger{color:var(--red);border-color:#f3c3be}.btn.danger:hover{background:#fef3f2}
.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:#eef2f6}
.btn.sm{padding:4px 9px;font-size:12px;border-radius:7px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.user{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}

main{padding:18px 20px 60px;min-width:0}
.layout{display:grid;grid-template-columns:auto 1fr;align-items:start}
.side{position:sticky;top:57px;height:calc(100vh - 57px);overflow:auto;width:220px;background:#fff;border-inline-end:1px solid var(--line);padding:12px 10px;display:flex;flex-direction:column;gap:2px}
.side a{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:8px;color:var(--ink);font-size:13px;text-decoration:none!important}
.side a:hover{background:#ecece5}
.side a.on{background:#111;color:#fff;font-weight:600}.side a.on .c{background:rgba(255,255,255,.18);color:#fff}
.side a .c{margin-inline-start:auto;font-size:11px;background:#f2f4f7;border-radius:20px;padding:0 7px;color:var(--muted);font-weight:600}
.side a .c.late{background:#fef3f2;color:#b42318}
.side .grp{font-size:11px;color:var(--muted);font-weight:600;margin:12px 10px 4px}
.side .dot{width:7px;height:7px;border-radius:50%;background:#98a2b3;flex:none}
.side a.done .dot{background:#17b26a}.side a.cour .dot{background:#0086c9}
.quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.quick a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;color:var(--ink);text-decoration:none!important;box-shadow:var(--shadow)}
.quick a b{font-size:22px}.quick a span{font-size:12px;color:var(--muted)}.quick a.on{outline:2px solid var(--navy)}
.person{display:flex;align-items:center;gap:14px;background:var(--navy);color:#fff;border-radius:var(--r);padding:14px 18px;margin-bottom:12px;flex-wrap:wrap}
.person h2{font-size:18px}.person .sub{color:#bdbdb5;font-size:12px}
.person .n{display:flex;gap:10px;margin-inline-start:auto}
.person .n div{background:rgba(255,255,255,.1);border-radius:10px;padding:6px 14px;text-align:center;min-width:90px}
.person .n b{display:block;font-size:20px}.person .n span{font-size:11px;color:#bdbdb5}
@media (max-width:900px){.layout{grid-template-columns:1fr}.side{position:static;height:auto;width:auto;flex-direction:row;flex-wrap:wrap;border:0;border-bottom:1px solid var(--line)}.side .grp{width:100%;margin:6px 4px 0}.quick{grid-template-columns:1fr}}
.page-head{display:flex;align-items:flex-end;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.page-head .sub{color:var(--muted);font-size:12px}
.spacer{flex:1}

/* البحث والفلاتر */
.searchbar{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:10px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;box-shadow:var(--shadow);margin-bottom:14px}
.searchbar input[type=search]{flex:1 1 280px;min-width:200px;border:1px solid var(--line2);border-radius:9px;padding:8px 12px;background:#fbfcfd}
.searchbar select,.searchbar input[type=date]{border:1px solid var(--line2);border-radius:9px;padding:7px 8px;background:#fff;max-width:200px}
input:focus,select:focus,textarea:focus{outline:2px solid #111;outline-offset:0;border-color:#111}

/* عدادات المراحل */
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;cursor:pointer;box-shadow:var(--shadow);position:relative;overflow:hidden;text-align:start}
.stat::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;background:var(--c,#98a2b3)}
.stat .n{font-size:24px;font-weight:600;line-height:1.1;margin-top:4px}
.stat .l{font-size:12px;color:var(--muted)}
.stat.main{background:var(--navy);color:#fff;border-color:var(--navy)}.stat.main .l{color:#bdbdb5}.stat.main::before{display:none}
.stat.on{outline:2px solid var(--c,var(--navy));outline-offset:-1px}
.stat:hover{border-color:#b9c4d3}

/* اللوحة */
.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:10px;overflow-x:auto;padding-bottom:8px;align-items:start}
.col{background:#eaeef3;border-radius:var(--r);padding:8px;min-height:120px}
.col-h{display:flex;align-items:center;gap:6px;padding:4px 6px 8px;font-weight:600;font-size:13px}
.col-h .dot{width:9px;height:9px;border-radius:50%;background:var(--c)}
.col-h .cnt{margin-inline-start:auto;background:#fff;border-radius:20px;padding:0 8px;font-size:12px;color:var(--muted)}
.col .more{display:block;text-align:center;font-size:12px;padding:6px}
.cards{display:grid;gap:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:10px}

.card{display:block;background:#fff;border:1.5px solid var(--line);border-inline-start:4px solid var(--c,#98a2b3);border-radius:10px;padding:10px 12px;color:var(--ink);text-decoration:none!important;box-shadow:var(--shadow);transition:transform .08s,box-shadow .12s}
.card:hover{box-shadow:0 4px 12px rgba(16,24,40,.1);transform:translateY(-1px)}
.card .claim{font-weight:600;font-size:13px;direction:ltr;text-align:right;unicode-bidi:plaintext;letter-spacing:.2px}
.card .row1{display:flex;align-items:center;gap:6px}
.card .row1 .claim{flex:1}
.card .veh{font-size:12px;color:var(--muted);margin-top:2px}
.card .meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}
.card .ws{font-size:11px;color:var(--muted);margin-inline-start:auto}
.pill{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:1px 8px;font-size:11px;font-weight:600;background:#f2f4f7;color:#344054;white-space:nowrap}
.pill.stage{background:color-mix(in srgb,var(--c) 14%,#fff);color:color-mix(in srgb,var(--c) 85%,#000)}
.pill.ok{background:#ecfdf3;color:#067647}.pill.no{background:#fef3f2;color:#b42318}.pill.wait{background:#fffaeb;color:#b54708}.pill.info{background:#eff8ff;color:#175cd3}.pill.shared{background:#f4f3ff;color:#5925dc}
.chk{display:inline-flex;gap:3px}
.chk span{font-size:10.5px;padding:1px 6px;border-radius:5px;background:#f2f4f7;color:#667085;font-weight:600}
.chk span.y{background:#dcfae6;color:#067647}

/* صفحة الطلب */
.req-head{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow);display:grid;gap:12px;margin-bottom:12px;border-top:4px solid var(--c)}
.req-head .t{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.req-head .claim-big{font-size:22px;font-weight:600;direction:ltr;unicode-bidi:isolate}
.kv{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}
.kv div{display:flex;flex-direction:column}.kv b{font-weight:600}.kv span{color:var(--muted);font-size:11.5px}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.steps{display:flex;gap:4px;overflow-x:auto;padding:2px 0 4px}
.steps .s{flex:1 0 auto;min-width:86px;text-align:center;font-size:11px;padding:6px 6px;border-radius:7px;background:#f2f4f7;color:#667085;position:relative;font-weight:600}
.steps .s.done{background:#dcfae6;color:#067647}.steps .s.cur{background:var(--c);color:#fff}
.alert{border-radius:10px;padding:10px 12px;font-size:13px;display:flex;gap:8px;align-items:flex-start}
.alert.warn{background:#fffaeb;border:1px solid #fedf89;color:#7a2e0e}.alert.err{background:#fef3f2;border:1px solid #fecdca;color:#912018}.alert.ok{background:#ecfdf3;border:1px solid #abefc6;color:#05603a}.alert.info{background:#eff8ff;border:1px solid #b2ddff;color:#194185}

.cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
@media (max-width:1100px){.cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cols{grid-template-columns:1fr}}
.box{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;box-shadow:var(--shadow)}
.box h3{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.box h3 .btn{margin-inline-start:auto}
.status-card{border-top:3px solid var(--line2)}
.status-card.ok{border-top-color:#17b26a}.status-card.wait{border-top-color:#f79009}.status-card.no{border-top-color:#f04438}
.status-card .big{font-size:15px;font-weight:600;margin-bottom:4px}
.section{margin-bottom:12px}
.section > .box{padding:0;overflow:hidden}
.section-h{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}
.section-h .btns{margin-inline-start:auto;display:flex;gap:6px;flex-wrap:wrap}
.pad{padding:12px 14px}

table.t{width:100%;border-collapse:collapse;font-size:12.5px}
table.t th{background:#f8fafc;color:#475467;font-weight:600;text-align:start;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0}
table.t td{padding:8px 10px;border-bottom:1px solid #eef1f5;vertical-align:top}
table.t tr:last-child td{border-bottom:0}
table.t td.n,table.t th.n{text-align:center;font-variant-numeric:tabular-nums}
table.t tfoot td{font-weight:600;background:#f8fafc}
.tscroll{overflow-x:auto}
.zero{color:#98a2b3}
.hl{background:#ecfdf3;font-weight:600;color:#067647}
table.t input,table.t select{width:100%;min-width:70px;border:1px solid var(--line2);border-radius:7px;padding:5px 7px;background:#fff}

.ship{border:1px solid var(--line);border-radius:10px;padding:12px;margin:10px 14px}
.ship-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.ship-flow{display:flex;gap:4px;margin:6px 0 10px;flex-wrap:wrap}
.ship-flow span{font-size:11px;padding:3px 8px;border-radius:6px;background:#f2f4f7;color:#667085;font-weight:600}
.ship-flow span.done{background:#d1e9ff;color:#175cd3}.ship-flow span.cur{background:#175cd3;color:#fff}

.timeline{list-style:none;margin:0;padding:12px 14px;display:grid;gap:8px;max-height:460px;overflow:auto}
.timeline li{display:grid;grid-template-columns:130px 1fr;gap:10px;font-size:12.5px;border-bottom:1px dashed #eef1f5;padding-bottom:6px}
.timeline time{color:var(--muted);font-size:11.5px}

/* النوافذ */
dialog{border:0;border-radius:14px;padding:0;width:min(760px,96vw);box-shadow:0 20px 50px rgba(16,24,40,.25);max-height:92vh}
dialog::backdrop{background:rgba(15,27,45,.45)}
dialog form{display:flex;flex-direction:column;max-height:92vh}
.dlg-h{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px}
.dlg-b{padding:16px 18px;overflow:auto;display:grid;gap:12px}
.dlg-f{padding:12px 18px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-start;background:#fafbfc}
.field{display:grid;gap:4px}
.field label{font-size:12px;font-weight:600;color:#344054}
.field input,.field select,.field textarea{border:1px solid var(--line2);border-radius:9px;padding:8px 10px;background:#fff;width:100%}
.field textarea{min-height:70px;resize:vertical}
.frow{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.err-list{margin:0;padding-inline-start:18px}
.check{display:flex;align-items:center;gap:8px;font-size:13px}
canvas.sig{border:1.5px dashed var(--line2);border-radius:10px;width:100%;height:170px;touch-action:none;background:#fcfcfd}

/* شغل اليوم */
.today{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:12px}
.qbox{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:560px}
.qbox-h{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}
.qbox-h .cnt{margin-inline-start:auto;background:#f2f4f7;border-radius:20px;padding:1px 10px;font-weight:600}
.qbox-b{overflow:auto}
.qi{display:block;padding:10px 14px;border-bottom:1px solid #eef1f5;color:var(--ink);text-decoration:none!important}
.qi:hover{background:#f8fafc}
.qi .claim{font-weight:600;direction:ltr;unicode-bidi:isolate}

.toast{position:fixed;bottom:18px;inset-inline-start:18px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;z-index:100;box-shadow:0 8px 24px rgba(0,0,0,.2);max-width:420px;font-size:13px}
.toast.err{background:var(--red)}
.empty{padding:24px;text-align:center;color:var(--muted)}
.drop{border:2px dashed var(--line2);border-radius:var(--r);padding:30px;text-align:center;background:#fff;cursor:pointer}
.drop.over{border-color:var(--blue);background:#eff8ff}
.login{max-width:380px;margin:9vh auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:var(--shadow);display:grid;gap:14px}
.skel{height:60px;border-radius:10px;background:linear-gradient(90deg,#eef1f5,#f6f8fa,#eef1f5);background-size:200% 100%;animation:sk 1.1s infinite}
@keyframes sk{to{background-position:-200% 0}}
@media (max-width:720px){.top{padding:8px 12px;flex-wrap:wrap}main{padding:12px}.board{grid-auto-columns:82vw}.timeline li{grid-template-columns:1fr}.today{grid-template-columns:1fr}}
@media print{.top,.actions,.btn{display:none!important}}
.side.hidden+main{grid-column:1/-1}
