/* ARORA ERP — ألوان الشعار: كحلي #0B2A5B ← أزرق #1565C0 ← سماوي #2FA8F0، والأخضر #13A38C ← #3CC35A
   Layout: dark top navigation with grouped dropdown menus; bottom bar on phones. POS and kitchen are full-screen */
:root{
  --bg:#F1F5FA; --surface:#FFFFFF; --surface-2:#E7EEF7; --ink:#0B1F3F; --muted:#526581; --line:#D3DEEC;
  --accent:#1565C0; --accent-ink:#FFFFFF; --accent-soft:#DDEAF8; --brass:#0E9F7E; --brass-soft:#D8F2EA;
  --side:#0B2A5B; --side-ink:#D9E5F5; --side-muted:#8EA4C4; --side-hover:#13366F; --side-active:#1A4283;
  --good:#1E8549; --good-soft:#DFF1E6; --warn:#A86A12; --warn-soft:#F8ECD6; --bad:#B8362A; --bad-soft:#F7E0DD;
  --shadow:0 1px 2px rgb(15 41 37 / .06), 0 8px 24px rgb(15 41 37 / .06);
  --f-display:"Readex Pro","IBM Plex Sans Arabic",system-ui,sans-serif;
  --f-body:"IBM Plex Sans Arabic",system-ui,"Segoe UI",Tahoma,sans-serif;
  --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#071327; --surface:#0D1E38; --surface-2:#132A4A; --ink:#E6EEF8; --muted:#93A8C6; --line:#1D3457;
  --accent:#2FA8F0; --accent-ink:#04182E; --accent-soft:#103A5E; --brass:#3CC35A; --brass-soft:#123A24;
  --side:#06142C; --side-ink:#D9E5F5; --side-muted:#8EA4C4; --side-hover:#0F2346; --side-active:#163060;
  --good:#4CC27E; --good-soft:#123323; --warn:#E0A84A; --warn-soft:#3A2B12; --bad:#EE7A6C; --bad-soft:#3D1A16;
  --shadow:0 1px 2px rgb(0 0 0 / .3), 0 8px 24px rgb(0 0 0 / .25); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#071327; --surface:#0D1E38; --surface-2:#132A4A; --ink:#E6EEF8; --muted:#93A8C6; --line:#1D3457;
  --accent:#2FA8F0; --accent-ink:#04182E; --accent-soft:#103A5E; --brass:#3CC35A; --brass-soft:#123A24;
  --side:#06142C; --side-ink:#D9E5F5; --side-muted:#8EA4C4; --side-hover:#0F2346; --side-active:#163060;
  --good:#4CC27E; --good-soft:#123323; --warn:#E0A84A; --warn-soft:#3A2B12; --bad:#EE7A6C; --bad-soft:#3D1A16;
  --shadow:0 1px 2px rgb(0 0 0 / .3), 0 8px 24px rgb(0 0 0 / .25); color-scheme:dark}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0}
[hidden]{display:none!important}
img{max-width:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.6}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3{font-family:var(--f-display);font-weight:600;margin:0;text-wrap:balance;line-height:1.3}
.num,td.n,.kpi-v{font-variant-numeric:tabular-nums}
.cur{font-size:.78em;color:var(--muted);font-weight:500}
svg.i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* shell */
#app{min-height:100%}
.shell{display:grid;grid-template-columns:252px minmax(0,1fr);min-height:100vh}
.side{background:var(--side);color:var(--side-ink);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:20px 14px;gap:18px;overflow-y:auto}
.brand{display:flex;align-items:center;gap:10px;padding:4px 8px}
.brand-mark{width:38px;height:38px;border-radius:9px;background:var(--brass);display:grid;place-items:center;color:#1b1206}
.brand-mark svg{width:24px;height:24px;stroke:#1b1206;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand b{font-family:var(--f-display);font-size:20px;display:block;line-height:1.1;color:#fff}
.brand small{color:var(--side-muted);font-size:12px}
.nav{display:flex;flex-direction:column;gap:2px}
.nav-label{font-size:11.5px;color:var(--side-muted);padding:10px 10px 4px;letter-spacing:.02em}
.nav button{all:unset;cursor:pointer;display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:8px;color:var(--side-ink);font-size:14.5px}
.nav button:hover{background:var(--side-hover)}
.nav button.on{background:var(--side-active);color:#fff;box-shadow:inset -3px 0 0 var(--brass)}
.nav button:focus-visible{outline:2px solid var(--brass)}
.side-foot{margin-top:auto;font-size:12.5px;color:var(--side-muted);padding:10px;border-top:1px solid var(--side-hover);display:flex;flex-direction:column;gap:4px}
.side-foot b{color:var(--side-ink);font-weight:600}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--good);margin-inline-end:6px}
.dot.local{background:var(--warn)}

.main{min-width:0;display:flex;flex-direction:column}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding-block:14px;padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px));display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.top h1{font-size:22px}
.top .sub{color:var(--muted);font-size:13px}
.top-actions{margin-inline-start:auto;display:flex;gap:8px;flex-wrap:wrap}
.top .menu-btn{display:none}
.content{padding-block:24px 48px;padding-left:max(28px,env(safe-area-inset-left,0px));padding-right:max(28px,env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:20px;max-width:1280px;width:100%}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:500;font-size:14px;white-space:nowrap;text-decoration:none}
.btn:hover{border-color:var(--muted)}
.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.pri:hover{filter:brightness(1.08)}
.btn.ghost{background:transparent;border-color:transparent}
.btn.ghost:hover{background:var(--surface-2)}
.btn.danger{color:var(--bad)}
.btn.danger.solid{background:var(--bad);border-color:var(--bad);color:#fff}
.btn.sm{padding:5px 9px;font-size:13px}
.btn svg.i{width:17px;height:17px}
.icon-btn{all:unset;cursor:pointer;width:32px;height:32px;display:inline-grid;place-items:center;border-radius:7px;color:var(--muted)}
.icon-btn:hover{background:var(--surface-2);color:var(--ink)}
.icon-btn.danger:hover{color:var(--bad);background:var(--bad-soft)}
.icon-btn svg.i{width:18px;height:18px}

/* panels */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);min-width:0}
.panel-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.panel-h h2{font-size:16px}
.panel-h .btn,.panel-h .tools{margin-inline-start:auto}
.panel-b{padding:18px}
.grid{display:grid;gap:20px}
.g-2{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.g-2e{grid-template-columns:repeat(2,minmax(0,1fr))}

/* KPIs */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.kpi-l{color:var(--muted);font-size:13px;display:flex;align-items:center;gap:7px}
.kpi-l svg.i{width:16px;height:16px}
.kpi-v{font-family:var(--f-display);font-size:24px;font-weight:600;line-height:1.2}
.kpi-s{font-size:12.5px;color:var(--muted)}
.kpi.hero{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.kpi.hero .kpi-l,.kpi.hero .kpi-s,.kpi.hero .cur{color:color-mix(in srgb,var(--accent-ink) 78%,transparent)}
.up{color:var(--good)}.down{color:var(--bad)}

/* tables */
.tbl-wrap{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:start;font-weight:500;color:var(--muted);font-size:12.5px;padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap;background:var(--surface-2)}
.tbl td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.tbl tbody tr:hover td{background:color-mix(in srgb,var(--surface-2) 55%,transparent)}
.tbl td.n,.tbl th.n{text-align:end;white-space:nowrap}
.tbl td.act{width:1%;white-space:nowrap;text-align:end}
.tbl tfoot td{font-weight:600;background:var(--surface-2);border-top:1px solid var(--line)}
.tbl .muted{color:var(--muted);font-size:13px}
.tbl tr.click{cursor:pointer}
.link{all:unset;cursor:pointer;color:var(--accent);font-weight:500}
.link:hover{text-decoration:underline}

.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;padding:2px 9px;border-radius:99px;white-space:nowrap;background:var(--surface-2);color:var(--muted)}
.pill.good{background:var(--good-soft);color:var(--good)}
.pill.warn{background:var(--warn-soft);color:var(--warn)}
.pill.bad{background:var(--bad-soft);color:var(--bad)}
.pill.acc{background:var(--accent-soft);color:var(--accent)}

.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.search{position:relative;flex:1 1 220px;max-width:340px}
.search input,.search .input{width:100%;padding-inline-start:38px}
.search svg{position:absolute;inset-inline-start:10px;top:50%;transform:translateY(-50%);color:var(--muted);width:17px;height:17px}

/* forms */
.input,input.input,select.input,textarea.input{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:8px 11px;min-height:38px}
.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
textarea.input{min-height:72px;resize:vertical}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field label{font-size:13px;color:var(--muted);font-weight:500}
.field.full{grid-column:1/-1}
.input.invalid{border-color:var(--bad);box-shadow:0 0 0 3px var(--bad-soft)}
.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.sw{all:unset;position:relative;cursor:pointer;border:1.5px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;background:var(--surface)}
.sw:hover{border-color:var(--muted)}
.sw.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}
.sw:focus-within,.sw:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sw-prev{display:flex;height:46px}
.sw-prev i{flex:0 0 34%}
.sw-prev b{flex:1;display:grid;place-items:center;background:var(--surface-2)}
.sw-prev b span{width:48px;height:14px;border-radius:4px}
.sw small{padding:6px 10px;font-size:12.5px;font-weight:500}
.sec-h{font-family:var(--f-display);font-weight:600;font-size:14px;color:var(--ink);padding-top:6px;border-top:1px dashed var(--line);margin-top:4px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.form-grid.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.req{color:var(--bad)}
.hint{font-size:12.5px;color:var(--muted)}
.seg{display:inline-flex;background:var(--surface-2);border-radius:9px;padding:3px;gap:2px;flex-wrap:wrap}
.seg button{all:unset;cursor:pointer;padding:6px 13px;border-radius:7px;font-size:13.5px;color:var(--muted)}
.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:500}

/* banners */
.banner{display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:var(--r);background:var(--brass-soft);color:var(--ink);border:1px solid color-mix(in srgb,var(--brass) 35%,transparent);flex-wrap:wrap;font-size:14px}
.banner b{color:var(--brass)}
.banner .btn{margin-inline-start:auto}

/* empty */
.empty{padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--muted)}
.empty svg.i{width:38px;height:38px;color:var(--accent);stroke-width:1.4}
.empty h3{color:var(--ink);font-size:17px}

/* alerts list */
.alist{display:flex;flex-direction:column}
.aitem{display:flex;gap:12px;align-items:center;padding:11px 18px;border-bottom:1px solid var(--line);font-size:14px}
.aitem:last-child{border-bottom:0}
.aitem .t{flex:1;min-width:0}
.aitem .t small{display:block;color:var(--muted);font-size:12.5px}
.sev{width:4px;align-self:stretch;border-radius:4px;background:var(--warn);flex:none}
.sev.bad{background:var(--bad)}

.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.quick button{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);font-weight:500;font-size:14px}
.quick button:hover{border-color:var(--accent);color:var(--accent)}
.quick .qi{width:34px;height:34px;border-radius:8px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none}

/* chart */
.chart svg{width:100%;height:auto;display:block}
.legend{display:flex;gap:16px;font-size:13px;color:var(--muted);flex-wrap:wrap}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{width:10px;height:10px;border-radius:3px;display:inline-block}

/* invoice editor */
.lines td{padding:8px 8px}
.lines .input{min-height:36px;padding:6px 9px}
.lines td.w-item{min-width:220px}
.lines td.w-n{width:120px;min-width:96px}
.totals{display:flex;flex-direction:column;gap:8px;min-width:260px}
.totals .row{display:flex;justify-content:space-between;gap:16px;font-size:14px}
.totals .row.big{font-family:var(--f-display);font-size:20px;font-weight:600;border-top:1px solid var(--line);padding-top:10px;margin-top:4px}
.ed-foot{display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start}
.warn-text{color:var(--warn);font-size:12.5px}

/* modal */
.overlay{position:fixed;inset:0;background:rgb(6 18 16 / .5);z-index:50;display:grid;place-items:center;padding:20px;padding-top:max(20px,env(safe-area-inset-top,0px));padding-bottom:max(20px,env(safe-area-inset-bottom,0px))}
.modal{background:var(--surface);border-radius:14px;width:min(560px,100%);max-height:100%;overflow:auto;box-shadow:0 20px 60px rgb(0 0 0 / .3);display:flex;flex-direction:column}
.modal.wide{width:min(820px,100%)}
.modal-h{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:1}
.modal-h h2{font-size:17px}
.modal-h .icon-btn{margin-inline-start:auto}
.modal-b{padding:20px}
.modal-f{display:flex;gap:8px;justify-content:flex-end;padding:14px 20px;border-top:1px solid var(--line);flex-wrap:wrap;position:sticky;bottom:0;background:var(--surface)}
.modal-f .spacer{margin-inline-end:auto}

/* invoice paper */
.paper{background:var(--surface);color:var(--ink);display:flex;flex-direction:column;gap:18px}
.paper-h{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:14px}
.paper-h h3{font-size:20px}
.paper .meta{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;font-size:13.5px}
.paper .meta span{color:var(--muted)}
.paper .doc-title{font-family:var(--f-display);font-size:22px;color:var(--accent);text-align:end}

/* toast */
#toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);z-index:60;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:max-content;max-width:calc(100% - 32px)}
.toast{background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:9px;font-size:14px;box-shadow:var(--shadow);animation:tin .2s ease-out}
.toast.err{background:var(--bad);color:#fff}
@keyframes tin{from{transform:translateY(8px);opacity:.4}}

/* onboarding */
.onb{min-height:100vh;display:grid;place-items:center;padding-block:32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.onb-card{width:min(880px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.onb-top{background:var(--side);color:var(--side-ink);padding:28px 32px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.onb-top h1{font-size:26px;color:#fff}
.onb-top p{margin:4px 0 0;color:var(--side-muted)}
.onb-body{padding:28px 32px;display:flex;flex-direction:column;gap:24px}
.step-h{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:600;font-size:16px}
.step-h i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:13px}
.acts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.act-card{all:unset;cursor:pointer;border:1.5px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}
.act-card:hover{border-color:var(--muted)}
.act-card.on{border-color:var(--accent);background:var(--accent-soft)}
.act-card .ai{width:38px;height:38px;border-radius:9px;background:var(--surface-2);display:grid;place-items:center;color:var(--accent)}
.act-card.on .ai{background:var(--accent);color:var(--accent-ink)}
.act-card b{font-size:14.5px}
.act-card small{color:var(--muted);font-size:12px;line-height:1.5}
.onb-foot{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;padding:18px 32px;border-top:1px solid var(--line);background:var(--surface-2)}

.loading{min-height:100vh;display:grid;place-items:center;color:var(--muted);gap:10px}
.spin{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:sp 0.8s linear infinite;margin:0 auto 10px}
@keyframes sp{to{transform:rotate(360deg)}}
.scrim{display:none}

body.ro .w{display:none!important}

@media (max-width:1000px){
  .g-2,.g-2e{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:820px){
  .shell{grid-template-columns:minmax(0,1fr)}
  .side{position:fixed;inset:0 0 0 auto;width:min(280px,86vw);z-index:40;transform:translateX(100%);transition:transform .22s ease;padding-top:max(20px,env(safe-area-inset-top,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
  .side.open{transform:none}
  .scrim.open{display:block;position:fixed;inset:0;background:rgb(0 0 0 / .4);z-index:39}
  .top .menu-btn{display:inline-grid}
  .top,.content{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
  .top h1{font-size:19px}
  .top-actions .btn .lbl{display:none}
  .form-grid,.form-grid.g3{grid-template-columns:minmax(0,1fr)}
  .onb-top,.onb-body,.onb-foot{padding-left:20px;padding-right:20px}
  .kpi-v{font-size:21px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- accounts & subscriptions ---------- */
.btn.block{width:100%;justify-content:center;padding-block:10px}
.brand-mark.logo{background:#fff;overflow:hidden}
.brand-mark.logo img{width:100%;height:100%;object-fit:contain}
.brand-mark.lg{width:52px;height:52px}
.brand-mark.lg svg{width:30px;height:30px}
.onb-out{margin-inline-start:auto;color:var(--side-ink)}
.onb-out:hover{background:var(--side-hover)}
.side-email{direction:ltr;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dot.off{background:var(--bad)}
.side-out{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:6px;margin-top:6px;color:var(--side-ink);font-size:13px;padding:6px 8px;border-radius:7px;margin-inline-start:-8px}
.side-out:hover{background:var(--side-hover)}
.side-out svg.i{width:16px;height:16px;transform:rotate(-90deg)}
.banner.bad{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 35%,transparent)}
.banner.bad b{color:var(--bad)}

.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.auth-side{background:var(--side);color:var(--side-ink);display:flex;flex-direction:column;gap:22px;padding-block:40px;padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}
.auth-side h1{color:#fff;font-size:clamp(24px,3vw,34px);max-width:16ch;margin-top:auto}
.auth-points{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;color:var(--side-ink)}
.auth-points li{display:flex;gap:10px;align-items:baseline}
.auth-points li::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--brass);flex:none;transform:translateY(-2px)}
.auth-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto}
.aplan{border:1px solid var(--side-hover);background:var(--side-hover);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px;position:relative}
.aplan span{color:var(--side-muted);font-size:13px}
.aplan b{color:#fff;font-family:var(--f-display);font-size:22px;font-weight:600}
.aplan b small{font-size:12px;color:var(--side-muted);font-weight:400}
.aplan.best{border-color:var(--brass)}
.aplan em{position:absolute;top:-10px;inset-inline-start:12px;background:var(--brass);color:#1b1206;font-style:normal;font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:99px}
.auth-main{display:grid;place-items:center;padding-block:32px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.auth-card{width:min(440px,100%);display:flex;flex-direction:column;gap:14px}
.auth-card h2{font-size:24px}
.auth-card p{margin:0}
.auth-form{display:flex;flex-direction:column;gap:14px}
.auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;color:var(--muted)}
.demo-note{background:var(--brass-soft);border:1px solid color-mix(in srgb,var(--brass) 35%,transparent);border-radius:10px;padding:10px 14px;font-size:13.5px;line-height:1.8}
.demo-note b{color:var(--brass)}

.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.plan{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px}
.plan.best{border:2px solid var(--accent);box-shadow:var(--shadow)}
.plan h3{font-size:17px}
.plan-price b{font-family:var(--f-display);font-size:34px;font-weight:600}
.plan-price span{color:var(--muted)}
.plan ul{margin:4px 0 6px;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14px}
.plan li::before{content:"✓";color:var(--good);font-weight:700;margin-inline-end:8px}
.plan .btn{margin-top:auto}
.plan-tag{position:absolute;top:-12px;inset-inline-start:20px;background:var(--accent);color:var(--accent-ink);font-style:normal;font-size:12.5px;font-weight:600;padding:3px 12px;border-radius:99px}
.sub-status{display:flex;flex-direction:column;gap:14px}
.sub-status .kpi-v small{font-size:14px;color:var(--muted);font-weight:400}
.meter{height:8px;background:var(--surface-2);border-radius:99px;overflow:hidden}
.meter span{display:block;height:100%;background:var(--accent);border-radius:99px}
.meta2{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:14px}
.meta2 span{color:var(--muted)}
.meta2 b{font-weight:500;min-width:0;overflow-wrap:anywhere}
.pay-steps ol{margin:0;padding-inline-start:20px;display:flex;flex-direction:column;gap:8px}
.pay-box{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-block:10px}
.pay-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:14px}
.pay-row:last-child{border-bottom:0}
.pay-row span{color:var(--muted);min-width:96px}
.pay-row b{flex:1;font-weight:600;min-width:0;overflow-wrap:anywhere}

@media (max-width:820px){
  .auth{grid-template-columns:minmax(0,1fr)}
  .auth-side{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));padding-block:24px;gap:14px}
  .auth-side h1{margin-top:0}
  .auth-points{display:none}
  .auth-plans{margin-top:6px}
  .plans{grid-template-columns:minmax(0,1fr)}
}

/* ---------- live sales (restaurants) ---------- */
.live-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-radius:var(--r);background:var(--surface);border:1px solid var(--line);font-size:14px}
.live-head > span:not(.live-dot){color:var(--muted);flex:1 1 260px}
.live-head .btn{margin-inline-start:auto}
.live-dot{width:10px;height:10px;border-radius:50%;background:var(--muted);flex:none}
.live-head.on .live-dot{background:var(--good);box-shadow:0 0 0 0 color-mix(in srgb,var(--good) 60%,transparent);animation:livepulse 1.8s ease-out infinite}
.live-head.on b{color:var(--good)}
@keyframes livepulse{to{box-shadow:0 0 0 10px transparent}}
.pm-list{display:flex;flex-direction:column;gap:16px}
.pm-row{display:flex;flex-direction:column;gap:6px}
.pm-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:14.5px}
.pm-top .muted{font-size:12.5px}
.pm-bar{height:10px;background:var(--surface-2);border-radius:99px;overflow:hidden}
.pm-bar span{display:block;height:100%;border-radius:99px}
.pm-meta{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}
.pm-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-inline-end:8px;vertical-align:baseline}
.rank{width:26px;height:26px;border-radius:7px;background:var(--surface-2);display:grid;place-items:center;font-size:12.5px;font-weight:600;color:var(--muted);flex:none}
.aitem:first-child .rank{background:var(--brass-soft);color:var(--brass)}

/* ---------- POS (cashier) ---------- */
.shell.pos-mode{grid-template-columns:minmax(0,1fr)}
.shell.pos-mode .side{position:fixed;inset:0 0 0 auto;width:min(280px,86vw);z-index:40;transform:translateX(100%);transition:transform .22s ease}
.shell.pos-mode .side.open{transform:none}
.shell.pos-mode .scrim.open{display:block;position:fixed;inset:0;background:rgb(0 0 0 / .4);z-index:39}
.shell.pos-mode .top .menu-btn{display:inline-grid}
.shell.pos-mode .content{max-width:none;padding-block:16px 24px}
.pos{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}
.pos-menu{display:flex;flex-direction:column;gap:12px;min-width:0}
.pos-tools{display:flex;flex-direction:column;gap:10px}
.pos-tools .search{max-width:none;flex:none}
.pos-cats{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.pos-cats button{all:unset;cursor:pointer;white-space:nowrap;padding:9px 16px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-size:14.5px;font-weight:500}
.pos-cats button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.pos-item{all:unset;cursor:pointer;position:relative;background:var(--surface);border:1.5px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;-webkit-tap-highlight-color:transparent;user-select:none;transition:transform .08s}
.pos-item:active{transform:scale(.97)}
.pos-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pos-item.in{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}
.pos-img{aspect-ratio:4/3;display:grid;place-items:center;color:#fff;overflow:hidden;max-width:100%}
.pos-img img{width:100%;height:100%;object-fit:cover}
.pos-img b{font-family:var(--f-display);font-size:28px;opacity:.9}
.pos-name{padding:8px 10px 0;font-weight:600;font-size:14.5px;line-height:1.35}
.pos-price{padding:2px 10px 10px;color:var(--accent);font-weight:600}
.pos-badge{position:absolute;top:8px;inset-inline-start:8px;min-width:28px;height:28px;padding:0 6px;border-radius:99px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:700;font-size:14px;box-shadow:var(--shadow)}
.pos-cart{position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 110px);overflow:auto}
.pos-cart-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.pos-cart-h small{display:block;color:var(--muted);font-size:12px}
.pos-no{font-family:var(--f-display);font-size:30px;line-height:1}
.pos-table{display:flex;align-items:center;gap:10px}
.pos-table label{font-size:13px;color:var(--muted);white-space:nowrap}
.pos-lines{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.pos-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.pl-name{font-weight:500;font-size:14px;min-width:0}
.pl-name small{display:block;color:var(--muted);font-size:12px}
.pl-qty{display:flex;align-items:center;gap:2px}
.pl-qty b{min-width:22px;text-align:center}
.pl-qty .icon-btn{width:34px;height:34px;background:var(--surface-2)}
.pl-total{min-width:64px;text-align:end}
.pos-empty{color:var(--muted);text-align:center;padding:26px 8px;font-size:14px}
.pos-sum{display:flex;flex-direction:column;gap:4px;font-size:14px}
.pos-sum .row{display:flex;justify-content:space-between}
.pos-sum .row.big{font-family:var(--f-display);font-size:22px;font-weight:600;border-top:1px solid var(--line);padding-top:8px;margin-top:4px}
.pos-pay{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pos-pm{all:unset;cursor:pointer;text-align:center;padding:16px 8px;border-radius:12px;font-weight:700;font-size:15.5px;color:#fff;background:var(--pm);-webkit-tap-highlight-color:transparent;box-shadow:inset 0 -3px 0 rgb(0 0 0 / .18)}
.pos-pm:active{transform:translateY(1px)}
.pos-pm:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.pos-pm[disabled]{opacity:.35;cursor:not-allowed}
.pos-jump{display:none}
.pos-closed .empty{padding:60px 20px}
.pos-flash{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:rgb(6 18 16 / .45);animation:tin .15s ease-out;padding:20px}
.pos-flash > div{background:var(--surface);border-radius:18px;padding:26px 34px;text-align:center;display:flex;flex-direction:column;gap:8px;box-shadow:0 20px 60px rgb(0 0 0 / .3);min-width:min(320px,100%)}
.pos-flash small{color:var(--good);font-weight:600}
.pos-flash b{font-family:var(--f-display);font-size:56px;line-height:1.1}
.pos-flash span{color:var(--muted)}
.cash-pay{display:flex;flex-direction:column;gap:14px}
.cash-total{display:flex;justify-content:space-between;align-items:baseline}
.cash-total b{font-family:var(--f-display);font-size:30px}
.cash-quick{display:flex;flex-wrap:wrap;gap:8px}
.cash-quick .btn{flex:1 1 90px;justify-content:center;padding-block:12px}
.cash-change{font-size:16px;min-height:24px}
.cash-change b{font-size:20px;color:var(--good)}
.img-pick{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.img-prev{width:64px;height:64px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;overflow:hidden;color:var(--muted)}
.img-prev img{width:100%;height:100%;object-fit:cover}
.zqr svg{width:120px;height:120px;background:#fff;padding:4px;border-radius:6px}
@media (max-width:1100px){.pos{grid-template-columns:minmax(0,1fr) 320px}}
@media (max-width:820px){
  .pos{grid-template-columns:minmax(0,1fr)}
  .pos-cart{position:static;max-height:none}
  .pos-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
  .pos-jump{display:flex;position:fixed;bottom:max(14px,env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);z-index:20;gap:8px;align-items:center;background:var(--accent);color:var(--accent-ink);padding:12px 20px;border-radius:99px;text-decoration:none;font-weight:600;box-shadow:var(--shadow);white-space:nowrap}
}

/* ---------- POS notes & held orders ---------- */
.btn .cnt{background:var(--brass);color:#1b1206;border-radius:99px;font-size:12px;font-weight:700;min-width:20px;height:20px;display:inline-grid;place-items:center;padding:0 6px}
.pl-note{display:block;font-size:12.5px;color:var(--brass);font-weight:600}
.pl-note-btn{all:unset;cursor:pointer;font-size:12px;color:var(--accent);margin-top:2px}
.pl-note-btn:focus-visible{outline:2px solid var(--accent)}
.pl-note-edit{grid-column:1/-1;display:flex;flex-direction:column;gap:6px;padding-top:4px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button{all:unset;cursor:pointer;font-size:12.5px;padding:5px 10px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line)}
.chips button:hover{border-color:var(--accent);color:var(--accent)}
.pos-cart textarea.input{min-height:56px}
.hold-btn{border-color:var(--brass);color:var(--brass);font-weight:600}
.hold-btn:hover{background:var(--brass-soft)}
.pos-cart.is-hold{border-color:var(--brass);box-shadow:0 0 0 2px var(--brass-soft)}
.hold-banner{display:flex;align-items:center;gap:8px;background:var(--brass-soft);color:var(--ink);border-radius:9px;padding:8px 10px;font-size:13.5px}
.hold-banner svg.i{color:var(--brass);width:18px;height:18px}
.hold-banner span{flex:1;min-width:0}
.hold-strip{display:flex;gap:8px;align-items:stretch;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.hold-lbl{display:flex;align-items:center;gap:6px;font-weight:600;color:var(--brass);font-size:13.5px;white-space:nowrap;padding-inline-end:4px}
.hold-lbl svg.i{width:17px;height:17px}
.hold-chip{all:unset;cursor:pointer;display:grid;grid-template-columns:auto auto;gap:0 10px;align-items:baseline;background:var(--surface);border:1.5px dashed var(--brass);border-radius:12px;padding:7px 12px;white-space:nowrap;font-size:13.5px}
.hold-chip b{font-family:var(--f-display);font-size:18px}
.hold-chip small{color:var(--muted);font-size:11.5px}
.hold-chip.on{border-style:solid;background:var(--brass-soft)}
.hold-chip:focus-visible{outline:2px solid var(--brass)}
.holds{display:flex;flex-direction:column;gap:12px}
.hold-card{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.hc-h{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.hc-no{font-family:var(--f-display);font-size:28px;color:var(--brass);line-height:1}
.hc-t{margin-inline-start:auto;display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.hc-items{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px}
.hc-items em{color:var(--brass);font-style:normal;font-size:13px}
.hc-note{background:var(--surface-2);border-radius:8px;padding:6px 10px;font-size:13.5px}
.hc-f{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:8px}

/* ---------- quick notes ---------- */
.chips button.on{background:var(--brass-soft);border-color:var(--brass);color:var(--ink);font-weight:600}
.chips button.on::before{content:"✓ ";color:var(--brass)}
.chips .chip-edit{background:transparent;border-style:dashed;color:var(--muted);display:inline-flex;align-items:center;gap:4px}
.chips .chip-edit svg.i{width:13px;height:13px}
.pos-cart .field .chips{margin-top:6px}
.qn-list{display:flex;flex-wrap:wrap;gap:8px}
.qn-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 6px 5px 12px;border-radius:99px;background:var(--surface-2);border:1px solid var(--line);font-size:13.5px}
.qn-chip.ro{padding-inline-end:12px}
.qn-chip button{all:unset;cursor:pointer;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;color:var(--muted)}
.qn-chip button:hover{background:var(--bad-soft);color:var(--bad)}
.qn-chip button svg.i{width:13px;height:13px}
.qn-set{display:flex;flex-direction:column;gap:16px}
.qn-set-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}

/* ---------- warehouse & yield ---------- */
.yield{font-family:var(--f-display);font-size:16px}
.yield-strip{display:flex;gap:12px;flex-wrap:wrap;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px}
.yield-strip .ys{display:flex;flex-direction:column;gap:2px;padding-inline-end:18px;border-inline-end:1px solid var(--line)}
.yield-strip .ys span{font-size:13px;color:var(--muted)}
.yield-strip .ys b{font-family:var(--f-display);font-size:24px;line-height:1.2}
.yield-strip .ys small{color:var(--muted);font-size:12px}
.yield-strip .btn{margin-inline-start:auto}

/* ---------- staff ---------- */
.auth-tabs{align-self:flex-start;margin-bottom:4px}
.cashier-chip{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;padding:0 6px}
.cashier-chip svg.i{width:17px;height:17px;color:var(--muted)}
.staff-info{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-end;border-bottom:1px solid var(--line)}
.staff-info > div{display:flex;flex-direction:column;gap:2px;min-width:0}
.staff-info > div:last-child{flex:1 1 240px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}
.staff-info > div:last-child small{width:100%}
.staff-info small{color:var(--muted);font-size:12.5px}
.staff-info b{font-family:var(--f-display);font-size:26px;letter-spacing:.12em}
.staff-link{font-size:13px;overflow-wrap:anywhere;color:var(--muted)}
.notes-btn{justify-content:flex-start;color:var(--muted);border-style:dashed;min-width:0}
.notes-btn.has{color:var(--ink);border-style:solid;border-color:var(--brass);background:var(--brass-soft)}
.notes-sum{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600}
.pos-notes-h{display:flex;justify-content:space-between;align-items:center}
.pos-notes-h .link{font-size:13px}

/* ---------- kitchen display (KDS): dark, high-contrast, readable from distance ---------- */
.shell.kds-mode{--bg:#08131F;--surface:#0F1E2D;--surface-2:#162A3C;--ink:#EEF4F8;--muted:#93A7B9;--line:#20364A;--accent:#2FA8F0;--accent-ink:#04202B;--accent-soft:#12384A;
  --good:#4CC27E;--good-soft:#12301F;--warn:#F2B144;--warn-soft:#3A2B10;--bad:#FF6B5B;--bad-soft:#3D1814;--brass:#E0A84A;--brass-soft:#3A2D16;color-scheme:dark;background:var(--bg);color:var(--ink)}
.shell.kds-mode .top{background:color-mix(in srgb,var(--bg) 92%,transparent)}
.kds{display:flex;flex-direction:column;gap:14px}
.kds-tabs{align-self:flex-start}
.kds-tabs button span{opacity:.7;margin-inline-start:4px}
.kds-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.kds-cols.one .kds-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.kds-col{background:color-mix(in srgb,var(--surface) 55%,transparent);border:1px solid var(--line);border-radius:14px;padding:10px;min-width:0}
.kds-col h2{font-size:17px;display:flex;justify-content:space-between;align-items:center;padding:4px 6px 10px}
.kds-col h2 span{background:var(--surface-2);border-radius:99px;min-width:30px;height:30px;display:inline-grid;place-items:center;font-size:15px}
.kds-col.c-new h2{color:var(--warn)}.kds-col.c-prep h2{color:var(--accent)}.kds-col.c-ready h2{color:var(--good)}
.kds-list{display:flex;flex-direction:column;gap:12px}
.kds-empty{color:var(--muted);text-align:center;padding:24px 0;font-size:14px}
.kds-card{background:var(--surface);border:1px solid var(--line);border-top:6px solid var(--muted);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}
.kds-card.t-good{border-top-color:var(--good)}.kds-card.t-warn{border-top-color:var(--warn)}.kds-card.t-bad{border-top-color:var(--bad)}
.kds-card.t-bad .kds-age{background:var(--bad);color:#fff}
.kds-card.t-warn .kds-age{background:var(--warn);color:#1b1206}
.kds-card.s-cancelled{opacity:.75}
.kds-card.s-cancelled .kds-items{text-decoration:line-through}
.kds-card header{display:flex;align-items:center;gap:10px;padding:10px 12px 6px}
.kds-no{font-family:var(--f-display);font-size:34px;line-height:1}
.kds-type{font-weight:600;color:var(--muted);font-size:15px}
.kds-age{margin-inline-start:auto;font-weight:700;font-size:15px;padding:3px 10px;border-radius:99px;background:var(--surface-2);font-variant-numeric:tabular-nums}
.kds-meta{display:flex;flex-wrap:wrap;gap:6px 12px;padding:0 12px 6px;font-size:14px;color:var(--muted)}
.kds-meta .tag{background:var(--warn-soft);color:var(--warn);border-radius:6px;padding:0 8px;font-weight:600}
.kds-meta .tag.hot{background:var(--bad-soft);color:var(--bad)}
.kds-items{list-style:none;margin:0;padding:6px 12px 10px;display:flex;flex-direction:column;gap:6px;border-top:1px dashed var(--line)}
.kds-items li{display:flex;gap:10px;font-size:19px;font-weight:600;line-height:1.35}
.kds-items li > b{min-width:38px;color:var(--accent);font-variant-numeric:tabular-nums}
.kds-items em{display:block;font-style:normal;font-size:15px;color:var(--warn);font-weight:600}
.kds-note{margin:0 12px 10px;padding:8px 10px;border-radius:8px;background:var(--warn-soft);color:var(--warn);font-weight:600;font-size:15px}
.kds-card footer{display:flex;gap:8px;padding:10px 12px 12px;margin-top:auto}
.kds-card footer .btn{padding-block:14px;font-size:16px;font-weight:700;border-radius:10px}
.kds-go{flex:1;justify-content:center;background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.s-prep .kds-go{background:var(--good);border-color:var(--good);color:#06210f}
.s-ready .kds-go{background:var(--surface-2);border-color:var(--line);color:var(--ink)}
.kds-back{background:var(--surface-2);border-color:var(--line);color:var(--muted)}
.kds-idle{min-height:50vh;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--muted)}
.kds-idle svg.i{width:56px;height:56px;stroke-width:1.2;color:var(--accent)}
.kds-idle h3{color:var(--ink);font-size:22px}
.ready-chips{display:inline-flex;align-items:center;gap:6px;background:var(--good-soft);color:var(--good);border-radius:9px;padding:6px 12px;font-size:14px;font-weight:600}
.ready-chips svg.i{width:17px;height:17px}
.ready-chips b{font-family:var(--f-display)}
@media (max-width:1000px){.kds-cols{grid-template-columns:minmax(0,1fr)}}

/* ---------- focus mode (POS / kitchen as standalone screens) ---------- */
.shell.focus-mode .top .menu-btn{display:none!important}
.focus-brand{display:flex;align-items:center;gap:10px;padding-inline-end:14px;margin-inline-end:4px;border-inline-end:1px solid var(--line)}
.focus-brand .brand-mark{width:36px;height:36px}
.focus-brand b{font-family:var(--f-display);font-size:15px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.exit-focus{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.exit-focus:hover{filter:brightness(1.15);border-color:var(--ink)}
@media (max-width:820px){.focus-brand b{display:none}.focus-brand{padding-inline-end:8px}}

/* ---------- permissions, POS employee login, returns ---------- */
.hide{display:none!important}
body.staff .own{display:none!important}
.perm-pills{display:flex;flex-wrap:wrap;gap:4px}
.perm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.perm-opt{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer}
.perm-opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.perm-opt input{margin-top:4px;accent-color:var(--accent);width:18px;height:18px;flex:none}
.perm-opt b{display:block;font-size:14px}
.perm-opt small{color:var(--muted);font-size:12.5px;line-height:1.5}
.pos-lock{min-height:calc(100vh - 140px);display:grid;place-items:center}
.pos-lock-card{width:min(760px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:20px;box-shadow:var(--shadow)}
.pl-h{display:flex;gap:14px;align-items:center}
.pl-h h2{font-size:22px}
.who-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.who{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:18px 10px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface)}
.who:hover,.who:focus-visible{border-color:var(--accent);background:var(--accent-soft)}
.who-av{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:var(--f-display);font-size:24px}
.who.owner .who-av{background:var(--ink);color:var(--bg)}
.who.owner .who-av svg.i{width:26px;height:26px}
.who b{font-size:15px}
.who small{color:var(--muted);font-size:12px;line-height:1.4}
.pinpad{display:flex;flex-direction:column;align-items:center;gap:18px}
.pin-dots{height:30px;display:flex;gap:12px;align-items:center}
.pin-dots i{width:16px;height:16px;border-radius:50%;background:var(--ink)}
.pin-keys{display:grid;grid-template-columns:repeat(3,76px);gap:10px}
.pin-keys button{all:unset;cursor:pointer;height:64px;border-radius:14px;background:var(--surface-2);display:grid;place-items:center;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}
.pin-keys button:hover{background:var(--line)}
.pin-keys button:focus-visible{outline:2px solid var(--accent)}
.pin-keys button.ok{background:var(--accent);color:var(--accent-ink);font-size:16px}
.ret-sum{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.ret-sum b{font-family:var(--f-display);font-size:24px;color:var(--bad)}
@media (max-width:600px){.perm-grid{grid-template-columns:minmax(0,1fr)}}
.form-grid > .form-grid.full{grid-column:1/-1}
.staff-mail{font-size:13px;overflow-wrap:anywhere}
/* المحاسبة: شجرة الحسابات والقيود */
.coa .coa-g td{background:var(--surface-2);font-weight:600}
.coa-name{display:inline-flex;align-items:center;gap:8px}
.coa-name .i{width:15px;height:15px;opacity:.6}
.coa-code{color:var(--muted);text-align:right}
.je-list{display:flex;flex-direction:column;gap:14px}
.je{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.je-h{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:12px 16px;border-bottom:1px solid var(--line);font-size:14px}
.je-memo{flex:1 1 220px;min-width:0;color:var(--muted)}
.je-act{display:flex;gap:6px;margin-inline-start:auto}
.je-t{border:0}
.je-t th,.je-t td{font-size:13.5px}
.je-edit .input{min-width:0}
.trial th{white-space:nowrap}
.trial thead tr:first-child th[colspan]{text-align:center;border-bottom:1px solid var(--line)}
.fs .fs-h td{font-weight:700;padding-top:16px;color:var(--accent)}
.fs .fs-t td{font-weight:600;border-top:1px solid var(--line)}
.kpis.k3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:700px){.kpis.k3{grid-template-columns:minmax(0,1fr)}}
.vat-ret td:first-child{color:var(--muted);text-align:center}
.vat-ret .vat-in{width:130px;margin-inline-start:auto;text-align:left;padding:6px 10px}
.vat-close{display:flex;flex-direction:column;gap:12px}
.toolbar .spacer{flex:1}

/* ---------- القائمة العلوية ---------- */
.shell.tn{display:block}
.tnav{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;display:flex;align-items:center;gap:6px;min-height:62px;padding-block:10px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));background:color-mix(in srgb,var(--side) 94%,transparent);backdrop-filter:blur(10px);color:var(--side-ink);border-bottom:1px solid rgb(255 255 255 / .06)}
.tn-brand{display:flex;align-items:center;gap:10px;margin-inline-end:16px;min-width:0}
.tn-brand .brand-mark{width:34px;height:34px}
.tn-brand b{font-family:var(--f-display);font-size:17px;color:#fff;display:block;line-height:1.15}
.tn-brand small{display:block;color:var(--side-muted);font-size:11.5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tn-groups{display:flex;gap:2px;flex:1;min-width:0}
.tn-g,.bn-g{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:10px;color:var(--side-muted);font-size:14px;white-space:nowrap}
.tn-g:hover,.bn-g:hover{background:var(--side-hover);color:#fff}
.tn-g.on,.bn-g.on{background:color-mix(in srgb,var(--accent) 24%,transparent);color:color-mix(in srgb,var(--accent) 40%,#fff)}
.tn-g:focus-visible,.bn-g:focus-visible,.tn-search:focus-visible,.tn-me:focus-visible,.mi:focus-visible,.cmd-it:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
.tn-g .i,.bn-g .i{width:18px;height:18px}
.tn-g .chev{width:13px;height:13px;opacity:.55;transition:transform .15s}
.tn-g[aria-expanded="true"] .chev{transform:rotate(180deg)}
.tn-search{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:8px;background:rgb(255 255 255 / .07);color:var(--side-muted);border-radius:10px;padding:7px 12px;font-size:13px;min-width:190px;margin-inline-start:auto}
.tn-search:hover{background:rgb(255 255 255 / .11);color:#fff}
.tn-search .i{width:16px;height:16px}
.tn-search kbd{margin-inline-start:auto;font-family:var(--f-body);font-size:11px;background:rgb(255 255 255 / .08);border-radius:6px;padding:1px 6px}
.tn-mode{color:var(--side-ink);width:38px;height:38px;border-radius:10px}
.tn-mode:hover{background:var(--side-hover)}
.tn-me{all:unset;cursor:pointer;border-radius:50%}
.tn-me .av{width:34px;height:34px;border-radius:50%;background:var(--brass);color:#1b1206;display:grid;place-items:center;font-family:var(--f-display);font-weight:600}
.mega{position:fixed;top:calc(env(safe-area-inset-top,0px) + 66px);z-index:31;width:min(480px,calc(100vw - 24px));background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px;box-shadow:0 24px 60px rgb(0 0 0 / .35)}
.mi{all:unset;cursor:pointer;display:flex;gap:11px;align-items:flex-start;padding:10px;border-radius:12px;min-width:0}
.mi:hover,.mi.on{background:var(--surface-2)}
.mi-i{width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none}
.mi-i .i{width:19px;height:19px}
.mi b{display:block;font-size:14px;font-weight:600}
.mi small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.me-pop{position:fixed;top:calc(env(safe-area-inset-top,0px) + 66px);left:max(12px,env(safe-area-inset-left,0px));z-index:31;width:270px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);box-shadow:0 24px 60px rgb(0 0 0 / .35)}
.me-pop b{color:var(--ink);font-size:14px}
.me-pop .btn{margin-top:8px;align-self:flex-start}
.shell.tn .main{max-width:1360px;margin:0 auto}
.shell.tn .content{max-width:none}
.shell.tn .top{position:static;background:transparent;backdrop-filter:none;border-bottom:0;padding-top:24px;padding-bottom:4px}
.shell.tn .top h1{font-size:24px}
.bnav{display:none}
.cmd-list{display:flex;flex-direction:column;gap:2px;margin-top:10px;max-height:52vh;overflow:auto}
.cmd-it{all:unset;cursor:pointer;display:flex;gap:12px;align-items:center;padding:9px 12px;border-radius:10px}
.cmd-it.on,.cmd-it:hover{background:var(--surface-2)}
.cmd-it .i{width:18px;height:18px;color:var(--accent);flex:none}
.cmd-it b{display:block;font-size:14px;font-weight:500}
.cmd-it small{display:block;color:var(--muted);font-size:12px}
:root[data-theme="dark"] .kpi.hero{background:linear-gradient(135deg,#0B2A5B,#1565C0 62%,#13A38C);border-color:transparent;color:#fff}
:root[data-theme="dark"] .kpi.hero .kpi-l,:root[data-theme="dark"] .kpi.hero .kpi-s,:root[data-theme="dark"] .kpi.hero .cur{color:rgb(255 255 255 / .75)}
@media (max-width:1180px){.tn-search{min-width:0}.tn-search span,.tn-search kbd{display:none}.tn-brand small{display:none}}
@media (max-width:980px){.tn-g{padding:8px 9px}.tn-g .chev{display:none}}
@media (max-width:820px){
  .tn-groups{display:none}
  .tnav{min-height:56px}
  .tn-brand small{display:block}
  .bnav{display:flex;position:fixed;inset:auto 0 0;z-index:30;background:var(--side);border-top:1px solid rgb(255 255 255 / .07);padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px));padding-left:max(6px,env(safe-area-inset-left,0px));padding-right:max(6px,env(safe-area-inset-right,0px))}
  .bn-g{flex:1;flex-direction:column;gap:3px;font-size:11px;padding:6px 0;justify-content:center;text-align:center}
  .bn-g .chev{display:none}
  .shell.tn .content{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
  .shell.tn .top{padding-top:16px}
  .shell.tn .top h1{font-size:20px}
  .mega{top:auto;bottom:calc(72px + env(safe-area-inset-bottom,0px));left:12px;right:12px;width:auto;grid-template-columns:minmax(0,1fr)}
  .me-pop{top:calc(env(safe-area-inset-top,0px) + 60px)}
}
/* ---------- العملاء المحتملون وعروض الأسعار والمشاريع ---------- */
.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:12px;overflow-x:auto;padding-bottom:6px;align-items:start}
.board-col{background:var(--surface-2);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px;min-height:120px}
.board-h{display:flex;align-items:center;gap:8px;padding:2px 4px 4px;font-size:13px}
.lead{all:unset;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px;font-size:13.5px;box-shadow:var(--shadow)}
.lead:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.lead:focus-visible{outline:2px solid var(--accent)}
.lead b{font-size:14.5px}
.lead .muted{font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lead-f{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between}
.lead-f .pill .i{width:13px;height:13px;vertical-align:-2px}
.lead-o{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:5px}
.lead-o .i{width:14px;height:14px}
.due-list{display:flex;flex-direction:column}
.due{all:unset;cursor:pointer;display:grid;grid-template-columns:auto minmax(120px,1fr) auto minmax(0,2fr);gap:12px;align-items:center;padding:10px 16px;border-top:1px solid var(--line);font-size:14px}
.due:hover{background:var(--surface-2)}
.due > :last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-v{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px}
.lead-info,.lead-tl{display:flex;flex-direction:column;gap:14px;min-width:0}
.lead-stages{flex-wrap:wrap}
.lead-qs{display:flex;flex-direction:column;gap:4px;font-size:13.5px;align-items:flex-start}
.act-form{display:flex;flex-direction:column;gap:8px;background:var(--surface-2);padding:12px;border-radius:12px}
.act-form .seg{flex-wrap:wrap}
.act-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.act-row .input{width:auto}
.act-row .spacer{flex:1}
.tl{display:flex;flex-direction:column;gap:12px;max-height:340px;overflow:auto}
.tl-i{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;font-size:13.5px;line-height:1.6}
.tl-ic{width:32px;height:32px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.tl-ic .i{width:16px;height:16px}
label.check{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}
.pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.pr-card{all:unset;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow)}
.pr-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.pr-card:focus-visible{outline:2px solid var(--accent)}
.pr-h{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12.5px}
.pr-n{font-family:var(--f-display);font-size:17px;font-weight:600}
.pr-card > .muted{font-size:13px}
.bar-l{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);margin-top:4px}
.bar-l b{color:var(--ink)}
.bar{position:relative;height:8px;border-radius:99px;background:var(--surface-2);overflow:visible}
.bar i{position:absolute;inset-block:0;inset-inline-start:0;border-radius:99px;background:var(--accent)}
.bar em{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--brass);border-radius:2px}
.bar.on-hero{background:rgb(255 255 255 / .2);margin:6px 0 2px}
.bar.on-hero i{background:#fff}
.pr-f{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px;padding-top:10px;border-top:1px solid var(--line)}
.pr-f small{display:block;color:var(--muted);font-size:11.5px}
.pr-f b{font-size:14px}
.pr-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13.5px}
.stages{display:flex;flex-direction:column}
.stg{padding:12px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.stg-h{display:flex;align-items:center;gap:8px}
.stg-h b{flex:1;font-size:14px;font-weight:600}
.stg-r{display:flex;align-items:center;gap:12px}
.stg-r input[type=range]{flex:1;accent-color:var(--accent)}
.stg-r b{min-width:44px;text-align:left}
@media (max-width:820px){.lead-v{grid-template-columns:minmax(0,1fr)}.due{grid-template-columns:auto minmax(0,1fr)}.due > :nth-child(n+3){display:none}}
.code-known{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface-2);border-radius:10px;padding:10px 14px;font-size:14px}
/* ---------- الموارد البشرية ---------- */
.kpis.k4{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi-v small{font-size:13px;font-weight:500;color:var(--muted)}
.emp-v{display:flex;flex-direction:column;gap:16px}
.att-grid{font-size:12px}
.att-grid th,.att-grid td{padding:6px 4px;text-align:center;white-space:nowrap}
.att-grid th.off{color:var(--muted);opacity:.6}
.att-grid td.nm{text-align:right;padding-inline:10px;position:sticky;inset-inline-start:0;background:var(--surface);z-index:1}
.ac{min-width:24px;font-weight:600;border-radius:5px}
td.ac.present,i.ac.present{background:var(--good-soft);color:var(--good)}
td.ac.late,i.ac.late{background:var(--warn-soft);color:var(--warn)}
td.ac.absent,i.ac.absent{background:var(--bad-soft);color:var(--bad)}
td.ac.leave,i.ac.leave{background:var(--accent-soft);color:var(--accent)}
td.ac.weekend,td.ac.holiday,i.ac.weekend,i.ac.holiday{color:var(--muted)}
.att-legend{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--muted)}
.att-legend i{display:inline-grid;place-items:center;width:22px;height:22px;font-style:normal;margin-inline-end:6px;font-size:12px;border:1px solid var(--line)}
.method-intro{display:flex;flex-direction:column;gap:4px}
.methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}
.method .panel-h h2{display:flex;align-items:center;gap:8px}
.mnum{width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:inline-grid;place-items:center;font-size:13px}
.steps{margin:0 0 10px;padding-inline-start:20px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.7}
pre.code{background:var(--surface-2);border-radius:10px;padding:10px 12px;font-size:12px;overflow-x:auto;white-space:pre;margin:8px 0;text-align:left}
.dev-list{display:flex;flex-direction:column;margin-top:10px;border-top:1px solid var(--line)}
.dev-list > div{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.dev-list > div > .muted:last-of-type{margin-inline-start:auto}
.wk{display:flex;flex-wrap:wrap;gap:6px 16px}
.hol-list{display:flex;flex-direction:column;margin-top:10px}
.hol-list > div{display:grid;grid-template-columns:130px 1fr auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line);font-size:14px}
.pay-t td,.pay-t th{white-space:nowrap}
.pay-in{width:84px;padding:5px 8px;text-align:left}
@media (max-width:1100px){.methods{grid-template-columns:minmax(0,1fr)}.kpis.k4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.proj-tag{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--accent);margin-top:2px}
.proj-tag .i{width:13px;height:13px}
.link-list{display:flex;flex-direction:column;gap:2px}
.link-list h3{font-size:14px;margin:12px 0 6px;color:var(--muted)}
.link-row{display:grid;grid-template-columns:auto 110px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:8px 10px;border-radius:10px;cursor:pointer;font-size:14px}
.link-row:hover{background:var(--surface-2)}
/* ---------- شاشة العملاء (حالة الطلبات) ---------- */
.shell.board-mode{display:block;min-height:100vh;background:#08131F;color:#EAF2F8}
.board-scr{min-height:100vh;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}
.bs-h{display:flex;align-items:center;gap:16px;padding:18px max(28px,env(safe-area-inset-right,0px)) 18px max(28px,env(safe-area-inset-left,0px));border-bottom:1px solid rgb(255 255 255 / .07)}
.bs-brand{display:flex;align-items:center;gap:12px;font-family:var(--f-display);font-size:clamp(18px,2.2vw,30px)}
.bs-clock{margin-inline-start:auto;font-family:var(--f-display);font-size:clamp(20px,2.4vw,34px);color:#9FB9B1}
.bs-tools{display:flex;gap:6px;opacity:.25;transition:opacity .2s}
.bs-tools:hover,.bs-tools:focus-within{opacity:1}
.bs-tools .btn{background:transparent;border-color:rgb(255 255 255 / .15);color:#EAF3F0;padding:8px}
.bs-cols{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
.bs-col{padding:clamp(16px,3vw,40px);display:flex;flex-direction:column;gap:clamp(14px,2vw,28px)}
.bs-col h2{display:flex;align-items:center;gap:12px;font-family:var(--f-display);font-size:clamp(22px,3vw,44px);margin:0}
.bs-col h2 .i{width:1em;height:1em}
.bs-prep{border-inline-end:1px solid rgb(255 255 255 / .07)}
.bs-prep h2{color:#E2B35B}
.bs-ready{background:linear-gradient(180deg,rgb(76 195 222 / .1),transparent 70%)}
.bs-ready h2{color:#3CC35A}
.bs-nums{display:flex;flex-wrap:wrap;gap:clamp(10px,1.4vw,20px);align-content:flex-start}
.bs-n{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:clamp(90px,10vw,170px);padding:clamp(10px,1.4vw,22px) clamp(14px,1.6vw,26px);border-radius:18px;background:rgb(255 255 255 / .05);border:1px solid rgb(255 255 255 / .08)}
.bs-n b{font-family:var(--f-display);font-size:clamp(36px,5vw,84px);line-height:1;font-variant-numeric:tabular-nums}
.bs-n small{font-size:clamp(12px,1.1vw,17px);color:#9FB9B1;margin-top:6px}
.bs-prep .bs-n b{color:#F1D9A7}
.bs-ready .bs-n{background:rgb(28 139 176 / .2);border-color:rgb(92 205 227 / .4)}
.bs-ready .bs-n b{color:#8FE6F5;font-size:clamp(48px,7vw,120px)}
.bs-n.fresh{animation:bsPulse 1.2s ease-in-out infinite}
@keyframes bsPulse{50%{background:rgb(92 205 227 / .34);transform:scale(1.04)}}
.bs-empty{font-size:clamp(28px,3vw,48px);color:#3E5751}
.bs-f{padding:16px 28px;text-align:center;color:#9FB9B1;font-size:clamp(14px,1.4vw,22px);border-top:1px solid rgb(255 255 255 / .07)}
@media (max-width:700px){.bs-cols{grid-template-columns:minmax(0,1fr)}.bs-prep{border-inline-end:0;border-bottom:1px solid rgb(255 255 255 / .07)}}
@media (prefers-reduced-motion:reduce){.bs-n.fresh{animation:none;background:rgb(95 211 180 / .3)}}

/* شعار أرورا */
.brand-mark.lb{background:none;padding:0;overflow:hidden}
.brand-mark.lb img{width:100%;height:100%;display:block}
.kpi.hero{background:linear-gradient(135deg,#0B2A5B,#1565C0 62%,#13A38C);border-color:transparent;color:#fff}
.kpi.hero .kpi-l,.kpi.hero .kpi-s,.kpi.hero .cur{color:rgb(255 255 255 / .78)}
.tnav{background:linear-gradient(90deg,color-mix(in srgb,var(--side) 96%,transparent),color-mix(in srgb,var(--side) 88%,#1565C0 12%))}
.auth-logo{width:min(260px,70%);height:auto;display:block}

/* مستندات التسليم وطلبات الشراء */
.doc-title .doc-en{display:block;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.5px;font-family:inherit}
.sign-row{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:26px}
.sign-row>div{display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.sign-row span{font-weight:600}
.sign-row i{display:block;border-bottom:1px dashed var(--line);height:34px}
.sign-row small{color:var(--muted);font-size:12px}
@media (max-width:560px){.sign-row{grid-template-columns:1fr}}
.last-price{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;font-size:12.5px;color:var(--muted)}
.last-price .i{width:14px;height:14px;flex:none}
.last-price b{color:var(--ink)}
.last-price.diff b{color:var(--accent)}
.last-price .link{font-size:12.5px}
.emp-access{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px}
.perm-opt.fixed{cursor:default}.perm-opt.fixed input{opacity:.7}
.sm-link{font-size:12.5px;margin-top:4px;display:inline-block}

/* ---------- أسلوب أودو: شاشة التطبيقات + شريط التطبيق + شريط التحكم ---------- */
.shell.apps-mode{display:block;min-height:100vh;background:linear-gradient(160deg,#0B2A5B 0%,#1565C0 70%,#13A38C 100%)}
.launch{min-height:100vh;display:flex;flex-direction:column;color:#fff}
.launch-top{display:flex;align-items:center;gap:8px;min-height:60px;padding-block:8px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.launch-top .tn-brand small{color:#BFE6F1;display:block}
.launch-top .tn-search{background:rgb(255 255 255 / .1);color:#E3F1F6}
.launch-top .tn-mode{color:#fff}
.launch-main{flex:1;display:flex;flex-direction:column;align-items:center;gap:36px;padding-block:36px 72px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.launch-main .banner{width:100%;max-width:900px}
.launch-search{all:unset;cursor:pointer;box-sizing:border-box;width:100%;max-width:560px;display:flex;align-items:center;gap:10px;background:rgb(255 255 255 / .12);border:1px solid rgb(255 255 255 / .28);border-radius:12px;padding:0 16px;height:48px;color:#D6ECF4;font-size:14.5px}
.launch-search:hover{background:rgb(255 255 255 / .18)}
.launch-search span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.launch-search kbd{font-family:var(--f-body);font-size:11px;background:rgb(255 255 255 / .12);border-radius:6px;padding:1px 6px}
.launch-search .i{width:18px;height:18px}
.apps-grid{width:100%;max-width:900px;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:22px 10px}
.app-tile{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:10px;padding:10px 4px;border-radius:14px;color:#fff;text-align:center}
.app-tile:hover{background:rgb(255 255 255 / .08)}
.app-tile:focus-visible{outline:2px solid #2FA8F0;outline-offset:2px}
.app-tile b{font-size:14px;font-weight:600;line-height:1.3}
.app-ic{width:72px;height:72px;border-radius:18px;background:var(--c);display:grid;place-items:center;position:relative;box-shadow:0 8px 18px rgb(0 0 0 / .25);transition:transform .15s}
.app-tile:hover .app-ic{transform:translateY(-2px)}
.app-ic .i{width:34px;height:34px;color:#fff;stroke-width:1.7}
.app-b{position:absolute;top:-6px;left:-6px;min-width:22px;height:22px;border-radius:11px;background:#F2A33A;color:#10212F;font-size:12px;font-weight:700;display:grid;place-items:center;padding:0 5px;box-sizing:border-box}
.shell.apps-mode .me-pop{top:calc(env(safe-area-inset-top,0px) + 62px)}

.abar{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;display:flex;align-items:center;gap:4px;min-height:50px;flex-wrap:wrap;padding-left:max(10px,env(safe-area-inset-left,0px));padding-right:max(10px,env(safe-area-inset-right,0px));background:#0B2A5B;color:#fff}
:root[data-theme="dark"] .abar{background:#07131F;border-bottom:1px solid rgb(255 255 255 / .06)}
.ab-home{all:unset;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border-radius:8px;color:#fff}
.ab-home:hover{background:rgb(255 255 255 / .1)}
.ab-home:focus-visible,.ab-menus button:focus-visible{outline:2px solid #2FA8F0}
.ab-home .i{width:20px;height:20px}
.ab-name{font-family:var(--f-display);font-size:16px;padding-inline:4px 14px;white-space:nowrap}
.ab-menus{display:flex;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.ab-menus::-webkit-scrollbar{display:none}
.ab-menus button{all:unset;cursor:pointer;padding:0 12px;height:38px;display:inline-flex;align-items:center;border-radius:6px;color:#C9DCE8;font-size:14px;white-space:nowrap}
.ab-menus button:hover{color:#fff;background:rgb(255 255 255 / .07)}
.ab-menus button.on{color:#fff;background:rgb(255 255 255 / .14)}
.abar .tn-search{min-width:170px;margin-inline-start:8px}
.abar .tn-mode{color:#fff}
.abar .tn-me .av{width:32px;height:32px}
.shell.tn .me-pop{top:calc(env(safe-area-inset-top,0px) + 54px)}
.bnav,.mega{display:none!important}

/* شريط التحكم: شريط أبيض بعرض الصفحة، والعنوان كمسار تنقل */
.shell.tn .main{max-width:none}
.shell.tn .top{position:static;background:var(--surface);border-bottom:1px solid var(--line);backdrop-filter:none;padding-block:12px;padding-left:max(20px,env(safe-area-inset-left,0px),calc((100% - 1360px) / 2));padding-right:max(20px,env(safe-area-inset-right,0px),calc((100% - 1360px) / 2))}
.shell.tn .top h1{font-size:19px;font-weight:600}
.shell.tn .top .sub{font-size:12.5px}
.shell.tn .content{max-width:1360px;margin-inline:auto;padding-top:18px}
.crumb-app{color:var(--accent);font-weight:500}
.crumb-sep{color:var(--muted);margin-inline:6px;font-weight:400}

@media (max-width:820px){
  .abar{padding-block:4px}
  .ab-menus{order:5;flex:1 0 100%;padding-bottom:4px}
  .ab-name{flex:1}
  .abar .tn-search{min-width:0}
  .abar .tn-search span,.abar .tn-search kbd{display:none}
  .shell.tn .content{padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
  .apps-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:16px 6px}
  .app-ic{width:60px;height:60px;border-radius:16px}
  .app-ic .i{width:28px;height:28px}
  .app-tile b{font-size:12.5px}
  .launch-top .tn-brand small{display:none}
}

/* ---------- مساعد ARORA (الذكاء الاصطناعي) ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.abar .ab-ai{color:#fff;width:38px;height:38px;border-radius:10px}
.abar .ab-ai:hover,.abar .ab-ai.on{background:rgb(255 255 255 / .12);color:#C9B8FF}
.ai-wrap{max-width:860px;margin-inline:auto;display:flex;flex-direction:column;gap:12px;min-height:calc(100vh - 220px)}
.ai-log{flex:1;display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 300px);overflow-y:auto;padding:4px 2px}
.ai-msg{display:flex;gap:10px;align-items:flex-start}
.ai-msg.me{justify-content:flex-start;flex-direction:row-reverse}
.ai-msg .ai-b{max-width:min(640px,88%);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 14px;line-height:1.75;min-width:0}
.ai-msg.me .ai-b{background:var(--accent);border-color:transparent;color:#fff;white-space:pre-wrap}
:root[data-theme="dark"] .ai-msg.me .ai-b{color:#06202E}
.ai-text{white-space:pre-wrap;overflow-wrap:anywhere}
.ai-av{width:34px;height:34px;border-radius:10px;background:#6E56CF;color:#fff;display:grid;place-items:center;flex:none}
.ai-av .i{width:19px;height:19px}
.ai-av.big{width:56px;height:56px;border-radius:16px}.ai-av.big .i{width:30px;height:30px}
.ai-hello{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:28px 8px}
.ai-hello h2{margin:4px 0 0;font-size:20px}
.ai-hello p{max-width:520px;margin:0}
.ai-sugs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;width:100%;margin-top:10px}
.ai-sug{all:unset;cursor:pointer;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:10px 12px;font-size:13.5px;text-align:start;line-height:1.6}
.ai-sug:hover{border-color:#6E56CF}
.ai-sug:focus-visible{outline:2px solid #6E56CF}
.ai-box{display:flex;gap:8px;align-items:flex-end;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px}
.ai-box textarea{flex:1;border:0;background:transparent;resize:none;outline:none;font:inherit;color:var(--ink);padding:6px 4px;min-width:0}
.ai-foot{font-size:12px;text-align:center;margin:0}
.ai-card{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface-2);display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.ai-card ul{margin:0;padding-inline-start:18px}
.ai-card .btn{align-self:flex-start}
.ai-err{color:var(--down,#B4232A);font-size:13px;margin-top:4px}
.ai-dots{display:inline-flex;align-items:center;gap:3px;color:var(--muted)}
.ai-dots i{width:5px;height:5px;border-radius:50%;background:currentColor;animation:aiDot 1.2s infinite}
.ai-dots i:nth-child(2){animation-delay:.2s}.ai-dots i:nth-child(3){animation-delay:.4s}
@keyframes aiDot{0%,80%,100%{opacity:.25}40%{opacity:1}}
@media (prefers-reduced-motion:reduce){.ai-dots i{animation:none;opacity:.6}}
.ai-ins .panel-h h2{display:flex;align-items:center;gap:8px}
.ai-ins .panel-h h2 .i{color:#6E56CF;width:18px;height:18px}
.ai-scan{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0;text-align:center}
.ai-scan-res{margin:0 0 10px;padding-inline-start:18px;display:flex;flex-direction:column;gap:6px;line-height:1.7}

/* ---------- جرس التنبيهات ---------- */
.tn-bell{position:relative;color:#fff;width:38px;height:38px;border-radius:10px}
.tn-bell:hover{background:rgb(255 255 255 / .12)}
.bell-n{position:absolute;top:2px;left:2px;min-width:17px;height:17px;border-radius:9px;background:#F2A33A;color:#10212F;font-size:10.5px;font-weight:700;display:grid;place-items:center;padding:0 4px;box-sizing:border-box}
.bell-pop{width:340px;max-width:calc(100vw - 24px)}
.bell-list{display:flex;flex-direction:column;gap:2px;max-height:55vh;overflow-y:auto;margin:4px -6px 0}
.bell-it{all:unset;cursor:pointer;display:flex;gap:10px;align-items:flex-start;padding:8px 6px;border-radius:8px}
.bell-it:hover{background:var(--surface-2)}
.bell-it:focus-visible{outline:2px solid var(--accent)}
.bell-it .sev{width:4px;align-self:stretch;border-radius:2px;background:var(--accent);flex:none}
.bell-it .sev.warn{background:#E3A01B}.bell-it .sev.bad{background:#C8414A}
.bell-it b{display:block;font-size:13.5px;color:var(--ink);font-weight:600}
.bell-it small{display:block;font-size:12px;color:var(--muted)}
.perm-all{margin:2px 0 8px;font-weight:600}
.bell-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}

/* ---------- خصائص الصنف ---------- */
.attr-sec-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.attr-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.attr-card{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--surface-2);display:flex;flex-direction:column;gap:8px}
.attr-row{display:grid;grid-template-columns:minmax(0,1fr) 140px auto auto;gap:8px;align-items:center}
.opt-list{display:flex;flex-direction:column;gap:6px;padding-inline-start:12px;border-inline-start:2px solid var(--line)}
.opt-row{display:grid;grid-template-columns:minmax(0,1fr) auto 110px auto;gap:6px;align-items:center}
.opt-plus{color:var(--muted);font-weight:700}
.opt-list .link{align-self:flex-start;font-size:13px}
.opt-pick{display:flex;flex-direction:column;gap:14px}
.opt-g{border:0;margin:0;padding:0}
.opt-g legend{font-weight:700;margin-bottom:8px;padding:0}
.opt-g legend small{font-weight:400;color:var(--muted);margin-inline-start:6px}
.opt-chips{display:flex;flex-wrap:wrap;gap:8px}
.opt-chip{all:unset;cursor:pointer;min-height:44px;box-sizing:border-box;padding:8px 16px;border:1.5px solid var(--line);border-radius:12px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;background:var(--surface)}
.opt-chip small{font-weight:500;color:var(--muted);font-size:12px}
.opt-chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.opt-chip.on small{color:inherit}
.opt-chip:focus-visible{outline:2px solid var(--accent)}
.opt-total{margin-inline-end:auto;font-size:17px}
@media (max-width:560px){.attr-row{grid-template-columns:minmax(0,1fr) auto}.attr-row select{grid-column:1}}
.tpl-row td{border-bottom-color:transparent}
.kid-row td{background:var(--surface-2);padding-top:7px;padding-bottom:7px}
.kid-name{padding-inline-start:14px;font-weight:600}
.attr-card.var{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.attr-row{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr) auto auto auto}
.opt-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto 100px auto}
.opt-stock{margin:0}
.menu-check{display:flex;flex-direction:column;gap:8px}
.menu-check>div{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:var(--surface-2);font-size:13.5px}
.menu-check .i{width:18px;height:18px;flex:none}
.menu-check .ok .i{color:var(--up,#1E6B52)}.menu-check .warn .i{color:#B7862C}
@media (max-width:640px){.attr-row,.opt-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* ---------- استيراد من إكسل ---------- */
.imp{display:flex;flex-direction:column;gap:14px}
.imp-step{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.imp-step .toolbar{gap:8px;flex-wrap:wrap}
.imp-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
.imp-sum div{border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column}
.imp-sum b{font-size:20px}.imp-sum span{font-size:12px;color:var(--muted)}
.imp-errs{border:1px solid #C8414A55;background:color-mix(in srgb,#C8414A 8%,transparent);border-radius:10px;padding:10px 12px;margin-bottom:10px;font-size:13px}
.imp-errs ul,.imp-warn{margin:6px 0 0;padding-inline-start:18px;font-size:13px;color:var(--muted)}
.imp-ok{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,#2E9C7A 12%,transparent);font-weight:600}
.imp-ok .i{width:18px;height:18px;color:#2E9C7A}
.imp #imp-go{margin-top:10px}
@media (max-width:560px){.imp-sum{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- كشف الحساب ---------- */
.st-wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.st-side{flex:1 1 260px;max-width:340px;min-width:0;position:sticky;top:70px}
.st-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:16px}
.st-list{max-height:62vh;overflow-y:auto;display:flex;flex-direction:column;padding:4px 8px 10px}
.st-it{all:unset;cursor:pointer;display:flex;justify-content:space-between;gap:10px;padding:9px 10px;border-radius:8px;font-size:14px}
.st-it:hover{background:var(--surface-2)}.st-it.on{background:var(--accent-soft);color:var(--accent);font-weight:600}
.st-it:focus-visible{outline:2px solid var(--accent)}
.st-head{flex-wrap:wrap;gap:12px}
.st-bal{text-align:end;display:flex;flex-direction:column}.st-bal small{color:var(--muted);font-size:12px}.st-bal b{font-size:22px}
.st-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding-top:0}
.st-tools .field{min-width:150px;flex:0 0 auto}
.st-open td{background:var(--surface-2)}
.aging{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.aging div{border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column}
.aging small{color:var(--muted);font-size:12px}.aging b{font-size:17px}
.aging .late{border-color:#C8414A66}.aging .late b{color:#C8414A}
@media (max-width:820px){.st-side{position:static;max-width:none}.aging{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- سجل التغييرات ---------- */
.hist-list{display:flex;flex-direction:column;gap:10px}
.hist-list.pad{padding:14px}
.hist-it{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}
.hist-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13.5px}
.hist-h .muted{margin-inline-start:auto;font-size:12.5px}
.hist-t{border-collapse:collapse;font-size:13px;width:100%}
.hist-t th{font-weight:600;color:var(--muted);text-align:start;padding:3px 8px 3px 0;width:120px;white-space:nowrap}
.hist-t td{padding:3px 6px;overflow-wrap:anywhere}
.hist-t .was{color:#C8414A;text-decoration:line-through;text-decoration-color:#C8414A88}
.hist-t .now{color:var(--ink);font-weight:600}
.hist-t .arr{color:var(--muted);width:18px;text-align:center}
.audit-f{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.audit-f .field{min-width:150px;flex:0 1 180px}

/* ---------- الملف الموحّد والشريط الزمني ---------- */
.party-card{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px;margin-bottom:16px}
.party-id{display:flex;gap:14px;align-items:flex-start;min-width:0}
.party-id h2{margin:0 0 4px;font-size:20px}
.party-av{flex:none;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:22px}
.party-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start}
.tl-panel{margin-top:16px}
.tl-panel .panel-h{flex-wrap:wrap;gap:10px}
.tl-compose{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.tl-compose .seg button{display:inline-flex;align-items:center;gap:5px}
.tl-compose .seg svg{width:14px;height:14px}
.tl-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.tl-tasks{padding:12px 18px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px;background:color-mix(in srgb,var(--warn-soft) 40%,transparent)}
.tl-task{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;cursor:pointer}
.tl-task small{grid-column:2;color:var(--muted)}
.tl-task.late small{color:var(--bad)}
.tlx{list-style:none;margin:0;padding:8px 18px 16px;position:relative}
.tl-ev{position:relative;display:flex;gap:12px;padding:10px 0;align-items:flex-start}
.tl-ev:not(:last-child)::before{content:"";position:absolute;inset-inline-start:15px;top:42px;bottom:-8px;width:2px;background:var(--line)}
.tlx-ic{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--muted)}
.tlx-ic svg{width:15px;height:15px}
.g-money .tlx-ic{background:var(--good-soft);color:var(--good)}
.g-docs .tlx-ic{background:var(--accent-soft);color:var(--accent)}
.g-talk .tlx-ic{background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));color:var(--accent-ink,var(--accent))}
.g-task .tlx-ic{background:var(--warn-soft);color:var(--warn)}
.tl-body{all:unset;flex:1;min-width:0;display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:4px 8px;border-radius:8px}
.tl-body.click{cursor:pointer}
.tl-body.click:hover,.tl-body.click:focus-visible{background:var(--surface-2)}
.tl-t{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.tl-when{color:var(--muted);font-size:12px}
.tl-sub{grid-column:1;color:var(--muted);font-size:13.5px;white-space:pre-line;overflow-wrap:anywhere}
.tl-amt{grid-column:2;grid-row:1;font-weight:600;white-space:nowrap}
.tl-del{opacity:.5}.tl-ev:hover .tl-del{opacity:1}
/* ---------- الفروع ---------- */
.br-sw{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 8px;height:34px;background:var(--surface);color:var(--muted)}
.br-sw svg{width:15px;height:15px}
.br-sw select{all:unset;cursor:pointer;color:var(--ink);font-size:13.5px;max-width:150px;text-overflow:ellipsis}
.br-pill{background:var(--surface-2)}
.br-pick{display:flex;gap:8px 18px;flex-wrap:wrap}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* ---------- الحقول المخصصة ---------- */
.cf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.cf-chip{display:inline-flex;gap:6px;align-items:baseline;background:var(--surface-2);border-radius:7px;padding:3px 9px;font-size:13px}
.cf-chip small{color:var(--muted)}
.cf-line{font-size:12px;margin-top:2px}
@media (max-width:640px){.party-acts .btn{flex:1 1 auto}.br-sw select{max-width:100px}}

/* ---------- الاعتمادات ---------- */
.ap-why{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}
.ap-ic{flex:none;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--warn-soft);color:var(--warn)}
.ap-v{display:flex;flex-direction:column;gap:14px}
.ap-note{background:var(--surface-2);border-radius:8px;padding:10px 12px;white-space:pre-line}
.ap-note small{display:block;color:var(--muted);margin-bottom:2px}
.ap-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;counter-reset:s}
.ap-steps li{counter-increment:s;display:grid;grid-template-columns:28px 1fr;gap:0 10px;align-items:center}
.ap-steps li::before{content:counter(s);grid-row:span 2;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--muted);font-weight:600;font-size:13px}
.ap-steps li.ok::before{content:"✓";background:var(--good-soft);color:var(--good)}
.ap-steps li.no::before{content:"✕";background:var(--bad-soft);color:var(--bad)}
.ap-steps li.cur::before{background:var(--warn-soft);color:var(--warn)}
.ap-steps small{color:var(--muted)}
.ap-set .input{min-width:120px}
/* ---------- الأتمتة ---------- */
.ru-list{display:flex;flex-direction:column}
.ru{display:flex;align-items:center;gap:14px;padding:14px 18px;border-top:1px solid var(--line)}
.ru:first-child{border-top:0}
.ru.off .ru-b{opacity:.55}
.ru-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.ru-flow{display:flex;flex-wrap:wrap;gap:6px}
.ru-chip{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;padding:3px 9px;border-radius:99px;background:var(--surface-2)}
.ru-chip svg{width:13px;height:13px}
.ru-chip.when{background:var(--accent-soft);color:var(--accent)}
.ru-chip.if{background:var(--warn-soft);color:var(--warn)}
.ru-chip.then{background:var(--good-soft);color:var(--good)}
.ru-n{font-size:12.5px;white-space:nowrap}
.tgl{position:relative;display:inline-block;width:38px;height:22px;flex:none;cursor:pointer}
.tgl input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1}
.tgl span:first-of-type{position:absolute;inset:0;border-radius:99px;background:var(--line);transition:background .15s}
.tgl span:first-of-type::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:inset-inline-start .15s}
.tgl input:checked+span{background:var(--accent)}
.tgl input:checked+span::after{inset-inline-start:19px}
.tgl input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.ru-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;padding:14px 18px}
.ru-tpl{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:10px}
.ru-tpl:hover:not([disabled]),.ru-tpl:focus-visible{border-color:var(--accent)}
.ru-tpl small{color:var(--muted);line-height:1.5}
.ru-tpl span{margin-top:4px;color:var(--accent);font-size:13px;font-weight:600}
.ru-tpl[disabled]{opacity:.55;cursor:default}
.ru-tpl[disabled] span{color:var(--muted)}
.ru-form{display:flex;flex-direction:column;gap:14px}
.ru-step{display:flex;gap:12px;align-items:center}
.ru-step.col{align-items:flex-start}
.ru-tag{flex:none;width:52px;text-align:center;font-weight:700;font-size:13px;padding:6px 0;border-radius:8px}
.ru-tag.when{background:var(--accent-soft);color:var(--accent)}
.ru-tag.if{background:var(--warn-soft);color:var(--warn)}
.ru-tag.then{background:var(--good-soft);color:var(--good)}
.ru-conds,.ru-acts{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.ru-cond,.ru-act{display:flex;gap:8px;align-items:center;flex-wrap:wrap;width:100%}
.ru-cond .input,.ru-act .input{flex:1 1 140px;width:auto}
.ru-days{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}
.ru-days .input{width:70px;flex:none}
@media (max-width:640px){.ru{flex-wrap:wrap}.ru-step{flex-direction:column;align-items:stretch}.ru-tag{width:auto}}

/* ---------- نقطة البيع الاحترافية ---------- */
.pos-tools{position:relative}
.pos-tools > .btn,.pos-tools > .icon-btn{align-self:flex-start}
.pos-tools:has(.qty-next) .search .input{border-color:var(--accent)}
.qty-next{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:var(--accent-soft);color:var(--accent);border-radius:99px;padding:3px 6px 3px 12px;font-size:13.5px}
.qty-next button{all:unset;cursor:pointer;display:grid;place-items:center;width:20px;height:20px;border-radius:50%}
.qty-next svg{width:13px;height:13px}
.pos-grid.kb{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.pos-grid.kb .pos-img{aspect-ratio:2/1}
.pos-grid.kb .pos-img b{font-size:18px}
.pos-cust-btn{all:unset;cursor:pointer;display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;padding:8px 10px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:14px}
.pos-cust-btn svg{width:16px;height:16px}
.pos-cust-btn.on{border-style:solid;border-color:var(--accent);color:var(--ink)}
.pos-cust-btn.on > span{font-weight:600}
.pc-hint{grid-column:1/-1;color:var(--muted);font-size:12px;line-height:1.6}
.pc-hint em{display:block;font-style:normal;color:var(--warn)}
.pc-hint em svg{width:12px;height:12px;vertical-align:-2px}
.pc-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;max-height:300px;overflow:auto}
.pc-it{all:unset;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:9px 12px;border:1px solid var(--line);border-radius:9px}
.pc-it:hover,.pc-it:focus-visible,.pc-it.on{border-color:var(--accent)}
.pc-it small{grid-column:1/-1}
.pc-new{margin-top:12px}
.pc-new summary{cursor:pointer;color:var(--accent);display:inline-flex;align-items:center;gap:6px}
.pc-new form{margin-top:10px}
.pos-more{display:flex;gap:8px}
.pos-more .btn{flex:1;justify-content:center}
.pos-sum .row.disc{color:var(--good)}
.disc-quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.split-rows{display:flex;flex-direction:column;gap:8px;margin:14px 0}
.split-row{display:grid;grid-template-columns:auto 1fr 130px auto;gap:10px;align-items:center}
.split-row .input{text-align:left}
.split-left{font-size:15px}
.chg{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px;border-radius:12px;background:var(--good-soft);color:var(--good)}
.chg b.num{font-family:var(--f-display);font-size:40px;line-height:1.1}
.chg.ok{background:var(--surface-2);color:var(--muted)}
.chg-notes{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.note-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:#2E7D5B;color:#fff;font-size:13px}
.note-chip b{font-weight:700}
.note-chip.coin{border-radius:99px;background:#9A7B2F}
.chg .note-chip{color:#fff}
.cnt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:12px}
.cnt-it{display:flex;align-items:center;gap:8px}
.cnt-it .note-chip{min-width:52px;justify-content:center}
.cnt-it .input{text-align:left}
.cnt-det summary{cursor:pointer;color:var(--accent)}
.upsell{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border-radius:10px;background:var(--accent-soft)}
.upsell small{width:100%;color:var(--accent);display:flex;align-items:center;gap:5px;font-weight:600}
.upsell small svg{width:13px;height:13px}
.upsell button{all:unset;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:4px 10px;font-size:13px}
.upsell button:hover,.upsell button:focus-visible{border-color:var(--accent)}
.kb-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.kb-list div{display:flex;align-items:center;gap:10px}
kbd{display:inline-block;min-width:44px;text-align:center;font:600 12.5px/1.6 ui-monospace,monospace;padding:2px 7px;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:var(--surface-2);direction:ltr}
.warn-text{color:var(--warn)}
@media (max-width:640px){.split-row{grid-template-columns:auto 1fr 100px}.split-row .btn{grid-column:2/-1}}
.pos-q-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pos-q-row .search{flex:1 1 260px;max-width:none}
.pos-q-row .qty-next{align-self:center}

/* ---------- الطاولات والمطبخ المتقدم ---------- */
.pos-table-btn{all:unset;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:10px 12px;border:1.5px dashed var(--line);border-radius:10px}
.pos-table-btn svg{width:18px;height:18px;color:var(--muted)}
.pos-table-btn small{color:var(--muted);font-size:12px}
.pos-table-btn.on{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}
.pl-note-btn.c2on{color:var(--warn);font-weight:600}
.floor-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.floor-mode{background:var(--warn-soft);color:var(--warn);border-radius:8px;padding:4px 6px 4px 12px;display:inline-flex;align-items:center;gap:8px}
.floor{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.ftable{display:flex;flex-direction:column;border:2px solid var(--good);border-radius:14px;background:color-mix(in srgb,var(--good) 8%,var(--surface));overflow:hidden}
.ftable.busy{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}
.ftable.busy.long{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,var(--surface))}
.ftable.cur{box-shadow:0 0 0 3px var(--accent)}
.ftable.dim{opacity:.35}
.ftable.pick{box-shadow:0 0 0 3px var(--accent);animation:pick 1s ease-in-out infinite alternate}
@keyframes pick{to{box-shadow:0 0 0 6px var(--accent-soft)}}
.ft-main{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;min-height:96px;justify-content:center;text-align:center}
.ft-main[disabled]{cursor:default}
.ft-main > b{font-family:var(--f-display);font-size:26px;line-height:1.1}
.ft-main small{color:var(--muted);font-size:12px}
.ft-free{color:var(--good);font-weight:600;font-size:13px}
.ft-t{font-weight:700;color:var(--bad)}
.ftable.long .ft-t{color:var(--warn)}
.ft-amt{font-weight:600}
.ft-acts{display:flex;border-top:1px solid var(--line)}
.ft-acts .btn{flex:1;justify-content:center;border-radius:0;border:0}
.ft-acts .btn + .btn{border-inline-start:1px solid var(--line)}
.kds-st{align-self:flex-start;margin-bottom:10px}
.kds-station{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.kds-items .kl{all:unset;cursor:pointer;display:flex;gap:10px;width:100%;flex-wrap:wrap;align-items:baseline;border-radius:6px}
.kds-items .kl:hover{background:var(--surface-2)}
.kds-items .kl:focus-visible{outline:2px solid var(--accent)}
.kds-items .kl > b{min-width:38px;color:var(--accent);font-variant-numeric:tabular-nums}
.kds-items .kl > span{flex:1;min-width:0}
.kds-items li.done .kl{opacity:.45;text-decoration:line-through}
.kds-items li.wait .kl{opacity:.55}
.kds-items i{font-style:normal;font-size:12px;font-weight:600;padding:1px 8px;border-radius:99px;background:var(--surface-2);color:var(--muted)}
.kds-items i.c2{background:var(--warn-soft);color:var(--warn)}
.kds-fire{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}
.kds-card.late{animation:late 1.2s ease-in-out infinite}
@keyframes late{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--bad) 45%,transparent)}}
@media (prefers-reduced-motion:reduce){.kds-card.late,.ftable.pick{animation:none}}
.krep-h{font-size:14px;margin:16px 0 8px}
.khours{display:flex;align-items:flex-end;gap:4px;height:120px;padding:8px 0;border-bottom:1px solid var(--line)}
.kh{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end}
.kh span{width:100%;max-width:28px;border-radius:4px 4px 0 0;background:var(--accent);opacity:.55;min-height:2px}
.kh.peak span{opacity:1}
.kh small{font-size:10.5px;color:var(--muted)}
.st-row{display:grid;grid-template-columns:160px 1fr auto;gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}
@media (max-width:640px){.st-row{grid-template-columns:1fr auto}.st-row .chips{grid-column:1/-1}}

/* ---------- شاشة العميل ---------- */
.cfd{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}
.cfd .bs-h{padding:16px 24px}
.cfd-cart{flex:1;display:grid;grid-template-columns:1fr minmax(300px,380px);gap:20px;padding:0 24px 24px;min-height:0}
.cfd-lines{display:flex;flex-direction:column;gap:10px;overflow:auto;max-height:calc(100vh - 110px)}
.cfd-l{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 14px;font-size:20px}
.cfd-l small{display:block;color:var(--muted);font-size:15px}
.cfd-l > b{font-size:22px}
.cfd-img{width:64px;height:64px;border-radius:12px;overflow:hidden;display:grid;place-items:center;color:#fff;font-weight:700;font-size:20px}
.cfd-img img{width:100%;height:100%;object-fit:cover}
.cfd-sum{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:10px;align-self:start;font-size:18px}
.cfd-sum .row{display:flex;justify-content:space-between}
.cfd-sum .row.good{color:var(--good)}
.cfd-sum .row.big{font-family:var(--f-display);font-size:34px;font-weight:700;border-top:1px solid var(--line);padding-top:12px}
.cfd-sum .row.big small{font-size:16px;color:var(--muted)}
.cfd-hi{font-size:22px;font-weight:600;color:var(--accent)}
.cfd-qr{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px;padding:14px;border-radius:12px;background:#fff;color:#111}
.cfd-qr svg{width:180px;height:180px}
.cfd-done,.cfd-idle{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:24px}
.cfd-done > svg{width:84px;height:84px;color:var(--good);background:var(--good-soft);border-radius:50%;padding:16px}
.cfd-done h2,.cfd-idle h2{font-family:var(--f-display);font-size:44px;margin:0}
.cfd-done p,.cfd-idle p{font-size:22px;color:var(--muted);margin:0}
.cfd-chg b{color:var(--good);font-size:30px}
.cfd-stars{display:flex;gap:10px;direction:ltr}
.cfd-stars button{all:unset;cursor:pointer;font-size:64px;line-height:1;color:var(--line);transition:transform .1s}
.cfd-stars button:hover,.cfd-stars button:focus-visible,.cfd-stars button:hover ~ button{color:#F2B33D}
.cfd-stars:hover button{color:#F2B33D}.cfd-stars button:hover ~ button{color:var(--line)}
.cfd-stars button:active{transform:scale(.9)}
.cfd-thx{font-size:30px !important;color:#F2B33D !important}
@media (max-width:760px){.cfd-cart{grid-template-columns:1fr}}
/* ---------- الصلاحية والدفعات ---------- */
.fefo{display:block;font-size:12px;color:var(--muted)}
.fefo.soon{color:var(--warn)}
.fefo b{color:var(--bad);font-weight:600}
.ln-batch{display:grid;grid-template-columns:1fr 150px;gap:6px;margin-top:6px}
.batches{margin-bottom:14px}
.batches > b{display:block;margin-bottom:6px;font-size:14px}
.batches tr.exp td{color:var(--bad)}
.batches tr.soon td{color:var(--warn)}
.off-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:12.5px;font-weight:600;background:var(--warn-soft);color:var(--warn);white-space:nowrap}
.off-chip.off{background:var(--bad-soft);color:var(--bad)}
.off-chip svg{width:14px;height:14px}
/* زر الدفع بشعار التطبيق، وقائمة «الطلبات» */
.pos-pm{color:var(--pm-ink,#fff);display:flex;align-items:center;justify-content:center;gap:8px}
.pos-pm img{height:24px;max-width:56px;object-fit:contain;border-radius:4px;background:#fff;padding:2px}
.pm-mark{font-style:normal;width:24px;height:24px;border-radius:6px;display:grid;place-items:center;background:color-mix(in srgb,var(--pm-ink,#fff) 22%,transparent);font-weight:800}
.pm-logo-sm{width:22px;height:22px;object-fit:contain;vertical-align:-6px;margin-inline-end:6px;border-radius:4px}
.dd{position:relative;display:inline-block}
.dd-pop{position:absolute;top:calc(100% + 6px);inset-inline-start:0;z-index:30;min-width:280px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column}
.dd-pop button{all:unset;cursor:pointer;display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:8px}
.dd-pop button:hover,.dd-pop button:focus-visible{background:var(--surface-2)}
.dd-pop svg{width:20px;height:20px;color:var(--accent);margin-top:2px}
.dd-pop b{display:block}.dd-pop small{color:var(--muted);font-size:12.5px}
.pl-note-btn + .pl-note-btn{margin-inline-start:12px}
/* ---------- الموارد البشرية المتقدمة ---------- */
.adv-sched{display:flex;flex-wrap:wrap;gap:6px}
.adv-sched span{display:inline-flex;gap:8px;align-items:center;padding:4px 10px;border-radius:8px;background:var(--surface-2);font-size:13px}
.adv-sched span.done{background:var(--good-soft);color:var(--good)}
.adv-sched span.skip{background:var(--warn-soft);color:var(--warn)}
.me-more{margin-top:16px}
.me-list{display:flex;flex-direction:column}
.me-list .due{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line)}
.me-list .due:first-child{border-top:0}
.me-list button.due{all:unset;cursor:pointer;display:flex;gap:10px;align-items:center;padding:10px 16px;border-top:1px solid var(--line)}
.me-list button.due:hover{background:var(--surface-2)}
.emp-adv{display:flex;flex-direction:column;gap:6px;margin:10px 0}
.ros-t td{padding:4px}
.ros-t th small{display:block;font-weight:400;color:var(--muted)}
.ros-c{min-width:110px;padding:6px 8px;font-size:13px}
.ros-c.set{border-color:var(--accent);background:var(--accent-soft)}
.cmp-t .input{min-width:90px}
.ob-tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 16px}
.cert .cert-to{margin:24px 0 8px;font-size:16px}
.cert-body{font-size:16px;line-height:2;margin:10px 0}
.hr-bars .kh b{font-size:11px;color:var(--muted);font-weight:500}
.grid.g-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
/* ---------- التسعير ورابط العرض ---------- */
.rule-p{color:var(--accent)}
.rule-tag{display:inline-flex;align-items:center;gap:3px;color:var(--accent);font-size:11.5px}
.rule-tag svg{width:11px;height:11px}
.pr-top{margin-bottom:16px}
.pr-pick{margin-top:8px;max-height:160px;overflow:auto}
.sim-r{display:flex;gap:14px;flex-wrap:wrap;padding:10px 12px;border-radius:8px;background:var(--surface-2)}
.good-t{color:var(--good)}
tr.off td{opacity:.55}
.share-link{display:flex;gap:8px}
.share-link .input{flex:1}
.share-acts{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.share-stats{color:var(--muted);font-size:13px;display:flex;gap:6px;align-items:center}
.share-stats svg{width:14px;height:14px}
.q-sign{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:14px;border:1px dashed var(--good);border-radius:12px;background:#fff;color:#10212F}
.q-sign small{display:block;color:#5b6b78}
.q-sign img{max-height:80px;max-width:260px}
.q-sign.note{display:block;border-color:var(--warn);background:var(--warn-soft);color:var(--ink)}
.pubq{max-width:900px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:16px}
.pubq-top{display:flex;align-items:center;gap:10px;font-size:18px}
.pubq .paper{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px}
.pubq-act{padding:18px}
.pubq-act h2{margin:0 0 12px;font-size:18px}
.pq-btns{display:flex;gap:10px;flex-wrap:wrap}
.pq-btns .btn{padding:12px 18px}
.pq-done{display:flex;gap:12px;align-items:center}
.pq-done svg{width:34px;height:34px;flex:none;padding:6px;border-radius:50%;background:var(--surface-2)}
.pq-done.good svg{background:var(--good-soft);color:var(--good)}
.pq-done.warn svg{background:var(--warn-soft);color:var(--warn)}
.pq-done b{display:block;font-size:17px}
.pq-done span{color:var(--muted)}
.sig-wrap{position:relative;border:1.5px dashed var(--line);border-radius:10px;background:#fff;touch-action:none}
.sig-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:560/180;cursor:crosshair;touch-action:none}
.sig-wrap .btn{position:absolute;top:6px;inset-inline-start:6px;background:#fff;color:#333}
.pubq-foot{text-align:center;color:var(--muted);font-size:12px}
@media print{.pubq-top .btn,.pubq-act,.pubq-foot{display:none}}

/* قائمة أسعار التطبيقات في نقطة البيع */
.pos-plist{display:flex;align-items:center;gap:8px;margin:6px 0;flex-wrap:wrap}
.pos-plist small{color:var(--muted);font-weight:600}
.pos-plist .seg button{padding:5px 10px;font-size:13px}
.pos-price.app{color:var(--accent,#E0663A);font-weight:700}
.ap-tbl{max-height:55vh;overflow:auto}
.ap-tbl input.input{width:96px;padding:6px 8px;text-align:left}

/* خدمة العملاء: التذاكر */
.tk-tabs{margin-bottom:14px}
.sla{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--line,rgba(127,127,127,.12));white-space:nowrap}
.sla .i{width:14px;height:14px}
.sla.bad{background:rgba(220,60,60,.14);color:#d64545}.sla.warn{background:rgba(224,150,40,.16);color:#c07a12}.sla.good{background:rgba(46,156,122,.14);color:#2E9C7A}
tr.tk-late td:first-child{box-shadow:inset -3px 0 0 #d64545}
.tk-n{background:#d64545;color:#fff;border-radius:999px;padding:0 6px;font-size:11px;margin-inline-start:4px}
.tk-stars{color:#E8A317;letter-spacing:1px;font-size:14px}.tk-stars.big{font-size:22px}
.tk-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.tk-head .spacer{flex:1}
.tk-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:start}
@media (max-width:720px){.tk-grid{grid-template-columns:1fr}}
.tk-sla{display:grid;gap:8px}
.tk-sla-row{border:1px solid var(--line,rgba(127,127,127,.2));border-radius:10px;padding:8px 10px;display:grid;gap:2px}
.tk-sla-row span{font-size:12px;color:var(--muted)}.tk-sla-row small{font-size:11.5px;color:var(--muted)}
.tk-sla-row.bad{border-color:rgba(214,69,69,.5)}.tk-sla-row.bad b{color:#d64545}.tk-sla-row.good b{color:#2E9C7A}
.tk-desc{margin:12px 0;padding:10px 12px;border-radius:10px;background:var(--line,rgba(127,127,127,.08));white-space:pre-wrap}
.tk-acts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.tk-log{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:280px;overflow:auto}
.tk-e{display:flex;gap:10px;align-items:flex-start}
.tk-e-ic{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--line,rgba(127,127,127,.12))}
.tk-e-ic .i{width:15px;height:15px}
.tk-e small{color:var(--muted);font-size:11.5px}.tk-e div div{white-space:pre-wrap}
.tk-e.reply .tk-e-ic{background:rgba(28,139,176,.16);color:#1565C0}.tk-e.esc .tk-e-ic{background:rgba(214,69,69,.16);color:#d64545}
.tk-e.note>div{opacity:.85;font-style:italic}.tk-e.cost .tk-e-ic{background:rgba(224,150,40,.16);color:#c07a12}
.tk-compose{margin-top:12px;display:grid;gap:8px}.tk-row{display:flex;gap:8px;align-items:center}
.tk-cost-h{padding:14px 0 6px;border:0}
.tk-bar{display:inline-block;width:70px;height:6px;border-radius:4px;background:var(--line,rgba(127,127,127,.15));vertical-align:middle;overflow:hidden}
.tk-bar i{display:block;height:100%;background:#D0563C;border-radius:4px}
.tk-agents{display:flex;flex-wrap:wrap;gap:10px 18px}
.sla-in{width:90px;text-align:left}
.pt-steps{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 14px}
.pt-steps li{flex:1;display:grid;justify-items:center;gap:4px;font-size:12.5px;color:var(--muted);text-align:center}
.pt-steps i{width:26px;height:26px;border-radius:50%;border:2px solid var(--line,rgba(127,127,127,.3));display:grid;place-items:center}
.pt-steps li.on{color:inherit;font-weight:600}.pt-steps li.on i{background:#2E9C7A;border-color:#2E9C7A;color:#fff}.pt-steps .i{width:14px;height:14px}
.pt-rate{display:flex;gap:6px;justify-content:center;margin:6px 0 12px}
.pt-rate button{font-size:34px;line-height:1;background:none;border:0;color:rgba(127,127,127,.35);cursor:pointer;padding:2px}
.pt-rate button.on{color:#E8A317}

/* التوصيل: لوحة الإسناد وتطبيق السائق */
.dl-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px;align-items:start}
@media (max-width:900px){.dl-board{grid-template-columns:1fr}}
.dl-col{background:var(--panel,rgba(127,127,127,.06));border:1px solid var(--line,rgba(127,127,127,.18));border-radius:14px;padding:12px;display:grid;gap:10px}
.dl-col h3{margin:0;font-size:15px;display:flex;justify-content:space-between}
.dl-card{border:1px solid var(--line,rgba(127,127,127,.2));border-radius:12px;padding:10px 12px;display:grid;gap:5px;cursor:pointer;background:var(--bg,transparent)}
.dl-card:hover{border-color:#2F8F6B}.dl-card.late{border-color:rgba(214,69,69,.6);box-shadow:inset 3px 0 0 #d64545}
.dl-c-h{display:flex;justify-content:space-between;align-items:center;gap:8px}
.dl-c-n{font-weight:600}.dl-c-a{font-size:13px}.dl-c-a .i,.dl-c-f .i{width:14px;height:14px;vertical-align:-2px}
.dl-c-f{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12.5px}
.dl-assign{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.dl-cand{display:grid;gap:6px;border-top:1px dashed var(--line,rgba(127,127,127,.3));padding-top:10px}
.dl-cand small{color:var(--muted)}
.dl-cand-it{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;text-align:start;padding:7px 10px;border-radius:10px;border:1px solid var(--line,rgba(127,127,127,.2));background:none;color:inherit;cursor:pointer;font:inherit;font-size:13px}
.dl-cand-it:hover{border-color:#2F8F6B}.dl-cand-it .i{width:15px;height:15px}
.dl-pod{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.dl-pod>div{display:grid}.dl-pod small{color:var(--muted)}
.dl-sig{height:70px;background:#fff;border-radius:8px;padding:4px}.dl-photo{height:120px;border-radius:8px;object-fit:cover}
.dl-reasons{display:grid;gap:8px;margin-bottom:10px}
.drv{max-width:560px;margin:0 auto;display:grid;gap:12px}
.drv-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#2F8F6B,#1C6E54);color:#fff}
.drv-top>div{display:grid}.drv-top b{font-size:26px}.drv-top small{opacity:.85}
.drv-h{font-size:16px;margin:6px 0 0;display:flex;gap:8px;align-items:center}
.drv-card{border:1px solid var(--line,rgba(127,127,127,.2));border-radius:16px;padding:14px;display:grid;gap:8px;background:var(--panel,transparent)}
.drv-card h3{margin:0;font-size:18px}.drv-card p{margin:0}
.drv-card.delivered,.drv-card.failed{opacity:.75}
.drv-note{background:rgba(224,150,40,.12);border-radius:8px;padding:6px 10px;font-size:13.5px}
.drv-cod{font-size:15px}.drv-cod b{font-size:20px}
.drv-quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}
.drv-quick .btn{justify-content:center;min-height:46px}
.drv-main{display:grid;gap:8px}.drv-main .btn{min-height:52px;font-size:16px}
.drv-off{background:rgba(224,150,40,.16);color:#a86a0c;border-radius:10px;padding:8px 12px;font-size:13.5px}

/* التكاملات وتثبيت التطبيق */
.hk-log{max-height:520px}
.hk-alert .tk-e-ic{background:rgba(214,69,69,.16);color:#d64545}.hk-warn .tk-e-ic{background:rgba(224,150,40,.16);color:#c07a12}
.hk-data{display:block;font-size:11.5px;color:var(--muted);margin-top:3px;word-break:break-all;text-align:left}
.hk-code{background:rgba(127,127,127,.1);border-radius:10px;padding:10px 12px;font-size:12px;overflow:auto;white-space:pre;text-align:left}
.hk-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;padding:14px}
.hk-g{display:flex;gap:10px;border:1px solid var(--line,rgba(127,127,127,.2));border-radius:12px;padding:12px}
.hk-g p{margin:4px 0;font-size:13.5px}.hk-g small{color:var(--muted);font-size:12.5px;line-height:1.6}
.hk-g-ic{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(46,143,107,.14);color:#2F8F6B}
.pwa-hint{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:rgba(28,139,176,.12);color:inherit}
.pwa-steps{margin:0;padding-inline-start:20px;display:grid;gap:8px}.pwa-steps .i{width:16px;height:16px;vertical-align:-3px}
