.ppsl-wrap{
  background: var(--ppsl-slider-bg);
  border-radius: 16px;
  padding: 30px;  /* قبلاً 14px بود */
  margin: 18px 0;
}

.ppsl-theme-font, .ppsl-theme-font *{
  font-family: inherit !important;
}

.ppsl-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom: 12px;
}

.ppsl-title{
  font-size: 16px;
  font-weight: 700;
}

.ppsl-card{
  background: var(--ppsl-card-bg);
  border-radius: var(--ppsl-radius);
  padding: 12px;
  border: 1px solid rgba(0,0,0,.06);
  height: 100%;
  display: flex;
  flex-direction: column;
}

.ppsl-img img{
  width: 100%;
  height: auto;
  display:block;
  border-radius: calc(var(--ppsl-radius) - 2px);
}

.ppsl-name{
  display: -webkit-box;
  -webkit-line-clamp: 2;        /* تعداد خطوط */
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.7;
  min-height: calc(1.7em * 2);  /* همیشه به اندازه 2 خط جا نگه دار */
  margin-top: 10px;
}

.ppsl-price{
  margin-top: 6px;
  font-size: 13px;
}

.ppsl-btn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  margin-top: auto;
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--ppsl-btn-bg);
  text-decoration:none;
  font-size: 13px;
  width: 100%;
}
.ppsl-btn,
.ppsl-btn:visited,
.ppsl-btn:hover,
.ppsl-btn:active{
  color: var(--ppsl-btn-text) !important;
}


/* Grid mode when <=4 products */
.ppsl-grid{
  display:grid;
  gap:12px;
}
@media (max-width: 639px){
  .ppsl-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 640px) and (max-width: 1023px){
  .ppsl-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1024px){
  .ppsl-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Swiper tweaks */
.ppsl-swiper .swiper-slide{ height:auto; }
.ppsl-pagination{ margin-top: 10px; }
.ppsl-prev, .ppsl-next{
  color: #111; /* می‌تونی بعداً بذاریم تنظیم‌پذیر */
}

.ppsl-wrap .swiper-pagination-bullet{
  background: var(--ppsl-pg-inactive);
  opacity: 1;
  margin-top:50px;
}
.ppsl-wrap .swiper-pagination-bullet-active{
  background: var(--ppsl-pg-active);
}

.ppsl-pagination{
  display:flex;
  justify-content:center;
  align-items:center;
  margin-top: 22px;
}
.ppsl-container.ppsl-swiper{
  padding-bottom: 40px; /* اگر لازم بود 50 هم کن */
}

.ppsl-swiper .swiper-pagination{
  bottom: auto !important;  /* Swiper گاهی bottom می‌ده */
  left: auto;
}

.ppsl-container{ padding-bottom: 10px; }

/* 1) فضای کافی زیر اسلایدر برای pagination */
.ppsl-container.ppsl-swiper{
  padding-bottom: 10px;  /* اگر هنوز نزدیک بود 65px کن */
}

/* 2) override قانون خود Swiper که bottom می‌دهد */
.ppsl-wrap .swiper-horizontal > .swiper-pagination-bullets,
.ppsl-wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
.ppsl-wrap .swiper-pagination-custom,
.ppsl-wrap .swiper-pagination-fraction{
  bottom: auto !important;  /* ✅ این کلیدیه */
  top: auto !important;
  left: 0;
  width: 100%;
}

/* 3) خود pagination را پایین‌تر و جدا از کارت‌ها قرار بده */
.ppsl-wrap .ppsl-pagination{
  position: relative !important;
  margin-top: 22px;
  display: flex;
  justify-content: center;
  gap: 8px;
}


