/* ===== Product Slider Section ===== */
.cc_cz58wx1d_product_slider .kombos-product-slider {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.cc_cz58wx1d_product_slider .kombos-product-slider__wrapper {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  width: 100%;
  /* No flex gap — child elements control their own spacing */
}

@media (min-width: 768px) {
.cc_cz58wx1d_product_slider .kombos-product-slider__wrapper {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

/* Title — matches live tubabutik.com section title:
   text-2xl font-medium text-button-01 with mb-4 (16px) constant across viewports */
.cc_cz58wx1d_product_slider .kombos-product-slider__title {
  margin: 0 0 1rem 0;
  color: var(--kombos-gray-900);
}

/* Slider wrapper */
.cc_cz58wx1d_product_slider .kombos-product-slider__slider {
  position: relative;
  overflow: hidden;
}

/* Scrollable track */
.cc_cz58wx1d_product_slider .kombos-product-slider__track {
  display: flex;
  gap: 1rem;
  width: 100%;
  overflow-x: auto;
  /* CRITICAL: explicit overflow-y: hidden. Without it, setting overflow-x: auto
     causes overflow-y to behave as auto too (per CSS spec), making the track
     a vertical scroll container that intercepts trackpad/wheel vertical scrolls. */
  overflow-y: hidden;
  /* scroll-snap removed: x mandatory traps trackpad vertical scrolls and makes
     the slider feel sticky when the page is being scrolled past it. Arrow buttons
     still drive horizontal scrolling via scrollBy(). */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  /* Touch: only horizontal pans on this element. Vertical swipes pass through. */
  touch-action: pan-x;
  /* Stop horizontal overscroll from chaining to ancestor scrollers. */
  overscroll-behavior-x: contain;
}

.cc_cz58wx1d_product_slider .kombos-product-slider__track::-webkit-scrollbar {
  display: none;
}

/* Multi-row mode (rows > 1) — STATIC grid, not a slider: equal 1fr columns,
   natural left-to-right row flow, no horizontal scroll (product count is
   capped at rows × columns in JS, arrows are not rendered). Reset the
   slider-specific scroll/touch behavior so vertical swipes scroll the page.
   The card's flex-basis is ignored in grid context so no override is needed. */
.cc_cz58wx1d_product_slider .kombos-product-slider__track--multi-row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  overflow: visible;
  touch-action: auto;
  overscroll-behavior-x: auto;
}

/* Card sizing — mobile: 2 columns, desktop: driven by --columns */
.cc_cz58wx1d_product_slider .kombos-product-slider__card {
  flex: 0 0 calc((100% - 1rem) / 2);
  min-width: 0;
  scroll-snap-align: start;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.cc_cz58wx1d_product_slider .kombos-product-slider__card-content {
  display: flex;
  flex-direction: column;
  /* 6px — matches live theme's flex-col gap-1.5 between name and price */
  gap: 0.375rem;
}

/* Bottom navigation — eski tema: küçük arrow buton çifti, centered, slider altında
   (Buton görsel stili SliderArrow component'inden gelir — .kombos-slider-arrow) */
.cc_cz58wx1d_product_slider .kombos-product-slider__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  padding-top: 0.75rem;
}

/* ===== Tablet (>=768px) ===== */
@media (min-width: 768px) {
.cc_cz58wx1d_product_slider .kombos-product-slider__wrapper {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
}

/* ===== Desktop (>=1024px) ===== */
@media (min-width: 1024px) {
.cc_cz58wx1d_product_slider .kombos-product-slider__wrapper {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

.cc_cz58wx1d_product_slider .kombos-product-slider__track {
    gap: 1.5rem;
  }

.cc_cz58wx1d_product_slider .kombos-product-slider__card {
    flex: 0 0 calc((100% - (var(--columns) - 1) * 1.5rem) / var(--columns));
  }

.cc_cz58wx1d_product_slider .kombos-product-slider__track--multi-row {
    grid-template-columns: repeat(var(--columns), 1fr);
  }
}
