/* Produktove ponuky: tabulka pre upsell aj cross-sell, v kazdej pozicii */
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table {
  padding: 14px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-products-header {
  margin: 0 0 10px !important;
  padding: 0 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-products {
  margin: 0 !important;
  padding: 0 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-product {
  padding: 8px 10px !important;
  margin: 0 0 7px !important;
  min-height: 0 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-product:last-child { margin-bottom: 0 !important; }
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-image {
  width: 52px !important;
  min-width: 52px !important;
  flex: 0 0 52px !important;
  margin: 0 10px 0 0 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-image img {
  width: 52px !important; height: 52px !important; object-fit: contain;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-product-details {
  font-size: 14px !important; line-height: 1.3 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-product-name { margin: 0 !important; }
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-price { margin: 2px 0 0 !important; }
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-product-add-to-cart a {
  padding: 8px 10px !important; font-size: 14px !important; line-height: 1.3 !important;
}

/* Produktove ponuky: carousel pre upsell aj cross-sell, v kazdej pozicii */
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel {
  padding: 12px !important; box-shadow: none !important; border-radius: 12px !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-products-header {
  font-size: 16px !important; line-height: 1.35 !important; margin: 0 0 10px !important; padding: 0 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .swiper-slide.up-product {
  box-sizing: border-box !important;
  width: calc((100% - 48px) / 2) !important;
  padding: 0 4px !important;
  min-width: 0 !important;
  font-size: 13px !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .swiper-slide > a.up-product-url {
  width: 100% !important; height: 90px !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel img.up-image {
  width: 100% !important; height: 90px !important; object-fit: contain !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-name {
  font-size: 13px !important; line-height: 1.3 !important;
  white-space: normal !important; min-height: 34px;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-price-container {
  display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 5px !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-price {
  font-size: 14px !important; margin: 2px 0 !important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-add-to-cart a {
  padding: 8px 10px !important; font-size: 13px !important; line-height: 1.3 !important;
}
@media (min-width: 992px) {
  .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .swiper-slide.up-product {
    width: calc((100% - 64px) / 4) !important;
  }
}

/* Jednotne farby a jemne ramiky oboch produktovych formatov */
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) {
 background:#f3f1ec!important;color:#292929!important;border:1px solid #e3ded5!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-products-header {
 background:transparent!important;color:#292929!important;font-family:inherit!important;font-weight:700!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-product {
 background:#fff!important;border:1px solid #e3ded5!important;border-radius:8px!important;box-shadow:none!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-product-name a,
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-price-current {
 color:#292929!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-product-add-to-cart a {
 background:#fff!important;color:#292929!important;border:1px solid #925e00!important;border-radius:8px!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-product-add-to-cart a:hover {
 background:#925e00!important;color:#fff!important;
}
.up-container:is(.up-type-product_upsell,.up-type-product_cross):is(.layout-table,.layout-carousel) .up-product-add-to-cart a:focus-visible {
 outline:2px solid #925e00!important;outline-offset:3px;
}

/* V3: opravy iba na pocitaci; mobil ostava ako vo V2 */
@media (min-width: 992px) {
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-swiper-container {
  width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-products-header {
  position:static!important;inset:auto!important;transform:none!important;
  width:auto!important;max-width:100%!important;box-sizing:border-box!important;
  margin:0 0 12px!important;padding:8px 90px 8px 0!important;
  background:transparent!important;min-height:36px!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .swiper-slide.up-product {
  height:auto!important;padding:10px 8px!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-content {
  flex:1 1 auto!important;display:flex!important;flex-direction:column!important;
  justify-content:flex-start!important;gap:6px!important;margin-top:8px!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-description-container {
  flex:0 0 auto!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-name {
  height:auto!important;min-height:34px!important;margin:0!important;padding:0!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-carousel .up-product-price-container {
  flex:0 0 auto!important;margin-top:auto!important;padding-top:0!important;min-height:0!important;
 }
 .up-container:is(.up-type-product_upsell,.up-type-product_cross).layout-table .up-products-header {
  position:static!important;inset:auto!important;transform:none!important;
  width:auto!important;height:auto!important;min-height:0!important;
  margin:0 0 10px!important;padding:0!important;
 }
}
