

/* Start:/local/templates/pennington-2.0/components/bitrix/sale.basket.basket/cart/style.css?17828911635645*/
/* ============================================================
   ХуаШен 2.0 — Корзина (sale.basket.basket / шаблон cart)
   Мост между mustache-разметкой движка и дизайн-системой.
   Базовые классы .cart-* живут в общем css/style.css шаблона;
   здесь — только то, чего там нет (input количества, оверлеи,
   уведомления строки, промокод-чипы и т.п.).
   ============================================================ */

/* Плавное появление после инициализации BX.Sale.BasketComponent */
#basket-root { transition: opacity .25s ease; }

/* Контейнер строк (между .cart-items и .cart-row есть обёртки движка) */
#basket-root .basket-items-list { min-width: 0; }
#basket-root .cart-rows { display: flex; flex-direction: column; gap: 14px; }

/* Строка — база для абсолютного оверлея загрузки */
.cart-row { position: relative; }
.cart-row.cart-row-disabled { opacity: .55; }

/* Свойства товара (Размер: L · Цвет: Серый) — инлайн с разделителем */
.cart-row .cart-row-opts { display: flex; flex-wrap: wrap; gap: 0 6px; }
.cart-row .cart-row-opt { font-size: 13px; color: var(--ink-faint); }
.cart-row .cart-row-opt:not(:last-child)::after {
  content: "·"; margin-left: 6px; color: var(--border-strong);
}

/* Подпись цены за единицу */
.cart-row .cart-row-price-unit { font-size: 12px; color: var(--ink-faint); white-space: nowrap; }

/* Количество: <input> вместо <span>.qty-value — снимаем рамку/фон, тянем стиль ДС */
#basket-root .cart-row .cart-row-qty { flex-direction: column; gap: 6px; }
.cart-row .qty-stepper .qty-value {
  width: 44px; border: none; background: none; outline: none;
  padding: 0; color: var(--ink); font-family: inherit;
  -moz-appearance: textfield;
}
.cart-row .qty-stepper .qty-value::-webkit-outer-spin-button,
.cart-row .qty-stepper .qty-value::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cart-row .qty-stepper.is-disabled { opacity: .5; pointer-events: none; }
.cart-row .cart-row-measure { font-size: 12px; color: var(--ink-faint); }

/* Сумма строки: текущая + старая зачёркнутая */
#basket-root .cart-row .cart-row-sum {
  display: flex; flex-direction: column; align-items: flex-end; gap: 2px;
}
.cart-row .cart-row-sum-old {
  font-size: 13px; color: var(--ink-faint); text-decoration: line-through; font-weight: 600;
}

/* Уведомления внутри строки (недоступен / отложен / предупреждения) */
.cart-row .cart-row-note {
  position: relative; margin-top: 10px; padding: 8px 30px 8px 12px;
  border-radius: 10px; background: var(--well); color: var(--ink-soft); font-size: 13px;
}
.cart-row .cart-row-note-warn { background: var(--o-soft); color: var(--o2); }
.cart-row .cart-row-note a { color: inherit; text-decoration: underline; }
.cart-row .cart-row-note-close {
  position: absolute; top: 5px; right: 8px; border: none; background: none;
  cursor: pointer; font-size: 16px; line-height: 1; color: inherit;
}

/* Оверлей загрузки строки */
.cart-row .cart-row-overlay {
  position: absolute; inset: 0; z-index: 3;
  background: rgba(255, 255, 255, .55); border-radius: var(--r-lg);
}

/* Строка «товар удалён — восстановить» */
.cart-row.cart-row-removed { display: block; }
.cart-row .cart-row-restore {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; flex-wrap: wrap;
}
.cart-row .cart-row-restore-actions { display: flex; align-items: center; gap: 14px; }
.cart-row .cart-row-restore-link { color: var(--g2); font-weight: 700; text-decoration: none; }
.cart-row .cart-row-restore-link:hover { color: var(--g1); }
.cart-row .cart-row-restore-close {
  border: none; background: none; cursor: pointer; color: var(--ink-faint);
  display: grid; place-items: center; padding: 4px;
}

/* Верхнее предупреждение корзины */
.cart-warning {
  position: relative; margin-bottom: 14px; padding: 14px 42px 14px 16px;
  border-radius: var(--r-lg); background: var(--o-soft); color: var(--o2); font-size: 14px;
}
.cart-warning-close {
  position: absolute; top: 10px; right: 15px; cursor: pointer; font-size: 22px; line-height: 1;
}

/* Фильтр: ничего не найдено */
.basket-search-not-found { padding: 28px; text-align: center; color: var(--ink-faint); }
.basket-search-not-found-text { font-size: 15px; }

/* Обёртка из total-шаблона — прозрачна для раскладки */
.cart-summary .cart-summary-inner { display: block; }

/* Применённый промокод */
.cart-coupon-applied { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; }
.cart-coupon-chip {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding: 8px 12px; border-radius: 10px; background: var(--g-soft); color: var(--g2); font-size: 13.5px;
}
.cart-coupon-chip-error { background: var(--o-soft); color: var(--o2); }
.cart-coupon-chip-del {
  border: none; background: none; cursor: pointer; color: inherit; font-size: 16px; line-height: 1; flex: none;
}

/* Кнопка оформления в неактивном состоянии */
.cart-checkout-btn.disabled { opacity: .5; pointer-events: none; }

/* End */
/* /local/templates/pennington-2.0/components/bitrix/sale.basket.basket/cart/style.css?17828911635645 */
