

/* Start:/local/templates/romza_bitronic2_2.23.10/components/bitrix/sale.basket.basket/sib_big_basket_46a/style.css?178888654151328*/
/* Корзина, ПК — макет 46a (задача 54, docs/specs/54-korzina.md).
   Все классы свои (c46-*), чтобы правила темы для .cart/.total/.qty не мешали.
   Битрикс подключает этот файл сам как стиль шаблона компонента. */

.c46 {
  font-family: 'Roboto', Arial, sans-serif;
  color: #14171c;
  padding: 14px 0 32px;
}
.c46 *, .c46 *::before, .c46 *::after { box-sizing: border-box; }
.c46 a { text-decoration: none; }

/* Белый фон JPG гасим до цвета подложки #f7f8f9 — правило владельца «фото товаров всегда
   на сером» (CLAUDE.md): mix-blend-mode: multiply там, где спокойно, и filter: brightness(0.972)
   в свайпаемых лентах и на мобилке (на iOS бленд рисует кадры на белом и срывает скролл).

   Фото товаров лежат в <picture>, а он по умолчанию СТРОЧНЫЙ: height:100% у <img> внутри
   такого родителя не к чему привязать, браузер берёт натуральную высоту — и «квадратная»
   плашка распухала под высокие снимки (в попапе аксессуаров карточки разъезжались по
   высоте, 25.08.2026). Делаем picture блоком в размер плашки — тогда проценты считаются. */
.c46 picture, .c46pop picture { display: block; width: 100%; height: 100%; }

/* ---------- крошки и заголовок ---------- */
.c46-crumbs { font-size: 12.5px; line-height: 1.4; color: #9aa0a9; margin-bottom: 4px; }
.c46-crumbs a { color: #9aa0a9; }
.c46-crumbs a:hover { color: #14171c; }
.c46-crumbs__sep { margin: 0 6px; }
.c46-crumbs__cur { color: #5c626b; }

/* Та же сетка, что у содержимого: «Очистить корзину» встаёт по правому краю списка
   товаров, а не над сводкой заказа (замечание владельца 25.08.2026). */
.c46-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 20px;
  margin: 0 0 12px;
}
.c46-head__row { display: flex; align-items: baseline; gap: 12px; }
.c46-title {
  /* у темы h1 { padding: 0 0 16px } — лишний воздух под заголовком, снимаем */
  margin: 0; padding: 0;
  font: 700 28px/1.2 'Roboto', Arial, sans-serif;
  color: #14171c;
  text-transform: none;
}
/* по базовой линии мелкий текст рядом с крупным заголовком читается «просевшим» —
   владелец так и сказал; ставим его по оптической середине «Корзины» */
.c46-count { align-self: center; font-size: 14px; line-height: 1.2; color: #6b7078; }
.c46-clear { align-self: center; margin-left: auto; font-size: 13px; line-height: 1.2; color: #9aa0a9; }
.c46-clear:hover { color: #e0402c; }

/* ---------- сетка ---------- */
.c46-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 20px;
  align-items: start;
}
/* на время AJAX-пересчёта */
.c46-grid.c46-loading { opacity: .55; pointer-events: none; }
.c46-grid { transition: opacity .15s; }

/* ---------- список товаров — макет 61a (25.08.2026) ----------
   Акцент на главном товаре: своя белая карточка, фото 220px, крупная жёлтая цена.
   Аксессуары — отдельной карточкой ниже и заметно мельче: жёлтого у них нет вовсе,
   кнопки белые с чёрной рамкой (жёлтые в корзине только цена и «Оформить заказ»). */
.c46-list { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.c46-card { background: #fff; border-radius: 12px; padding: 20px 22px; }
#basket_items { display: flex; flex-direction: column; gap: 14px; }

.c46-item { display: flex; gap: 22px; align-items: stretch; }

.c46-item__img {
  display: block;
  width: 220px; height: 220px; flex-shrink: 0;
  background: #f7f8f9; border-radius: 12px; padding: 12px;
}
.c46-item__img img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 8px; mix-blend-mode: multiply; }

.c46-item__body { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.c46-item__pricerow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 4px; }
.c46-item__gift {
  font: 600 11px/16px 'Roboto', Arial, sans-serif;
  color: #14171c; background: #FDCD3C; border-radius: 4px; padding: 0 7px;
}
.c46-item__name {
  font-size: 15.5px; line-height: 1.4; color: #14171c;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.c46-item__name:hover { color: #b8890a; }
.c46-item__status { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: #2e7d3a; }
.c46-item__status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #2e7d3a; }
.c46-item__status_order { color: #8a6a15; }
.c46-item__status_order::before { background: #FDCD3C; }

/* количество и «Удалить» — у нижнего края карточки товара */
.c46-item__ctl { display: flex; align-items: center; gap: 16px; margin-top: auto; padding-top: 8px; }
.c46-qty {
  display: inline-flex; align-items: center;
  height: 38px; border: 1px solid #e0e2e6; border-radius: 7px;
}
.c46-qty__btn {
  width: 34px; height: 36px; margin: 0; padding: 0;
  border: 0; background: none; border-radius: 0;
  font: 400 17px/36px 'Roboto', Arial, sans-serif; color: #6b7078;
  text-align: center; cursor: pointer;
}
.c46-qty__btn:hover { color: #14171c; background: none; }
.c46-qty__btn.disabled { color: #c9ccd1; cursor: default; }
.c46-qty__val {
  width: 38px; min-width: 26px; height: 36px; margin: 0; padding: 0;
  border: 0; background: none; box-shadow: none;
  font: 600 14px/36px 'Roboto', Arial, sans-serif; color: #14171c; text-align: center;
}
.c46-qty__val:focus { outline: 0; }
.c46-item__del { font-size: 12.5px; color: #9aa0a9; }
.c46-item__del:hover { color: #e0402c; }

/* цена товара — единственное жёлтое пятно в списке */
.c46-item__sum {
  background: #FDCD3C; border-radius: 6px; padding: 6px 12px;
  font: 700 24px/28px 'Roboto', Arial, sans-serif; color: #000; white-space: nowrap;
}
.c46-item__old { font-size: 13.5px; color: #9aa0a9; text-decoration: line-through; }
.c46-item__per { font-size: 12.5px; color: #6b7078; white-space: nowrap; }
.c46-item__bonus { font-size: 12px; color: #6b7078; }

/* ---------- аксессуары (61a) ----------
   Своя белая карточка под товаром, карточки крупные, но заметно мельче главного товара;
   кнопка «Добавить» белая с чёрной рамкой — акцент только у товара и оформления. */
.c46-acc { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 12px; }
.c46-acc__head { display: flex; align-items: baseline; gap: 10px; }
.c46-acc__title { font: 700 13.5px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-acc__all { margin-left: auto; font-size: 12px; color: #6b7078; white-space: nowrap; }
.c46-acc__all:hover { color: #14171c; }

/* лента: четыре карточки в кадре, остальные листаются стрелками */
.c46-acc__list {
  display: flex; gap: 12px;
  overflow-x: auto; scroll-behavior: smooth; scroll-snap-type: x proximity;
  scrollbar-width: none; -webkit-overflow-scrolling: touch;
  margin: 0 -2px; padding: 0 2px 2px;
}
.c46-acc__list::-webkit-scrollbar { display: none; }
.c46-acc-card {
  flex: 0 0 calc((100% - 36px) / 4); scroll-snap-align: start;
  background: #fff; border: 1px solid #e8eaed; border-radius: 10px;
  padding: 10px; display: flex; flex-direction: column; gap: 8px;
}
.c46-acc__nav { display: inline-flex; gap: 6px; margin-left: 12px; }
.c46-acc__nav[hidden] { display: none; }
.c46-acc__arrow {
  width: 26px; height: 26px; margin: 0; padding: 0;
  border: 1px solid #e0e2e6; border-radius: 50%; background: #fff;
  font: 400 15px/24px 'Roboto', Arial, sans-serif; color: #6b7078;
  text-align: center; cursor: pointer; transition: border-color .15s, color .15s;
}
.c46-acc__arrow:hover { border-color: #14171c; color: #14171c; }
.c46-acc__arrow[disabled] { opacity: .35; cursor: default; border-color: #e0e2e6; color: #9aa0a9; }

.c46-acc-card__img {
  display: block; height: 128px; flex: 0 0 auto; overflow: hidden;
  background: #f7f8f9; border-radius: 8px; padding: 8px; cursor: pointer;
}
.c46-acc-card__img img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.c46-acc-card__name {
  font-size: 12px; line-height: 1.3; color: #14171c; min-height: 31px; cursor: pointer;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.c46-acc-card__name:hover { color: #b8890a; }
.c46-acc-card__price { margin-top: auto; font: 700 13.5px/1.2 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-acc-card__old { font-weight: 400; font-size: 11.5px; color: #9aa0a9; text-decoration: line-through; margin-left: 6px; }
.c46-acc-card__add {
  height: 34px; margin: 0; padding: 0 10px;
  border: 1px solid #14171c; border-radius: 7px; background: #fff;
  font: 600 12px/32px 'Roboto', Arial, sans-serif; color: #14171c;
  text-align: center; cursor: pointer; transition: background .15s, color .15s;
}
.c46-acc-card__add:hover { background: #14171c; color: #fff; }
.c46-acc-card__add[disabled] { cursor: default; }
.c46-acc-card__add_done { background: #eef7ee; border-color: #cfe6d2; color: #2e7d3a; }
.c46-acc-card__add_done:hover { background: #eef7ee; color: #2e7d3a; }

/* ---------- правая колонка ---------- */
.c46-side { display: flex; flex-direction: column; gap: 12px; position: sticky; top: 20px; }
.c46-card { background: #fff; border-radius: 12px; padding: 20px; }
.c46-card__title { font: 700 17px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-card__title_sm { font-size: 14px; margin-bottom: 10px; }

.c46-rows { display: flex; flex-direction: column; gap: 9px; margin: 14px 0 4px; font-size: 13.5px; }
.c46-row { display: flex; align-items: baseline; gap: 10px; }
.c46-row__label { color: #6b7078; }
.c46-row__dots { flex: 1; border-bottom: 1px dashed #e0e2e6; }
.c46-row__val { color: #14171c; white-space: nowrap; }
.c46-row__val_red { color: #e0402c; }
.c46-row__val_green { color: #2e7d3a; }

.c46-total { border-top: 1px solid #f0f1f3; margin-top: 14px; padding-top: 14px; display: flex; align-items: baseline; gap: 10px; }
.c46-total__label { font: 700 17px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-total__sum { margin-left: auto; font: 700 25px/1.2 'Roboto', Arial, sans-serif; color: #14171c; white-space: nowrap; }
/* «начислим N баллов» — прежним серым: золотистый из макета 61a владелец отменил
   (25.08.2026), он перетягивал внимание с цены и «Оформить заказ» */
.c46-order__bonus { font-size: 11.5px; color: #6b7078; margin-top: 3px; text-align: right; }
.c46-order__note { font-size: 12px; color: #9aa0a9; margin-top: 2px; text-align: right; }
/* подсказка под строкой доставки: «бесплатно от 5 000 ₽, не хватает 1 210 ₽» (dostavka-nsk-290) */
.c46-row__hint { font-size: 11.5px; line-height: 1.4; color: #9aa0a9; text-align: right; margin-top: -5px; }
.c46-order__hint { font-size: 11.5px; line-height: 1.5; color: #9aa0a9; text-align: center; margin-top: 8px; }

/* кнопки */
.c46-btn {
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: 48px; margin: 0; padding: 0 16px;
  border: 0; border-radius: 8px;
  font: 700 15px/1 'Roboto', Arial, sans-serif; color: #14171c;
  text-decoration: none; cursor: pointer; white-space: nowrap;
  transition: background .15s, border-color .15s, color .15s;
}
.c46-btn[hidden] { display: none; }
.c46-btn_main { height: 50px; background: #FDCD3C; margin-top: 14px; }
.c46-btn_main:hover { background: #ffae00; color: #14171c; }
/* «Заказ в один клик» — белая: жёлтый в корзине только у цены и «Оформить заказ» */
.c46-btn_ghost { height: 46px; margin-top: 8px; background: #fff; border: 1.5px solid #14171c; font-weight: 600; font-size: 13.5px; }
.c46-btn_ghost:hover { background: #f7f8f9; color: #14171c; }
.c46-btn_white { height: 46px; background: #fff; border: 1px solid #d5d9de; font-weight: 500; font-size: 14px; }
.c46-btn_white:hover { border-color: #14171c; color: #14171c; }
.c46-btn_auto { width: auto; margin-top: 0; padding: 0 26px; }

/* промокод */
.c46-promo { padding: 18px 20px; }
.c46-promo__form { display: flex; gap: 8px; }
.c46-promo__input {
  flex: 1; min-width: 0; height: 42px; margin: 0; padding: 0 13px;
  border: 1px solid #d5d9de; border-radius: 8px; background: #fff; box-shadow: none;
  font: 400 13.5px/40px 'Roboto', Arial, sans-serif; color: #14171c;
}
.c46-promo__input::placeholder { color: #9aa0a9; }
.c46-promo__input:focus { border-color: #14171c; outline: 0; }
.c46-promo__input_bad { border-color: #e0402c; }
.c46-promo__apply {
  height: 42px; margin: 0; padding: 0 16px;
  border: 1px solid #14171c; border-radius: 8px; background: #fff;
  font: 600 12.5px/40px 'Roboto', Arial, sans-serif; color: #14171c; cursor: pointer;
  transition: background .15s, color .15s;
}
.c46-promo__apply:hover { background: #14171c; color: #fff; }
.c46-promo__error {
  margin-top: 8px; font-size: 12px; line-height: 1.4; color: #e0402c;
  display: flex; align-items: flex-start; gap: 8px;
}
.c46-promo__error-x {
  margin: -2px 0 0 auto; padding: 0 2px; flex-shrink: 0;
  border: 0; background: none; color: #e0402c;
  font: 400 16px/1 'Roboto', Arial, sans-serif; cursor: pointer;
}
.c46-promo__error-x:hover { color: #14171c; }
.c46-promo__ok {
  display: flex; align-items: center; gap: 8px; margin-top: 10px;
  background: #fffaea; border: 1px solid #f0e2ba; border-radius: 6px; padding: 8px 11px;
  font-size: 12.5px; color: #8a6a15;
}
.c46-promo__ok b { color: #14171c; font-weight: 700; }
.c46-promo__remove {
  margin: 0 0 0 auto; padding: 0 2px; border: 0; background: none;
  font: 400 16px/1 'Roboto', Arial, sans-serif; color: #b8a06a; cursor: pointer;
}
.c46-promo__remove:hover { color: #e0402c; }

/* ---------- пустая корзина / заказ принят ---------- */
.c46-empty {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 7px; text-align: center; padding: 56px 26px 64px;
}
.c46-empty__icon {
  width: 78px; height: 78px; border-radius: 50%; background: #fff;
  display: flex; align-items: center; justify-content: center; margin-bottom: 6px;
}
.c46-empty__icon img { width: 36px; height: 36px; opacity: .35; }
.c46-empty__icon_ok { background: #FDCD3C; }
.c46-empty__check { width: 14px; height: 26px; border: solid #14171c; border-width: 0 3px 3px 0; transform: rotate(45deg); margin-top: -6px; }
.c46-empty__title { font: 700 22px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-empty__text { font-size: 14px; line-height: 1.55; color: #6b7078; max-width: 420px; }
.c46-empty__btns { display: flex; gap: 10px; margin-top: 14px; }

/* ---------- попап «Все аксессуары» (макет 59a) ----------
   Живёт в <body>, а не внутри .c46 — свой box-sizing и свои шрифты. */
.c46pop-wrap {
  position: fixed; inset: 0; z-index: 10400;
  background: rgba(12, 14, 17, .62);
  display: flex; align-items: flex-start; justify-content: center;
  padding: 34px 16px;
  overflow-y: auto;
}
.c46pop-wrap[hidden] { display: none; }
body.c46pop-open { overflow: hidden; }

.c46pop {
  width: 820px; max-width: 100%;
  background: #fff; border-radius: 14px;
  box-shadow: 0 26px 70px rgba(6, 7, 9, .5);
  overflow: hidden;
  font-family: 'Roboto', Arial, sans-serif; color: #14171c;
}
.c46pop *, .c46pop *::before, .c46pop *::after { box-sizing: border-box; }
.c46pop a { text-decoration: none; }
.c46pop__load { padding: 48px 20px; text-align: center; color: #6b7078; font-size: 14px; }

.c46pop__head {
  border-top: 4px solid #FDCD3C;
  padding: 15px 20px 14px; border-bottom: 1px solid #ebedf0;
  display: flex; align-items: center; gap: 12px;
}
.c46pop__head-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.c46pop__kicker { font: 700 10px/1 'Roboto', Arial, sans-serif; letter-spacing: 1.4px; color: #a37a06; text-transform: uppercase; }
.c46pop__title { font: 700 16px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46pop__close {
  margin: 0 0 0 auto; padding: 0; flex-shrink: 0;
  width: 28px; height: 28px; border: 0; border-radius: 50%;
  background: #f2f3f5; color: #6b7078;
  font: 400 15px/28px 'Roboto', Arial, sans-serif; text-align: center; cursor: pointer;
}
.c46pop__close:hover { background: #e6e8eb; color: #14171c; }

.c46pop__tools { padding: 14px 20px 0; display: flex; flex-direction: column; gap: 11px; }
.c46pop__row { display: flex; gap: 10px; }
.c46pop__search { flex: 1; min-width: 0; display: flex; }
.c46pop__search input {
  width: 100%; height: 40px; margin: 0; padding: 0 13px;
  border: 1px solid #d5d9de; border-radius: 8px; background: #fff; box-shadow: none;
  font: 400 13px/38px 'Roboto', Arial, sans-serif; color: #14171c;
}
.c46pop__search input:focus { border-color: #14171c; outline: 0; }
.c46pop__sort {
  width: 190px; flex-shrink: 0; height: 40px; margin: 0; padding: 0 10px;
  border: 1px solid #d5d9de; border-radius: 8px; background: #fff;
  font: 400 13px/38px 'Roboto', Arial, sans-serif; color: #14171c; cursor: pointer;
}
.c46pop__chips { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
.c46pop__chips::-webkit-scrollbar { display: none; }
.c46pop__chip {
  flex-shrink: 0; display: inline-flex; align-items: center; gap: 7px;
  margin: 0; padding: 9px 13px;
  background: #fff; border: 1px solid #e5e7ea; border-radius: 7px;
  font: 400 12.5px/1 'Roboto', Arial, sans-serif; color: #14171c;
  white-space: nowrap; cursor: pointer;
}
.c46pop__chip span { font-size: 11px; color: #9aa0a9; }
.c46pop__chip_on { background: #14171c; border-color: #14171c; color: #fff; font-weight: 600; }
.c46pop__chip_on span { color: #FDCD3C; }

.c46pop__body { padding: 14px 20px 4px; max-height: 400px; overflow-y: auto; }
.c46pop__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.c46pop__nothing { padding: 28px 0 24px; text-align: center; color: #6b7078; font-size: 13px; }
.c46pop__nothing[hidden] { display: none; }

.c46pop-card {
  background: #fff; border: 1px solid #e8eaed; border-radius: 10px;
  padding: 10px; display: flex; flex-direction: column; gap: 8px;
}
.c46pop-card[hidden] { display: none; }
.c46pop-card__img {
  display: block; aspect-ratio: 1 / 1; flex: 0 0 auto; overflow: hidden;
  background: #f7f8f9; border-radius: 8px; padding: 8px;
}
.c46pop-card__img img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.c46pop-card__name {
  font-size: 12px; line-height: 1.3; color: #14171c; min-height: 31px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.c46pop-card__name:hover { color: #b8890a; }
/* цена и кнопка прижаты к низу — у карточек с именем в одну строку кнопка не уезжает вверх */
.c46pop-card__price { margin-top: auto; font: 700 13.5px/1.2 'Roboto', Arial, sans-serif; color: #14171c; }
.c46pop-card__old { font-weight: 400; font-size: 11.5px; color: #9aa0a9; text-decoration: line-through; margin-left: 7px; }
.c46pop-card__add {
  height: 34px; margin: 0; padding: 0 8px;
  border: 1px solid #14171c; border-radius: 7px; background: #fff;
  font: 600 12px/32px 'Roboto', Arial, sans-serif; color: #14171c;
  cursor: pointer; transition: background .15s, color .15s;
}
.c46pop-card__add:hover { background: #14171c; color: #fff; }
.c46pop-card__add_done { background: #eef7ee; border-color: #cfe6d2; color: #2e7d3a; }
.c46pop-card__add[disabled] { cursor: default; }
.c46pop-card__add_done:hover { background: #eef7ee; color: #2e7d3a; }

.c46pop__more { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 10px 0 14px; }
.c46pop__shown { font-size: 12.5px; color: #6b7078; }
.c46pop__shown b { color: #14171c; }
.c46pop__more-btn {
  height: 42px; margin: 0; padding: 0 28px;
  border: 1px solid #d5d9de; border-radius: 8px; background: #fff;
  font: 600 13px/40px 'Roboto', Arial, sans-serif; color: #14171c; cursor: pointer;
}
.c46pop__more-btn:hover { background: #f7f8f9; }

.c46pop__foot { border-top: 1px solid #ebedf0; padding: 12px 20px 14px; display: flex; align-items: center; gap: 14px; }
.c46pop__foot-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.c46pop__foot-title { font: 700 14px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46pop__foot-sub { font-size: 11.5px; color: #6b7078; }
.c46pop__done {
  margin-left: auto; flex-shrink: 0;
  height: 44px; padding: 0 22px; border: 0; border-radius: 8px;
  background: #FDCD3C; color: #14171c;
  font: 700 13.5px/44px 'Roboto', Arial, sans-serif; cursor: pointer; transition: background .15s;
}
.c46pop__done:hover { background: #ffae00; }

/* ---------- быстрый просмотр товара ----------
   Свой слой поверх всего, включая попап «Все аксессуары»: оттуда он тоже открывается. */
.c46qv-wrap {
  position: fixed; inset: 0; z-index: 10500;
  background: rgba(12, 14, 17, .66);
  display: flex; align-items: center; justify-content: center;
  padding: 28px 16px; overflow-y: auto;
}
.c46qv-wrap[hidden] { display: none; }
.c46qv-box {
  width: 760px; max-width: 100%;
  background: #fff; border-radius: 14px;
  box-shadow: 0 26px 70px rgba(6, 7, 9, .5);
  font-family: 'Roboto', Arial, sans-serif; color: #14171c;
}
.c46qv-box *, .c46qv-box *::before, .c46qv-box *::after { box-sizing: border-box; }
.c46qv-box a { text-decoration: none; }
.c46qv { position: relative; padding: 22px; }
.c46qv__load { padding: 60px 20px; text-align: center; color: #6b7078; font-size: 14px; }
.c46qv__close {
  position: absolute; top: 14px; right: 14px; z-index: 2;
  width: 30px; height: 30px; margin: 0; padding: 0;
  border: 0; border-radius: 50%; background: #f2f3f5; color: #6b7078;
  font: 400 16px/30px 'Roboto', Arial, sans-serif; text-align: center; cursor: pointer;
}
.c46qv__close:hover { background: #e6e8eb; color: #14171c; }

.c46qv__cols { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 24px; align-items: start; }
.c46qv__gallery { display: flex; flex-direction: column; gap: 10px; }
.c46qv__photo {
  aspect-ratio: 1 / 1; overflow: hidden;
  background: #f7f8f9; border-radius: 12px; padding: 14px;
}
.c46qv__photo img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.c46qv__thumbs { display: flex; gap: 8px; flex-wrap: wrap; }
.c46qv__thumb {
  width: 58px; height: 58px; margin: 0; padding: 5px;
  border: 1px solid #e8eaed; border-radius: 8px; background: #f7f8f9; cursor: pointer;
}
.c46qv__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.c46qv__thumb_on { border-color: #14171c; }

.c46qv__info { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding-right: 34px; }
.c46qv__name { font: 700 18px/1.35 'Roboto', Arial, sans-serif; color: #14171c; }
.c46qv__text { font-size: 13px; line-height: 1.5; color: #6b7078; }
.c46qv__price { display: flex; align-items: baseline; gap: 10px; }
.c46qv__now { font: 700 24px/1.2 'Roboto', Arial, sans-serif; color: #14171c; }
.c46qv__old { font-size: 14px; color: #9aa0a9; text-decoration: line-through; }
/* аксессуар — не главный товар, кнопка белая (правило макета 61a) */
.c46qv__add {
  height: 48px; margin: 4px 0 0; padding: 0 20px;
  border: 1.5px solid #14171c; border-radius: 8px; background: #fff;
  font: 700 15px/45px 'Roboto', Arial, sans-serif; color: #14171c;
  cursor: pointer; transition: background .15s, color .15s;
}
.c46qv__add:hover { background: #14171c; color: #fff; }
.c46qv__add_done { background: #eef7ee; border-color: #cfe6d2; color: #2e7d3a; cursor: default; }
.c46qv__add_done:hover { background: #eef7ee; color: #2e7d3a; }
.c46qv__link { font-size: 13px; color: #6b7078; }
.c46qv__link:hover { color: #14171c; }

/* на телефоне — одной колонкой, фото сверху */
.c46qv-wrap_mob { padding: 0; align-items: stretch; }
.c46qv-wrap_mob .c46qv-box { width: 100%; border-radius: 0; min-height: 100%; }
.c46qv-wrap_mob .c46qv { padding: 16px 14px 24px; }
.c46qv-wrap_mob .c46qv__cols { grid-template-columns: minmax(0, 1fr); gap: 16px; }
.c46qv-wrap_mob .c46qv__photo img,
.c46qv-wrap_mob .c46qv__thumb img { mix-blend-mode: normal; filter: brightness(0.972); }
.c46qv-wrap_mob .c46qv__info { padding-right: 0; }
.c46qv-wrap_mob .c46qv__name { font-size: 16px; }
.c46qv-wrap_mob .c46qv__now { font-size: 21px; }
.c46qv-wrap_mob .c46qv__add { width: 100%; }

/* ---------- мобильная корзина занимает весь экран ----------
   Класс c46-mobpage ставит строка в <head> (template.php). В макете 46b ни шапки сайта,
   ни подвала нет: на телефоне логотип, поиск и километр ссылок в подвале только мешают
   (владелец 25.08.2026). Нижняя панель навигации остаётся — по ней и уходят из корзины. */
.c46-mobpage header.header { display: none !important; }
.c46-mobpage footer { display: none !important; }

/* ---------- попап аксессуаров на мобилке — макет 59b ----------
   Та же разметка от ajax/sib/cart_acc46.php, только шторкой на весь экран.
   Класс ставит script.js, когда корзина нарисована мобильным видом. */
.c46pop-wrap_mob { padding: 0; align-items: stretch; background: rgba(12, 14, 17, .5); }
.c46pop-wrap_mob .c46pop {
  width: 100%; max-width: none; height: 100%;
  border-radius: 0; box-shadow: none;
  display: flex; flex-direction: column;
}
.c46pop-wrap_mob .c46pop__head { padding: 12px 14px; }
.c46pop-wrap_mob .c46pop__back { display: flex; }
.c46pop-wrap_mob .c46pop__close { display: none; }
.c46pop-wrap_mob .c46pop__title { font-size: 14px; }
.c46pop-wrap_mob .c46pop__tools {
  flex-shrink: 0; padding: 12px 14px; gap: 10px;
  border-bottom: 1px solid #ebedf0;
}
/* порядок на мобилке: поиск → чипсы → сортировка (на ПК поиск и сортировка в одной строке) */
.c46pop-wrap_mob .c46pop__row { display: contents; }
.c46pop-wrap_mob .c46pop__search { order: 1; }
.c46pop-wrap_mob .c46pop__chips { order: 2; }
.c46pop-wrap_mob .c46pop__sort {
  order: 3; width: 100%; height: auto; padding: 0;
  border: 0; font-size: 12px; color: #6b7078;
}
.c46pop-wrap_mob .c46pop__body { flex: 1; min-height: 0; max-height: none; padding: 12px 14px 16px; }
.c46pop-wrap_mob .c46pop__grid { grid-template-columns: 1fr 1fr; gap: 10px; }
.c46pop-wrap_mob .c46pop-card { padding: 9px; gap: 7px; }
.c46pop-wrap_mob .c46pop-card__name { font-size: 11.5px; min-height: 30px; }
.c46pop-wrap_mob .c46pop-card__price { font-size: 12.5px; }
.c46pop-wrap_mob .c46pop-card__old { font-size: 10.5px; margin-left: 6px; }
.c46pop-wrap_mob .c46pop-card__add { font-size: 11.5px; }
.c46pop-wrap_mob .c46pop-card__add_done { background: #fff8e2; border: 1.5px solid #FDCD3C; color: #14171c; }
.c46pop-wrap_mob .c46pop__more { padding: 12px 14px 4px; }
.c46pop-wrap_mob .c46pop__more-btn { width: 100%; height: 42px; padding: 0; font-size: 12.5px; }
.c46pop-wrap_mob .c46pop__foot {
  flex-shrink: 0; padding: 10px 14px 14px; gap: 11px;
  box-shadow: 0 -8px 22px rgba(20, 23, 28, .08);
}
.c46pop-wrap_mob .c46pop__foot-title { font-size: 13.5px; white-space: nowrap; }
.c46pop-wrap_mob .c46pop__foot-sub { font-size: 10.5px; white-space: nowrap; }
.c46pop-wrap_mob .c46pop__done { flex: 1; margin-left: 0; }

/* кнопка «назад» в шапке попапа — только в мобильном виде */
.c46pop__back {
  display: none; align-items: center; justify-content: center;
  width: 34px; height: 34px; flex-shrink: 0; margin: 0 0 0 -6px; padding: 0;
  border: 0; border-radius: 50%; background: none; cursor: pointer;
}
.c46pop__back::before {
  content: ''; width: 11px; height: 11px; margin-left: 4px;
  border-left: 2px solid #14171c; border-bottom: 2px solid #14171c; transform: rotate(45deg);
}

/* ---------- узкие экраны (ПК-вид на ноутбуке) ----------
   Уже 1280 строке тесно: аксессуары уходят под товар лентой, как было до макета 25.08. */
@media (max-width: 1279px) {
  .c46-acc-card { flex-basis: calc((100% - 24px) / 3); }
  .c46-item__img { width: 120px; height: 120px; }
}
@media (max-width: 1023px) {
  .c46-grid, .c46-head { grid-template-columns: 1fr; }
  .c46-side { position: static; }
}

/* ============================================================
   МОБИЛЬНАЯ КОРЗИНА — макет 46b
   Включается классом .c46_mob на корне (его ставит шаблон по CART46_MOB_VIEW),
   а не медиазапросом: так мобильный вид можно посмотреть на ПК (?cart46b=1),
   а на телефоне ПК-вид не «протекает» через ширину окна.
   ============================================================ */
.c46_mob { padding: 0 0 20px; }
/* место под фиксированный подвал — только там, где он есть (в пустой корзине его нет);
   точную высоту потом ставит script.js */
.c46_mob:has(.c46m-foot) { padding-bottom: 170px; }

/* тёмная полоса «‹ Корзина · N товаров · Очистить» — во всю ширину экрана
   тем же приёмом, что hero на /delivery/ */
.c46_mob .c46m-bar {
  display: flex; align-items: center; gap: 10px;
  background: #18191a;
  margin: 0 calc(50% - 50vw);
  padding: 12px calc(50vw - 50% + 14px);
}
.c46_mob .c46m-bar__back {
  width: 34px; height: 34px; flex-shrink: 0; margin-left: -8px;
  display: flex; align-items: center; justify-content: center; border-radius: 50%;
}
.c46_mob .c46m-bar__back::before {
  content: ''; width: 11px; height: 11px; margin-left: 4px;
  border-left: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg);
}
.c46_mob .c46m-bar__title { font: 700 16px/1.2 'Roboto', Arial, sans-serif; color: #fff; }
.c46_mob .c46m-bar__count { font-size: 12px; color: #8b9098; }
.c46_mob .c46m-bar__clear { margin-left: auto; font-size: 12px; color: #8b9098; }
.c46_mob .c46m-bar__clear:hover { color: #fff; }

.c46_mob .c46m { display: flex; flex-direction: column; gap: 10px; padding: 12px 0 0; }
.c46_mob #basket_items { display: flex; flex-direction: column; gap: 10px; }
.c46_mob .c46m-card { background: #fff; border-radius: 12px; padding: 12px; }

/* строка товара — макет 61c: фото крупно во всю ширину, под ним имя и наличие,
   ниже цена слева, степпер и крестик справа («Удалить» словом не влезало) */
.c46_mob .c46-item {
  background: #fff; border-radius: 12px; border-bottom: 0;
  padding: 14px; gap: 12px;
  display: flex; flex-direction: column; align-items: stretch;
}
.c46_mob .c46m-item__img {
  display: block; width: 100%; height: 210px;
  background: #f7f8f9; border-radius: 10px; padding: 12px;
}
.c46_mob .c46m-item__img img { display: block; width: 100%; height: 100%; object-fit: contain; filter: brightness(0.972); }
.c46_mob .c46m-item__head { display: flex; flex-direction: column; gap: 8px; }
.c46_mob .c46m-item__name {
  font-size: 14px; line-height: 1.35; color: #14171c;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.c46_mob .c46m-item__status { font-size: 11.5px; gap: 6px; }
.c46_mob .c46m-item__status::before { width: 5px; height: 5px; }

.c46_mob .c46m-item__ctl { display: flex; align-items: flex-end; gap: 12px; }
.c46_mob .c46m-item__price { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.c46_mob .c46m-item__pricerow { display: flex; align-items: baseline; gap: 9px; flex-wrap: wrap; }
.c46_mob .c46m-item__sum {
  background: #FDCD3C; border-radius: 6px; padding: 5px 11px;
  font: 700 22px/26px 'Roboto', Arial, sans-serif; color: #000; white-space: nowrap;
}
.c46_mob .c46m-item__old { font-size: 12px; color: #9aa0a9; text-decoration: line-through; }
.c46_mob .c46m-item__bonus { font-size: 11.5px; color: #6b7078; }
.c46_mob .c46m-qty { height: 38px; margin-left: auto; flex-shrink: 0; }
.c46_mob .c46m-qty .c46-qty__btn { width: 36px; height: 36px; line-height: 36px; font-size: 17px; }
.c46_mob .c46m-qty .c46-qty__val { width: 30px; height: 36px; line-height: 36px; font-size: 14px; }
/* «Удалить» крестиком — места на слово нет */
.c46_mob .c46m-item__x {
  flex-shrink: 0; width: 38px; height: 38px;
  border: 1px solid #e0e2e6; border-radius: 7px;
  display: flex; align-items: center; justify-content: center;
  font-size: 17px; line-height: 1; color: #9aa0a9;
}
.c46_mob .c46m-item__x:hover { border-color: #e0402c; color: #e0402c; }

/* аксессуары — лента, карточки заметно мельче товара, кнопка белая (61c) */
.c46_mob .c46m-acc {
  background: #fff; border-radius: 12px; padding: 13px 0 14px 13px;
  display: flex; flex-direction: column; gap: 10px;
}
.c46_mob .c46m-acc__head { display: flex; align-items: baseline; gap: 8px; padding-right: 13px; }
.c46_mob .c46m-acc__title { font: 700 13px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46_mob .c46m-acc__all { margin-left: auto; font-size: 11.5px; color: #6b7078; white-space: nowrap; }
.c46_mob .c46m-acc__list {
  display: flex; gap: 10px;
  overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
  padding-right: 13px;
}
.c46_mob .c46m-acc__list::-webkit-scrollbar { display: none; }
.c46_mob .c46m-acc-card {
  flex-shrink: 0; width: 116px;
  background: #fff; border: 1px solid #e8eaed; border-radius: 10px;
  padding: 8px; display: flex; flex-direction: column; gap: 6px;
}
.c46_mob .c46m-acc-card__img {
  display: block; width: 100%; height: 86px; flex: 0 0 auto; overflow: hidden;
  background: #f7f8f9; border-radius: 7px; padding: 6px;
}
.c46_mob .c46m-acc-card__img img { display: block; width: 100%; height: 100%; object-fit: contain; filter: brightness(0.972); }
.c46_mob .c46m-acc-card__body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.c46_mob .c46m-acc-card__name {
  font-size: 11px; line-height: 1.3; color: #14171c; min-height: 29px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.c46_mob .c46m-acc-card__price { margin-top: auto; font: 700 12px/1.2 'Roboto', Arial, sans-serif; color: #14171c; }
.c46_mob .c46m-acc-card__add {
  width: 100%; height: 32px; flex-shrink: 0; margin: 0; padding: 0 6px;
  border: 1px solid #14171c; border-radius: 7px; background: #fff;
  font: 600 11px/30px 'Roboto', Arial, sans-serif; color: #14171c; text-align: center; cursor: pointer;
}
.c46_mob .c46m-acc-card__add[disabled] { cursor: default; }
.c46_mob .c46m-acc-card__add_done { background: #eef7ee; border-color: #cfe6d2; color: #2e7d3a; }

/* промокод, доставка, сводка */
.c46_mob .c46m-promo__form { display: flex; gap: 8px; }
.c46_mob .c46m-promo__input { height: 42px; font-size: 13px; }
.c46_mob .c46m-promo__apply { height: 42px; padding: 0 16px; font-size: 12.5px; }
.c46_mob .c46m-sum { display: flex; flex-direction: column; gap: 7px; font-size: 12.5px; }
.c46_mob .c46m-sum__title { font: 700 14px/1.3 'Roboto', Arial, sans-serif; color: #14171c; margin-bottom: 2px; }
.c46_mob .c46m-sum__bonus { font-size: 11.5px; color: #6b7078; margin-top: 2px; }

/* Подвал ПРИЖАТ К НИЗУ ЭКРАНА всегда (владелец 25.08.2026), над панелью навигации сайта
   (.mobile-nav, min-height 54px). Отступ снизу у страницы под его высоту ставит script.js:
   высота меняется от строки «без учёта доставки» и от длины суммы. */
.c46_mob .c46m-foot {
  position: fixed; left: 0; right: 0; bottom: 54px; z-index: 1019;
  background: #fff; border-top: 1px solid #e8eaed;
  box-shadow: 0 -6px 20px rgba(20, 23, 28, .08);
  margin: 0;
  padding: 12px 14px 14px;
}
.c46_mob .c46m-foot__row { display: flex; align-items: baseline; gap: 8px; }
.c46_mob .c46m-foot__label { font: 700 13.5px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46_mob .c46m-foot__sum { margin-left: auto; font: 700 20px/1.2 'Roboto', Arial, sans-serif; color: #14171c; }
.c46_mob .c46m-foot__note { font-size: 11px; color: #9aa0a9; margin-top: 2px; }
.c46_mob .c46m-btn { height: 50px; margin-top: 8px; font-size: 14.5px; }

/* пустая корзина на мобилке */
.c46_mob .c46-empty { padding: 44px 20px 40px; }
.c46_mob .c46-empty__icon { background: #f7f8f9; width: 72px; height: 72px; }
.c46_mob .c46-empty__icon img { width: 34px; height: 34px; }
.c46_mob .c46-empty__title { font-size: 17px; }
.c46_mob .c46-empty__text { font-size: 13px; }
.c46_mob .c46-empty__btns { flex-direction: column; align-self: stretch; gap: 8px; }
.c46_mob .c46-empty__btns .c46-btn_auto { width: 100%; }

/* ============================================================
   Ховер ссылок: перебиваем правило темы
   ============================================================
   В теме есть `.desktop a:hover { color: #ffae00 }` — оно красит В ЖЁЛТЫЙ любую ссылку
   на странице и по специфичности (0,2,1) сильнее наших правил вида `.c46-btn_main:hover`
   (0,2,0). Из-за этого текст на жёлтой кнопке «Оформить заказ» пропадал (жёлтый на жёлтом),
   а на чёрной «Заказ в один клик» становился жёлтым вместо белого (владелец, 25.08.2026).
   Здесь те же цвета, но с запасом по специфичности. Кнопки <button> правило темы не трогает —
   перечислены только ссылки. */
.desktop .c46 .c46-btn_main:hover { color: #14171c; }
.desktop .c46 .c46-btn_ghost:hover { color: #14171c; }
.desktop .c46 .c46-btn_white:hover { color: #14171c; }
.desktop .c46 .c46-crumbs a:hover { color: #14171c; }
.desktop .c46 .c46-clear:hover { color: #e0402c; }
.desktop .c46 .c46-item__name:hover { color: #b8890a; }
.desktop .c46 .c46-item__del:hover { color: #e0402c; }
.desktop .c46 .c46-acc__all:hover { color: #14171c; }
.desktop .c46 .c46-acc-card__name:hover { color: #b8890a; }
/* мобильная корзина */
.desktop .c46_mob .c46m-bar__clear:hover { color: #fff; }
.desktop .c46_mob .c46m-item__name:hover { color: #b8890a; }
.desktop .c46_mob .c46m-item__del:hover { color: #e0402c; }
.desktop .c46_mob .c46m-acc__all:hover { color: #14171c; }
.desktop .c46_mob .c46m-acc-card__name:hover { color: #b8890a; }
/* попап аксессуаров и быстрый просмотр — они лежат в body, но правило темы достаёт и туда */
.desktop .c46pop .c46pop-card__name:hover { color: #b8890a; }
.desktop .c46qv-box .c46qv__link:hover { color: #14171c; }

/* ===== Услуги в корзине (75a/75b, задача uslugi-inventarizatsiya) ===== */
/* Услуги к аппарату — одним блоком, прижатым к карточке товара: сверху линия,
   снизу скруглённые углы. Внутри строки разделены тонкими линиями. */
.c46-usl,
.c46m-usl {
    background: #fff; border-radius: 0 0 12px 12px;
    margin: -12px 0 12px; padding: 0 20px 4px;
    border-top: 1px solid #f0f1f3;
}
.c46-usl__row,
.c46m-usl__row {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 12px 0; border-top: 1px solid #f0f1f3;
}
.c46-usl__row:first-child,
.c46m-usl__row:first-child { border-top: 0; }
.c46-usl__body, .c46m-usl__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.c46-usl__name, .c46m-usl__name { font-size: 14px; font-weight: 600; color: #14171c; line-height: 1.25; }
.c46-usl__for, .c46m-usl__for { font-size: 12.5px; color: #6b7078; }
.c46-usl__price, .c46m-usl__price { font-size: 14px; font-weight: 700; color: #14171c; white-space: nowrap; }
.c46-usl__del, .c46m-usl__del {
    flex: 0 0 auto; width: 24px; height: 24px; line-height: 22px; text-align: center;
    color: #9aa0a9; font-size: 18px; text-decoration: none; border-radius: 6px;
}
.c46-usl__del:hover, .c46m-usl__del:hover { color: #14171c; background: #f2f3f5; text-decoration: none; }

/* Блок «Услуги к заказу» — тем же приёмом, что «Аксессуары к …» */
.c46-uslof, .c46m-uslof { padding: 18px 20px 20px; margin-bottom: 12px; }
.c46-uslof__head, .c46m-uslof__head { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.c46-uslof__title, .c46m-uslof__title { font-size: 16px; font-weight: 700; color: #14171c; }
.c46-uslof__note, .c46m-uslof__note { font-size: 12.5px; color: #9aa0a9; }
.c46-uslof__list, .c46m-uslof__list { display: flex; gap: 12px; overflow-x: auto; scrollbar-width: none; }
.c46-uslof__list::-webkit-scrollbar, .c46m-uslof__list::-webkit-scrollbar { display: none; }
.c46-uslof-card, .c46m-uslof-card {
    flex: 0 0 236px; display: flex; flex-direction: column; gap: 4px;
    background: #f7f8f9; border-radius: 12px; padding: 14px 16px 16px;
    align-self: stretch; /* карточки одной высоты, даже если подписи разной длины */
}
.c46-uslof-card__name, .c46m-uslof-card__name { font-size: 14px; font-weight: 600; color: #14171c; line-height: 1.25; }
.c46-uslof-card__sub, .c46m-uslof-card__sub { font-size: 12.5px; color: #6b7078; line-height: 1.3; }
.c46-uslof-card__for, .c46m-uslof-card__for { font-size: 12px; color: #9aa0a9; }
/* цена и «Добавить» прижаты к низу карточки — иначе кнопки скачут по высоте,
   когда у услуг подписи разной длины (владелец, 03.09.2026) */
.c46-uslof-card__bottom, .c46m-uslof-card__bottom { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 10px; }
.c46-uslof-card__price, .c46m-uslof-card__price { font-size: 15px; font-weight: 700; color: #14171c; white-space: nowrap; }
.c46-uslof-card__add, .c46m-uslof-card__add {
    border: 1px solid #d7dbe0; background: #fff; border-radius: 8px;
    padding: 7px 14px; font-size: 13.5px; font-weight: 600; color: #14171c; cursor: pointer;
}
.c46-uslof-card__add:hover, .c46m-uslof-card__add:hover { border-color: #FDCD3C; background: #FDCD3C; }
.c46-uslof-card__add[disabled], .c46m-uslof-card__add[disabled] { opacity: .5; cursor: default; }

/* ---------- «Закончились, пока лежали в корзине» (задача nalichie-tovara-v-korzine) ----------
   Блок-сообщение, а не предложение купить: серая подложка, ни одного жёлтого пятна,
   фото приглушено. Раньше такие строки шаблон просто не показывал — товар исчезал
   молча вместе с частью суммы.
   Ховеры пишем с классом .desktop и тегом a: тема красит ЛЮБУЮ ссылку
   правилом `.desktop a:hover { color: #ffae00 }` из template-бандла, а он идёт
   позже нашего page-бандла и при равной специфичности побеждает. */
.c46-gone { display: flex; flex-direction: column; gap: 16px; background: #f4f5f7; }
.c46-gone__head { display: flex; flex-direction: column; gap: 4px; }
.c46-gone__title { font: 700 15px/1.3 'Roboto', Arial, sans-serif; color: #14171c; }
.c46-gone__sub { font-size: 12.5px; color: #6b7078; }
.c46-gone__row { display: flex; gap: 16px; align-items: flex-start; }
.c46-gone__img {
  display: block; width: 96px; height: 96px; flex-shrink: 0;
  background: #f7f8f9; border-radius: 10px; padding: 8px;
}
.c46-gone__img img {
  display: block; width: 100%; height: 100%; object-fit: contain;
  filter: brightness(0.972) grayscale(.35); opacity: .8;
}
.c46-gone__body { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.c46-gone__name {
  font-size: 14.5px; line-height: 1.4; color: #6b7078;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.desktop a.c46-gone__name:hover { color: #14171c; }
.c46-gone__status { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: #9aa0a9; }
.c46-gone__status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #c9ccd1; }
.c46-gone__price { font: 600 15px/20px 'Roboto', Arial, sans-serif; color: #9aa0a9; }
.c46-gone__ctl { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 3px; }
.c46-gone__notify {
  border: 1px solid #d7dbe0; background: #fff; border-radius: 8px;
  padding: 8px 14px; font-size: 13px; font-weight: 600; color: #14171c; cursor: pointer;
  white-space: nowrap;
}
.c46-gone__notify:hover { border-color: #14171c; background: #fff; color: #14171c; }
.c46-gone__del { font-size: 12.5px; color: #9aa0a9; }
.desktop a.c46-gone__del:hover { color: #e0402c; }

/* мобильный вид (46b): карточка уже, фото меньше, кнопки на всю ширину строки */
.c46_mob .c46-gone { gap: 12px; padding: 12px; border-radius: 12px; }
.c46_mob .c46-gone__title { font-size: 13.5px; }
.c46_mob .c46-gone__sub { font-size: 11.5px; }
.c46_mob .c46-gone__row { gap: 12px; }
.c46_mob .c46-gone__img { width: 72px; height: 72px; padding: 6px; }
.c46_mob .c46-gone__name { font-size: 13px; }
.c46_mob .c46-gone__status { font-size: 11.5px; }
.c46_mob .c46-gone__price { font-size: 14px; }
/* на телефоне кнопка занимает строку целиком, «Удалить» уходит под неё: иначе
   nowrap-кнопка вылезает за карточку и наезжает на ссылку */
.c46_mob .c46-gone__ctl { gap: 10px; flex-direction: column; align-items: stretch; }
.c46_mob .c46-gone__notify { padding: 9px 12px; font-size: 12.5px; white-space: normal; text-align: center; }
.c46_mob .c46-gone__del { align-self: flex-start; }

/* оформлять нечего — вместо кнопки заглушка того же размера, но без жёлтого */
.c46-btn_off, .c46_mob .c46-btn_off {
  background: #eceef1; color: #9aa0a9; cursor: default;
  display: flex; align-items: center; justify-content: center;
}
.c46-btn_off:hover, .c46_mob .c46-btn_off:hover { background: #eceef1; color: #9aa0a9; }

/* ---------- тост сообщений корзины (задача korzina-soobshchenie-o-kolichestve) ----------
   Раньше предупреждения ядра («столько товара нет в наличии») показывал общий попап темы
   #modal_msg_uni — тот же, что у «быстрого заказа»: заголовок «Ошибка!», на телефоне окно
   во весь экран с пустотой до низа. Теперь — компактная плашка, как у попапа «Уведомить»
   (.n55-toast), чтобы вид был один на весь сайт.
   z-index 10500: выше нижней навигации сайта (.mobile-nav, 1020) и липкого низа корзины. */
.c46-toast {
  position: fixed;
  right: 20px;
  bottom: 80px;
  z-index: 10500;
  width: 340px;
  max-width: calc(100% - 40px);
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 14px 15px;
  background: #18191a;
  border-radius: 12px;
  box-shadow: 0 16px 40px rgba(10, 12, 15, .34);
  font-family: 'Roboto', Arial, sans-serif;
  animation: c46ToastIn .24s ease;
}

@keyframes c46ToastIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.c46-toast.is-hiding {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .2s, transform .2s;
}

.c46-toast__ico {
  position: relative;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #FDCD3C;
}

.c46-toast__ico::after {
  content: '!';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 700 16px/1 'Roboto', Arial, sans-serif;
  color: #14171c;
}

.c46-toast__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.c46-toast__title {
  font: 700 13.5px 'Roboto', Arial, sans-serif;
  color: #fff;
}

.c46-toast__text {
  font-size: 11.5px;
  line-height: 1.45;
  color: #adb3bd;
}

.c46-toast .c46-toast__close {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: auto;
  padding: 0;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #8b9098;
  font: 400 16px/24px 'Roboto', Arial, sans-serif;
  text-align: center;
  cursor: pointer;
  transition: background .15s, color .15s;
}

.c46-toast .c46-toast__close:hover {
  background: #26282c;
  color: #fff;
}

/* Мобильная корзина занимает весь экран — тост во всю ширину; отступ снизу
   (над липкой кнопкой «Оформить заказ» и нижней навигацией) ставит script.js. */
.c46-toast_mob {
  left: 12px;
  right: 12px;
  width: auto;
  max-width: none;
}

/* End */
/* /local/templates/romza_bitronic2_2.23.10/components/bitrix/sale.basket.basket/sib_big_basket_46a/style.css?178888654151328 */
