@font-face{font-family:'thmanyah sans';font-weight:400;src:url(fonts/regular.woff2) format('woff2')}
@font-face{font-family:'thmanyah sans';font-weight:500;src:url(fonts/medium.woff2) format('woff2')}
/* وضع الخصوصية: المبالغ تُرسم نجومًا من دالة التنسيق نفسها (التواريخ والعدّادات تبقى ظاهرة)، وحقول الأرقام المفتوحة للتعديل تُخفي أرقامها بخط صغير لا يرسم إلا الأرقام */
@font-face{font-family:'stars';src:url(fonts/stars.woff2) format('woff2');unicode-range:U+0030-0039,U+0660-0669,U+06F0-06F9}
html.priv input[type=number]{font-family:'stars','thmanyah sans',system-ui,sans-serif!important}
.privbtn{display:inline-flex;align-items:center;gap:6px}
:root{--ink:#140e56;--ink2:#4b3f7a;--glass:rgba(255,255,255,.42);--glass2:rgba(255,255,255,.7);--gb:rgba(255,255,255,.8);--line:rgba(75,49,159,.14);
--pos:#17573b;--neg:#8e2525;--warn:#734408;--accent:#4b319f;--accent-ink:#fff;--track:rgba(75,49,159,.12);--tipbg:rgba(255,255,255,.96);--field:rgba(255,255,255,.75);
--bg:radial-gradient(circle at 12% 8%,#ad99e1 0,rgba(173,153,225,0) 42%),radial-gradient(circle at 92% 22%,#a9c7d3 0,rgba(169,199,211,0) 40%),radial-gradient(circle at 60% 100%,#d9cdf5 0,rgba(217,205,245,0) 55%),#ece7fb;
--shadow:0 8px 30px rgba(20,14,86,.08)}
@media (prefers-color-scheme:dark){:root{--ink:#f1edff;--ink2:#b9aee6;--glass:rgba(40,30,92,.5);--glass2:rgba(60,46,130,.6);--gb:rgba(255,255,255,.14);--line:rgba(255,255,255,.12);
--pos:#7fd6aa;--neg:#ff9b97;--warn:#f0c27a;--accent:#9a85e8;--accent-ink:#140e56;--track:rgba(255,255,255,.12);--tipbg:rgba(44,34,100,.98);--field:rgba(255,255,255,.08);
--bg:radial-gradient(circle at 12% 8%,#4b319f 0,rgba(75,49,159,0) 45%),radial-gradient(circle at 92% 22%,#2d424c 0,rgba(45,66,76,0) 42%),#120d2e;--shadow:0 8px 30px rgba(0,0,0,.3)}}
*{box-sizing:border-box}
@media (prefers-color-scheme:dark){html{background:#120d2e}}
.shell>*{min-width:0}
.main{overflow-x:clip}
html{background:#ece7fb;overflow-x:clip}
body{overflow-x:clip;margin:0;min-height:100vh;font-family:'thmanyah sans',system-ui,sans-serif;color:var(--ink);background:var(--bg) fixed;font-size:15px;line-height:1.7}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit;font-size:14px;color:var(--ink)}
.ltr{direction:ltr;unicode-bidi:embed}
.glass{background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%);border:.5px solid var(--gb);border-radius:20px;box-shadow:var(--shadow)}
/* الهيكل */
.shell{display:grid;grid-template-columns:230px 1fr;gap:16px;padding:16px;max-width:1500px;margin:0 auto;min-height:100vh}
.side{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 32px);overflow:auto;padding:14px 10px;display:flex;flex-direction:column;gap:2px}
.logo{display:flex;align-items:center;gap:10px;padding:6px 10px 14px}
.logo b{width:36px;height:36px;border-radius:11px;background:#4b319f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;flex:none}
.logo span{font-weight:500;line-height:1.3;font-size:14px}
.logo small{display:block;font-size:11px;color:var(--ink2);font-weight:400}
.nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;font-size:14px;color:var(--ink2)}
.nav a:hover{background:var(--glass2);color:var(--ink)}
.nav a.on{background:var(--accent);color:var(--accent-ink)}
.nav .sec{font-size:12px;color:var(--ink2);padding:12px 12px 4px}
.nav a.on .pill{background:#fff;color:#4b319f}
.nav svg{width:18px;height:18px;flex:none}
.main{min-width:0;display:flex;flex-direction:column;gap:14px}
.top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 16px}
.top .who{display:flex;align-items:center;gap:10px}
.page{display:flex;flex-direction:column;gap:14px}
.ph{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ph h1{margin:0;font-size:22px;font-weight:500}
.crumb{font-size:13px;color:var(--ink2)}
.crumb a{border-bottom:1px dotted var(--ink2)}
/* مكونات */
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}
.grid2{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
.card{padding:16px 18px}
.panel{padding:18px;min-width:0}
.panel>.h,.h{font-size:15px;font-weight:500;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.lbl{font-size:12px;color:var(--ink2)}
.num{font-size:26px;font-weight:500;margin-top:2px;white-space:nowrap}
.pos{color:var(--pos)}.neg{color:var(--neg)}.warn{color:var(--warn)}.mut{color:var(--ink2)}
a.card{display:block;transition:transform .15s}a.card:hover{transform:translateY(-2px)}
.sub{font-size:12px;color:var(--ink2)}
.pill{display:inline-block;font-size:12px;padding:2px 10px;border-radius:999px;background:var(--track);color:var(--ink2);white-space:nowrap}
.pill.ok{background:rgba(31,107,74,.15);color:var(--pos)}.pill.wait{background:rgba(133,79,11,.16);color:var(--warn)}.pill.bad{background:rgba(163,45,45,.14);color:var(--neg)}
.btn{display:inline-flex;align-items:center;gap:6px;border:.5px solid var(--gb);background:var(--glass2);border-radius:999px;padding:7px 16px;cursor:pointer;font-size:13px;white-space:nowrap}
.btn:hover{border-color:var(--ink2)}
.btn.pri{background:var(--accent);color:var(--accent-ink);border-color:transparent}
.btn.sm{padding:3px 11px;font-size:12px}.btn.danger{color:var(--neg)}
.btn[disabled]{opacity:.5;pointer-events:none}
.btns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ref{border-bottom:1px dotted var(--ink2);cursor:pointer}.ref:hover{border-bottom-style:solid}
.who{display:inline-flex;align-items:center;gap:8px}
.av{display:inline-flex;align-items:center;justify-content:center;object-fit:cover;color:#fff;font-weight:500;flex:none;overflow:hidden}
/* جداول */
.tw{overflow-x:auto;border-radius:14px}
table{border-collapse:collapse;width:100%;font-size:13.5px}
th{font-weight:500;color:var(--ink2);text-align:right;padding:9px 10px;border-bottom:.5px solid var(--line);white-space:nowrap;font-size:12px}
td{padding:9px 10px;border-bottom:.5px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
tbody tr:hover td{background:var(--glass2)}
td.n,th.n{text-align:left;direction:ltr;white-space:nowrap}
tbody td:first-child .ltr{white-space:nowrap}
td.act{white-space:nowrap;text-align:left}
.compact table{font-size:12.5px}.compact th,.compact td{padding:9px 6px}.compact .btn.sm{padding:4px 8px}
.empty{padding:28px;text-align:center;color:var(--ink2)}
/* نماذج */
.form{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr))}
.fld{display:flex;flex-direction:column;gap:4px;min-width:0}
.fld.wide{grid-column:1/-1}
.fld label{font-size:12px;color:var(--ink2)}
input,select,textarea{background:var(--field);border:.5px solid var(--line);border-radius:12px;padding:9px 12px;width:100%;min-width:0}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0}
input[type=checkbox]{width:auto}
textarea{resize:vertical;min-height:70px}
.bar{height:8px;border-radius:999px;background:var(--track);overflow:hidden}.bar i{display:block;height:8px;border-radius:999px;background:var(--accent)}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.filters select,.filters input{width:auto;min-width:120px;padding:6px 12px;font-size:13px}
.tabs{display:flex;gap:6px;flex-wrap:wrap}
.tabs a{padding:6px 14px;border-radius:999px;font-size:13px;color:var(--ink2);border:.5px solid transparent}
.tabs a.on{background:var(--accent);color:var(--accent-ink)}
.tabs a:not(.on):hover{border-color:var(--gb)}
.kv{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:.5px solid var(--line);font-size:14px}.kv:first-of-type{border-top:0}
.note{font-size:13px;color:var(--ink2)}
.alert{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;border-radius:16px;font-size:14px}
.alert.warn{background:rgba(133,79,11,.12)}.alert.err{background:rgba(163,45,45,.12)}
/* نافذة */
.modal-bg{position:fixed;inset:0;background:rgba(20,14,86,.35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:4vh 12px;z-index:50;overflow:auto}
.modal{width:min(760px,100%);padding:22px;background:var(--tipbg);margin-bottom:4vh}
.modal h2{margin:0 0 14px;font-size:18px;font-weight:500}
.modal .foot{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}
.err{color:var(--neg);font-size:13px;margin-top:8px}
#toasts{position:fixed;bottom:18px;left:18px;display:flex;flex-direction:column;gap:8px;z-index:90}
.toast{background:var(--tipbg);border:.5px solid var(--gb);border-radius:14px;padding:10px 16px;box-shadow:var(--shadow);font-size:14px}
/* تلميحات */
.tip{position:relative;border-bottom:1px dotted var(--ink2);cursor:help;outline:none}
.tip::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);right:0;width:max-content;max-width:240px;padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.7;font-weight:400;text-align:right;white-space:normal;color:var(--ink);background:var(--tipbg);border:.5px solid var(--gb);box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .15s,transform .15s;z-index:30}
.tip:hover::after,.tip:focus::after{opacity:1;transform:none}
/* الدخول */
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}
.auth .box{width:min(420px,100%);padding:28px}
.auth h1{margin:0 0 4px;font-size:22px;font-weight:500}
.chart text{fill:var(--ink2);font-family:inherit;font-size:11px}
.coa-row{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:.5px solid var(--gb);cursor:default}
details.coa-d>summary{cursor:pointer;list-style:none}details.coa-d>summary::-webkit-details-marker{display:none}
details.coa-d>summary::before{content:'◂';color:var(--ink2);font-size:11px;transition:transform .15s}details.coa-d[open]>summary::before{transform:rotate(-90deg)}
.coa-code{color:var(--ink2);font-size:12px;min-width:44px}.coa-name{flex:1}.coa-val{margin-right:auto}a.coa-val{cursor:pointer;text-decoration:underline dotted}
.coa>details.coa-d>summary{font-weight:500;font-size:16px;background:rgba(127,127,127,.07);border-radius:10px}
@media(max-width:860px){
 .shell{grid-template-columns:1fr;padding:10px}
 .side{position:static;max-height:none;flex-direction:row;overflow-x:auto;padding:8px;gap:4px;width:100%}
 .main,.page,.panel,.top{max-width:100%;min-width:0}
 .num{font-size:22px}
 .logo{display:none}.nav{display:flex;gap:4px}.nav .sec{display:none}
 .nav a{white-space:nowrap;padding:8px 12px}
 .grid2{grid-template-columns:1fr}
}

.dr{cursor:pointer;transition:transform .12s,box-shadow .12s}
.card.dr:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(75,49,159,.18)}
.dr,[data-dr]{cursor:pointer}
[data-dr]:hover{background:rgba(120,100,200,.10);border-radius:10px}
.dchip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-radius:14px;background:rgba(120,100,200,.12);margin-bottom:12px}

.logo.wsw.multi{cursor:pointer;border-radius:14px}.logo.wsw.multi:hover{background:var(--glass2)}.logo .caret{margin-right:auto;font-style:normal;color:var(--ink2);font-size:12px}
.wsm{position:absolute;z-index:30;top:78px;right:10px;left:10px;margin:0;padding:6px;border-radius:16px;background:var(--tipbg);box-shadow:0 10px 30px rgba(20,14,86,.18)}
.wsm a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;color:var(--ink)}.wsm a:hover,.wsm a.on{background:var(--glass2)}
.wsm b{width:30px;height:30px;border-radius:9px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;flex:none}.wsm span{font-size:13.5px;line-height:1.3}.wsm small{display:block;font-size:11px;color:var(--ink2)}

/* ===== الأرقام والبحث ===== */
[hidden]{display:none!important}
/* حقول الأرقام نصية فتقبل الأرقام العربية: الأرقام والناقص من اليسار لليمين، والتلميح العربي يبقى كما هو */
input[data-num]{text-align:right}
input[data-num]:not(:placeholder-shown){direction:ltr}
html.priv input[data-num]{font-family:'stars','thmanyah sans',system-ui,sans-serif!important}
input.bad{border-color:var(--neg);outline:2px solid var(--neg);outline-offset:0}
input[type=search]{-webkit-appearance:none;appearance:none}
/* بحث الجداول الطويلة: صف واحد صغير فوق الجدول */
.tsrow{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.tsrow .tsin{width:min(340px,100%);padding:6px 12px;font-size:13px}
.tscnt{white-space:nowrap}
/* البحث السريع */
.sbtn{display:inline-flex;align-items:center;gap:6px}.sbtn svg{width:16px;height:16px;flex:none}
.modal.gsm{width:min(640px,100%);padding:12px}
.gs-in{display:flex;align-items:center;gap:10px;padding:2px 6px 10px;border-bottom:.5px solid var(--line)}
.gs-in svg{width:20px;height:20px;flex:none;color:var(--ink2)}
.gs-in input{border:0;background:transparent;font-size:16px;padding:6px 4px;outline:none}
.gs-in input:focus{outline:none}
.gs-list{max-height:min(62vh,540px);overflow:auto;padding-top:4px;overscroll-behavior:contain}
.gs-g{font-size:11px;color:var(--ink2);padding:10px 10px 4px}
.gs-it{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:12px;cursor:pointer}
.gs-it b{font-weight:500}
.gs-it .sub{font-size:12px}
.gs-it.on{background:var(--accent);color:var(--accent-ink)}.gs-it.on .sub{color:inherit;opacity:.85}
@media(max-width:860px){.sbtn span{display:none}.sbtn{padding:8px 10px}.modal-bg:has(.gsm){padding:2vh 8px}}

/* === ui-shell === */
/* عناصر الجوال والطباعة مخفية في الشاشات الواسعة كي يبقى الحاسوب كما هو */
.ush-top,.ush-bar,.ush-printhead,.ush-x{display:none}
.ush-dock{display:contents}
.psel{width:auto;padding:6px 12px;font-size:13px}
input.psel{padding:5px 10px}
.ush-pr svg{width:16px;height:16px;flex:none}
.ush-eb{justify-content:center;margin-top:12px}
/* شاشة التحميل الأولى */
.ush-boot{min-height:60vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--ink2);font-size:15px;padding:24px;text-align:center}
.ush-spin{width:18px;height:18px;border-radius:50%;border:2px solid var(--track);border-top-color:var(--accent);animation:ush-rot .9s linear infinite;flex:none}
@keyframes ush-rot{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ush-spin{animation:none}}
/* إبراز الحقل الخاطئ ورسالة «حُفظ» */
input.ush-bad,select.ush-bad,textarea.ush-bad,input.ush-bad:focus,select.ush-bad:focus,textarea.ush-bad:focus{border-color:var(--neg);outline:2px solid var(--neg);outline-offset:0}
.ush-badw>label{color:var(--neg)}
.err.ush-ok{color:var(--pos)}
/* نافذة التأكيد الداخلية */
.modal-bg.ush-ask{z-index:80;align-items:center;padding:16px;background:rgba(20,14,86,.45)}
.modal.ush-dlg{width:min(420px,100%);margin:0;padding:20px}
.ush-dlg h2{margin:0 0 10px}
.ush-dlg .ush-msg{white-space:pre-line;line-height:1.9;margin:0 0 14px;font-size:15px;color:var(--ink)}
.ush-dlg .foot{margin-top:14px}
/* زر اختيار الملف بالعربية (حقل الملف الأصلي مخفي ويبقى بمعرّفه وقيمته) */
input[type=file].ush-fi{display:none}
.ush-file{display:flex;flex-direction:column;gap:6px;min-width:0}
.ush-fb{display:flex;gap:8px;flex-wrap:wrap}
.ush-fb .btn svg{width:16px;height:16px;flex:none}
.ush-cam{display:none}
@media (pointer:coarse){.ush-cam{display:inline-flex}}
.ush-fn{font-size:12.5px;word-break:break-all}
/* شارة العدد في شريط الجوال */
:root{--ush-bar-h:64px;--ush-bd:#8e2525;--ush-bd-ink:#fff;--ush-solid:#fdfcff}
@media (prefers-color-scheme:dark){:root{--ush-bd:#ff9b97;--ush-bd-ink:#140e56;--ush-solid:#2b2163}}

/* ===== الجوال ===== */
@media(max-width:860px){
 /* أهداف اللمس: أزرار 44 (والصغيرة 36 بتباعد) وحقول 44 ومربع اختيار 20 وتبويبات 40 */
 .btn{min-height:44px}
 .btn.sm{min-height:36px}
 .btns{gap:10px}
 input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea,.filters select,.filters input,.tsrow .tsin{min-height:44px;font-size:16px}
 textarea{min-height:88px}
 input[type=checkbox],input[type=radio]{width:20px!important;height:20px!important;min-height:0;flex:none}
 label:has(>input[type=checkbox]){min-height:44px}
 .tabs a{min-height:40px;display:inline-flex;align-items:center}
 .nav a{min-height:44px}
 .ush-pr{display:none}
 /* قشرة الشركة والمطعم: ترويسة بسطر واحد وشريط سفلي (الشريك لا يستعمل .ush فلا يتأثر) */
 .shell.ush{padding:10px 12px calc(var(--ush-bar-h) + 20px + env(safe-area-inset-bottom));gap:10px}
 .shell.ush>.side,.shell.ush .main>.top{display:none}
 .shell.ush .main{gap:10px}
 .shell.ush .ush-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:nowrap;padding:8px 10px}
 .shell.ush .ush-top:has(input.psel){flex-wrap:wrap}
 .ush-who{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 0}
 .ush-who b{width:34px;height:34px;border-radius:10px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;flex:none}
 .ush-who span{font-weight:500;font-size:14px;line-height:1.25;overflow:hidden;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}
 .ush-tools{display:flex;align-items:center;gap:6px;flex:none;justify-content:flex-end}
 .ush-top:has(input.psel) .ush-tools{flex-wrap:wrap}
 .ush-tools .btn{min-width:44px;justify-content:center;padding-inline:10px}
 .ush-tools .psel{max-width:112px;min-height:44px;padding:6px 6px}
 .ush-acc{border-radius:50%;width:44px;padding:0;font-weight:500;font-size:15px}
 .ush-bar{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:40;height:calc(var(--ush-bar-h) + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);background:var(--tipbg);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);border-top:.5px solid var(--gb);box-shadow:0 -6px 24px rgba(20,14,86,.10)}
 .ush-bar>a,.ush-bar>.ush-mb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;min-width:0;padding:6px 2px;position:relative;color:var(--ink2);font-size:12px;line-height:1.3;background:none;border:0;cursor:pointer;white-space:nowrap}
 .ush-bar svg{width:22px;height:22px;flex:none}
 .ush-bar>a.on,.ush-bar>.ush-mb.on{color:var(--accent);font-weight:500}
 .ush-bar>a.on::before,.ush-bar>.ush-mb.on::before{content:'';position:absolute;top:0;left:24%;right:24%;height:3px;border-radius:0 0 3px 3px;background:var(--accent)}
 .ush-plus{justify-self:center;width:54px;height:54px;border-radius:50%;background:var(--accent);color:var(--accent-ink);border:0;display:flex;align-items:center;justify-content:center;margin-top:-20px;box-shadow:0 6px 16px rgba(75,49,159,.4);cursor:pointer}
 .ush-plus svg{width:26px;height:26px;stroke-width:2.2}
 .ush-bd{position:absolute;top:5px;left:calc(50% + 3px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ush-bd);color:var(--ush-bd-ink);font-size:11px;font-style:normal;font-weight:500;line-height:18px;text-align:center}
 /* الشريط يهبط خارج الشاشة أثناء الكتابة (لوحة المفاتيح) ويعود بعد تأخير قصير: فلو لمس المستخدم زرًا أسفل الصفحة فأفلت الحقل تركيزه لما غطّاه الشريط قبل اكتمال النقرة */
 .ush-bar{transition:transform .2s ease .45s}
 body:has(input:focus:not([type=checkbox]):not([type=radio]),select:focus,textarea:focus) .ush-bar{transform:translateY(calc(100% + 40px));pointer-events:none;transition-delay:0s}
 @media (prefers-reduced-motion:reduce){.ush-bar{transition-duration:.01s}}
 /* الإشعارات فوق الشريط، وفي أعلى الشاشة حين تكون نافذة مفتوحة كي لا تغطي زر الحفظ */
 #toasts{left:12px;right:12px}
 body:has(.ush-bar) #toasts{bottom:calc(var(--ush-bar-h) + 14px + env(safe-area-inset-bottom))}
 body:has(.modal-bg:not(.ush-ask)) #toasts{top:12px;bottom:auto}
 /* النوافذ بملء الشاشة: عنوان ثابت أعلى وتذييل ثابت أسفل يحمل الخطأ وزر الحفظ */
 .modal-bg:not(.ush-sheet):not(.ush-ask):not(:has(.gsm)){padding:0;align-items:stretch}
 .modal-bg:not(.ush-sheet):not(.ush-ask):not(:has(.gsm)) .modal{width:100%!important;margin:0;border-radius:0;border:0;box-shadow:none;padding:0 16px;display:flex;flex-direction:column}
 .modal-bg:not(.ush-sheet):not(.ush-ask):not(:has(.gsm)) .modal>h2{position:sticky;top:0;z-index:3;margin:0 -16px 14px;padding:12px 16px;background:var(--ush-solid);border-bottom:.5px solid var(--line);display:flex;align-items:center;gap:10px;font-size:17px}
 .ush-x{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin:-6px 0 -6px -4px;border-radius:50%;border:0;background:var(--glass2);color:var(--ink);cursor:pointer;flex:none;padding:0}
 .ush-x svg{width:20px;height:20px}
 .modal-bg:not(.ush-sheet):not(.ush-ask):not(:has(.gsm)) .modal .ush-dock{display:block;position:sticky;bottom:0;z-index:3;margin:auto -16px 0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--ush-solid);border-top:.5px solid var(--line)}
 .ush-dock .foot .btn:not(.pri){border:1px solid var(--line)}
 .ush-dock .err{margin:0 0 8px;font-size:14px}
 .ush-dock .foot{margin:0;flex-wrap:nowrap;gap:8px}
 .ush-dock .foot .btn{flex:1 1 auto;justify-content:center;min-width:0;white-space:normal;text-align:center;line-height:1.35}
 .ush-dock .foot .btn.pri{flex:2 1 auto}
 .modal .form{padding-bottom:12px}
 .modal .fld{scroll-margin:76px 0 140px}
 /* لوحات من الأسفل: المزيد والإضافة والحساب */
 .modal-bg.ush-sheet{padding:0;align-items:flex-end}
 .ush-sheet .modal{width:100%!important;margin:0;border-radius:22px 22px 0 0;max-height:86dvh;overflow:auto;overscroll-behavior:contain;padding:10px 16px calc(18px + env(safe-area-inset-bottom));animation:ush-up .22s ease-out}
 .ush-sheet .modal::before{content:'';display:block;width:40px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 6px}
 .ush-sheet .modal h2{margin:4px 0 12px}
 @keyframes ush-up{from{transform:translateY(28px);opacity:0}to{transform:none;opacity:1}}
 @media (prefers-reduced-motion:reduce){.ush-sheet .modal{animation:none}}
 .ush-sec{font-size:12px;color:var(--ink2);margin:14px 0 6px}
 .ush-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .ush-li{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 12px;border-radius:14px;background:var(--glass2);border:.5px solid var(--gb);font-size:14px;color:var(--ink)}
 .ush-li svg{width:20px;height:20px;flex:none;color:var(--ink2)}
 .ush-li span{flex:1;min-width:0;line-height:1.4}
 .ush-li.on{background:var(--accent);color:var(--accent-ink);border-color:transparent}
 .ush-li.on svg{color:inherit}
 .ush-ws{display:flex;flex-direction:column;gap:6px;margin-bottom:4px}
 .ush-ws a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;color:var(--ink);background:var(--glass2)}
 .ush-ws a.on{outline:2px solid var(--accent)}
 .ush-ws b{width:32px;height:32px;border-radius:10px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;flex:none}
 .ush-ws span{font-size:14px;line-height:1.3}
 .ush-ws small{display:block;font-size:12px;color:var(--ink2)}
 .ush-act{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .ush-act .btn{min-height:68px;flex-direction:column;justify-content:center;gap:6px;border-radius:18px;font-size:14px;white-space:normal;text-align:center}
 .ush-act .btn svg{width:22px;height:22px}
 .ush-act .btn.pri{grid-column:1/-1;flex-direction:row;min-height:56px;gap:10px}
 .ush-act.one{grid-template-columns:1fr}
 .ush-act.one .btn{flex-direction:row;min-height:48px;gap:10px}
 .ush-pbtn{width:100%;justify-content:center}
 .ush-role{margin:-6px 0 14px}
 /* التلميح لا يخرج عن الشاشة: بعرض الحاوية تحت العنصر بدل التمدد من اليمين */
 .tip::after{position:fixed;left:12px;right:12px;top:auto;bottom:auto;width:auto;max-width:none;margin-top:2em;z-index:60}
}

/* ===== الطباعة: بلا قائمة ولا أزرار، خلفية بيضاء، وترويسة باسم الشركة والفترة ===== */
@media print{
 :root{--ink:#000;--ink2:#444;--glass:#fff;--glass2:#fff;--gb:#ccc;--line:#ccc;--tipbg:#fff;--field:#fff;--pos:#0b5b36;--neg:#8e2525;--warn:#734408;--track:#e5e5e5;--accent:#333;--accent-ink:#fff;--bg:#fff;--shadow:none}
 @page{margin:12mm}
 html,body{background:#fff!important;color:#000}
 body{font-size:12px}
 .side,.top,.ush-top,.ush-bar,.ush-pr,.ush-boot,#toasts,.modal-bg,.btn,.filters,.tsrow,.tabs,.sbtn,.privbtn,.wsm,select,input,textarea{display:none!important}
 .shell{display:block;padding:0;max-width:none;min-height:0}
 .main{display:block}
 .glass{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;border:.5px solid #ccc}
 .page{gap:10px}
 .tw{overflow:visible}
 table{font-size:11px}
 thead{display:table-header-group}
 tr,.card{break-inside:avoid}
 a{color:inherit}
 .ush-printhead{display:flex!important;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding:0 0 6px;margin-bottom:10px;border-bottom:1px solid #000;font-size:13px}
}
/* === نهاية ui-shell === */

/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */

/* === ui-tables === */
/* فرز الترويسة بالنقر */
th.utb-s{cursor:pointer;user-select:none}
th.utb-s:hover{color:var(--ink)}
th.utb-s::after{content:'⇅';margin-inline-start:5px;font-size:10px;opacity:.4}
th.utb-s[aria-sort=ascending]::after{content:'▲';opacity:1;color:var(--accent)}
th.utb-s[aria-sort=descending]::after{content:'▼';opacity:1;color:var(--accent)}
th.utb-s:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}
/* سطر المجموع السفلي */
.utbt tfoot td{font-weight:500;border-top:1px solid var(--line);border-bottom:0;background:var(--glass2);padding-top:10px;padding-bottom:10px}
/* تمييز الحالة: لا شارة للمعتمد؛ المسودة بشريط جانبي برتقالي، والمعكوس باهت مشطوب */
.utbt tr.utb-dr>td:first-child{box-shadow:inset -3px 0 0 var(--warn)}
.utbt tr.utb-rv>td{opacity:.55}
.utbt tr.utb-rv>td:not(.act){text-decoration:line-through}
/* إجراء السطر: إجراء أساسي ظاهر وقائمة «⋯» */
.utb-act{justify-content:flex-end;flex-wrap:nowrap;gap:6px}
.utb-mb{padding:3px 10px;font-size:16px;line-height:1.1}
.utb-pop{position:fixed;z-index:70;min-width:170px;padding:6px;border-radius:14px;display:flex;flex-direction:column;background:var(--tipbg)}
.utb-mi{border:0;background:none;text-align:right;padding:9px 14px;border-radius:10px;cursor:pointer;font-size:13.5px;white-space:nowrap}
.utb-mi:hover,.utb-mi:focus-visible{background:var(--glass2)}
.utb-mi.danger{color:var(--neg)}
/* قسم مطوي (تصفية متقدمة، أشرطة) */
details.utb-adv{margin:0 0 12px}
details.utb-adv>summary{cursor:pointer;font-size:13px;color:var(--ink2);padding:4px 0;list-style:none;display:inline-flex;align-items:center;gap:6px}
details.utb-adv>summary::-webkit-details-marker{display:none}
details.utb-adv>summary::before{content:'◂';font-size:11px;transition:transform .15s}
details.utb-adv[open]>summary::before{transform:rotate(-90deg)}
/* عنوان مصدر الأرقام (صفحة المطعم داخل الشركة) */
.utb-src{margin:2px 4px 8px;line-height:1.7}
/* بند مغلق مطوي (البنود المفتوحة) */
details.utb-cl{margin-bottom:8px;border:1px solid var(--line);border-radius:14px;padding:8px 12px;background:var(--glass2)}
details.utb-cl>summary{cursor:pointer;display:flex;gap:8px;align-items:center;flex-wrap:wrap;list-style:none;font-size:13.5px}
details.utb-cl>summary::-webkit-details-marker{display:none}
details.utb-cl>summary::before{content:'◂';font-size:11px;color:var(--ink2);transition:transform .15s}
details.utb-cl[open]>summary::before{transform:rotate(-90deg)}
details.utb-cl>.panel{margin:8px 0 0!important;padding:8px 0 4px;background:none;border:0;box-shadow:none;backdrop-filter:none}
/* الجوال: أولوية الأعمدة (m:0 يُطوى) وسطر وصفي وتفاصيل السطر عند نقره */
.utb-ms,.utb-d{display:none}
@media(max-width:640px){
 .utbt th.m0,.utbt td.m0{display:none}
 .utbt .utb-ms{display:block;margin-top:2px;line-height:1.55}
 .utbt th,.utbt td{padding:8px 6px}
 .utbt td:not(.n){overflow-wrap:anywhere}
 .utbt th{white-space:normal;font-size:11.5px;line-height:1.4}
 .utbt tr.utb-dr>td:first-child{box-shadow:none}
 .utbt tr.utb-dr>td.utb-p{box-shadow:inset -3px 0 0 var(--warn)}
 .utbt tr[data-f] td.utb-p{position:relative;padding-inline-start:16px}
 .utbt tr[data-f] td.utb-p::before{content:'▸';position:absolute;inset-inline-start:3px;top:11px;font-size:10px;color:var(--ink2)}
 .utbt tr.utb-open td.utb-p::before{content:'▾'}
 .utbt tr.utb-d{display:table-row}
 .utbt tr.utb-d>td{background:var(--glass2);padding:8px 12px}
 .utb-dl{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:12.5px}
 .utb-dl span{display:block;color:var(--ink2);font-size:11.5px}
 .utb-mi{padding:12px 14px;min-height:44px}
}
/* === نهاية ui-tables === */

/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */

/* === ui-flows === */
/* تفاصيل إضافية مطوية (نافذة القيد، ومصروف المطعم: خيارات متقدمة) */
.ufl-more{grid-column:1/-1;border-top:.5px solid var(--line);margin-top:2px}
.ufl-more>summary{cursor:pointer;display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 0;font-size:13px;color:var(--ink2);list-style:none}
.ufl-more>summary::-webkit-details-marker{display:none}
.ufl-more>summary::before{content:'◂';font-size:11px;transition:transform .15s}
.ufl-more[open]>summary::before{transform:rotate(-90deg)}
.ufl-more>summary .sub{font-size:12px}
.ufl-more>.form{margin:4px 0 6px}
@media(max-width:860px){
 /* نافذة القيد على الجوال: المبلغ والعملة في سطر واحد وباقي الحقول بعرض كامل */
 #eform{grid-template-columns:3fr 2fr}
 #eform>.fld{grid-column:1/-1}
 #eform>.fld[data-k="amount"],#eform>.fld[data-k="currency"]{grid-column:auto}
}
/* إقفال اليوم: القنوات في مجموعات (نقد، شبكة، تطبيقات، آجل) */
.ufl-groups{grid-column:1/-1;display:flex;flex-direction:column;gap:10px}
.ufl-grp{border:.5px solid var(--line);border-radius:14px;padding:8px 12px 12px;background:rgba(127,127,127,.05)}
.ufl-gh{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:6px;font-size:13px}
.ufl-gh b{font-weight:500}
.ufl-gb{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ufl-gb:has(>.fld:only-child){grid-template-columns:1fr}
/* تنبيه «يوم ناقص» في نظرة المطعم */
.ufl-gap{align-items:center;justify-content:space-between;flex-wrap:wrap}
.ufl-gap .btn{flex:none}
/* شريط الحساب الملصق (الجوال فقط؛ على الشاشة الكبيرة لوحة «الحساب» ظاهرة أصلًا) */
.ufl-bar{display:none}
@media(max-width:860px){
 html:has(.ufl-bar){scroll-padding-bottom:96px}
 .ufl-bar{display:flex;align-items:center;gap:10px;position:sticky;bottom:calc(var(--ufl-kb,0px) + 8px);z-index:20;margin-top:12px;padding:8px 12px;border:.5px solid var(--gb);border-radius:16px;background:var(--tipbg);box-shadow:var(--shadow)}
 /* إن وُجد الشريط السفلي الثابت للقشرة (يختفي حين يُركَّز حقل) يرتفع شريطي فوقه */
 html:has(.ush-bar):has(.ufl-bar){scroll-padding-bottom:calc(96px + var(--ush-bar-h,64px))}
 body:has(.ush-bar) .ufl-bar{bottom:calc(var(--ush-bar-h,64px) + env(safe-area-inset-bottom) + 8px)}
 body:has(.ush-bar):has(input:focus:not([type=checkbox]):not([type=radio]),select:focus,textarea:focus) .ufl-bar{bottom:calc(var(--ufl-kb,0px) + 8px)}
 .ufl-bi{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
 .ufl-bi span{font-size:11px;color:var(--ink2)}
 .ufl-bi b{font-size:15px;font-weight:500;white-space:nowrap}
 .ufl-bar .btn{min-height:40px;padding:6px 20px}
}
/* === نهاية ui-flows === */

/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */
/* ------------------------------------------------------------------ */
