/* =========================================================
   AutoKeep Products Showcase (LOCKED CSS) v2 (RESPONSIVE)
   Fixes:
   1) Responsive columns via data-cols / data-cols-md/lg/xl
   2) Bullets κάτω από τα προϊόντα
   3) Equal height (stretch) για όλα τα items
   4) FIX cutting as you slide (NO flex gap -> use item padding)
   5) Responsive gap via CSS vars --akps-gap-*
   ========================================================= */

.ak-products-showcase{
  width:100%;
  position:relative;
  box-sizing:border-box;

  /* defaults */
  --akps-gap: 16px;         /* base gap */
  --akps-gap-md: var(--akps-gap);
  --akps-gap-lg: var(--akps-gap);
  --akps-gap-xl: var(--akps-gap);

  --akps-grid-gap: 18px;    /* base grid gap */
  --akps-grid-gap-md: var(--akps-grid-gap);
  --akps-grid-gap-lg: var(--akps-grid-gap);
  --akps-grid-gap-xl: var(--akps-grid-gap);

  /* active gap (changes by breakpoint) */
  --akps-gap-use: var(--akps-gap);
  --akps-grid-gap-use: var(--akps-grid-gap);
}

@media (min-width:768px){
  .ak-products-showcase{
    --akps-gap-use: var(--akps-gap-md, var(--akps-gap));
    --akps-grid-gap-use: var(--akps-grid-gap-md, var(--akps-grid-gap));
  }
}
@media (min-width:1024px){
  .ak-products-showcase{
    --akps-gap-use: var(--akps-gap-lg, var(--akps-gap));
    --akps-grid-gap-use: var(--akps-grid-gap-lg, var(--akps-grid-gap));
  }
}
@media (min-width:1280px){
  .ak-products-showcase{
    --akps-gap-use: var(--akps-gap-xl, var(--akps-gap));
    --akps-grid-gap-use: var(--akps-grid-gap-xl, var(--akps-grid-gap));
  }
}

.ak-products-showcase *,
.ak-products-showcase *::before,
.ak-products-showcase *::after{
  box-sizing:border-box;
}

/* =========================================================
   CAROUSEL
   ========================================================= */

.ak-products-showcase.akps--carousel .akps__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}

.ak-products-showcase.akps--carousel .akps__arrow{
  border:0;
  cursor:pointer;
  padding:6px 10px;
  line-height:1;
  font-size:22px;
  border-radius:10px;
}

.ak-products-showcase.akps--carousel .akps__viewport{
  overflow:hidden !important;
  width:100% !important;
}

/* Track: NO flex-gap (breaks translate math in JS) */
.ak-products-showcase.akps--carousel .akps__track{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap: 0 !important;
  align-items:stretch !important;
  will-change:transform;
  transition:transform 450ms ease;
  width:100% !important;

  list-style:none !important;
  padding:0 !important;
  margin:0 !important;

  /* compensate item padding so edges align */
  margin-left: calc(var(--akps-gap-use) / -2) !important;
  margin-right: calc(var(--akps-gap-use) / -2) !important;
}

.ak-products-showcase.akps--carousel .akps__track > *{
  min-width:0 !important;
}

/* Kill floats */
.ak-products-showcase.akps--carousel .akps__track > li,
.ak-products-showcase.akps--carousel .akps__track li.product{
  float:none !important;
}

/* Our wrapper provides spacing WITHOUT flex gap */
.ak-products-showcase.akps--carousel .akps__item{
  display:flex !important;
  align-items:stretch !important;
  padding-left: calc(var(--akps-gap-use) / 2) !important;
  padding-right: calc(var(--akps-gap-use) / 2) !important;
}

/* Ensure WC product card fills the height */
.ak-products-showcase.akps--carousel .akps__item > *{
  width:100% !important;
  height:100% !important;
}
.ak-products-showcase.akps--carousel .akps__item li.product,
.ak-products-showcase.akps--carousel .akps__item .product{
  height:100% !important;
}

/* =========================================================
   RESPONSIVE COLUMNS (CAROUSEL)
   base uses data-cols, overrides via data-cols-md/lg/xl
   ========================================================= */

/* helper: apply width for N columns */
.ak-products-showcase.akps--carousel[data-cols="1"] .akps__track > .akps__item{ flex:0 0 100% !important; width:100% !important; }
.ak-products-showcase.akps--carousel[data-cols="2"] .akps__track > .akps__item{ flex:0 0 50% !important; width:50% !important; }
.ak-products-showcase.akps--carousel[data-cols="3"] .akps__track > .akps__item{ flex:0 0 calc(100%/3) !important; width:calc(100%/3) !important; }
.ak-products-showcase.akps--carousel[data-cols="4"] .akps__track > .akps__item{ flex:0 0 25% !important; width:25% !important; }
.ak-products-showcase.akps--carousel[data-cols="5"] .akps__track > .akps__item{ flex:0 0 20% !important; width:20% !important; }
.ak-products-showcase.akps--carousel[data-cols="6"] .akps__track > .akps__item{ flex:0 0 calc(100%/6) !important; width:calc(100%/6) !important; }

/* md override */
@media (min-width:768px){
  .ak-products-showcase.akps--carousel[data-cols-md="1"] .akps__track > .akps__item{ flex:0 0 100% !important; width:100% !important; }
  .ak-products-showcase.akps--carousel[data-cols-md="2"] .akps__track > .akps__item{ flex:0 0 50% !important; width:50% !important; }
  .ak-products-showcase.akps--carousel[data-cols-md="3"] .akps__track > .akps__item{ flex:0 0 calc(100%/3) !important; width:calc(100%/3) !important; }
  .ak-products-showcase.akps--carousel[data-cols-md="4"] .akps__track > .akps__item{ flex:0 0 25% !important; width:25% !important; }
  .ak-products-showcase.akps--carousel[data-cols-md="5"] .akps__track > .akps__item{ flex:0 0 20% !important; width:20% !important; }
  .ak-products-showcase.akps--carousel[data-cols-md="6"] .akps__track > .akps__item{ flex:0 0 calc(100%/6) !important; width:calc(100%/6) !important; }
}

/* lg override */
@media (min-width:1024px){
  .ak-products-showcase.akps--carousel[data-cols-lg="1"] .akps__track > .akps__item{ flex:0 0 100% !important; width:100% !important; }
  .ak-products-showcase.akps--carousel[data-cols-lg="2"] .akps__track > .akps__item{ flex:0 0 50% !important; width:50% !important; }
  .ak-products-showcase.akps--carousel[data-cols-lg="3"] .akps__track > .akps__item{ flex:0 0 calc(100%/3) !important; width:calc(100%/3) !important; }
  .ak-products-showcase.akps--carousel[data-cols-lg="4"] .akps__track > .akps__item{ flex:0 0 25% !important; width:25% !important; }
  .ak-products-showcase.akps--carousel[data-cols-lg="5"] .akps__track > .akps__item{ flex:0 0 20% !important; width:20% !important; }
  .ak-products-showcase.akps--carousel[data-cols-lg="6"] .akps__track > .akps__item{ flex:0 0 calc(100%/6) !important; width:calc(100%/6) !important; }
}

/* xl override */
@media (min-width:1280px){
  .ak-products-showcase.akps--carousel[data-cols-xl="1"] .akps__track > .akps__item{ flex:0 0 100% !important; width:100% !important; }
  .ak-products-showcase.akps--carousel[data-cols-xl="2"] .akps__track > .akps__item{ flex:0 0 50% !important; width:50% !important; }
  .ak-products-showcase.akps--carousel[data-cols-xl="3"] .akps__track > .akps__item{ flex:0 0 calc(100%/3) !important; width:calc(100%/3) !important; }
  .ak-products-showcase.akps--carousel[data-cols-xl="4"] .akps__track > .akps__item{ flex:0 0 25% !important; width:25% !important; }
  .ak-products-showcase.akps--carousel[data-cols-xl="5"] .akps__track > .akps__item{ flex:0 0 20% !important; width:20% !important; }
  .ak-products-showcase.akps--carousel[data-cols-xl="6"] .akps__track > .akps__item{ flex:0 0 calc(100%/6) !important; width:calc(100%/6) !important; }
}

/* Bullets κάτω από τα προϊόντα */
.ak-products-showcase.akps--carousel .akps__bullets{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:12px !important;
}

.ak-products-showcase.akps--carousel .akps__dot{
  width:8px;
  height:8px;
  border-radius:999px;
  opacity:.35;
  cursor:pointer;
  border:0;
}

.ak-products-showcase.akps--carousel .akps__dot.is-active{
  opacity:1;
}

/* =========================================================
   GRID
   ========================================================= */

.ak-products-showcase.akps--grid .akps__grid{
  display:grid !important;
  gap: var(--akps-grid-gap-use) !important;
  align-items:stretch !important;
}

/* stretch items equal height in grid too */
.ak-products-showcase.akps--grid .akps__item{
  display:flex !important;
  align-items:stretch !important;
}
.ak-products-showcase.akps--grid .akps__item > *{
  width:100% !important;
  height:100% !important;
}

/* base grid columns via data-cols */
.ak-products-showcase.akps--grid[data-cols="1"] .akps__grid{ grid-template-columns:repeat(1, minmax(0,1fr)) !important; }
.ak-products-showcase.akps--grid[data-cols="2"] .akps__grid{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; }
.ak-products-showcase.akps--grid[data-cols="3"] .akps__grid{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; }
.ak-products-showcase.akps--grid[data-cols="4"] .akps__grid{ grid-template-columns:repeat(4, minmax(0,1fr)) !important; }
.ak-products-showcase.akps--grid[data-cols="5"] .akps__grid{ grid-template-columns:repeat(5, minmax(0,1fr)) !important; }
.ak-products-showcase.akps--grid[data-cols="6"] .akps__grid{ grid-template-columns:repeat(6, minmax(0,1fr)) !important; }

/* md grid override */
@media (min-width:768px){
  .ak-products-showcase.akps--grid[data-cols-md="1"] .akps__grid{ grid-template-columns:repeat(1, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-md="2"] .akps__grid{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-md="3"] .akps__grid{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-md="4"] .akps__grid{ grid-template-columns:repeat(4, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-md="5"] .akps__grid{ grid-template-columns:repeat(5, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-md="6"] .akps__grid{ grid-template-columns:repeat(6, minmax(0,1fr)) !important; }
}

/* lg grid override */
@media (min-width:1024px){
  .ak-products-showcase.akps--grid[data-cols-lg="1"] .akps__grid{ grid-template-columns:repeat(1, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-lg="2"] .akps__grid{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-lg="3"] .akps__grid{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-lg="4"] .akps__grid{ grid-template-columns:repeat(4, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-lg="5"] .akps__grid{ grid-template-columns:repeat(5, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-lg="6"] .akps__grid{ grid-template-columns:repeat(6, minmax(0,1fr)) !important; }
}

/* xl grid override */
@media (min-width:1280px){
  .ak-products-showcase.akps--grid[data-cols-xl="1"] .akps__grid{ grid-template-columns:repeat(1, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-xl="2"] .akps__grid{ grid-template-columns:repeat(2, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-xl="3"] .akps__grid{ grid-template-columns:repeat(3, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-xl="4"] .akps__grid{ grid-template-columns:repeat(4, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-xl="5"] .akps__grid{ grid-template-columns:repeat(5, minmax(0,1fr)) !important; }
  .ak-products-showcase.akps--grid[data-cols-xl="6"] .akps__grid{ grid-template-columns:repeat(6, minmax(0,1fr)) !important; }
}

/* pager */
.ak-products-showcase .akps__pager{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
.ak-products-showcase .akps__page a,
.ak-products-showcase .akps__page span{
  display:inline-block;
  padding:6px 10px;
  border-radius:10px;
  text-decoration:none;
}
