/* =====================================================================
   FIREWALL POS — تنسيقات نقاط البيع (تُحمّل بعد app.css)
   شاشة البيع باللمس والكيبورد، الدفع، القفل، الطاولات، المطبخ، الإيصال، الملصقات، الأصناف، لوحة المتابعة
   ===================================================================== */
:root{--pos-top:#0b3d2e;--tile-r:12px;--ok-2:#1f9d55}

/* ---------------------------------------------------------------- عام */
.hide-sm{display:inline}
@media (max-width:900px){.hide-sm{display:none!important}}
.warn-row td{background:color-mix(in srgb,var(--gold-bg) 70%,transparent)}
.muted-row td{color:var(--mute);opacity:.75}
.tbl-sm td{padding:6px 9px;font-size:13px}.tbl-sm th{padding:7px 9px}
.neg{color:var(--bad)!important}.pos-n{color:var(--ok)!important}
.swatch{display:inline-block;width:18px;height:18px;border-radius:5px;vertical-align:middle;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.pager{display:inline-flex;align-items:center;gap:4px}
.nowrap{flex-wrap:nowrap!important}
.chip.sm{font-size:11.5px;padding:1px 8px}
.chip.off{opacity:.55;text-decoration:line-through}
.chip.bad{background:var(--bad-bg);color:var(--bad);border-color:transparent}
.chip.ok{background:var(--ok-bg);color:var(--ok);border-color:transparent}
.chip-st.ok{background:var(--ok-bg);color:var(--ok)}.chip-st.info{background:#e7f0ff;color:#2457b5}.chip-st.warn{background:var(--gold-bg);color:var(--warn)}.chip-st.bad{background:var(--bad-bg);color:var(--bad)}.chip-st.draft{background:var(--line-2);color:var(--mute)}
.chip-st{display:inline-block;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:600;white-space:nowrap}
.dim-off{opacity:.55}
.cell-show{display:block;padding:6px 4px;text-align:end;font-variant-numeric:tabular-nums}
.grid-t td.w-qty{width:110px}.grid-t td.w-money{width:120px}.grid-t td.w-chk{width:60px;text-align:center}
.grid-t td.w-sm{width:90px}
.bc128{max-width:100%;height:auto}
.sp{flex:1}
.kbd{font:inherit;font-size:11px;border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:0 5px;background:var(--card);color:var(--mute)}

/* ---------------------------------------------------------------- الصفحة الرئيسية (لوحة المتابعة) */
.sell-btn{font-weight:700}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:14px}
.kpis .kpi{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:var(--r-lg);box-shadow:var(--sh-1);text-decoration:none;color:inherit;border-inline-start-width:5px;border-inline-start-color:var(--teal);transition:transform .12s,box-shadow .12s}
.kpis a.kpi:hover{transform:translateY(-1px);box-shadow:var(--sh-2)}
.kpis .kpi b{font-size:24px;line-height:1.2}
.kpis .kpi span{font-size:12.5px;color:var(--mute)}
.kpis .kpi em{font-style:normal;font-size:11.5px;color:var(--mute)}
.kpis .kpi.big{background:linear-gradient(135deg,#0b6b50,#0b3d2e);color:#fff;border:0}
.kpis .kpi.big small,.kpis .kpi.big span,.kpis .kpi.big em{color:#d7efe5}
.kpis .kpi.big b{font-size:30px;color:#fff}
.delta{font-weight:700;font-size:12px;border-radius:20px;padding:0 7px;display:inline-block}
.delta.up{background:var(--ok-bg);color:var(--ok)}.delta.down{background:var(--bad-bg);color:var(--bad)}
.kpi.big .delta.up{background:rgba(255,255,255,.18);color:#bff3d9}.kpi.big .delta.down{background:rgba(255,255,255,.18);color:#ffd2cc}
.alerts{display:flex;flex-direction:column;gap:6px}
.al-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;background:var(--zebra);color:inherit;text-decoration:none;font-size:13.5px}
.al-row i{width:9px;height:9px;border-radius:50%;flex:none;background:var(--mute)}
.al-row.bad i{background:var(--bad)}.al-row.warn i{background:var(--gold)}.al-row.info i{background:#2f6fdb}
.al-row.bad{background:var(--bad-bg)}.al-row.warn{background:var(--gold-bg)}
a.al-row:hover{filter:brightness(.97)}
.dash-cols .card{margin-bottom:14px}
.dash-cols .card h3{font-size:15px;margin:0 0 10px}
.start-card{border:2px dashed color-mix(in srgb,var(--teal) 45%,var(--line));background:color-mix(in srgb,var(--teal-l) 35%,var(--card))}
.start-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:8px}
.start-list a{display:flex;gap:8px;align-items:center;padding:9px 11px;border-radius:10px;background:var(--card);text-decoration:none;color:inherit;border:1px solid var(--line)}
.start-list a.done{color:var(--mute);text-decoration:line-through}
.start-list a .ck{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--line-2);flex:none}
.start-list a.done .ck{background:var(--ok);color:#fff}
.progress{height:8px;border-radius:8px;background:var(--line-2);overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),#2fbf8f)}

/* ---------------------------------------------------------------- شاشات الأصناف والعروض (قائمة + محرر) */
.mx-split{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:14px;align-items:start}
.mx-side{position:sticky;top:0;padding:12px!important;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 170px)}
.mx-filters{display:flex;flex-direction:column;gap:8px}
.mx-filters .row{gap:6px;flex-wrap:wrap}.mx-filters select{flex:1;min-width:0;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--field);padding:0 8px}
.mx-list{flex:1;overflow:auto;box-shadow:none!important;border:1px solid var(--line-2)}
.mx-list tr.sel td{background:color-mix(in srgb,var(--teal-l) 80%,var(--card));font-weight:600}
.mx-main{padding:14px 16px!important;min-width:0}
.mx-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:15.5px}
.mx-title>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tabs-wrap .tab .badge{margin-inline-start:6px}
.tab-body{min-height:200px}
.chips-box{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.chips-box .chip{display:inline-flex;align-items:center;gap:6px;background:var(--teal-l);border-color:transparent;color:var(--teal-d)}
.chips-box .chip .x{border:0;background:none;cursor:pointer;color:inherit;font-size:15px;line-height:1;padding:0}
.checks{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}
.checks>label:first-child:not(.chk-l){width:100%;font-size:12.5px;color:var(--mute);font-weight:600}
.chk-l{display:inline-flex;gap:7px;align-items:center;cursor:pointer;font-size:13.5px}
.party-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;margin-bottom:12px;border-radius:var(--r-lg);background:color-mix(in srgb,var(--teal-l) 45%,var(--card));border:1px solid var(--line)}
.pb-fig small{display:block;font-size:11.5px;color:var(--mute)}.pb-fig b{font-size:18px;font-variant-numeric:tabular-nums}
.priv-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.set-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:0 14px;align-items:start}
.set-grid fieldset{margin-bottom:14px}
@media (max-width:1100px){.mx-split{grid-template-columns:minmax(0,1fr)}.mx-side{position:static;max-height:none}.mx-list{max-height:320px}}

/* ---------------------------------------------------------------- وضع شاشة البيع (ملء الشاشة) */
body.pos-mode .shell{display:block;height:100vh}
body.pos-mode .side,body.pos-mode .topbar{display:none}
body.pos-mode .main{padding:0;height:100vh;overflow:hidden}
body.pos-mode .main>.view{height:100%}
.pos{display:grid;grid-template-rows:auto minmax(0,1fr);height:100vh;background:var(--bg);user-select:none;-webkit-user-select:none}
.pos input,.pos textarea{user-select:text;-webkit-user-select:text}
.pos-top{display:flex;align-items:center;gap:8px;padding:6px 12px;background:linear-gradient(90deg,#0d4433,#0b3d2e 60%,#082e23);color:#e6f3ee;min-height:52px;box-shadow:0 2px 10px rgba(0,0,0,.18);z-index:5}
.pos-top .brand{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:.4px;color:#fff;text-decoration:none;white-space:nowrap}
.pos-top .brand img{width:30px;height:30px;border-radius:8px;background:#fff;object-fit:contain}
.pos-top .tchip{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:20px;background:rgba(255,255,255,.1);font-size:12.5px;white-space:nowrap;color:#e6f3ee;border:0;font:inherit;cursor:default}
.pos-top button.tchip{cursor:pointer}.pos-top button.tchip:hover{background:rgba(255,255,255,.18)}
.pos-top .tchip b{color:#fff}
.pos-top .dot{width:8px;height:8px;border-radius:50%;background:#7edb9b;box-shadow:0 0 0 3px rgba(126,219,155,.25)}
.pos-top .off .dot{background:#ffb35c;box-shadow:0 0 0 3px rgba(255,179,92,.25);animation:blink 1.2s infinite}
.pos-top .tbtn{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;border:0;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}
.pos-top .tbtn:hover{background:rgba(255,255,255,.18)}
.pos-top .tbtn .ic{width:19px;height:19px}
.pos-top .clock{font-variant-numeric:tabular-nums;font-weight:600;min-width:46px;text-align:center}
@keyframes blink{50%{opacity:.35}}
.pos-body{display:grid;grid-template-columns:minmax(0,1fr) clamp(380px,33vw,480px);min-height:0}

/* المنتجات */
.pos-prod{display:flex;flex-direction:column;min-height:0;min-width:0;padding:10px 12px 12px;gap:10px}
.pos-cats{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;flex:none;scrollbar-width:thin}
.cat-chip{--cc:var(--teal);display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border-radius:12px;border:1px solid var(--line);background:var(--card);font:inherit;font-weight:600;font-size:13.5px;cursor:pointer;white-space:nowrap;color:var(--ink);box-shadow:var(--sh-1)}
.cat-chip i{width:10px;height:10px;border-radius:50%;background:var(--cc)}
.cat-chip.on{background:var(--cc);border-color:var(--cc);color:#fff}
.cat-chip.on i{background:#fff}
.pos-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;overflow:auto;align-content:start;padding:2px;flex:1;min-height:0}
.tile-i{--tc:#0b6b50;position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--tile-r);background:var(--card);cursor:pointer;overflow:hidden;text-align:start;padding:0;font:inherit;color:var(--ink);box-shadow:var(--sh-1);transition:transform .08s,box-shadow .12s,border-color .12s;min-height:118px}
.tile-i:hover{border-color:var(--tc);box-shadow:var(--sh-2)}
.tile-i:active{transform:scale(.97)}
.tile-i .ti-img{height:76px;background:color-mix(in srgb,var(--tc) 16%,var(--card));display:grid;place-items:center;font-size:24px;font-weight:800;color:var(--tc);background-size:cover;background-position:center}
.tile-i .ti-body{padding:6px 9px 8px;display:flex;flex-direction:column;gap:2px;flex:1}
.tile-i .ti-nm{font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tile-i .ti-pr{font-weight:800;color:var(--teal-d);font-variant-numeric:tabular-nums;margin-top:auto}
.tile-i .ti-st{position:absolute;top:6px;inset-inline-end:6px;font-size:11px;font-weight:700;border-radius:20px;padding:1px 7px;background:rgba(255,255,255,.9);color:var(--mute)}
.tile-i .ti-st.low{background:var(--gold-bg);color:var(--warn)}.tile-i .ti-st.out{background:var(--bad-bg);color:var(--bad)}
.tile-i .ti-var{position:absolute;top:6px;inset-inline-start:6px;font-size:11px;font-weight:700;border-radius:20px;padding:1px 7px;background:var(--tc);color:#fff}
.tile-i .ti-fav{position:absolute;bottom:40px;inset-inline-start:6px;color:var(--gold)}
.tile-i.back{--tc:#5b6f68;min-height:118px;align-items:center;justify-content:center;font-weight:700;background:var(--zebra)}
.pos-empty{grid-column:1/-1;padding:40px 10px;text-align:center;color:var(--mute)}
.pos-empty .big{font-size:42px;display:block;margin-bottom:6px}

/* السلة */
.pos-cart{display:flex;flex-direction:column;min-height:0;background:var(--card);border-inline-start:1px solid var(--line);box-shadow:0 0 30px rgba(8,30,23,.06)}
.pc-scan{padding:10px 12px 8px;display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line-2)}
.pc-scan .sc-in{flex:1;display:flex;align-items:center;gap:8px;height:48px;border:2px solid var(--teal);border-radius:12px;padding:0 12px;background:var(--field)}
.pc-scan .sc-in .ic{color:var(--teal);width:22px;height:22px;flex:none}
.pc-scan input{flex:1;min-width:0;border:0;outline:none;background:transparent;font:inherit;font-size:16px;height:100%;color:var(--ink)}
.pc-scan .mult{background:var(--gold-bg);color:var(--warn);font-weight:800;border-radius:8px;padding:2px 8px;white-space:nowrap}
.pc-meta{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line-2);align-items:center}
.pc-cust{display:inline-flex;align-items:center;gap:7px;max-width:100%;border:1px dashed var(--line);border-radius:10px;padding:5px 10px;background:var(--zebra);cursor:pointer;font:inherit;color:var(--ink)}
.pc-cust.has{border-style:solid;border-color:color-mix(in srgb,var(--teal) 50%,var(--line));background:var(--teal-l)}
.pc-cust b{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-cust small{color:var(--mute)}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card)}
.seg button{border:0;background:none;padding:5px 10px;font:inherit;font-size:12.5px;cursor:pointer;color:var(--mute);white-space:nowrap}
.seg button.on{background:var(--teal);color:#fff;font-weight:600}
.seg button+button{border-inline-start:1px solid var(--line)}
.pc-tag{display:inline-flex;align-items:center;gap:5px;border-radius:10px;padding:4px 9px;font-size:12.5px;font-weight:600;background:var(--gold-bg);color:var(--warn);border:0;font:inherit;cursor:pointer}
.pc-tag.std{background:#e7f0ff;color:#2457b5}
.pc-lines{flex:1;overflow:auto;min-height:80px}
.pl{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line-2);cursor:pointer;position:relative}
.pl:hover{background:var(--zebra)}
.pl.sel{background:color-mix(in srgb,var(--teal-l) 75%,var(--card));box-shadow:inset 4px 0 0 var(--teal)}
[dir=rtl] .pl.sel{box-shadow:inset -4px 0 0 var(--teal)}
.pl.new{animation:plIn .35s ease-out}
@keyframes plIn{from{background:var(--hl)}}
.pl .nm{font-weight:600;font-size:14px;line-height:1.35;min-width:0}
.pl .nm small{display:block;font-weight:400;color:var(--mute);font-size:12px;line-height:1.35}
.pl .nm .tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}
.pl .nm .tags span{font-size:11px;border-radius:6px;padding:0 6px;background:var(--line-2);color:var(--mute);font-weight:600}
.pl .nm .tags .pr{background:#fde8ec;color:#b4234a}.pl .nm .tags .ds{background:var(--gold-bg);color:var(--warn)}.pl .nm .tags .kt{background:#e7f0ff;color:#2457b5}
.pl .qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card)}
.pl .qty button{width:32px;height:32px;border:0;background:none;font-size:18px;cursor:pointer;color:var(--teal-d)}
.pl .qty button:hover{background:var(--teal-l)}
.pl .qty span{min-width:38px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.pl .amt{text-align:end;font-weight:700;font-variant-numeric:tabular-nums;min-width:74px}
.pl .amt small{display:block;font-weight:400;font-size:11.5px;color:var(--mute)}
.pl .amt s{display:block;font-weight:400;font-size:11.5px;color:var(--mute)}
.pl-acts{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;padding-top:4px}
.pl-acts .btn{min-height:34px;padding:4px 11px;font-size:13px}
.pc-empty{padding:40px 16px;text-align:center;color:var(--mute)}
.pc-empty .ic{width:46px;height:46px;opacity:.35;display:block;margin:0 auto 8px}
.pc-tot{padding:8px 14px;border-top:1px solid var(--line);background:var(--zebra);font-size:13.5px}
.pc-tot .r{display:flex;justify-content:space-between;gap:8px;padding:1px 0;color:var(--mute)}
.pc-tot .r b{color:var(--ink);font-variant-numeric:tabular-nums}
.pc-tot .r.disc b{color:var(--bad)}
.pc-tot .promos{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.pc-tot .promos span{font-size:11.5px;background:#fde8ec;color:#b4234a;border-radius:6px;padding:0 7px;font-weight:600}
.pc-acts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:8px 12px 0}
.pc-acts button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;border:1px solid var(--line);border-radius:11px;background:var(--card);font:inherit;font-size:12px;font-weight:600;cursor:pointer;color:var(--ink);padding:4px 2px;box-shadow:var(--sh-1)}
.pc-acts button:hover{border-color:var(--teal);background:var(--teal-l)}
.pc-acts button .ic{width:20px;height:20px;color:var(--teal)}
.pc-acts button kbd{font:inherit;font-size:10px;color:var(--mute);font-weight:500}
.pc-acts button:disabled{opacity:.45;cursor:not-allowed}
.pc-acts button .n{position:absolute}
.pay-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 12px 12px;min-height:64px;border:0;border-radius:14px;background:linear-gradient(180deg,#14875f,#0b6b50);color:#fff;font:inherit;font-size:18px;font-weight:800;padding:0 20px;cursor:pointer;box-shadow:0 6px 18px rgba(11,107,80,.35);transition:transform .06s,filter .12s}
.pay-btn:hover{filter:brightness(1.07)}.pay-btn:active{transform:translateY(1px)}
.pay-btn:disabled{background:#9db3aa;box-shadow:none;cursor:not-allowed}
.pay-btn .amt{font-size:26px;font-variant-numeric:tabular-nums}
.pay-btn kbd{font:inherit;font-size:11px;opacity:.75;border:1px solid rgba(255,255,255,.5);border-radius:5px;padding:0 5px}
.pos-mbar{display:none}

/* القوائم المنبثقة في الشاشة */
.pos-menu{position:fixed;z-index:60;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-3);padding:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;min-width:330px;max-height:80vh;overflow:auto}
.pos-menu h5{grid-column:1/-1;margin:6px 6px 2px;font-size:11.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.4px}
.pos-menu button{display:flex;align-items:center;gap:9px;border:0;background:none;padding:9px 10px;border-radius:9px;font:inherit;font-size:13.5px;cursor:pointer;color:var(--ink);text-align:start}
.pos-menu button:hover{background:var(--teal-l)}
.pos-menu button .ic{width:18px;height:18px;color:var(--teal);flex:none}
.pos-menu button kbd{margin-inline-start:auto;font:inherit;font-size:10.5px;color:var(--mute)}
.pos-menu button:disabled{opacity:.4}

/* لوحة الأرقام */
.np{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;user-select:none}
.np button{height:58px;border:1px solid var(--line);border-radius:12px;background:var(--card);font:inherit;font-size:22px;font-weight:700;cursor:pointer;color:var(--ink);box-shadow:var(--sh-1);font-variant-numeric:tabular-nums}
.np button:hover{background:var(--teal-l)}
.np button:active{transform:scale(.96)}
.np .np-c{color:var(--bad);font-size:16px}
.np .np-ok{background:var(--teal);color:#fff;border-color:var(--teal)}
.np-in{width:100%;height:58px;font-size:28px;font-weight:800;text-align:center;border:2px solid var(--teal);border-radius:12px;background:var(--field);color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:10px}
.np-in:focus{outline:none;box-shadow:var(--focus)}
.np-wrap{max-width:330px;margin:0 auto}
.np-hint{text-align:center;color:var(--mute);font-size:13px;margin:-4px 0 8px}

/* رمز PIN */
.pin-box{max-width:300px;margin:0 auto;text-align:center}
.pin-dots{display:flex;justify-content:center;gap:12px;margin:8px 0 14px;min-height:22px}
.pin-dots i{width:16px;height:16px;border-radius:50%;border:2px solid var(--teal);display:block}
.pin-dots i.on{background:var(--teal)}
.pin-box.shake{animation:shake .35s}
@keyframes shake{25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-4px)}}
.pin-msg{font-size:13px;color:var(--mute);margin-bottom:10px;white-space:pre-line}
.pin-who{font-weight:700;color:var(--ok)}

/* نافذة الدفع */
.modal.pay-modal{width:min(980px,97vw)}
.pay-dlg{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px}
.pay-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.pay-sum div{border-radius:12px;padding:10px 12px;background:var(--zebra);border:1px solid var(--line-2)}
.pay-sum small{display:block;color:var(--mute);font-size:12px}
.pay-sum b{font-size:24px;font-variant-numeric:tabular-nums}
.pay-sum .due{background:linear-gradient(135deg,#0b6b50,#0b3d2e);color:#fff;border:0}.pay-sum .due small{color:#cfe9de}
.pay-sum .chg{background:var(--gold-bg);border-color:transparent}.pay-sum .chg b{color:var(--warn)}
.pay-sum .rem b{color:var(--bad)}
.pm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.pm-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:66px;border:1px solid var(--line);border-radius:12px;background:var(--card);font:inherit;font-weight:700;font-size:13.5px;cursor:pointer;color:var(--ink);box-shadow:var(--sh-1);padding:6px}
.pm-btn:hover{border-color:var(--teal);background:var(--teal-l)}
.pm-btn .ic{width:22px;height:22px;color:var(--teal)}
.pm-btn.cash{background:linear-gradient(180deg,#e9f7f0,#dff2e8);border-color:#9fd3b9}
.pm-btn:disabled{opacity:.4;cursor:not-allowed}
.pm-btn small{font-weight:500;color:var(--mute);font-size:11px}
.quick-cash{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.quick-cash button{min-width:64px;height:42px;border-radius:10px;border:1px solid var(--line);background:var(--card);font:inherit;font-weight:700;cursor:pointer;font-variant-numeric:tabular-nums}
.quick-cash button:hover{background:var(--teal-l);border-color:var(--teal)}
.quick-cash button.exact{background:var(--teal);color:#fff;border-color:var(--teal)}
.pays{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.pays .p{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:var(--teal-l)}
.pays .p b{margin-inline-start:auto;font-variant-numeric:tabular-nums}
.pays .p button{border:0;background:none;color:var(--bad);font-size:18px;cursor:pointer;padding:0 4px}
.pay-opts{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;align-items:center}
.pay-ref{display:flex;gap:6px;margin-top:8px}
.pay-ref input{flex:1}
.pay-busy{position:absolute;inset:0;background:color-mix(in srgb,var(--card) 80%,transparent);display:grid;place-items:center;border-radius:10px;z-index:3;font-weight:700}
.pay-busy .spin{width:42px;height:42px;border:4px solid var(--teal-l);border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 10px}

/* بعد الدفع */
.done-ov{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:rgba(6,22,17,.55);backdrop-filter:blur(4px);animation:fadeIn .15s}
.done-card{background:var(--card);border-radius:22px;padding:26px 30px;width:min(520px,94vw);text-align:center;box-shadow:var(--sh-3)}
.done-card .ok{width:74px;height:74px;border-radius:50%;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;margin:0 auto 8px;font-size:40px;font-weight:900;animation:pop .35s ease-out}
@keyframes pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}
.done-card h2{margin:4px 0 2px;font-size:20px}
.done-card .no{color:var(--mute);font-size:13px}
.done-card .chg{margin:14px 0 6px;padding:12px;border-radius:14px;background:var(--gold-bg)}
.done-card .chg small{display:block;color:var(--warn);font-weight:600}
.done-card .chg b{font-size:40px;font-variant-numeric:tabular-nums;color:#5c3d00}
:root[data-theme=dark] .done-card .chg b{color:var(--gold-l)}
.done-card .acts{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}
.done-card .acts .btn{min-height:46px}
.done-card .new{width:100%;margin-top:12px;min-height:56px;font-size:17px}
.done-card .off-note{margin-top:10px;font-size:12.5px;color:var(--warn)}

/* القفل */
.lock-ov{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:linear-gradient(135deg,rgba(11,61,46,.92),rgba(8,46,35,.96));backdrop-filter:blur(8px);color:#fff}
.lock-card{width:min(380px,94vw);text-align:center}
.lock-card .t{font-size:54px;font-weight:300;font-variant-numeric:tabular-nums;letter-spacing:2px}
.lock-card .d{opacity:.8;margin-bottom:14px}
.lock-card .who{font-weight:700;font-size:17px;margin-bottom:6px}
.lock-card .np button{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#fff;box-shadow:none}
.lock-card .np button:hover{background:rgba(255,255,255,.2)}
.lock-card .pin-dots i{border-color:#fff}.lock-card .pin-dots i.on{background:#fff}
.lock-card .links{display:flex;justify-content:center;gap:14px;margin-top:14px}
.lock-card .links button{border:0;background:none;color:#cfe9de;text-decoration:underline;cursor:pointer;font:inherit}
.lock-card .pw{display:flex;gap:6px;margin-top:10px}.lock-card .pw input{flex:1;height:42px;border-radius:10px;border:0;padding:0 12px;font:inherit}

/* اختيار الجهاز / فتح الوردية */
.pos-gate{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,#e3f2ec,var(--bg) 60%)}
:root[data-theme=dark] .pos-gate{background:var(--bg)}
.gate-card{width:min(720px,96vw);background:var(--card);border-radius:20px;box-shadow:var(--sh-3);padding:24px 26px}
.gate-card h2{margin:0 0 4px;font-size:21px}
.gate-card .sub{color:var(--mute);margin-bottom:16px}
.term-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.term-card{display:flex;flex-direction:column;gap:4px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--card);cursor:pointer;font:inherit;text-align:start;color:var(--ink);box-shadow:var(--sh-1)}
.term-card:hover{border-color:var(--teal);background:var(--teal-l)}
.term-card b{font-size:16px}.term-card small{color:var(--mute)}
.term-card .busy{font-size:12px;color:var(--warn);font-weight:600}
.gate-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}
.den-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.den{display:grid;grid-template-columns:auto 1fr auto;gap:6px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:6px 8px;background:var(--zebra)}
.den b{min-width:44px;font-variant-numeric:tabular-nums}
.den input{width:100%;height:36px;text-align:center;border:1px solid var(--line);border-radius:8px;font:inherit;font-weight:700;background:var(--field);color:var(--ink)}
.den small{color:var(--mute);font-variant-numeric:tabular-nums;min-width:58px;text-align:end}
.count-total{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,#0b6b50,#0b3d2e);color:#fff;font-size:15px}
.count-total b{font-size:26px;font-variant-numeric:tabular-nums}

/* الأصناف بالمتغيرات والإضافات */
.var-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.var-btn{display:flex;flex-direction:column;gap:2px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--card);cursor:pointer;font:inherit;color:var(--ink);text-align:start}
.var-btn:hover{border-color:var(--teal);background:var(--teal-l)}
.var-btn b{font-size:14px}.var-btn span{font-weight:800;color:var(--teal-d)}.var-btn small{color:var(--mute)}
.var-btn.out{opacity:.55}
.mod-grp{margin-bottom:14px}
.mod-grp h4{margin:0 0 6px;font-size:14px;display:flex;gap:8px;align-items:center}
.mod-grp h4 small{font-weight:500;color:var(--mute)}
.mod-grp h4 .req{color:var(--bad)}
.mod-opts{display:flex;flex-wrap:wrap;gap:7px}
.mod-opt{border:1px solid var(--line);border-radius:11px;padding:9px 14px;background:var(--card);cursor:pointer;font:inherit;color:var(--ink);font-weight:600;display:flex;gap:6px;align-items:center}
.mod-opt small{color:var(--mute);font-weight:500}
.mod-opt.on{background:var(--teal);color:#fff;border-color:var(--teal)}.mod-opt.on small{color:#d7efe5}
.mod-grp.bad h4{color:var(--bad)}
.stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.stepper button{width:44px;height:44px;border:0;background:var(--zebra);font-size:22px;cursor:pointer;color:var(--teal-d)}
.stepper span{min-width:56px;text-align:center;font-size:20px;font-weight:800}

/* المطعم: الطاولات */
.tables-wrap{overflow:auto;flex:1;min-height:0}
.area-h{font-size:13px;font-weight:700;color:var(--mute);margin:8px 2px}
.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
.tbl-card{position:relative;display:flex;flex-direction:column;gap:3px;min-height:104px;border:2px solid var(--line);border-radius:16px;padding:12px;background:var(--card);cursor:pointer;font:inherit;color:var(--ink);text-align:start;box-shadow:var(--sh-1)}
.tbl-card b{font-size:17px}
.tbl-card small{color:var(--mute)}
.tbl-card.free:hover{border-color:var(--teal)}
.tbl-card.busy{border-color:#e0a63a;background:linear-gradient(180deg,#fff8e8,var(--card))}
.tbl-card.busy .amt{font-weight:800;color:var(--warn);font-size:16px;margin-top:auto}
.tbl-card.late{border-color:var(--bad);background:linear-gradient(180deg,#fff0ee,var(--card))}
:root[data-theme=dark] .tbl-card.busy{background:#2c2512}:root[data-theme=dark] .tbl-card.late{background:#3a1d1b}
.tbl-card .tm{position:absolute;top:10px;inset-inline-end:10px;font-size:12px;font-weight:700;border-radius:20px;padding:0 8px;background:var(--gold-bg);color:var(--warn)}
.tbl-card.late .tm{background:var(--bad-bg);color:var(--bad)}
.pos-mode-switch{display:flex;gap:6px}

/* شاشة المطبخ */
.kds{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;align-items:start}
.kt-card{border-radius:16px;background:var(--card);box-shadow:var(--sh-2);overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}
.kt-card header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#1f9d55;color:#fff}
.kt-card.warn header{background:#d98a12}.kt-card.late header{background:#c62f24;animation:blink 1.6s infinite}
.kt-card.ready header{background:#2f6fdb}
.kt-card header b{font-size:17px}.kt-card header small{opacity:.9}
.kt-card ul{list-style:none;margin:0;padding:8px 12px;flex:1}
.kt-card li{padding:5px 0;border-bottom:1px dashed var(--line-2);font-size:15px}
.kt-card li b{display:inline-block;min-width:34px;color:var(--teal-d)}
.kt-card li small{display:block;color:var(--bad);padding-inline-start:34px}
.kt-card footer{display:flex;gap:6px;padding:8px 12px;border-top:1px solid var(--line-2)}
.kt-card footer .btn{flex:1;min-height:44px}

/* ملصقات / كوبونات / فاتورة A4 */
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.cp{border:1px dashed #000;border-radius:6px;padding:8px;text-align:center}
.cp svg{max-width:100%;height:auto}
.doc .inv-meta td{font-size:12px}
.doc .inv-parties{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
.doc .inv-parties h3{font-size:13px;margin:0 0 4px;padding:4px 8px;background:#e9efec;border-radius:3px}
.doc .inv-parties table.kv td{font-size:12px}
.doc .inv-lines td small{color:#444}
.doc .inv-sum{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-top:10px}
.doc .inv-totals{width:auto;min-width:58%}
.doc .inv-totals td{border-bottom:1px solid #bbb}
.doc .inv-totals tr.gt td{border-top:2px solid #000;font-size:15px;background:#e9efec}
.doc .words{font-weight:600;margin-top:10px}

/* ---------------------------------------------------------------- الإيصال الحراري */
.rcp{font-family:"IBM Plex Sans Arabic","Noto Sans Arabic",Tahoma,Arial,sans-serif;color:#000;line-height:1.4}
.rcp .en{font-size:.86em;color:#222}
.rcp-logo{text-align:center;margin-bottom:3px}.rcp-logo img{max-height:20mm;max-width:52mm;object-fit:contain}
.rcp-co{text-align:center;font-size:1.12em}
.rcp-c{text-align:center}.rcp-c.sm,.rcp .sm{font-size:.82em}
.rcp-title{text-align:center;font-weight:800;border:1.5px solid #000;border-radius:3px;padding:3px;margin:6px 0}
.rcp-title.big{font-size:1.7em}
.rcp-copy{text-align:center;font-weight:900;letter-spacing:3px;border:2px solid #000;margin-bottom:4px}
.rcp-r{display:flex;justify-content:space-between;align-items:baseline;gap:6px}
.rcp-r .n{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:end}
.rcp-r.sub{font-size:.88em;padding-inline-start:8px}
.rcp-r.warn{font-weight:800}
.rcp-hr{border-top:1px dashed #000;margin:5px 0}
.rcp-lh{display:flex;justify-content:space-between;font-weight:700;font-size:.82em;border-bottom:1px solid #000;padding-bottom:2px;margin-bottom:2px}
.rcp-l{padding:2px 0}
.rcp-l .nm{font-weight:600}
.rcp-mod{font-size:.86em;padding-inline-start:10px}
.rcp-mod.big{font-size:1.15em;font-weight:700}
.rcp-total{font-size:1.3em;font-weight:900;border-block:2px solid #000;margin:5px 0;padding:3px 0}
.rcp-total small{font-size:.6em;font-weight:600}
.rcp-gift{border:1.5px dashed #000;border-radius:4px;padding:5px;margin:7px 0;text-align:center}
.rcp-gift b{font-size:1.25em;letter-spacing:1px}
.rcp-save{text-align:center;font-weight:800;margin:6px 0;border:1px solid #000;border-radius:20px;padding:2px}
.rcp-qr{text-align:center;margin-top:7px}.rcp-qr svg{width:36mm;height:36mm}
.rcp-bc{text-align:center;margin-top:4px}.rcp-bc svg{max-width:100%;height:12mm}
.rcp-foot{text-align:center;margin-top:6px;font-weight:600}
.rcp-pw{text-align:center;font-size:.72em;color:#444;margin-top:7px;letter-spacing:1px}
.rcp-sign{display:flex;justify-content:space-between;margin-top:26px;font-size:.85em}.rcp-sign span{border-top:1px solid #000;padding-top:2px;min-width:40%;text-align:center}
.rcp.kt{font-size:15px}.kt-l{font-size:1.3em;margin:4px 0}
.doc.thermal.p58{width:48mm;font-size:10px}
.doc.thermal.p58 .rcp-qr svg{width:30mm;height:30mm}
.rcp-preview{background:#fff;color:#000;width:76mm;max-width:100%;padding:5mm 4mm;margin:0 auto;border-radius:6px;box-shadow:var(--sh-2);font-size:12.5px}
.rcp-preview.p58{width:56mm}

/* ---------------------------------------------------------------- معالج أول تشغيل */
.wiz{max-width:920px;margin:0 auto;padding:10px 0 40px}
.wiz-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.wiz-head img{width:52px;height:52px;border-radius:14px;background:#fff;box-shadow:var(--sh-2)}
.wiz-head h1{font-size:22px;margin:0}.wiz-head p{margin:2px 0 0;color:var(--mute)}
.wiz-steps{display:flex;gap:6px;margin:10px 0 16px;flex-wrap:wrap}
.wiz-steps span{flex:1;min-width:90px;display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--mute);font-weight:600}
.wiz-steps span i{height:6px;border-radius:6px;background:var(--line-2)}
.wiz-steps span.on{color:var(--teal-d)}.wiz-steps span.on i{background:var(--teal)}
.wiz-steps span.done i{background:color-mix(in srgb,var(--teal) 55%,var(--line-2))}
.wiz-card{background:var(--card);border-radius:20px;box-shadow:var(--sh-2);padding:22px 24px;border:1px solid var(--line)}
.wiz-card h2{margin:0 0 4px;font-size:19px}
.wiz-card>p.sub{margin:0 0 16px;color:var(--mute)}
.wiz-acts{display:flex;align-items:center;gap:10px;margin-top:18px}
.wiz-acts .btn{min-height:46px;padding:8px 22px}
.biz-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.biz{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border:2px solid var(--line);border-radius:16px;background:var(--card);cursor:pointer;font:inherit;color:var(--ink);text-align:center}
.biz .em{font-size:34px}
.biz b{font-size:14.5px}.biz small{color:var(--mute);font-size:12px;line-height:1.4}
.biz:hover{border-color:color-mix(in srgb,var(--teal) 50%,var(--line))}
.biz.on{border-color:var(--teal);background:var(--teal-l);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 20%,transparent)}
.pm-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px}
.pm-pick label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--card)}
.pm-pick label:has(input:checked){border-color:var(--teal);background:var(--teal-l)}
.wiz-done{text-align:center;padding:20px 10px}
.wiz-done .ok{width:84px;height:84px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;font-size:44px;background:var(--ok-bg);color:var(--ok)}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.feat{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.feat .nt{flex:none}
.feat b{display:block}.feat small{color:var(--mute);display:block;margin:2px 0 6px;line-height:1.45}
.feat.on{border-color:color-mix(in srgb,var(--teal) 45%,var(--line));background:color-mix(in srgb,var(--teal-l) 45%,var(--card))}

/* ---------------------------------------------------------------- الجوال والتابلت الصغير */
@media (max-width:900px){
  .pos-body{grid-template-columns:minmax(0,1fr)}
  .pos-cart{position:fixed;inset:52px 0 0 0;z-index:30;transform:translateY(105%);transition:transform .22s ease;border:0}
  .pos.cart-open .pos-cart{transform:none}
  .pos-mbar{display:flex;align-items:center;gap:10px;position:fixed;inset-inline:10px;bottom:10px;z-index:25;padding:10px 14px;border-radius:16px;background:linear-gradient(180deg,#14875f,#0b6b50);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.25);border:0;font:inherit;font-weight:800;font-size:16px;cursor:pointer}
  .pos-mbar .amt{margin-inline-start:auto;font-size:20px}
  .pos.cart-open .pos-mbar{display:none}
  .pos-tiles{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));padding-bottom:80px}
  .pos-top .hide-md{display:none}
  .pay-dlg{grid-template-columns:minmax(0,1fr)}
  .pc-acts{grid-template-columns:repeat(5,minmax(0,1fr))}
  .pc-acts button{min-height:48px;font-size:11px}
  .pc-acts button kbd{display:none}
  .pay-btn kbd{display:none}
}
@media (max-width:600px){.pos-top .brand span{display:none}.pay-sum b{font-size:19px}.np button{height:52px}}
@media print{.pos,.done-ov,.lock-ov,.pos-menu{display:none!important}}

/* المساعد الذكي */
.chat-b .md{white-space:normal}.chat-b .md p{margin:0 0 6px}.chat-b .md ul{margin:4px 0;padding-inline-start:20px}.chat-b .md .md-h{display:block;margin:6px 0 4px}
.chat-b .md table{margin:6px 0;background:var(--card);color:var(--ink)}
.chat-panel .cmp{border:1px solid var(--line);border-radius:14px}
.gate-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
@media (max-width:700px){.gate-split{grid-template-columns:minmax(0,1fr)!important}}

/* ---------------------------------------------------------------- حركة البيانات: عرض الفاتورة، الفلاتر */
.card.filters{padding:12px 14px}.card.filters .grid{align-items:end}
.sale-view{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:16px;align-items:start}
.sale-view .rcp-preview{position:sticky;top:0;max-height:70vh;overflow:auto}
@media (max-width:900px){.sale-view{grid-template-columns:minmax(0,1fr)}.sale-view .rcp-preview{position:static;max-height:none}}

/* ---------------------------------------------------------------- الفوترة الإلكترونية: خطوات ربط كل جهاز */
.egs-list{display:flex;flex-direction:column;gap:12px}
.egs{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--card)}
.egs-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.egs-head b{font-size:15px}
.egs-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:12px}
.egs-steps span{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--mute);font-weight:600;padding:6px 8px;border-radius:10px;background:var(--zebra);min-width:0}
.egs-steps span i{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11.5px;background:var(--line-2);color:var(--ink)}
.egs-steps span.done{color:var(--ok)}.egs-steps span.done i{background:var(--ok);color:#fff}
.egs-steps span.on{color:var(--teal-d);background:var(--teal-l);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--teal) 45%,transparent)}.egs-steps span.on i{background:var(--teal);color:#fff}
.egs-act ul{margin:4px 0 8px;padding-inline-start:20px;color:var(--bad)}
.egs details{margin-top:10px}.egs details td{vertical-align:top}
.ok-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px;color:var(--ok);font-weight:700}
.otp-in{width:130px;text-align:center;font-size:20px;letter-spacing:6px;font-weight:800;padding:6px 8px}
ul.resp{margin:0;padding-inline-start:16px;font-size:12px;color:var(--mute);max-width:420px}
@media (max-width:760px){.egs-steps{grid-template-columns:minmax(0,1fr)}}

/* ---------------------------------------------------------------- الدعم الفني */
.sup-log .chat-b{max-width:78%}
.sup-meta{display:block;font-size:11px;opacity:.75;margin-top:4px}

/* ---------------------------------------------------------------- معالج الإعداد: وضع ملء الصفحة + تجربة القارئ + رابط «مزايا أكثر» */
body.wiz-mode .shell{grid-template-columns:minmax(0,1fr)}
body.wiz-mode .side,body.wiz-mode .menu-toggle,body.wiz-mode .gsearch,body.wiz-mode .sell-btn{display:none!important}
body.wiz-mode .main{background:linear-gradient(180deg,color-mix(in srgb,var(--teal-l) 55%,var(--bg)),var(--bg) 320px)}
.wiz-card h3{font-size:15.5px;margin:18px 0 8px}
.scan-test{width:100%;margin:8px 0 6px;font-size:18px;letter-spacing:2px;text-align:center;padding:8px}
.scan-out{font-size:13px;min-height:20px}.scan-out.ok{color:var(--ok);font-weight:700}
.side .more-feat{margin-top:6px;border-top:1px solid rgba(255,255,255,.09);padding-top:12px;opacity:.9}
.side .more-feat:hover{opacity:1}
.wide-grid .grid-t{min-width:1080px}
.grid-t .w-item{min-width:250px}.grid-t .w-date{min-width:145px;width:150px}.grid-t .w-ser{min-width:170px}
.card.filters .grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.mx-split.mx-doc{grid-template-columns:minmax(230px,280px) minmax(0,1fr)}
@media (max-width:1380px){.mx-split.mx-doc{grid-template-columns:minmax(0,1fr)}.mx-split.mx-doc .mx-side{position:static;max-height:none}.mx-split.mx-doc .mx-list{max-height:240px}}
.mx-list td [dir=ltr]{white-space:nowrap}
@media (max-width:520px){.topbar #btn-lang{display:none}.topbar .sell-btn{font-size:0;gap:0;padding:8px 10px}.topbar .sell-btn svg{width:20px;height:20px}.topbar .gsearch{min-width:0}}
.pop .pop-lang{display:none}@media (max-width:520px){.pop .pop-lang{display:block}}

/* ===== FIREWALL Trade: فواتير المكتب وعروض الأسعار وتحقيق الهدف ===== */
.od-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,380px);gap:14px;align-items:start;margin-top:8px}
@media (max-width:900px){.od-foot{grid-template-columns:1fr}}
.pc-tot .words{font-size:12px;color:var(--muted);margin-top:6px;text-align:start}
.pc-tot .r.muted small{color:var(--muted)}
.grid-t td.w-cc select,.grid-t td.w-cc{min-width:150px}
.grid-t td.w-desc input,.grid-t td.w-desc{min-width:160px}
.party-bar.warn{border-color:#e7b75a;background:color-mix(in srgb,#f4c768 14%,var(--card))}
.pt-bar{position:relative;height:26px;border-radius:13px;background:var(--field);overflow:hidden;margin-top:10px}
.pt-bar i{position:absolute;inset-block:0;inset-inline-start:0;background:linear-gradient(90deg,#0f6b52,#2e9e5b);border-radius:13px}
.pt-bar span{position:relative;display:block;text-align:center;line-height:26px;font-size:12.5px;font-weight:600;color:var(--ink)}
.big-n{font-size:20px;font-variant-numeric:tabular-nums}
.kpi.neg b{color:var(--bad,#c2453d)}
.doc .inv-terms{margin-top:10px;border:1px solid #ccc;border-radius:6px;padding:6px 10px;font-size:12px}
.preview .doc{max-width:900px;margin:0 auto}
.fld > .seg{align-self:flex-start}
.xl-steps{margin:0 0 8px;padding-inline-start:20px;line-height:1.9}
.xl-steps li{margin-bottom:6px}
/* الترخيص والاشتراك */
.lic-head .lic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:12px}
.lic-inst{font-size:16px;font-weight:700;letter-spacing:1px;white-space:nowrap;background:var(--zebra,#f4f7f6);padding:6px 12px;border-radius:8px;user-select:all}
.lic-inst-box{display:flex;flex-direction:column;gap:6px}
.lic-row{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed var(--line,#e3e8e6)}.lic-row:last-child{border-bottom:0}
.lic-results{display:flex;flex-direction:column;gap:4px;margin-top:10px}.lic-res{display:flex;gap:8px;align-items:center;padding:6px 10px;border-radius:6px;font-size:13px}
.lic-res.ok{background:var(--ok-bg);color:var(--ok)}.lic-res.bad{background:var(--bad-bg,#fde8e8);color:var(--bad)}
.lic-req{white-space:pre-wrap;background:var(--zebra,#f4f7f6);padding:10px;border-radius:8px;font-size:12.5px;max-height:320px;overflow:auto}
.lic-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.lic-banner .sp{flex:1}
.banner.info{background:#e7f0ff;border-color:#9bb8ec;border-inline-start-color:#2457b5}
.mono{font-family:ui-monospace,Consolas,monospace}
/* لوحة المالك */
.od-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:12px}
.od-kpi{background:var(--card,#fff);border:1px solid var(--line,#e3e8e6);border-radius:10px;padding:10px 12px}.od-kpi small{color:var(--mute);display:block}.od-kpi b{font-size:20px;display:block}.od-kpi .up{color:var(--ok)}.od-kpi .down{color:var(--bad)}
.od-co h3{margin:0 0 8px}.od-hours{display:flex;align-items:flex-end;gap:2px;height:60px;margin:6px 0}.od-hours span{flex:1;background:var(--teal,#0f6e5c);opacity:.8;border-radius:2px 2px 0 0;min-height:1px}
.od-hours-lbl{display:flex;gap:2px;margin:-4px 0 8px;direction:ltr}.od-hours-lbl span{flex:1;text-align:center;font-size:10.5px;color:var(--mute)}
.lic-ta{width:100%;box-sizing:border-box}
.od-warn{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
/* ===== فاتورة المكتب بنفس فكرة شاشة قيود اليومية: رأس مرتب، أسطر بعرض الشاشة، شريط إجماليات ثابت — ألوان هادئة مريحة للعين ===== */
.od{--od-cr:#2f6fb3;--od-cr-bg:#eef4fb;--od-cr-line:#c9dcf1;display:flex;flex-direction:column;gap:12px}
:root[data-theme=dark] .od{--od-cr:#8fbcef;--od-cr-bg:#16263a;--od-cr-line:#27405e}
.od .card{margin:0}
.od-head{padding:14px 16px!important;display:flex;flex-direction:column;gap:10px;border-top:3px solid var(--teal)}
.od.credit .od-head{border-top-color:var(--od-cr);background:linear-gradient(180deg,var(--od-cr-bg),var(--card) 140px)}
.od-row1{display:grid;grid-template-columns:minmax(150px,190px) minmax(150px,180px) minmax(230px,max-content) minmax(260px,1fr) auto;gap:10px 14px;align-items:end}
.od.quote .od-row1{grid-template-columns:minmax(150px,190px) minmax(150px,180px) minmax(150px,180px) 1fr auto}
.od-row2{display:grid;grid-template-columns:minmax(0,2fr) minmax(170px,1fr) minmax(170px,1fr);gap:10px 14px;align-items:end}
.od .fld{margin:0}
.od .fld>label{font-size:12px;color:var(--mute);font-weight:600;margin-bottom:4px}
.od .docno{font-weight:700;letter-spacing:.3px;background:var(--zebra);text-align:center}
.od-st{align-self:center;justify-self:end;display:flex;gap:6px;flex-wrap:wrap}
.od-pm .seg{flex-wrap:nowrap}
.od-due{min-width:0}.od-due>input{max-width:170px}
.od-chips{display:inline-flex;gap:4px;flex-wrap:wrap;margin-top:5px}
.od-chips button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;font:inherit;font-size:12px;padding:1px 9px;cursor:pointer}
.od-chips button:hover,.od-chips button.on{background:var(--teal);border-color:var(--teal);color:#fff}
.od-chips.big button{font-size:13.5px;padding:5px 14px}
.od-cust-btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 12px;border:1px dashed var(--line);border-radius:var(--r);background:var(--field);color:var(--mute);font:inherit;cursor:pointer;flex:1 1 auto;min-width:0;text-align:start}
.od-cust-btn .od-cust-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.od-cust-btn.on{border-style:solid;border-color:var(--teal);color:var(--ink);font-weight:700;background:color-mix(in srgb,var(--teal-l) 45%,var(--card))}
.od-cust-btn svg.ic{width:18px;height:18px}.od-cust-btn kbd{font-size:10px;opacity:.6}
.od-cust .row>input{flex:1 1 220px;min-width:0}
.od-ccard:empty{display:none}
.od-ccard{border:1px solid var(--line);border-radius:var(--r-lg);padding:8px 12px;background:var(--zebra);display:flex;flex-direction:column;gap:6px}
.od-ccard-figs{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}
.od-ccard-figs>div{display:flex;flex-direction:column;min-width:0}
.od-ccard-figs small{font-size:11.5px;color:var(--mute)}.od-ccard-figs b{font-size:15px;font-variant-numeric:tabular-nums}
.od-ccard-figs b.neg{color:var(--bad)}.od-ccard-figs b.ok{color:var(--ok)}
.od-ccard-alert{border-radius:8px;padding:5px 10px;background:var(--gold-bg);color:var(--warn);font-weight:600;font-size:13px}.od-ccard-alert.bad{background:var(--bad-bg);color:var(--bad)}
.od-limit{min-width:170px}
.od-gauge{display:block;position:relative;height:7px;border-radius:5px;background:var(--line-2);overflow:hidden;margin:3px 0;min-width:120px}
.od-gauge i{position:absolute;inset-block:0;inset-inline-start:0;background:var(--ok);border-radius:5px}
.od-gauge.near i,.od-cban-in.near .od-gauge i{background:var(--gold)}.od-gauge.over i,.od-cban-in.over .od-gauge i{background:var(--bad)}
.od-pay{grid-template-columns:repeat(3,minmax(0,220px))!important;gap:10px 14px}
.od-more{border-top:1px dashed var(--line);padding-top:8px}
.od-more>summary{cursor:pointer;font-weight:600;color:var(--teal-d);list-style:none;display:flex;align-items:center;gap:6px}
.od-more>summary::before{content:'▸';transition:transform .15s}.od-more[open]>summary::before{transform:rotate(90deg)}
[dir=rtl] .od-more>summary::before{content:'◂'}[dir=rtl] .od-more[open]>summary::before{transform:rotate(-90deg)}
.od-more>.grid{margin-top:10px}
.od-cban:empty{display:none}
.od-cban-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding:10px 16px;border-radius:var(--r-lg);background:var(--od-cr-bg);border:1px solid var(--od-cr-line);color:var(--ink);font-size:14px}
.od-cban-in>b:first-child{color:var(--od-cr)}
.od-cban-in .od-gauge{display:inline-block;width:140px;vertical-align:middle}
.od-cban-in em{font-style:normal;font-size:12.5px;color:var(--mute);margin-inline-start:8px}
.od-lines{padding:10px 12px!important}
.od-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.od-scan{flex:0 1 420px;min-width:220px;height:38px;border:1px solid var(--line);border-radius:var(--r);padding:0 12px;background:var(--field);font:inherit}
.od-scan:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}
.btn.ghost{background:transparent;box-shadow:none}
.od-grid .grid-t{font-size:14px}
.od-grid .grid-t td{padding:3px 4px}
.od-grid .grid-t input,.od-grid .grid-t select{padding:7px 7px}
.od-grid .grid-t tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--zebra) 70%,transparent)}
.od-grid .grid-t tr.cur td{background:var(--hl)}
.od.fs-1 .od-grid .grid-t{font-size:15.5px}.od.fs-1 .od-grid .grid-t input,.od.fs-1 .od-grid .grid-t select{padding:9px 8px}
.od.fs-2 .od-grid .grid-t{font-size:17px}.od.fs-2 .od-grid .grid-t input,.od.fs-2 .od-grid .grid-t select{padding:11px 9px}
.od-grid .grid-t tr.ln-bad td{background:var(--bad-bg)!important}.od-grid .grid-t tr.ln-bad td:first-child{box-shadow:inset -3px 0 0 var(--bad)}
.od-grid .grid-t tr.ln-warn td{background:var(--gold-bg)!important}.od-grid .grid-t tr.ln-warn td:first-child{box-shadow:inset -3px 0 0 var(--gold)}
.od-grid .cell-show{font-variant-numeric:tabular-nums;display:block;text-align:end;padding-inline:6px}
.od-grid .od-mg.neg{color:var(--bad)}
.od-foot2{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line-2);margin-top:6px;padding-top:8px;min-height:36px;font-size:13px}
.od-line{display:flex;gap:6px 14px;align-items:center;flex-wrap:wrap;flex:1;min-width:0}
.od-line .chip.bad{background:var(--bad-bg);color:var(--bad)}.od-line .chip.ok{background:var(--ok-bg);color:var(--ok)}
.od-why{color:var(--bad);font-weight:600}
.od-dup{color:var(--warn);font-weight:600;display:inline-flex;gap:6px;align-items:center}
.od-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:12px;align-items:start}
.od-sec{padding:12px 14px!important}
.od-sec-h{font-weight:700;margin:12px 0 6px;color:var(--od-cr)}
.od-inst table{margin-top:6px;max-width:420px}
.od-totc{padding:0!important;overflow:hidden}
.od-tot{padding:10px 16px;font-size:14px}
.od-tot .r{display:flex;justify-content:space-between;gap:8px;padding:3px 0;color:var(--mute)}
.od-tot .r b{color:var(--ink);font-variant-numeric:tabular-nums}.od-tot .r.disc b{color:var(--bad)}
.od-tot .r.gt{border-top:1px solid var(--line);margin-top:6px;padding-top:8px;font-size:18px;color:var(--ink)}.od-tot .r.gt b{font-size:20px;color:var(--teal-d)}
.od-tot .words{font-size:12px;color:var(--mute);margin-top:6px}
.od-bar{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:6px 22px;flex-wrap:wrap;padding:10px 16px;border-radius:var(--r-lg) var(--r-lg) 0 0;background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(6px);border:1px solid var(--line);box-shadow:0 -6px 18px rgba(0,0,0,.07)}
.od.credit .od-bar{border-top:3px solid var(--od-cr)}
.od-bar .f{display:flex;flex-direction:column;line-height:1.2}.od-bar .f small{font-size:11px;color:var(--mute)}.od-bar .f b{font-size:15px;font-variant-numeric:tabular-nums}
.od-bar .f.big b{font-size:21px;color:var(--teal-d)}.od-bar .f.neg b{color:var(--bad)}.od-bar .f.cr b{color:var(--od-cr)}
.od-bar .sp{flex:1}
.od-issue{min-height:44px;padding:0 20px;font-size:15px}.od-issue kbd{font-size:10px;opacity:.7}
.od.locked .od-head{border-top-color:var(--mute)}
.od.locked .grid-t .rowdel,.od.locked .grid-t .rowadd{visibility:hidden}
.od-banners:empty{display:none}.od-banners{display:flex;flex-direction:column;gap:8px}.od-banners .banner{margin:0}
.od-instv,.od-tl{padding:8px 14px!important}.od-instv>summary,.od-tl>summary{cursor:pointer;font-weight:600}
.od-chips-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.od-tl-l{margin:6px 0 0;padding-inline-start:18px;display:flex;flex-direction:column;gap:3px;font-size:13px}
.od-figs{display:flex;gap:22px;flex-wrap:wrap;margin:10px 0;padding:8px 12px;border-radius:var(--r);background:var(--zebra)}
.od-figs>div{display:flex;flex-direction:column}.od-figs small{color:var(--mute);font-size:12px}.od-figs b{font-size:17px;font-variant-numeric:tabular-nums}.od-figs b.neg{color:var(--bad)}
.od-review{display:flex;flex-direction:column;gap:4px;min-width:min(420px,80vw)}
.od-rv-r{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dashed var(--line-2)}.od-rv-r b{font-variant-numeric:tabular-nums}.od-rv-r.big b{font-size:20px;color:var(--teal-d)}
.od-rv-warn{margin-top:8px;padding:8px 12px;border-radius:var(--r);background:var(--gold-bg);color:var(--warn);display:flex;flex-direction:column;gap:3px;font-weight:600}
.od-rv-ok{margin-top:8px;color:var(--ok);font-weight:600}
.od-opts{display:flex;flex-direction:column;gap:8px}
@media (max-width:1100px){.od-row1{grid-template-columns:repeat(2,minmax(0,1fr))}.od.quote .od-row1{grid-template-columns:repeat(2,minmax(0,1fr))}.od-row1 .od-due,.od-row1 .od-pm{grid-column:span 2}.od-st{grid-column:span 2;justify-self:start}.od-row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.od-row2 .od-cust{grid-column:span 2}.od-bottom{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.od-row1,.od.quote .od-row1,.od-row2{grid-template-columns:minmax(0,1fr)}.od-row1>*,.od-row2>*{grid-column:auto!important}.od-pay{grid-template-columns:minmax(0,1fr)!important}.od-scan{flex:1 1 100%}.od-bar{gap:4px 14px;padding:8px 10px}.od-bar .f.big b{font-size:18px}.od-issue{flex:1 1 100%}.od-cust .row{flex-wrap:wrap!important}}
/* سندات القبض والصرف بنفس فكرة القيود */
.pv-row1{grid-template-columns:minmax(0,max-content) minmax(150px,190px) minmax(150px,180px) 1fr!important}
.pv-amtrow{display:grid;grid-template-columns:minmax(200px,320px) minmax(0,1fr);gap:10px 14px;align-items:start}
.pv-amt{font-size:22px!important;font-weight:700;height:50px;color:var(--teal-d)}
.pv-words{display:block;margin-top:4px}
.pv-extra:empty{display:none}
.pv-open{padding:10px 14px!important}
.od-qacts:empty{display:none}.od-qacts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
/* شاشات المستندات الأخرى بعرض الشاشة — القائمة في نافذة «السابقة» */
.mx-split.mx-doc.ds-full{display:block}.mx-split.mx-doc.ds-full>.mx-side{display:none}
.ds-list .mx-filters{margin-bottom:8px}.ds-list .mx-list{max-height:60vh!important}
@media (max-width:600px){.pv-row1{grid-template-columns:minmax(0,1fr)!important}.pv-amtrow{grid-template-columns:minmax(0,1fr)}}
body.no-rest .rest-only{display:none!important}
/* بطاقة العميل / المورد */
.pc-card{padding:14px 16px!important;display:flex;flex-direction:column;gap:12px;border-top:3px solid var(--teal)}
.pc-card.blocked{border-top-color:var(--bad)}
.pc-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pc-av{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#14875f,#0b3d2e);color:#fff;font-weight:800;font-size:18px;flex:none}
.pc-who b{font-size:18px}.pc-sub{display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:var(--mute);font-size:13px;margin-top:2px}
.pc-acts{display:flex;gap:6px;flex-wrap:wrap}
.pc-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:14px;align-items:start}
.pc-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pc-tile{border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:var(--zebra);display:flex;flex-direction:column;gap:1px;min-width:0}
.pc-tile small{font-size:11.5px;color:var(--mute)}.pc-tile b{font-size:17px;font-variant-numeric:tabular-nums}.pc-tile em{font-style:normal;font-size:11.5px;color:var(--mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-tile.neg b{color:var(--bad)}.pc-tile.ok b{color:var(--ok)}
.pc-side{border:1px solid var(--line);border-radius:12px;padding:8px 12px}
.pc-h{font-weight:700;font-size:13px;margin:4px 0}
.pc-spark{display:flex;align-items:flex-end;gap:4px;height:78px;padding-top:4px}
.pc-spark span{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;min-width:0}
.pc-spark i{display:block;width:100%;max-width:18px;border-radius:4px 4px 0 0;background:var(--teal)}.pc-spark i.neg{background:var(--bad)}
.pc-spark small{font-size:9.5px;color:var(--mute)}
.pc-top{margin:0;padding-inline-start:18px;font-size:13px;display:flex;flex-direction:column;gap:2px}.pc-top li span{margin-inline-end:6px}
.pc-recent>summary{cursor:pointer;font-weight:600;font-size:13px}
.pt-card{padding:0!important;overflow:hidden}
.pt-tabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--line);padding:0 10px;background:var(--zebra)}
.pt-tabs button{border:0;background:none;font:inherit;padding:11px 14px;cursor:pointer;color:var(--mute);border-bottom:3px solid transparent;white-space:nowrap;font-weight:600}
.pt-tabs button.on{color:var(--teal-d);border-bottom-color:var(--teal)}
.pt-body{padding:14px 16px}.pt-body>fieldset{border:0;margin:0;padding:0}.pt-body>fieldset>*:not(legend){margin:0!important}
@media (max-width:900px){.pc-body{grid-template-columns:minmax(0,1fr)}}
.it-strip:empty{display:none}.it-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:8px 0 12px}
.cd-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px}
.cd-card{padding:10px 14px!important;margin:0!important;border-inline-start:4px solid var(--line)}.cd-card.late{border-inline-start-color:var(--bad)}
.cd-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.cd-h b.neg{color:var(--bad)}
@media (max-width:600px){.cd-list{grid-template-columns:minmax(0,1fr)}}
.mx-list td:first-child{white-space:nowrap}
@media (max-width:640px){
  .od-grid.wide-grid .grid-t{min-width:0!important}.od-grid .grid-wrap{overflow:visible}
  .od-grid .grid-t thead{display:none}.od-grid .grid-t,.od-grid .grid-t tbody{display:block}
  .od-grid .grid-t tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;padding:10px 10px 8px;margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:var(--card);position:relative}
  .od-grid .grid-t tbody tr:nth-child(even) td{background:transparent}
  .od-grid .grid-t td{display:flex;flex-direction:column;border:0!important;padding:0!important;min-width:0!important;width:auto!important}
  .od-grid .grid-t td[data-l]::before{content:attr(data-l);font-size:11px;color:var(--mute);margin-bottom:2px}
  .od-grid .grid-t td.w-item{grid-column:1/-1}
  .od-grid .grid-t td.ln:first-child{position:absolute;inset-inline-end:10px;top:6px;width:auto;font-size:11px}
  .od-grid .grid-t td.ln.acts{grid-column:1/-1;flex-direction:row;justify-content:flex-end}
  .od-grid .grid-t input,.od-grid .grid-t select{border-color:var(--line)}
  .od-grid .grid-t tr.ln-bad,.od-grid .grid-t tr.ln-warn{border-width:2px}.od-grid .grid-t tr.ln-bad{border-color:var(--bad)}.od-grid .grid-t tr.ln-warn{border-color:var(--gold)}
  .od-grid .grid-t tr.ln-bad td,.od-grid .grid-t tr.ln-warn td{background:transparent!important}
}
