/* ===============================
   Portal Module Cards – Full Style
   Compatible with Vuexy Theme
   =============================== */

/* کارت پایه ماژول */
.module-card {
  height: 100%;
  border: none;
  border-radius: 0.5rem;
  transition: all .25s ease;
  background-color: var(--bs-card-bg, #fff);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* افکت Hover برای کارت */
.module-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

/* محتوای داخلی کارت */
.module-card .card-body {
  width: 100%;
  height: 100%;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* لینک کارت */
.module-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none !important;
  color: inherit !important;
}

/* آواتار یا دایره آیکن ماژول */
.avatar-initial-box {
  width: 64px;
  height: 64px;
  font-size: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}

/* عنوان کارت */
.module-title {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--bs-body-color, #566a7f);
  margin-top: 0.5rem;
  text-align: center;
}

/* ظاهر ماژول هنگام Drag & Drop */
.cursor-move {
  cursor: grab;
  transition: transform 0.15s ease;
}

.cursor-move:active {
  cursor: grabbing;
  transform: scale(0.98);
}

/* حالت‌های SortableJS */
.sortable-ghost {
  opacity: 0.4;
}

.sortable-chosen {
  transform: scale(1.05);
}

.sortable-drag {
  transform: rotate(2deg);
}

/* ترازیت وسط کارت داخل ستون‌های Bootstrap */
.portal-grid .col,
.portal-grid [class*="col-"] {
  display: flex;
  align-items: stretch;
}
/* توضیح زیرماژول‌ها */
.module-desc {
  font-size: 0.75rem;
  color: #a1acb8;
  margin-top: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 1; /* حداکثر تعداد خط */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  height: 18px; /* ثابت نگه داشتن ارتفاع */
  line-height: 18px;
}
