/* ===== پنل ادمین — آبی سازمانی ===== */
:root{
  --navy-900:#071a3a; --navy-800:#0a2550; --navy-700:#0e3168;
  --blue-500:#1e6fd9; --blue-300:#7db2f2; --gold:#e8c25a;
  --ink:#eaf2ff; --muted:#a9bfe0; --line:rgba(125,178,242,.18);
  --card:rgba(14,49,104,.55); --green:#2ecc71; --red:#e74c3c;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Vazirmatn',Tahoma,sans-serif;direction:rtl;background:var(--navy-900);color:var(--ink);min-height:100vh}
a{color:inherit;text-decoration:none}
.layout{display:flex;min-height:100vh}

/* سایدبار */
aside{width:230px;flex:0 0 230px;background:linear-gradient(180deg,var(--navy-800),var(--navy-900));
  border-left:1px solid var(--line);padding:20px 14px;position:sticky;top:0;height:100vh;overflow-y:auto}
aside .logo{display:flex;gap:10px;align-items:center;padding:6px 8px 20px;border-bottom:1px solid var(--line);margin-bottom:14px}
aside .logo .d{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;filter:drop-shadow(0 2px 8px rgba(0,0,0,.45))}
aside .logo .d img{width:100%;height:100%;object-fit:contain}
aside .logo b{font-size:13px;display:block}
aside .logo span{font-size:10.5px;color:var(--muted)}
aside nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;font-size:13.5px;color:var(--muted);margin-bottom:3px;transition:.2s}
aside nav a:hover{background:rgba(30,111,217,.15);color:var(--ink)}
aside nav a.on{background:linear-gradient(135deg,rgba(30,111,217,.5),rgba(14,49,104,.6));color:#fff;border:1px solid var(--line)}
aside nav a.danger{color:#ffb4ab}

/* محتوا */
.content{flex:1;padding:26px 30px 60px;background:linear-gradient(180deg,var(--navy-900),#081d40)}
.page-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:22px}
.page-head h1{font-size:21px;font-weight:900}
.page-head .sub{color:var(--muted);font-size:12.5px;margin-top:4px}

/* کارت‌ها و آمار */
.grid{display:grid;gap:16px}
.g4{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}
.stat .i{font-size:22px}
.stat b{display:block;font-size:26px;margin-top:6px;color:var(--gold)}
.stat span{font-size:12px;color:var(--muted)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:18px}
.panel h2{font-size:15px;margin-bottom:14px;color:var(--blue-300)}

/* جدول */
table{width:100%;border-collapse:collapse;font-size:13px}
th{color:var(--blue-300);text-align:right;padding:10px 8px;border-bottom:2px solid var(--line);font-weight:700;font-size:12px;white-space:nowrap}
td{padding:11px 8px;border-bottom:1px dashed var(--line);vertical-align:middle}
tr:hover td{background:rgba(30,111,217,.06)}
.tbl-wrap{overflow-x:auto}
.tag{display:inline-block;border-radius:99px;font-size:11px;font-weight:800;padding:3px 11px}
.tag.g{background:rgba(46,204,113,.15);border:1px solid rgba(46,204,113,.5);color:#9ff0bd}
.tag.r{background:rgba(231,76,60,.13);border:1px solid rgba(231,76,60,.5);color:#ffb4ab}
.tag.y{background:rgba(232,194,90,.13);border:1px solid rgba(232,194,90,.5);color:var(--gold)}

/* فرم */
label.f{display:block;font-size:12px;color:var(--muted);margin:12px 0 5px}
input.f,select.f,textarea.f{width:100%;background:rgba(7,26,58,.7);border:1.5px solid var(--line);color:var(--ink);
  border-radius:11px;padding:10px 13px;font-family:inherit;font-size:13.5px;outline:0}
input.f:focus,textarea.f:focus,select.f:focus{border-color:var(--blue-400,#3f8ae8)}
textarea.f{min-height:70px}
input[type=color].f{padding:3px;height:42px;cursor:pointer}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;cursor:pointer;font-family:inherit;
  font-weight:800;border-radius:11px;padding:10px 18px;font-size:13px;transition:.2s;text-align:center}
.btn-primary{background:linear-gradient(135deg,var(--blue-500),var(--navy-700));color:#fff;box-shadow:0 5px 16px rgba(30,111,217,.3)}
.btn-gold{background:linear-gradient(135deg,var(--gold),#c9a23d);color:#2a2005}
.btn-red{background:rgba(231,76,60,.16);border:1px solid rgba(231,76,60,.5);color:#ffb4ab}
.btn-green{background:rgba(46,204,113,.14);border:1px solid rgba(46,204,113,.5);color:#9ff0bd}
.btn-sm{padding:6px 12px;font-size:12px;border-radius:9px}
.err{background:rgba(231,76,60,.14);border:1px solid rgba(231,76,60,.5);color:#ffb4ab;border-radius:12px;padding:12px 15px;font-size:13px;margin-bottom:16px}
.ok{background:rgba(46,204,113,.12);border:1px solid rgba(46,204,113,.45);color:#b8f3cf;border-radius:12px;padding:12px 15px;font-size:13px;margin-bottom:16px}
.muted{color:var(--muted);font-size:12px}

/* صفحه ورود */
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-box{width:100%;max-width:380px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:34px 28px;text-align:center}
.login-box .d{width:76px;height:76px;margin:0 auto 14px;display:grid;place-items:center;filter:drop-shadow(0 8px 20px rgba(0,0,0,.45))}
.login-box .d img{width:100%;height:100%;object-fit:contain}
.login-box h1{font-size:18px;margin-bottom:4px}
.login-box p{color:var(--muted);font-size:12.5px;margin-bottom:10px}

@media(max-width:860px){
  .layout{flex-direction:column}
  aside{width:100%;flex:none;height:auto;position:static}
  aside nav{display:flex;flex-wrap:wrap;gap:4px}
  .content{padding:18px 14px 50px}
  .row2,.row3{grid-template-columns:1fr}
}

/* ===== نشان تحلیلگر در جدول تحلیل حوادث ===== */
.an{display:inline-flex;align-items:center;gap:8px}
.an-img,.an-init{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:0 0 30px;
  border:1px solid var(--gold);background:linear-gradient(135deg,#1e6fd9,#0e3168);
  display:grid;place-items:center;color:#fff;font-weight:800;font-size:12px}
.an-txt{display:flex;flex-direction:column;line-height:1.4}
.an-txt small{font-size:9px;color:var(--muted);letter-spacing:.3px}
.an-txt b{font-size:11.5px}
.an-txt .an-job{font-size:9.5px;color:var(--muted);margin-top:1px}
.an.an-sm .an-img,.an.an-sm .an-init{width:24px;height:24px;flex:0 0 24px;font-size:10.5px;border-width:1px}
.an.an-sm .an-txt small{display:none}
.an.an-sm .an-txt b{font-size:11px}
