/* پنل مدیریت شهرداری سلماس - نسخه مدرن */
:root{
  --adm-primary: #0e8f63;
  --adm-primary-dark: #0a2119;
  --adm-primary-dark2: #0d3d2c;
  --adm-gold: #d4a53c;
  --adm-bg: #f4f6f5;
  --adm-sidebar-w: 258px;
  --adm-radius: .9rem;
}
body.admin-body{
  font-family: 'Vazirmatn', Tahoma, sans-serif;
  background: var(--adm-bg);
  direction: rtl;
}
.admin-sidebar{
  position:fixed; top:0; bottom:0; right:0; width:var(--adm-sidebar-w);
  background: linear-gradient(180deg, var(--adm-primary-dark2), var(--adm-primary-dark)); color:#e7f1ea; overflow-y:auto; z-index:1040;
  transition:.2s;
}
.admin-sidebar .brand{
  padding:1.2rem 1rem; text-align:center; border-bottom:1px solid rgba(255,255,255,.1);
}
.admin-sidebar .brand img{ width:52px; height:52px; margin-bottom:.4rem; }
.admin-sidebar .brand div{ font-weight:800; font-size:.95rem; }
.admin-sidebar .nav-link{
  color:#cfe0d5; padding:.7rem 1.2rem; font-size:.88rem; border-inline-start:3px solid transparent;
  display:flex; align-items:center; gap:.6rem;
}
.admin-sidebar .nav-link i{ font-size:1rem; width:20px; text-align:center; }
.admin-sidebar .nav-link:hover, .admin-sidebar .nav-link.active{
  background: rgba(255,255,255,.08); color:#fff; border-inline-start-color: var(--adm-gold);
}
.admin-sidebar .nav-section-title{ font-size:.72rem; opacity:.55; padding:1rem 1.2rem .3rem; }

.admin-content{ margin-right: var(--adm-sidebar-w); min-height:100vh; }
.admin-topbar{
  background:#fff; border-bottom:1px solid #e2e6e0; padding:.8rem 1.5rem;
  display:flex; justify-content:space-between; align-items:center; position:sticky; top:0; z-index:1030;
}
.admin-topbar .page-title{ font-weight:800; font-size:1.1rem; color: var(--adm-primary-dark); }
.admin-main{ padding:1.5rem; }

.stat-card{
  border-radius: var(--adm-radius); padding:1.35rem; color:#fff; box-shadow:0 10px 26px rgba(10,33,25,.14);
  display:flex; align-items:center; justify-content:space-between; transition:.2s;
}
.stat-card:hover{ transform: translateY(-3px); }
.stat-card .num{ font-size:1.9rem; font-weight:800; }
.stat-card i{ font-size:2.2rem; opacity:.5; }
.stat-card.c1{ background: linear-gradient(135deg,#0e8f63,#13ab79); }
.stat-card.c2{ background: linear-gradient(135deg,#a4283f,#c22e46); }
.stat-card.c3{ background: linear-gradient(135deg,#d4a53c,#b2842a); }
.stat-card.c4{ background: linear-gradient(135deg,#1d4e89,#2c6bb3); }

.admin-card{ background:#fff; border-radius: var(--adm-radius); border:1px solid #e6ebe8; box-shadow:0 2px 10px rgba(10,33,25,.05); }
.admin-card .card-header-custom{
  padding:1rem 1.25rem; border-bottom:1px solid #eef0ec; display:flex; justify-content:space-between; align-items:center;
}
.table-admin thead{ background: var(--adm-bg); }
.table-admin th{ font-size:.82rem; color:#4b5563; font-weight:700; }
.table-admin td{ font-size:.86rem; vertical-align:middle; }
.thumb-sm{ width:56px; height:42px; object-fit:cover; border-radius:.3rem; }
.btn-admin-primary{ background: var(--adm-primary); border-color: var(--adm-primary); color:#fff; border-radius:.6rem; font-weight:700; }
.btn-admin-primary:hover{ background: #0a6b4a; border-color:#0a6b4a; color:#fff; }
.login-wrapper{
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  background: linear-gradient(135deg, var(--adm-primary-dark2), var(--adm-primary));
}
.login-box{ background:#fff; border-radius:1.1rem; padding:2.5rem; width:100%; max-width:400px; box-shadow:0 24px 60px rgba(0,0,0,.3); }
.login-box img{ width:70px; margin-bottom:1rem; }
.upload-dropzone{
  border: 2px dashed #cddad4;
  border-radius: 1rem;
  background: linear-gradient(180deg, #fbfdfb, #f3f9f5);
  padding: .9rem;
  transition: .2s ease;
  margin-top: .4rem;
  box-shadow: inset 0 0 0 1px rgba(14, 143, 99, .02);
}
.upload-dropzone.dragover{
  border-color: var(--adm-primary);
  background: #edf9f2;
  box-shadow: 0 0 0 4px rgba(14, 143, 99, .08);
}
.upload-preview-box{
  display: none;
  margin-bottom: .8rem;
  border-radius: .8rem;
  overflow: hidden;
  border: 1px solid #dfeae3;
  background: #fff;
  min-height: 140px;
  align-items: center;
  justify-content: center;
}
.upload-preview-box.has-preview{
  display: flex;
}
.upload-preview-image{
  display: block;
  width: 100%;
  max-height: 180px;
  object-fit: cover;
  border-radius: .8rem;
}
.upload-file-meta{
  display: flex;
  flex-direction: column;
  gap: .15rem;
  background: rgba(14, 143, 99, .05);
  color: #2b5444;
  border-radius: .75rem;
  padding: .7rem .8rem;
  font-size: .8rem;
  border: 1px solid rgba(14, 143, 99, .08);
}
.upload-file-label{
  font-weight: 800;
  color: #1b4638;
  word-break: break-word;
}
.upload-file-sub{
  opacity: .8;
}
.upload-input-wrap{
  margin-top: .7rem;
}
.upload-input{
  display: block;
  width: 100%;
  border: 1px solid #dfe7e3;
  background: #fff;
  border-radius: .75rem;
  padding: .7rem .8rem;
}

@media (max-width: 991px){
  .admin-sidebar{ transform: translateX(100%); }
  .admin-sidebar.show{ transform: translateX(0); }
  .admin-content{ margin-right:0; }
}
