/* NEXORA ADMIN — Platform console (distinct from ERP app) */
.admin-body { background: var(--bg); color: var(--text-primary); font-family: var(--font-en); }
html[dir="rtl"] .admin-body { font-family: var(--font-ar); }

/* Platform topbar — dark, technical */
.platform-bar {
  height: 28px; display:flex; align-items:center; background:#050A14; color:#94A3B8; font-size:12px; border-bottom:1px solid rgba(255,255,255,.08);
}
.platform-bar-inner { width:min(calc(100% - 32px), 1280px); margin-inline:auto; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.admin-header {
  height:56px; display:flex; align-items:center; gap:12px; padding:0 16px;
  background: var(--de-navy); color:#fff; position:sticky; top:0; z-index:10; border-bottom:1px solid rgba(255,255,255,.08);
}
.admin-header .mark { width:32px; height:32px; border-radius:9px; background:#1A56DB; color:#fff; display:grid; place-items:center; font-weight:900; font-size:13px; }
.admin-header strong { font-size:14px; font-weight:900; letter-spacing:-.02em; }
.admin-header small { display:block; font-size:10px; letter-spacing:.10em; color:#94A3B8; font-weight:700; }
.admin-actions { display:flex; align-items:center; gap:8px; margin-inline-start:auto; }
.admin-actions .icon-chip { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.12); color:#CBD5E1; }
.admin-actions .icon-chip:hover { background:rgba(255,255,255,.14); color:#fff; }

.admin-layout { display:grid; grid-template-columns: 260px 1fr; min-height: calc(100vh - 84px); }
.admin-sidebar {
  background: #0F172A; color:#CBD5E1; border-inline-end:1px solid #1E293B; position:sticky; top:56px; height:calc(100vh - 56px); overflow:auto;
}
html[dir="rtl"] .admin-sidebar { border-inline-end:0; border-inline-start:1px solid #1E293B; }
[data-theme="light"] .admin-sidebar { background:#0B1220; }
.admin-sidebar h4 { font-size:10px; letter-spacing:.10em; text-transform:uppercase; color:#64748B; padding:14px 12px 6px; }
.side-link-admin {
  display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:10px; margin:2px 8px; font-size:13px; font-weight:600; color:#94A3B8; cursor:pointer; border:0; background:transparent; width:calc(100% - 16px); text-align:start;
}
.side-link-admin:hover { background:rgba(255,255,255,.06); color:#fff; }
.side-link-admin.is-active { background:#1A56DB; color:#fff; }
.side-link-admin .ico { width:20px; height:20px; display:grid; place-items:center; font-size:13px; }

.admin-main { min-width:0; display:flex; flex-direction:column; }
.demo-banner-admin {
  background: repeating-linear-gradient(45deg, #1E293B 0 10px, #0F172A 10px 20px);
  color:#FDE68A; border-bottom:1px solid #334155; text-align:center; padding:7px 12px; font-size:12px; font-weight:800; letter-spacing:.06em;
}
.boundary-callout {
  background: linear-gradient(135deg, #FEF3C7 0%, #FFFBEB 100%); border:1px solid #FDE68A; color:#92400E; border-radius:12px; padding:12px; font-size:13px; line-height:1.5;
}
[data-theme="dark"] .boundary-callout { background: linear-gradient(135deg, #422006 0%, #78350F 100%); color:#FDE68A; border-color:#92400E; }

.admin-content { padding:18px; display:grid; gap:18px; }
.view-admin { display:none; }
.view-admin.is-active { display:block; }
.view-head-admin { display:flex; align-items:end; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.view-head-admin h2 { font-size:20px; font-weight:900; letter-spacing:-.02em; }
.kpi-grid-admin { display:grid; grid-template-columns: repeat(4,1fr); gap:12px; }
.kpi-admin { background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:14px; }
.kpi-admin small { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); }
.kpi-admin strong { display:block; font-size:20px; font-weight:900; margin-top:6px; }

.card-admin { background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:14px; }
.card-title-admin { font-size:13px; font-weight:800; margin-bottom:10px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
.table-wrap-admin { overflow:auto; border:1px solid var(--border); border-radius:12px; }
table.admin-table { width:100%; border-collapse:collapse; font-size:13px; }
table.admin-table th { text-align:start; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--text-muted); font-weight:800; padding:10px 12px; background:var(--surface-muted); border-bottom:1px solid var(--border); white-space:nowrap; }
table.admin-table td { padding:10px 12px; border-bottom:1px solid var(--border); white-space:nowrap; }
table.admin-table tr:hover td { background: var(--surface-hover); }

/* drawer */
.tenant-drawer { position:fixed; inset:0; z-index:30; display:none; }
.tenant-drawer.open { display:block; }
.tenant-backdrop { position:absolute; inset:0; background:rgba(11,18,32,.48); backdrop-filter: blur(4px); }
.tenant-panel { position:absolute; inset:0 0 0 auto; width:min(560px, 92vw); background:var(--surface); border-inline-start:1px solid var(--border); overflow:auto; padding:18px; }
html[dir="rtl"] .tenant-panel { inset:0 auto 0 0; border-inline-start:0; border-inline-end:1px solid var(--border); }
.flag-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--border); }
.switch { width:44px; height:26px; border-radius:999px; background:var(--border-strong); position:relative; cursor:pointer; transition:background var(--ease); flex:0 0 auto; }
.switch.is-on { background:var(--nexora); }
.switch::after{content:""; position:absolute; top:3px; inset-inline-start:3px; width:20px; height:20px; border-radius:999px; background:#fff; box-shadow:var(--shadow-xs); transition: transform var(--ease); }
.switch.is-on::after{ transform: translateX(18px); }
html[dir="rtl"] .switch.is-on::after{ transform: translateX(-18px); }

.health-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:12px; }
.health-card { background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:14px; text-align:center; }
.health-card strong { font-size:22px; font-weight:900; }
.dot-ok { width:8px; height:8px; border-radius:999px; background:var(--success); display:inline-block; }
.dot-warn { background:var(--warning); }

@media (max-width: 1100px){
  .kpi-grid-admin { grid-template-columns: repeat(2,1fr); }
  .health-grid { grid-template-columns:1fr; }
  .admin-layout { grid-template-columns:1fr; }
  .admin-sidebar { position:fixed; inset:56px auto 0 0; width:300px; z-index:20; transform: translateX(-100%); transition: transform var(--ease); }
  html[dir="rtl"] .admin-sidebar { inset:56px 0 0 auto; transform: translateX(100%); }
  .admin-sidebar.open { transform: translateX(0); }
  .sidebar-backdrop-admin { position:fixed; inset:56px 0 0 0; background:rgba(11,18,32,.48); z-index:19; display:none; }
  .sidebar-backdrop-admin.open { display:block; }
}
