/* Redesigned admin dashboard (lazy-loaded by web/adminv2.js). Everything is scoped under .admin-v2 and
   prefixed av- so no other page is affected and global CRM rules (mobile.css fonts, table nowrap, .card)
   cannot leak in. Values follow the approved reference /root/admin_ref.html. */
/* neutral frame: background + edge only, no descendant rules (the staff section inside stays untouched) */
.av-shell{margin:-20px;min-height:calc(100% + 40px);background:#0b0d12}
.av-shell>.av-staff{padding:0 28px}
.admin-v2{--av-bg:#0b0d12;--av-card:#131722;--av-card2:#181d2a;--av-line:#232a3a;--av-txt:#e8ebf2;--av-mut:#8b93a7;
  --av-gold:#f5a524;--av-green:#22c55e;--av-red:#ef4444;--av-blue:#3b82f6;--av-amber:#f59e0b;
  background:var(--av-bg);color:var(--av-txt);font-size:14px;line-height:normal;direction:rtl}
.admin-v2.av-tail>.av-wrap{padding-top:16px}
.admin-v2,.admin-v2 *{box-sizing:border-box;font-family:"DejaVu Sans",Almarai,Tahoma,sans-serif!important}
.admin-v2 button{font:inherit;color:inherit;background:none;border:0;padding:0;margin:0;cursor:pointer;text-align:inherit;box-shadow:none;font-weight:inherit;border-radius:0}
.admin-v2 button:focus-visible{outline:2px solid var(--av-gold);outline-offset:2px}
.admin-v2 .av-top{display:flex;align-items:center;gap:14px;padding:14px 28px;border-bottom:1px solid var(--av-line);background:#0e1119;flex-wrap:wrap}
.admin-v2 .av-health{display:flex;gap:8px;flex-wrap:wrap}
.admin-v2 .av-h{display:flex;align-items:center;gap:6px;font-size:12px;padding:5px 10px;border-radius:999px;background:var(--av-card);border:1px solid var(--av-line);color:var(--av-mut);white-space:nowrap}
.admin-v2 .av-h i{width:8px;height:8px;border-radius:50%;background:var(--av-green);flex:none}
.admin-v2 .av-h.w i{background:var(--av-amber)}.admin-v2 .av-h.w{color:#ffd28a;border-color:#5a4210}
.admin-v2 .av-h.d i{background:var(--av-red)}.admin-v2 .av-h.d{color:#ff8a8a;border-color:#5b1d22}
.admin-v2 .av-sp{flex:1}
.admin-v2 .av-seg{display:flex;background:var(--av-card);border:1px solid var(--av-line);border-radius:10px;padding:3px}
.admin-v2 .av-seg button{padding:6px 12px;border-radius:8px;font-size:12.5px;color:var(--av-mut)}
.admin-v2 .av-seg button.on{background:#3a2a07;color:var(--av-gold);font-weight:700}
.admin-v2 .av-wrap{padding:20px 28px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.admin-v2 .av-card{background:var(--av-card);border:1px solid var(--av-line);border-radius:14px;padding:16px 18px;min-width:0}
.admin-v2 .av-ttl{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:10px}
.admin-v2 .av-ttl b{font-size:15px}.admin-v2 .av-ttl span,.admin-v2 .av-ttl button.lnk{color:var(--av-mut);font-size:12px}
.admin-v2 .c12{grid-column:span 12}.admin-v2 .c7{grid-column:span 7}.admin-v2 .c5{grid-column:span 5}
.admin-v2 .av-hello{display:flex;justify-content:space-between;align-items:flex-end}
.admin-v2 .av-h1{font-size:22px;font-weight:700;margin:0}.admin-v2 .av-sub{color:var(--av-mut);font-size:13px;margin-top:4px}
.admin-v2 .av-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.admin-v2 .av-k{background:var(--av-card);border:1px solid var(--av-line);border-radius:14px;padding:14px 16px}
.admin-v2 .av-k .l{color:var(--av-mut);font-size:12.5px}.admin-v2 .av-k .v{font-size:28px;font-weight:700;margin-top:6px;font-variant-numeric:tabular-nums}
.admin-v2 .av-k .d{font-size:12px;margin-top:4px}
.admin-v2 .up{color:var(--av-green)}.admin-v2 .dn{color:var(--av-red)}.admin-v2 .mut{color:var(--av-mut)}
.admin-v2 .av-k.gold{border-color:#5a4210;background:linear-gradient(180deg,#1d1709,#131722)}.admin-v2 .av-k.gold .v{color:var(--av-gold)}
.admin-v2 .av-alert{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;background:var(--av-card2);border:1px solid var(--av-line);margin-bottom:8px}
.admin-v2 .av-alert:last-child{margin-bottom:0}
.admin-v2 .av-alert .ic{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font-size:14px;flex:none}
.admin-v2 .r .ic{background:#3a1416}.admin-v2 .y .ic{background:#3a2a07}.admin-v2 .b .ic{background:#13233f}.admin-v2 .g .ic{background:#0f2a1b}
.admin-v2 .av-alert .t{font-weight:700;font-size:13px}.admin-v2 .av-alert .s{color:var(--av-mut);font-size:12px;margin-top:2px;overflow-wrap:anywhere}
.admin-v2 .av-alert>div:nth-child(2){min-width:0}
.admin-v2 .av-alert .go{margin-right:auto;font-size:12px;color:var(--av-gold);border:1px solid #5a4210;border-radius:8px;padding:5px 10px;white-space:nowrap}
.admin-v2 .av-empty{color:var(--av-mut);font-size:13px;padding:6px 2px}
.admin-v2 .av-funnel{display:flex;flex-direction:column;gap:9px}
.admin-v2 .av-fr{display:grid;grid-template-columns:170px 1fr 70px 60px;align-items:center;gap:12px;font-size:13px}
.admin-v2 .av-bar{height:22px;border-radius:6px;background:linear-gradient(90deg,#f5a524,#d9822b);min-width:4px}
.admin-v2 .av-bar.zero{min-width:0;background:none}
.admin-v2 .av-fr .n{font-weight:700;text-align:left;font-variant-numeric:tabular-nums}.admin-v2 .av-fr .p{color:var(--av-mut);font-size:12px;text-align:left}
.admin-v2 table.av-q{width:100%;border-collapse:collapse;white-space:normal;background:transparent;border:0;margin:0}
.admin-v2 .av-q td{padding:9px 6px;border:0;border-bottom:1px solid var(--av-line);font-size:13px;vertical-align:middle;color:var(--av-txt);background:transparent}
.admin-v2 .av-q tr:last-child td{border:0}
.admin-v2 .av-q .pv{color:var(--av-mut);font-size:12px;overflow-wrap:anywhere}
.admin-v2 .wait{font-weight:700;white-space:nowrap}.admin-v2 .w-r{color:#ff8a8a}.admin-v2 .w-y{color:#ffc65a}
.admin-v2 .ch{display:inline-block;font-size:11px;padding:2px 8px;border-radius:999px;background:#13233f;color:#8fb7ff;white-space:nowrap}
.admin-v2 .ch.wa{background:#0f2a1b;color:#7ee2a5}
.admin-v2 .av-btn{font-size:12px;padding:5px 10px;border-radius:8px;border:1px solid var(--av-line);color:var(--av-txt);white-space:nowrap}
.admin-v2 .av-more{color:var(--av-mut);font-size:12px;margin-top:10px}
.admin-v2 .av-heatbox{overflow-x:auto}
.admin-v2 .av-heat{display:grid;grid-template-columns:40px repeat(24,minmax(0,1fr));gap:3px;font-size:10.5px;color:var(--av-mut);min-width:640px}
.admin-v2 .av-heat div{height:20px;border-radius:3px}
.admin-v2 .av-heat span{align-self:center}.admin-v2 .av-heat .hr{text-align:center}
.admin-v2 .av-hl{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--av-mut);font-size:11px;margin-top:6px}
.admin-v2 .av-ads{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.admin-v2 .av-ads .x{background:var(--av-card2);border:1px solid var(--av-line);border-radius:10px;padding:10px 12px}
.admin-v2 .av-ads .x .l{color:var(--av-mut);font-size:12px}.admin-v2 .av-ads .x .v{font-size:22px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums}
.admin-v2 .av-qa{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-v2 .av-qa button{background:var(--av-card2);border:1px solid var(--av-line);border-radius:10px;padding:11px;font-size:13px;font-weight:700;text-align:center}
.admin-v2 .av-qa button.rd{color:#ff8a8a;border-color:#5b1d22}
.admin-v2 .av-qa button:disabled{opacity:.6;cursor:default}
.admin-v2 .av-foot{grid-column:span 12;display:flex;gap:8px;color:var(--av-mut);font-size:12.5px;align-items:center;flex-wrap:wrap}
.admin-v2 .av-foot b{color:var(--av-txt)}
.admin-v2 .av-foot button{border:1px solid var(--av-line);border-radius:999px;padding:6px 12px;background:var(--av-card)}
.admin-v2 #staffPerfHost{min-width:0}
@media (max-width:1100px){.admin-v2 .av-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){
  .av-shell{margin:-12px;min-height:calc(100% + 24px)}
  .av-shell>.av-staff{padding:0 16px}
  .admin-v2 .av-top{padding:12px 16px}
  .admin-v2 .av-sp{display:none}
  .admin-v2 .av-seg{overflow-x:auto;max-width:100%}
  .admin-v2 .av-wrap{padding:16px;gap:12px;grid-template-columns:minmax(0,1fr)}
  .admin-v2 .c12,.admin-v2 .c7,.admin-v2 .c5,.admin-v2 .av-foot{grid-column:1/-1}
  .admin-v2 .av-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-v2 .av-ads{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-v2 .av-fr{grid-template-columns:110px 1fr 44px 40px;gap:8px}
  .admin-v2 .av-alert{flex-wrap:wrap}
}
/* loading skeleton (same frame and colours as the loaded dashboard) */
.admin-v2 .av-sk{display:block;border-radius:6px;margin:4px 0;background:linear-gradient(90deg,#181d2a 0%,#232a3a 50%,#181d2a 100%);background-size:200% 100%;animation:avSk 1.2s ease-in-out infinite;max-width:100%}
.admin-v2 .av-h .av-sk{margin:0}
@keyframes avSk{0%{background-position:100% 0}100%{background-position:-100% 0}}
@media (prefers-reduced-motion:reduce){.admin-v2 .av-sk{animation:none}}
