/* RAY UI STABLE CORE — 20260716
 * Последний точечный слой после удаления конфликтующих runtime-патчей.
 */

.ray-stable-duplicate-hidden {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Активный пункт мобильного нижнего меню. */
@media (max-width: 767px) {
  .ray-mobile-bottom-nav > a.is-active,
  .ray-mobile-bottom-nav > button.is-active {
    background: linear-gradient(180deg, #fce6ee 0%, #f8d8e5 100%) !important;
    color: #8c0942 !important;
    box-shadow: inset 0 0 0 1px rgba(140, 9, 66, .11), 0 6px 15px rgba(89, 13, 47, .08) !important;
  }

  .ray-mobile-bottom-nav > a.is-active i,
  .ray-mobile-bottom-nav > button.is-active i,
  .ray-mobile-bottom-nav > a.is-active span,
  .ray-mobile-bottom-nav > button.is-active span {
    color: #8c0942 !important;
  }

  /* Быстрые категории остаются в потоке и полностью ниже шапки. */
  body.common-home .rm-header,
  body.common-home .rm-header:not(.is-scrolled),
  body.common-home .rm-header.is-scrolled,
  body.common-home .rm-header.rm-header-hidden {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 0 !important;
    bottom: auto !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  body.common-home .ray-home-final-main,
  body.common-home .rm-home-main {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  body.common-home .ray-home-final-quick,
  body.common-home .ray-quick-categories.ray-home-final-quick {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    clear: both !important;
    float: none !important;
    width: 100% !important;
    margin: 24px auto 0 !important;
    padding: 26px 0 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.common-home .ray-home-final-quick .ray-quick-price-row a {
    color: #6f153b !important;
    border: 1px solid transparent !important;
    box-shadow: 0 7px 17px rgba(91, 20, 48, .10) !important;
  }

  body.common-home .ray-home-final-quick .ray-quick-price-row a:nth-child(1) {
    background: #ffdce8 !important;
    border-color: #efb7ca !important;
  }
  body.common-home .ray-home-final-quick .ray-quick-price-row a:nth-child(2) {
    background: #ffe4d7 !important;
    border-color: #f0c4ae !important;
  }
  body.common-home .ray-home-final-quick .ray-quick-price-row a:nth-child(3) {
    background: #eadfff !important;
    border-color: #cfc0ef !important;
  }
  body.common-home .ray-home-final-quick .ray-quick-price-row a:nth-child(4) {
    background: #dff3eb !important;
    border-color: #b9ddcf !important;
  }
}

/* ======================== ГЛАВНАЯ: «ВСЕ БУКЕТЫ» ======================== */
body.common-home .ray-stable-bouquets-title {
  float: none !important;
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 auto 22px !important;
  padding: 0 14px !important;
  text-align: center !important;
  transform: none !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-bouquets-title::after {
  margin-left: auto !important;
  margin-right: auto !important;
}

body.common-home .ray-stable-bouquets-grid {
  float: none !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: start !important;
  justify-items: stretch !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 12px 28px !important;
  gap: 18px !important;
  transform: none !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-bouquets-grid::before,
body.common-home .ray-stable-bouquets-grid::after {
  content: none !important;
  display: none !important;
}

body.common-home .ray-stable-bouquets-grid > .ray-stable-card {
  float: none !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-card > .product-thumb,
body.common-home .ray-stable-card .ray-quick-product-thumb {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(132, 8, 61, .10) !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(52, 24, 37, .08) !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-card .ray-quick-card-image,
body.common-home .ray-stable-card .image {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  border-radius: 19px 19px 0 0 !important;
}

body.common-home .ray-stable-card .ray-quick-card-image > a,
body.common-home .ray-stable-card .image > a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

body.common-home .ray-stable-card .ray-quick-card-image img,
body.common-home .ray-stable-card .image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
}

body.common-home .ray-stable-card .ray-quick-card-caption,
body.common-home .ray-stable-card > .product-thumb > .caption {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 12px 13px 5px !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-card .ray-quick-card-caption h4,
body.common-home .ray-stable-card .ray-quick-card-caption h4 a {
  display: -webkit-box !important;
  min-height: 43px !important;
  max-height: 44px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #292329 !important;
  font-size: 15px !important;
  font-weight: 760 !important;
  line-height: 1.42 !important;
  text-decoration: none !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body.common-home .ray-stable-card .ray-card-buy-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 4px 13px 8px !important;
  gap: 8px !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-card .ray-card-buy-row .price {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  min-width: 0 !important;
  margin: 0 !important;
  gap: 2px 7px !important;
  color: #890840 !important;
  font-size: 22px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  text-align: left !important;
}

body.common-home .ray-stable-card .ray-card-buy-row .price-new {
  color: #890840 !important;
  font: inherit !important;
}

body.common-home .ray-stable-card .ray-card-buy-row .price-old {
  color: #aaa1a6 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  text-decoration: line-through !important;
}

body.common-home .ray-stable-card .ray-card-cart-btn {
  position: static !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #980a4a, #b91460) !important;
  color: #fff !important;
  box-shadow: 0 7px 17px rgba(152, 10, 74, .20) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  cursor: pointer !important;
}

body.common-home .ray-stable-card .ray-card-cart-btn i {
  display: block !important;
  color: #fff !important;
  font-size: 21px !important;
  line-height: 1 !important;
}

body.common-home .ray-stable-card .ray-quick-order-btn {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: calc(100% - 26px) !important;
  min-height: 43px !important;
  height: auto !important;
  margin: 0 13px 13px !important;
  padding: 8px 10px !important;
  gap: 7px !important;
  border: 1px solid #e4b9cb !important;
  border-radius: 13px !important;
  background: #fff9fb !important;
  color: #8c0942 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

body.common-home .ray-stable-card .ray-card-wishlist {
  position: absolute !important;
  z-index: 5 !important;
  top: 10px !important;
  right: 10px !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(132, 8, 61, .10) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.94) !important;
  color: #9c0d49 !important;
  font-size: 20px !important;
  cursor: pointer !important;
}

.ray-card-wishlist.is-active,
.rm-wish-btn.is-active,
[onclick*="wishlist.add"].is-active {
  color: #a9084d !important;
  background: #ffe7f0 !important;
}

.ray-card-wishlist.is-active i::before,
.rm-wish-btn.is-active i::before,
[onclick*="wishlist.add"].is-active i::before {
  content: "\f004" !important;
}

@media (max-width: 767px) {
  body.common-home .ray-stable-bouquets-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: calc(100% - 12px) !important;
    max-width: 620px !important;
    padding: 0 0 24px !important;
    gap: 10px !important;
  }

  body.common-home .ray-stable-card .ray-quick-card-caption,
  body.common-home .ray-stable-card > .product-thumb > .caption {
    padding: 11px 11px 4px !important;
  }

  body.common-home .ray-stable-card .ray-quick-card-caption h4,
  body.common-home .ray-stable-card .ray-quick-card-caption h4 a {
    min-height: 40px !important;
    max-height: 41px !important;
    font-size: 14px !important;
  }

  body.common-home .ray-stable-card .ray-card-buy-row {
    grid-template-columns: minmax(0, 1fr) 48px !important;
    min-height: 54px !important;
    padding: 4px 11px 7px !important;
    gap: 6px !important;
  }

  body.common-home .ray-stable-card .ray-card-buy-row .price,
  body.common-home .ray-stable-card .ray-card-buy-row .price-new {
    font-size: 20px !important;
    white-space: normal !important;
  }

  body.common-home .ray-stable-card .ray-card-cart-btn {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    border-radius: 15px !important;
  }

  body.common-home .ray-stable-card .ray-quick-order-btn {
    width: calc(100% - 22px) !important;
    margin: 0 11px 11px !important;
    min-height: 42px !important;
    font-size: 13px !important;
  }
}

/* ======================== КАТЕГОРИИ: КАРТОЧКИ ======================== */
body[class*="product-category-"] .ray-filtered-category .rm-products-grid {
  align-items: start !important;
  grid-auto-rows: auto !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-card,
body[class*="product-category-"] .ray-filtered-category article.product-layout {
  display: block !important;
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-card > .product-thumb {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #fff !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-image {
  flex: 0 0 auto !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-image img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-info {
  display: flex !important;
  flex: 0 0 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  min-height: 118px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 14px 14px 10px !important;
  box-sizing: border-box !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-title {
  display: -webkit-box !important;
  min-height: 58px !important;
  max-height: 60px !important;
  margin: 0 !important;
  overflow: hidden !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-product-desc {
  display: none !important;
}

body[class*="product-category-"] .ray-filtered-category .rm-price {
  margin: auto 0 0 !important;
  padding-top: 10px !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
}

body[class*="product-category-"] .ray-filtered-category .torbax-cart-btn.rm-cart-btn {
  position: static !important;
  display: inline-grid !important;
  align-self: flex-end !important;
  place-items: center !important;
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  margin: 0 14px 14px auto !important;
  padding: 0 !important;
  border-radius: 15px !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

body[class*="product-category-"] .ray-filtered-category .torbax-cart-btn.rm-cart-btn i {
  display: block !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

@media (max-width: 767px) {
  body[class*="product-category-"] .ray-filtered-category .rm-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body[class*="product-category-"] .ray-filtered-category .rm-product-info {
    min-height: 103px !important;
    padding: 11px 10px 8px !important;
  }

  body[class*="product-category-"] .ray-filtered-category .rm-product-title {
    min-height: 42px !important;
    max-height: 43px !important;
    font-size: 13px !important;
    -webkit-line-clamp: 2 !important;
  }

  body[class*="product-category-"] .ray-filtered-category .rm-price {
    padding-top: 8px !important;
    font-size: 17px !important;
  }

  body[class*="product-category-"] .ray-filtered-category .torbax-cart-btn.rm-cart-btn {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    margin: 0 10px 10px auto !important;
    border-radius: 14px !important;
  }
}

/* ================= RAY UI PRECISE FINAL REPAIR stable2 ================= */

/* Во всех товарных карточках кнопка корзины содержит только иконку. */
html body .product-thumb button[onclick*="cart.add"]::before,
html body .product-thumb a[onclick*="cart.add"]::before,
html body .product-thumb .torbax-cart-btn::before,
html body .product-thumb .rm-cart-btn::before,
html body .product-thumb .ray-card-cart-btn::before,
html body .product-thumb .ray-unified-cart::before {
  content: none !important;
  display: none !important;
}

html body .product-thumb button[onclick*="cart.add"] > span,
html body .product-thumb a[onclick*="cart.add"] > span,
html body .product-thumb .torbax-cart-btn > span,
html body .product-thumb .rm-cart-btn > span,
html body .product-thumb .ray-card-cart-btn > span,
html body .product-thumb .ray-unified-cart > span {
  display: none !important;
}

html body .product-thumb button[onclick*="cart.add"] > i,
html body .product-thumb a[onclick*="cart.add"] > i,
html body .product-thumb .torbax-cart-btn > i,
html body .product-thumb .rm-cart-btn > i,
html body .product-thumb .ray-card-cart-btn > i,
html body .product-thumb .ray-unified-cart > i {
  display: block !important;
  color: #fff !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

/* Единая сетка карточек на главной, категориях, поиске, акциях и похожих товарах. */
html body .ray-unified-grid,
html body .ray-unified-grid.row,
html body.common-home .ray-stable-bouquets-grid.ray-unified-grid,
html body.common-home .ray-server-final-grid.ray-unified-grid {
  float: none !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  justify-items: stretch !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 1180px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 0 12px 28px !important;
  gap: 18px !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .ray-unified-grid::before,
html body .ray-unified-grid::after {
  content: none !important;
  display: none !important;
}

html body .ray-unified-card-wrap,
html body .ray-unified-grid > .ray-unified-card-wrap,
html body.common-home .ray-stable-bouquets-grid > .ray-unified-card-wrap {
  float: none !important;
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: start !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(132, 8, 61, .10) !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(52, 24, 37, .08) !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card .ray-unified-image {
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: 19px 19px 0 0 !important;
  transform: none !important;
}

html body .ray-unified-card .ray-unified-image > a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

html body .ray-unified-card .ray-unified-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  transform: none !important;
}

html body .ray-unified-card .ray-unified-caption {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px 13px 5px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card .ray-unified-caption > p:not(.price):not(.rm-price),
html body .ray-unified-card .rm-product-desc,
html body .ray-unified-card .rating,
html body .ray-unified-card .ray-unified-compare-hidden {
  display: none !important;
}

html body .ray-unified-card .ray-unified-title,
html body .ray-unified-card .ray-unified-caption h4,
html body .ray-unified-card .ray-unified-caption h4 a {
  display: -webkit-box !important;
  width: 100% !important;
  min-height: 43px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #292329 !important;
  font-size: 15px !important;
  font-weight: 760 !important;
  line-height: 1.42 !important;
  text-decoration: none !important;
  text-align: left !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

html body .ray-unified-card .ray-unified-buy-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 4px 13px 8px !important;
  gap: 8px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card .ray-unified-price {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  min-width: 0 !important;
  width: auto !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 2px 7px !important;
  color: #890840 !important;
  font-size: 22px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  text-align: left !important;
}

html body .ray-unified-card .ray-unified-price .price-new,
html body .ray-unified-card .ray-unified-price .rm-new-price {
  color: #890840 !important;
  font: inherit !important;
  order: 0 !important;
}

html body .ray-unified-card .ray-unified-price .price-old,
html body .ray-unified-card .ray-unified-price .rm-old-price {
  color: #aaa1a6 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  text-decoration: line-through !important;
  order: 1 !important;
}

html body .ray-unified-card .ray-unified-cart {
  position: static !important;
  display: inline-grid !important;
  place-items: center !important;
  align-self: center !important;
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #980a4a, #b91460) !important;
  color: #fff !important;
  box-shadow: 0 7px 17px rgba(152, 10, 74, .20) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: 0 !important;
  cursor: pointer !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card .ray-unified-quick,
html body .ray-unified-card .ray-quick-order-btn {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: calc(100% - 26px) !important;
  min-height: 43px !important;
  height: auto !important;
  margin: 0 13px 13px !important;
  padding: 8px 10px !important;
  gap: 7px !important;
  border: 1px solid #e4b9cb !important;
  border-radius: 13px !important;
  background: #fff9fb !important;
  color: #8c0942 !important;
  box-shadow: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  cursor: pointer !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body .ray-unified-card .ray-unified-wishlist {
  position: absolute !important;
  z-index: 8 !important;
  top: 10px !important;
  right: 10px !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(132, 8, 61, .10) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.94) !important;
  color: #9c0d49 !important;
  box-shadow: none !important;
  font-size: 20px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

html body .ray-unified-card .ray-unified-wishlist::before {
  content: none !important;
  display: none !important;
}

html body .ray-unified-card .ray-unified-wishlist > i {
  display: block !important;
  color: inherit !important;
  font-size: 20px !important;
}

/* Секция «Все букеты» строго по центру мобильного экрана. */
html body.common-home .ray-unified-bouquets-section,
html body.common-home .ray-final-section-path,
html body.common-home .ray-final-bouquets-section {
  float: none !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  transform: none !important;
  box-sizing: border-box !important;
}

html body.common-home .ray-unified-bouquets-title,
html body.common-home .ray-stable-bouquets-title,
html body.common-home .ray-final-bouquets-title {
  float: none !important;
  display: block !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  transform: none !important;
}

/* Контактная кнопка остаётся подсвеченной, пока открыта панель контактов. */
@media (max-width: 767px) {
  html body.ray-contact-panel-open .ray-mobile-unified-phone {
    background: #f7dce6 !important;
    color: #8f0d46 !important;
    box-shadow: inset 0 0 0 1px rgba(143, 13, 70, .14), 0 8px 22px rgba(91, 20, 48, .13) !important;
    transform: none !important;
  }

  html body .ray-unified-grid,
  html body .ray-unified-grid.row,
  html body.common-home .ray-stable-bouquets-grid.ray-unified-grid,
  html body.common-home .ray-server-final-grid.ray-unified-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: calc(100% - 24px) !important;
    max-width: 620px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 0 24px !important;
    gap: 10px !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }

  html body .ray-unified-card .ray-unified-caption {
    padding: 11px 11px 4px !important;
  }

  html body .ray-unified-card .ray-unified-title,
  html body .ray-unified-card .ray-unified-caption h4,
  html body .ray-unified-card .ray-unified-caption h4 a {
    min-height: 40px !important;
    max-height: 41px !important;
    font-size: 14px !important;
  }

  html body .ray-unified-card .ray-unified-buy-row {
    grid-template-columns: minmax(0, 1fr) 48px !important;
    min-height: 54px !important;
    padding: 4px 11px 7px !important;
    gap: 6px !important;
  }

  html body .ray-unified-card .ray-unified-price,
  html body .ray-unified-card .ray-unified-price .price-new,
  html body .ray-unified-card .ray-unified-price .rm-new-price {
    font-size: 20px !important;
    white-space: normal !important;
  }

  html body .ray-unified-card .ray-unified-cart {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    border-radius: 15px !important;
  }

  html body .ray-unified-card .ray-unified-quick,
  html body .ray-unified-card .ray-quick-order-btn {
    width: calc(100% - 22px) !important;
    margin: 0 11px 11px !important;
    min-height: 42px !important;
    font-size: 13px !important;
  }
}

/* Всплывающее подтверждение добавления в корзину. */
.ray-cart-success-toast {
  position: fixed !important;
  z-index: 2147483600 !important;
  left: 50% !important;
  top: 22px !important;
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) 30px !important;
  align-items: center !important;
  width: min(470px, calc(100vw - 28px)) !important;
  min-height: 82px !important;
  padding: 12px !important;
  gap: 12px !important;
  border: 1px solid rgba(123,18,63,.12) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.98) !important;
  color: #2f252b !important;
  box-shadow: 0 24px 75px rgba(38,17,27,.25) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate(-50%, -18px) scale(.97) !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
}

.ray-cart-success-toast.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate(-50%, 0) scale(1) !important;
}

.ray-cart-success-toast > img {
  display: block !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  background: #f9edf2 !important;
}

.ray-cart-success-toast__body {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  gap: 3px !important;
}

.ray-cart-success-toast__body strong {
  color: #7b123f !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.ray-cart-success-toast__body span {
  overflow: hidden !important;
  color: #342833 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.ray-cart-success-toast__close {
  display: inline-grid !important;
  place-items: center !important;
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #fff0f5 !important;
  color: #7b123f !important;
  font-size: 21px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

@media (max-width: 767px) {
  .ray-cart-success-toast {
    top: 10px !important;
    grid-template-columns: 50px minmax(0, 1fr) 28px !important;
    min-height: 72px !important;
    padding: 10px !important;
    gap: 10px !important;
    border-radius: 18px !important;
  }

  .ray-cart-success-toast > img {
    width: 50px !important;
    height: 50px !important;
    border-radius: 12px !important;
  }
}
