/* A-Medical side cart: mobile-first shipping progress and branded product ads. */
.side-cart .side-cart-shipping-progress {
  flex: 0 0 auto;
  margin: 0;
  padding: 0.62rem 1rem 0.7rem;
  border-bottom: 1px solid rgba(24, 48, 80, 0.1);
  background: linear-gradient(90deg, #f4f7fc 0%, #fffaf2 100%);
}

.side-cart-shipping-progress__text {
  margin: 0 0 0.42rem;
  color: #17345c;
  font-size: 0.77rem;
  font-weight: 800;
  line-height: 1.45;
  text-align: start;
}

.side-cart-shipping-progress__track {
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(23, 52, 92, 0.11);
}

.side-cart-shipping-progress__track span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #17345c, #2166ed);
  transition: width 220ms ease;
}

.side-cart-shipping-progress.is-complete {
  background: #edf9f3;
}

.side-cart-shipping-progress.is-complete .side-cart-shipping-progress__text {
  color: #086b48;
}

.side-cart-shipping-progress.is-complete .side-cart-shipping-progress__track span {
  background: #11996a;
}

.side-cart-recommendations.is-product-ads .cart-recommendations__head {
  margin-bottom: 0.55rem;
}

.side-cart-recommendations.is-product-ads .cart-recommendations__head h3 {
  color: #17345c;
  font-size: 0.9rem;
}

.side-cart-recommendations.is-product-ads .side-cart-recommendations__track {
  display: flex;
  gap: 0.7rem;
  overflow-x: auto;
  padding: 0 0 0.3rem;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.side-cart-recommendations.is-product-ads .side-cart-recommendations__track::-webkit-scrollbar {
  display: none;
}

.side-cart-product-ad {
  --ad-bg: linear-gradient(135deg, #17345c 0%, #071a34 100%);
  --ad-text: #fff;
  --ad-muted: rgba(255, 255, 255, 0.74);
  --ad-accent: #74a2ff;
  --ad-button-bg: #fff;
  --ad-button-text: #17345c;
  position: relative;
  isolation: isolate;
  flex: 0 0 100% !important;
  min-width: 100%;
  min-height: 9.4rem;
  display: grid !important;
  grid-template-columns: 5.7rem minmax(0, 1fr);
  gap: 0 !important;
  overflow: hidden;
  color: var(--ad-text);
  border: 1px solid rgba(23, 52, 92, 0.12) !important;
  border-radius: 0.95rem !important;
  background: var(--ad-bg) !important;
  box-shadow: 0 12px 28px rgba(9, 28, 54, 0.14) !important;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

.side-cart-product-ad::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 10rem;
  height: 10rem;
  inset-inline-end: -5rem;
  top: -5rem;
  border-radius: 50%;
  background: var(--ad-accent);
  opacity: 0.13;
}

.side-cart-product-ad--derbe {
  --ad-bg: linear-gradient(135deg, #071a34 0%, #0b274e 58%, #111d31 100%);
  --ad-accent: #de9760;
  --ad-button-bg: #de9760;
  --ad-button-text: #102039;
}

.side-cart-product-ad--stay-white {
  --ad-bg: linear-gradient(135deg, #fff3f6 0%, #f6cbd7 100%);
  --ad-text: #17345c;
  --ad-muted: rgba(23, 52, 92, 0.7);
  --ad-accent: #c95f82;
  --ad-button-bg: #17345c;
  --ad-button-text: #fff;
}

.side-cart-product-ad--mamimoor {
  --ad-bg: linear-gradient(135deg, #f5f1e7 0%, #bfd5c5 100%);
  --ad-text: #27483c;
  --ad-muted: rgba(39, 72, 60, 0.72);
  --ad-accent: #477a64;
  --ad-button-bg: #315f4e;
  --ad-button-text: #fff;
}

.side-cart-product-ad .cart-recommendation-card__image {
  width: auto !important;
  height: auto !important;
  min-width: 0;
  display: grid;
  place-items: end center;
  padding: 0.5rem 0.2rem 0;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.side-cart-product-ad--stay-white .cart-recommendation-card__image,
.side-cart-product-ad--mamimoor .cart-recommendation-card__image {
  background: rgba(255, 255, 255, 0.32) !important;
}

.side-cart-product-ad .cart-recommendation-card__image img {
  width: 100% !important;
  height: 100% !important;
  max-height: 9rem;
  object-fit: contain !important;
  object-position: center bottom;
}

.side-cart-product-ad .cart-recommendation-card__body {
  min-width: 0;
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  padding: 0.72rem 0.72rem 0.68rem !important;
  text-align: start;
}

.side-cart-product-ad__eyebrow {
  display: block;
  margin-bottom: 0.16rem;
  color: var(--ad-accent);
  font-size: 0.62rem;
  font-weight: 900;
}

.side-cart-product-ad h3 {
  min-height: 0 !important;
  margin: 0 !important;
  color: var(--ad-text) !important;
  font-size: 0.9rem !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

.side-cart-product-ad h3 a {
  color: inherit !important;
}

.side-cart-product-ad__copy {
  margin: 0.14rem 0 0;
  color: var(--ad-muted);
  font-size: 0.67rem;
  line-height: 1.45;
}

.side-cart-product-ad .cart-recommendation-card__discount {
  position: absolute;
  z-index: 2;
  top: 0.48rem;
  inset-inline-start: 0.48rem;
  color: #102039;
  border: 0;
  background: var(--ad-accent);
}

.side-cart-product-ad .cart-recommendation-card__price {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.18rem 0.4rem;
  margin-top: 0.38rem;
}

.side-cart-product-ad .cart-recommendation-card__price strong {
  color: var(--ad-text) !important;
  font-size: 0.9rem;
  font-weight: 900;
}

.side-cart-product-ad .cart-recommendation-card__price del {
  color: var(--ad-muted) !important;
  font-size: 0.66rem;
}

.side-cart-product-ad .cart-recommendation-card__add {
  width: auto !important;
  min-height: 2rem;
  margin-top: auto;
  padding: 0.38rem 0.72rem !important;
  color: var(--ad-button-text) !important;
  border: 1px solid transparent !important;
  border-radius: 0.55rem !important;
  background: var(--ad-button-bg) !important;
  font-size: 0.7rem !important;
  font-weight: 900 !important;
  line-height: 1.15;
  box-shadow: none !important;
}

.side-cart-product-ad .cart-recommendation-card__add:focus-visible {
  outline: 2px solid var(--ad-accent);
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .side-cart .side-cart-shipping-progress {
    padding-inline: 0.85rem;
  }

  .side-cart-recommendations.is-product-ads .cart-recommendations__arrows {
    display: none;
  }
}

@media (max-width: 370px) {
  .side-cart-product-ad {
    grid-template-columns: 4.9rem minmax(0, 1fr);
  }

  .side-cart-product-ad .cart-recommendation-card__body {
    padding-inline: 0.6rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .side-cart-shipping-progress__track span {
    transition: none;
  }
}
