/* ============================================================
   CoreV2 · Paket satiri — MODUL B: Promo slot yerlesimi
   ------------------------------------------------------------
   Sorun: promo kart 4 esit sutunun 1'ini alirken kart paneli
   kalan 3 sutuna 3 kart sigdirmaya calisiyor ve kartlar
   masaustunde asiri daraliyordu.

   Cozum: promo VARSA satir 4 esit sutun degil, 2 sutunlu
   [promo | kart paneli] izgarasina doner. Kart paneli kendi
   icinde auto-fit ile sutunlanir, boylece kartlar minimum
   genisligin altina inemez.
   ============================================================ */

@media (min-width: 1025px) {
  /* --- Promo iceren satir: 2 sutun --- */
  .packs-slider-body--3v.packs-slider-body--promo-slot-left,
  .packs-slider-body--3v.packs-slider-body--promo-slot-center,
  .packs-slider-body--3v.packs-slider-body--promo-slot-right,
  .cv2-srv-row-with-promo {
    display: grid;
    grid-template-columns:
      minmax(var(--cv2-pack-slot-min), var(--cv2-promo-slot-fr))
      minmax(0, var(--cv2-packs-panel-fr));
    grid-template-rows: auto;
    gap: var(--cv2-packs-3v-gap);
    align-items: stretch;
  }

  /* --- Promo SOLDA --- */
  .packs-slider-body--promo-slot-left > .pack-card-wrapper--promo,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-left > .pack-card-wrapper--promo {
    grid-column: 1;
    grid-row: 1;
  }
  .packs-slider-body--promo-slot-left > .packs-cards-panel,
  .packs-slider-body--promo-slot-left > .packs-cards-panel--3v,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-left > .packs-cards-panel--3v {
    grid-column: 2;
    grid-row: 1;
  }

  /* --- Promo SAGDA / ORTADA (ayni yerlesim: panel solda) --- */
  .packs-slider-body--promo-slot-right,
  .packs-slider-body--promo-slot-center,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-right,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-center {
    grid-template-columns:
      minmax(0, var(--cv2-packs-panel-fr))
      minmax(var(--cv2-pack-slot-min), var(--cv2-promo-slot-fr));
  }
  .packs-slider-body--promo-slot-right > .pack-card-wrapper--promo,
  .packs-slider-body--promo-slot-center > .pack-card-wrapper--promo,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-right > .pack-card-wrapper--promo,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-center > .pack-card-wrapper--promo {
    grid-column: 2;
    grid-row: 1;
  }
  .packs-slider-body--promo-slot-right > .packs-cards-panel,
  .packs-slider-body--promo-slot-right > .packs-cards-panel--3v,
  .packs-slider-body--promo-slot-center > .packs-cards-panel,
  .packs-slider-body--promo-slot-center > .packs-cards-panel--3v,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-right > .packs-cards-panel--3v,
  .cv2-srv-row-with-promo.packs-slider-body--promo-slot-center > .packs-cards-panel--3v {
    grid-column: 1;
    grid-row: 1;
  }

  /* --- Kart paneli: kartlar minimum genislige saygi duyar --- */
  .packs-cards-panel--3v .packs-cards-track,
  .cv2-srv-row-with-promo .coreservercart-server-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(var(--cv2-pack-slot-min), 1fr));
    gap: var(--cv2-packs-3v-gap);
    width: 100%;
    max-width: 100%;
    min-width: 0;
    transform: none; /* slider kaydirmasi masaustunde devre disi */
  }

  /* Promo karti panelle ayni yuksekligi paylasir */
  .packs-slider-body--3v > .pack-card-wrapper--promo,
  .cv2-srv-row-with-promo > .pack-card-wrapper--promo {
    align-self: stretch;
    height: auto;
  }

  /* Gizli promo kart bos alan uretmesin */
  .pack-card-wrapper--promo[hidden],
  .pack-card-wrapper--promo[style*="display:none"],
  .pack-card-wrapper--promo[style*="display: none"] {
    min-height: 0;
    height: 0;
    margin: 0;
    padding: 0;
  }
}

/* --- Tablet/mobil: promo alt alta --- */
@media (max-width: 1024px) {
  .packs-slider-body--3v.packs-slider-body--promo-slot-left,
  .packs-slider-body--3v.packs-slider-body--promo-slot-center,
  .packs-slider-body--3v.packs-slider-body--promo-slot-right,
  .cv2-srv-row-with-promo {
    grid-template-columns: minmax(0, 1fr);
  }
  .packs-slider-body--3v > .packs-cards-panel,
  .packs-slider-body--3v > .packs-cards-panel--3v,
  .cv2-srv-row-with-promo > .packs-cards-panel--3v {
    grid-column: 1 / -1;
    grid-row: 1;
  }
  .packs-slider-body--3v > .pack-card-wrapper--promo,
  .cv2-srv-row-with-promo > .pack-card-wrapper--promo {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}

/* ============================================================
   CASCADE AGIRLIGI — promo iceren satir 4 esit sutuna DONMEZ.
   grid-base'in "repeat(4,...)" agirlikli kurali bu blokla
   ezilir; sira onemli: bu dosya grid-base'ten SONRA yuklenir.
   ============================================================ */
@media (min-width: 1025px) {
  html body .packs-slider-body--3v.packs-slider-body--promo-slot-left,
  html body .cv2-srv-row-with-promo.packs-slider-body--promo-slot-left,
  html body .cv2-srv-row-with-promo:not(.packs-slider-body--promo-slot-right):not(.packs-slider-body--promo-slot-center) {
    display: grid !important;
    grid-template-columns:
      minmax(var(--cv2-pack-slot-min), var(--cv2-promo-slot-fr))
      minmax(0, var(--cv2-packs-panel-fr)) !important;
    gap: var(--cv2-packs-3v-gap) !important;
    align-items: stretch !important;
  }

  html body .packs-slider-body--3v.packs-slider-body--promo-slot-right,
  html body .packs-slider-body--3v.packs-slider-body--promo-slot-center,
  html body .cv2-srv-row-with-promo.packs-slider-body--promo-slot-right,
  html body .cv2-srv-row-with-promo.packs-slider-body--promo-slot-center {
    display: grid !important;
    grid-template-columns:
      minmax(0, var(--cv2-packs-panel-fr))
      minmax(var(--cv2-pack-slot-min), var(--cv2-promo-slot-fr)) !important;
    gap: var(--cv2-packs-3v-gap) !important;
    align-items: stretch !important;
  }

  /* Kart paneli: kartlar minimum genisligin altina inemez */
  html body .packs-cards-panel--3v .packs-cards-track,
  html body .cv2-srv-row-with-promo .coreservercart-server-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(var(--cv2-pack-slot-min), 1fr)) !important;
    gap: var(--cv2-packs-3v-gap) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
  }
}

@media (max-width: 1024px) {
  html body .packs-slider-body--3v.packs-slider-body--promo-slot-left,
  html body .packs-slider-body--3v.packs-slider-body--promo-slot-center,
  html body .packs-slider-body--3v.packs-slider-body--promo-slot-right,
  html body .cv2-srv-row-with-promo {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
