/* ===== متغیرها ===== */
:root {
  --sb-width: 260px;      /* پهنای سایدبار */
  --tr-fast: 180ms;
  --tr-slow: 280ms;
}

/* ===== چیدمان کلی ===== */
.app { background: #f7f9fb; min-height: 100vh; }
.app-header { z-index: 1031; }

/* سایدبار */
.app-sidebar {
  position: sticky;
  top: 56px; /* ارتفاع هدر */
  height: calc(100vh - 56px);
  overflow-y: auto;
  background: #fff;
  transition: transform var(--tr-slow) ease, width var(--tr-slow) ease, box-shadow var(--tr-fast) ease;
  width: var(--sb-width);
}
.app-sidebar .list-group-item { border: 0; border-radius: 0; }
.app-sidebar .list-group-item.active {
  background: #0d6efd; color:#fff;
}
.app-content {
  transition: padding-right var(--tr-slow) ease;
}

/* حالت collapsed در دسکتاپ (>=992px) */
@media (min-width: 992px){
  .app.sidebar-collapsed .app-sidebar {
    width: 0 !important;
    transform: translateX(100%);
    box-shadow: none;
  }
  .app.sidebar-collapsed .app-content {
    padding-right: 0 !important;
  }
  .app:not(.sidebar-collapsed) .app-content {
    padding-right: 0;  /* چون سایدبار داخل گرید هست، padding اضافی نیاز نیست */
  }
}

/* موبایل / تبلت: off-canvas */
@media (max-width: 991.98px){
  .app .app-sidebar {
    position: fixed;
    right: 0;
    top: 56px;
    height: calc(100vh - 56px);
    box-shadow: -6px 0 16px rgba(0,0,0,.06);
    transform: translateX(100%);
    z-index: 1030;
  }
  .app.sidebar-open .app-sidebar {
    transform: translateX(0);
  }
  .app-overlay {
    position: fixed;
    inset: 0;
    background: rgba(2,6,23,.35);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--tr-fast) ease;
    z-index: 1029;
  }
  .app.sidebar-open .app-overlay {
    opacity: 1;
    pointer-events: auto;
  }
}

/* جزئیات ریز */
.table-modern td, .table-modern th { vertical-align: middle; }

/* Toast helper (سازگار با showToast) */
#appToast { min-width: 260px; }
body{
      font-family: Vazirmatn !important;
    
}