/* =========================================================
   لوحات التحكم — أنماط مشتركة (كل الأصناف مُسبَّقة بـ ds-)
   ========================================================= */
.dash-shell{background:#0E1118;border:1px solid #232C3E;border-radius:var(--r-xl);padding:clamp(16px,2.4vw,28px);
  box-shadow:0 30px 70px rgba(5,8,14,.55);color:#E7EDF7}
.dash-shell h3,.dash-shell h4{color:#FBF7F0}
.dash-head{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-bottom:18px}
.dash-head .t{font-family:var(--font-heading);font-size:clamp(1.1rem,2vw,1.45rem);color:#FBF7F0;margin:0}
.dash-head .s{font-size:.8rem;color:#8B9AB4;margin:4px 0 0}
.dash-tools{display:flex;gap:9px;flex-wrap:wrap;align-items:center}

.ds-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #232C3E;margin-bottom:18px;padding-bottom:0}
.ds-tab{background:transparent;border:0;border-bottom:2px solid transparent;color:#93A2BC;
  font:600 .86rem/1 var(--font-body);padding:11px 14px;cursor:pointer;border-radius:9px 9px 0 0;
  transition:color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}
.ds-tab:hover{color:#E7EDF7;background:rgba(255,255,255,.04)}
.ds-tab[aria-selected="true"]{color:#fff;border-bottom-color:var(--resin-300);
  background:linear-gradient(180deg,rgba(227,174,69,.14),transparent)}
.ds-panel[hidden]{display:none}

.ds-kpis{display:grid;gap:13px;grid-template-columns:repeat(auto-fit,minmax(186px,1fr));margin-bottom:20px}
.ds-kpi{background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  border:1px solid #232C3E;border-radius:var(--r-md);padding:14px 16px;position:relative;overflow:hidden}
.ds-kpi::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--resin-300)}
.ds-kpi .ds-kpi-top{display:flex;align-items:center;gap:7px;font-size:.78rem;color:#93A2BC}
.ds-kpi .ds-kpi-val{font-family:var(--font-heading);font-size:clamp(1.35rem,2.6vw,1.8rem);color:#F5DFAE;
  margin-top:5px;font-variant-numeric:tabular-nums;line-height:1.2}
.ds-kpi .ds-kpi-delta{font-size:.73rem;color:#7FD1A5;display:flex;align-items:center;gap:4px;margin-top:2px}
.ds-kpi .ds-kpi-delta.neg{color:#F09A94}

/* ————— الرسوم ————— */
.ds-charts{display:grid;gap:16px;grid-template-columns:1.55fr 1fr;margin-bottom:20px}
@media (max-width:900px){.ds-charts{grid-template-columns:1fr}}
.ds-box{background:rgba(255,255,255,.03);border:1px solid #232C3E;border-radius:var(--r-md);padding:16px}
.ds-box h4{font-size:.92rem;margin:0 0 4px}
.ds-box .sub{font-size:.75rem;color:#8B9AB4;margin-bottom:12px}
.ds-bars{display:flex;align-items:flex-end;gap:6px;height:168px;padding-top:8px}
.ds-bar{flex:1;border-radius:6px 6px 0 0;background:linear-gradient(180deg,var(--resin-300),var(--resin-600));
  min-height:6px;position:relative;transition:filter var(--dur-base) var(--ease);cursor:default}
.ds-bar:hover{filter:brightness(1.25)}
.ds-bar::after{content:attr(data-h);position:absolute;top:-19px;inset-inline:0;text-align:center;
  font-size:.68rem;color:#C9B37E;opacity:0;transition:opacity var(--dur-fast)}
.ds-bar:hover::after{opacity:1}
.ds-axis{display:flex;gap:6px;margin-top:8px}
.ds-axis span{flex:1;text-align:center;font-size:.67rem;color:#8B9AB4}
.ds-donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ds-legend{list-style:none;margin:0;padding:0;font-size:.79rem;flex:1 1 150px}
.ds-legend li{display:flex;align-items:center;gap:8px;padding:4px 0;color:#B7C3D8}
.ds-legend i{width:11px;height:11px;border-radius:3px;flex:none}
.ds-legend b{margin-inline-start:auto;color:#F5DFAE;font-variant-numeric:tabular-nums}
.ds-spark{display:flex;align-items:flex-end;gap:3px;height:44px;margin-top:10px}
.ds-spark span{flex:1;background:linear-gradient(180deg,#7FD1A5,#2F6F52);border-radius:3px 3px 0 0;min-height:4px}

/* ————— شريط الأدوات والجدول ————— */
.ds-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:6px 0 14px}
.ds-filters input[type="search"],.ds-filters select{background:#141A26;border:1px solid #2B364B;color:#E7EDF7;
  border-radius:10px;padding:9px 12px;font:400 .84rem var(--font-body);min-width:150px}
.ds-filters input[type="search"]{flex:1 1 220px}
.ds-filters input:focus,.ds-filters select:focus{outline:none;border-color:var(--resin-300)}
.ds-count{font-size:.78rem;color:#8B9AB4;margin-inline-start:auto}
.ds-tablewrap{overflow-x:auto;border:1px solid #232C3E;border-radius:var(--r-md)}
table.ds-table{width:100%;border-collapse:collapse;font-size:.83rem;min-width:760px}
table.ds-table thead th{background:#151B27;color:#C9B37E;text-align:right;padding:11px 12px;
  font-weight:600;white-space:nowrap;border-bottom:1px solid #232C3E}
table.ds-table td{padding:11px 12px;border-bottom:1px solid #1B2331;color:#DCE4F0;vertical-align:middle}
table.ds-table tbody tr:hover td{background:rgba(227,174,69,.055)}
table.ds-table tbody tr:last-child td{border-bottom:0}
.ds-user{display:flex;align-items:center;gap:10px}
.ds-av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:.74rem;font-weight:700;
  background:linear-gradient(135deg,var(--resin-400),var(--sage-500));color:#0E1118;flex:none}
.ds-user small{display:block;color:#8B9AB4;font-size:.72rem}
.ds-pill{display:inline-block;padding:4px 11px;border-radius:var(--r-pill);font-size:.73rem;font-weight:600}
.p-ok{background:rgba(127,209,165,.14);color:#7FD1A5;border:1px solid rgba(127,209,165,.3)}
.p-wait{background:rgba(240,199,102,.14);color:#F0C766;border:1px solid rgba(240,199,102,.3)}
.p-hold{background:rgba(240,154,148,.14);color:#F09A94;border:1px solid rgba(240,154,148,.3)}
.p-info{background:rgba(126,168,214,.14);color:#9CC1EA;border:1px solid rgba(126,168,214,.3)}
.ds-empty{padding:38px 16px;text-align:center;color:#8B9AB4;font-size:.86rem}
.ds-pager{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;align-items:center;margin-top:14px}
.ds-pager button{background:#141A26;border:1px solid #2B364B;color:#C8D3E6;border-radius:9px;
  min-width:36px;padding:7px 10px;font:600 .8rem var(--font-body);cursor:pointer;
  transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}
.ds-pager button:hover{border-color:var(--resin-300);color:#fff}
.ds-pager button[aria-current="true"]{background:var(--resin-500);border-color:var(--resin-500);color:#fff}
.ds-pager button[disabled]{opacity:.4;cursor:default}

/* ————— شريط التصدير ————— */
.rp-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#0B0F18;border:1px solid #26314A;
  border-radius:var(--r-md);padding:13px;margin:18px 0 0}
.rp-bar .rp-hint{color:#8EA0BF;font-size:.76rem;flex:1 1 250px;line-height:1.75;margin:0}
.btn-rp{display:inline-flex;align-items:center;gap:8px;border:1px solid #2B364B;background:transparent;
  color:#E7EDF7;border-radius:11px;padding:10px 15px;font:700 .82rem/1 var(--font-body);cursor:pointer;
  transition:transform var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}
.btn-rp:hover{transform:translateY(-1px);border-color:var(--resin-300);color:#fff}
.btn-rp:focus-visible{outline:2px solid var(--resin-300);outline-offset:3px}
.btn-rp.primary{background:linear-gradient(135deg,var(--resin-500),var(--resin-600));border-color:transparent;
  color:#fff;box-shadow:0 8px 20px rgba(138,90,18,.35)}
.btn-rp.ghost{background:rgba(255,255,255,.03)}
.btn-rp.small{padding:8px 13px;font-size:.78rem}
.btn-rp svg{flex:none}
.rp-modal{position:fixed;inset:0;z-index:10001;display:none;align-items:center;justify-content:center;
  background:rgba(4,8,16,.74);padding:16px}
.rp-modal.on{display:flex}
.rp-modal-box{display:flex;flex-direction:column;width:min(960px,96vw);height:min(92vh,1060px);
  background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.rp-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;
  background:#0F1420;color:#fff;font-size:.87rem;font-family:var(--font-body)}
.rp-modal-body{flex:1;overflow:auto;background:#EEF1F6}
.rp-modal-foot{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start;padding:12px 18px;
  background:#F4F6FA;border-top:1px solid #E2E7F0}
.rp-modal-foot .sp{margin-inline-start:auto}
.rp-x{background:none;border:0;color:#C9D5EA;font-size:1.5rem;line-height:1;cursor:pointer}
.rp-x:hover{color:#fff}
