/* =============================================
   SportsLegion — WC templates CSS
   Карточки каталога + карусель похожих товаров
   ============================================= */

/* ── Карточка каталога (.sl-card) ─────────── */

/* Убираем clearfix-псевдоэлементы WC/Astra — они дают пустое место в grid */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
ul.products::before,
ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
  content: none !important;
  display: none !important;
}

/* Селектор работает и на shop (с .woocommerce на body), и на главной (где этого класса нет) */
.woocommerce ul.products,
ul.products.sl-hits-grid,
ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 8px !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
@media (min-width: 640px) {
  .woocommerce ul.products,
  ul.products.sl-hits-grid,
  ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 12px !important;
  }
}
@media (min-width: 1024px) {
  .woocommerce ul.products,
  ul.products.sl-hits-grid,
  ul.products {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px !important;
  }
}
@media (min-width: 1280px) {
  .woocommerce ul.products,
  ul.products.sl-hits-grid,
  ul.products {
    grid-template-columns: repeat(5, 1fr) !important;
  }
}

.woocommerce ul.products li.product,
.woocommerce ul.products li.sl-card,
ul.products li.product,
ul.products li.sl-card {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: none !important;
}

.sl-card__inner {
  display: flex;
  flex-direction: column;
  background: var(--bg-elev);
  border: 1px solid var(--border-soft);
  border-radius: var(--r-lg);
  /* overflow: hidden убран — он обрезал размеры в карусели */
  transition: border-color .15s, transform .2s;
  height: 100%;
  color: var(--text);
  text-decoration: none;
  position: relative; /* для absolute-плашки размеров */
}
.sl-card__inner:hover {
  border-color: var(--accent);
  transform: translateY(-2px);
}

.sl-card__img {
  aspect-ratio: 1;
  background: var(--bg-elev-2);
  background-size: cover;
  background-position: center;
  position: relative;
  border-top-left-radius: calc(var(--r-lg) - 1px);
  border-top-right-radius: calc(var(--r-lg) - 1px);
  z-index: 0; /* не перекрывает sl-card-wl (z-index:20) */
}

.sl-card__badge {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 8px;
  font-family: var(--f-display);
  font-size: 10px;
  font-weight: 700;
  border-radius: 4px;
  line-height: 1.5;
}
.sl-card__badge--sale {
  background: var(--grad);
  color: #fff;
}
.sl-card__badge--new {
  background: #fff;
  color: #000;
}
.sl-card__badge--hit {
  background: var(--bg);
  color: var(--text);
  border: 1px solid var(--border);
}

.sl-card__body {
  padding: 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sl-card__name {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.sl-card__foot {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 6px;
  margin-top: auto;
  flex-wrap: wrap;
  overflow: hidden;
}
.sl-card__price-now {
  font-family: var(--f-display);
  font-size: clamp(16px, 4vw, 22px);
  font-weight: 700;
  color: var(--text);
  line-height: 1.1;
  white-space: nowrap;
}
.sl-card__price-old {
  font-size: clamp(11px, 2.5vw, 14px);
  color: var(--text-mute);
  text-decoration: line-through;
}
.sl-card__buy {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: var(--r-md);
  background: var(--grad);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  transition: filter .15s, transform .15s;
}
.sl-card__buy:hover {
  filter: brightness(1.15);
  transform: scale(1.05);
}
.sl-card__buy svg { width: 18px; height: 18px; }

/* ── Карусель похожих товаров ─────────────── */

/*
 * Структура:
 * .sl-related               (position:relative, padding: 0 60px 48px)
 *   .sl-related__head       (заголовок)
 *   .sl-related__carousel   (обёртка карусели — стрелки позиционируются к ней)
 *     .sl-related__swiper   (Swiper-контейнер, overflow:hidden)
 *     .sl-related__prev     (кнопка ← снаружи swiper)
 *     .sl-related__next     (кнопка → снаружи swiper)
 */

.sl-related {
  margin-top: 48px;
  padding: 0 0 48px;
}
.sl-related__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}
.sl-related__title {
  font-family: var(--f-display);
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 600;
  color: var(--text);
}

/* Обёртка для стрелок + карусели */
.sl-related__carousel {
  position: relative;
  padding: 0 56px;
}

.sl-related__swiper {
  position: relative;
  overflow: hidden !important;
}

/* Карточка внутри карусели */
.sl-related .swiper-slide {
  height: auto;
  display: flex !important;
}
.sl-related .swiper-slide > * {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.sl-related .swiper-slide .sl-card {
  height: 100%;
}
.sl-related .swiper-slide .sl-card__inner {
  height: 100%;
  flex: 1;
}
.sl-prod {
  display: flex;
  flex-direction: column;
  background: var(--bg-elev);
  border: 1px solid var(--border-soft);
  border-radius: var(--r-lg);
  overflow: hidden;
  transition: border-color .15s, transform .2s;
  height: 100%;
  color: var(--text);
  text-decoration: none;
}
.sl-prod:hover {
  border-color: var(--accent);
  transform: translateY(-2px);
}
.sl-prod__img {
  aspect-ratio: 1;
  background: var(--bg-elev-2);
  background-size: cover;
  background-position: center;
  position: relative;
}
.sl-prod__badge {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 8px;
  font-family: var(--f-display);
  font-size: 10px;
  font-weight: 700;
  border-radius: 4px;
  line-height: 1.5;
}
.sl-prod__badge--sale {
  background: var(--grad);
  color: #fff;
}
.sl-prod__body {
  padding: 12px;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sl-prod__name {
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.sl-prod__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  margin-top: auto;
  flex-wrap: wrap;          /* переносим если не влезает */
  min-width: 0;
}
.sl-prod__price-wrap {
  min-width: 0;
  flex: 1;
}
.sl-prod__price-now {
  font-family: var(--f-display);
  font-size: clamp(13px, 3.5vw, 16px);
  font-weight: 700;
  color: var(--text);
  white-space: nowrap;
}
.sl-prod__price-old {
  font-size: 11px;
  color: var(--text-mute);
  text-decoration: line-through;
}
.sl-prod__buy {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: var(--r-md);
  background: var(--grad);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  transition: filter .15s, transform .15s;
}
.sl-prod__buy:hover { filter: brightness(1.15); transform: scale(1.05); }
.sl-prod__buy svg { width: 18px; height: 18px; }
.sl-prod__out {
  font-size: 11px;
  color: var(--text-mute);
}

/* Кнопки карусели — позиционируются к .sl-related__carousel */
.sl-related__prev,
.sl-related__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--bg-elev-2);
  border: 1px solid var(--border);
  color: var(--text);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background .15s, border-color .15s;
}
.sl-related__prev { left: 0; }
.sl-related__next { right: 0; }
.sl-related__prev:hover,
.sl-related__next:hover {
  background: var(--grad);
  border-color: transparent;
  color: #fff;
}
.sl-related__prev svg,
.sl-related__next svg { width: 20px; height: 20px; }
.sl-related__prev.swiper-button-disabled,
.sl-related__next.swiper-button-disabled { opacity: 0.3; cursor: default; }

/* Mobile: убираем боковой padding карусели, стрелки внутрь */
@media (max-width: 767px) {
  .sl-related__carousel {
    padding: 0 48px;
  }
  .sl-related__prev { left: 0; }
  .sl-related__next { right: 0; }
}

/* Фикс: убрать старые WC стили из related */
.woocommerce .related ul.products,
.woocommerce .upsells ul.products {
  display: block !important;
}

/* Бейдж на странице товара */
.woocommerce span.onsale {
  background: var(--grad) !important;
  color: #fff !important;
  border-radius: 6px !important;
  padding: 3px 10px !important;
  font-family: var(--f-display) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  min-width: unset !important;
  min-height: unset !important;
  line-height: 1.5 !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5) !important;
  -webkit-text-fill-color: #fff !important;
}


/* ── Лупа на странице товара ──────────────── */
.woocommerce-product-gallery {
  position: relative;
}
a.woocommerce-product-gallery__trigger {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 40px !important;
  height: 40px !important;
  background: rgba(18,4,38,0.85) !important;
  border: 1px solid rgba(215,108,157,0.5) !important;
  border-radius: 50% !important;
  z-index: 9 !important;
  overflow: hidden !important;
  text-indent: -999px !important;
  font-size: 0 !important;
}
a.woocommerce-product-gallery__trigger::before {
  content: none !important;
}
a.woocommerce-product-gallery__trigger::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 16px !important;
  height: 16px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  text-indent: 0 !important;
  font-size: 0 !important;
}
a.woocommerce-product-gallery__trigger img {
  display: none !important;
}

/* ── Бейдж распродажи ─────────────────────── */
.woocommerce span.onsale,
.woocommerce .product .onsale {
  background: linear-gradient(135deg, #d76c9d 0%, #843faf 55%, #280052 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-radius: 6px !important;
  padding: 3px 10px !important;
  font-family: var(--f-display) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  min-width: unset !important;
  min-height: unset !important;
  line-height: 1.5 !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.6) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
/* Бейдж Astra override */
.ast-onsale-card,
.ast-on-card-button.ast-onsale-card {
  background: linear-gradient(135deg, #d76c9d 0%, #843faf 55%, #280052 100%) !important;
  background-color: #d76c9d !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-radius: 6px !important;
  opacity: 1 !important;
  visibility: visible !important;

/* ── Уборка возможных тестовых/отладочных красных полосок ───── */
/* Иногда плагины или Astra добавляют debug-line на body или html */
body > .debug,
body > [data-debug],
html > .debug-line,
.debug-strip { display: none !important; }

/* ── Карточка: обновления под новую разметку (v2) ─────────────── */

/* Ссылки внутри карточки — снимаем underline, наследуем цвет */
.sl-card__media-link,
.sl-card__name-link,
.sl-prod__media-link,
.sl-prod__name-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.sl-card__media-link { position: relative; }

/* Hover-плашка с размерами для вариативных товаров */
.sl-card__sizes-hover {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 10px 12px;
  background: linear-gradient(to top, rgba(10, 4, 24, 0.95) 0%, rgba(10, 4, 24, 0.85) 70%, transparent 100%);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease;
  pointer-events: none;
}
.sl-card:hover .sl-card__sizes-hover,
.sl-card__media-link:focus-visible .sl-card__sizes-hover {
  opacity: 1;
  transform: translateY(0);
}
.sl-card__sizes-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  margin-right: 4px;
}
.sl-card__size-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 22px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 4px;
  backdrop-filter: blur(4px);
}

/* Кнопка "Нет в наличии" текст */
.sl-card__out,
.sl-prod__out {
  font-size: 11px;
  color: var(--text-mute);
  white-space: nowrap;
}

/* Иконки кнопки покупки: + и галочка для анимации */
.sl-card__buy,
.sl-prod__buy {
  position: relative;
  text-decoration: none;
}
.sl-card__buy-icon,
.sl-card__buy-check {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  transition: opacity .2s ease, transform .25s cubic-bezier(.34, 1.56, .64, 1);
}
.sl-card__buy-check {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.5);
}
/* Состояние "добавлено" — WooCommerce ставит класс .added */
.sl-card__buy.added .sl-card__buy-icon {
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.5);
}
.sl-card__buy.added .sl-card__buy-check {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

/* Спрятать дефолтную ссылку "Просмотр" от WC, которую он добавляет рядом */
.sl-card .added_to_cart {
  display: none !important;
}

/* Не даём кнопке "+" получать text-decoration от <a> */
a.sl-card__buy,
a.sl-prod__buy {
  text-decoration: none !important;
}


/* Запрещаем Swiper лочить стрелки через .swiper-button-lock */
.sl-related__prev.swiper-button-lock,
.sl-related__next.swiper-button-lock {
  display: flex !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
.sl-related__prev.sl-nav-locked,
.sl-related__next.sl-nav-locked {
  display: flex !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}




/* ════════════════════════════════════════════════════════════
   v5 — Размеры в карточке как inline-блок (надёжно, без hover)
   ════════════════════════════════════════════════════════════ */

/* Плашка размеров — теперь ВНУТРИ sl-card__body, между названием и ценой. */
.sl-card__vars {
  display: block;
  padding: 4px 0 6px;
  background: transparent;
  border: none;
  position: static;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  box-sizing: border-box;
}
/* Картинка → body без лишнего зазора */
.sl-card .sl-card__media-link + .sl-card__body {
  padding-top: 12px;
}
.sl-card .sl-card__vars + .sl-card__body {
  padding-top: 0;
}
.sl-card__vars-label {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-mute);
  margin-bottom: 6px;
}
.sl-card__vars-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
}
.sl-card__var-chip {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 24px;
  padding: 0 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--text);
  background: var(--bg-elev-2);
  border: 1px solid var(--border-soft);
  border-radius: 4px;
  cursor: pointer;
  transition: background .15s, border-color .15s, color .15s, transform .1s;
  line-height: 1;
  font-family: inherit;
  outline: none;
  user-select: none;
}
.sl-card__var-chip:hover:not(:disabled):not(.is-oos) {
  border-color: var(--brand-pink);
  color: var(--brand-pink);
}
.sl-card__var-chip.is-selected {
  background: var(--grad);
  border-color: transparent;
  color: #fff;
}
.sl-card__var-chip.is-oos,
.sl-card__var-chip:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  text-decoration: line-through;
  pointer-events: none;
}

/* Тряска при попытке "+" без выбранного размера */
@keyframes sl-vars-shake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-5px); }
  40% { transform: translateX(5px); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}
.sl-card__vars--shake {
  animation: sl-vars-shake .5s ease;
}
.sl-card__vars--shake .sl-card__var-chip {
  border-color: #ff5577;
}

.sl-card__buy.is-loading { pointer-events: none; opacity: 0.6; }

.sl-card__media-link { margin-bottom: 0; }


/* ════════════════════════════════════════════════════════════
   v5 — Каталог (archive-product) layout
   ════════════════════════════════════════════════════════════ */

.sl-shop {
  padding: 32px 0 80px;
  min-height: 60vh;
}
/* На мобильном уменьшаем верхний отступ: 32px поверх sticky-шапки (и WP
   admin bar для залогиненных) давали ощутимую пустую полосу над кнопкой
   «Фильтры»/первым товаром. 12px достаточно для воздуха. */
@media (max-width: 767px) {
  .sl-shop { padding-top: 12px; }
}
.sl-shop__container {
  /* .container уже задан в основных стилях; здесь только overrides */
}
.sl-shop__head {
  margin-bottom: 32px;
}
.sl-shop__title {
  font-family: var(--f-display);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 700;
  color: var(--text);
  margin: 0;
}

/* Двух-колоночный layout: фильтры + контент */
.sl-shop__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media (min-width: 900px) {
  .sl-shop__layout {
    grid-template-columns: 240px 1fr;
    gap: 28px;
  }
}
@media (min-width: 1280px) {
  .sl-shop__layout {
    grid-template-columns: 280px 1fr;
    gap: 32px;
  }
}

.sl-shop__sidebar {
  display: none;
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden !important;
  overflow-y: visible;
}
/* Не даём контенту FDP выходить за пределы sidebar */
.sl-shop__sidebar .fdp-sidebar {
  overflow-x: hidden !important;
  overflow-y: visible;
}
.sl-shop__sidebar .fdp-chk-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.sl-shop__sidebar .fdp-chk-row label {
  overflow: hidden;
  min-width: 0;
}
.sl-shop__sidebar .fdp-sec__pad {
  overflow: hidden;
}
.sl-shop__sidebar .fdp-search-input,
.sl-shop__sidebar .fdp-price-field,
.sl-shop__sidebar .fdp-price-inputs {
  max-width: 100%;
  box-sizing: border-box;
}
/* FDP sidebar внутри нашего sidebar — 100% ширины родителя, без фикса */
.sl-shop__sidebar .fdp-sidebar {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}
@media (min-width: 900px) {
  .sl-shop__sidebar { display: block; }
}

.sl-shop__widget {
  background: var(--bg-elev);
  border: 1px solid var(--border-soft);
  border-radius: var(--r-lg);
  margin-bottom: 16px;
  overflow: hidden;
}
.sl-shop__widget-inner { padding: 16px; }
.sl-shop__widget-title {
  font-family: var(--f-display);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text);
  margin: 0 0 12px;
}

.sl-shop__content {
  min-width: 0; /* для grid-overflow */
}
/* Убираем любое пустое место между topbar и товарами */
.sl-shop__content > *:empty:not(ul) {
  display: none !important;
}
.sl-shop__content > .fdp-topbar {
  margin-bottom: 16px !important;
  margin-top: 0 !important;
}
.sl-shop__content > ul.products {
  margin-top: 0 !important;
}
/* Внутри каталога с sidebar максимум 4 колонки (при sidebar 280px ширины не хватает на 5) */
.sl-shop__content ul.products {
  grid-template-columns: repeat(2, 1fr) !important;
}
@media (min-width: 640px) {
  .sl-shop__content ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 1024px) {
  .sl-shop__content ul.products { grid-template-columns: repeat(4, 1fr) !important; }
}

.sl-shop__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 12px;
}
.sl-shop__toolbar .woocommerce-result-count {
  color: var(--text-mute);
  font-size: 14px;
  margin: 0;
}
.sl-shop__toolbar .woocommerce-ordering {
  margin: 0;
}
.sl-shop__toolbar select {
  background: var(--bg-elev);
  border: 1px solid var(--border-soft);
  color: var(--text);
  padding: 8px 32px 8px 14px;
  border-radius: var(--r-md);
  font-size: 14px;
  font-family: inherit;
}

/* Пагинация WC */
.sl-shop__content .woocommerce-pagination {
  margin-top: 32px;
}
.sl-shop__content .woocommerce-pagination ul.page-numbers {
  display: flex;
  gap: 6px;
  justify-content: center;
  list-style: none;
  padding: 0;
  border: none !important;
}
.sl-shop__content .page-numbers li {
  margin: 0;
}
.sl-shop__content .page-numbers a,
.sl-shop__content .page-numbers span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  background: var(--bg-elev);
  border: 1px solid var(--border-soft);
  border-radius: var(--r-md);
  color: var(--text);
  text-decoration: none;
  font-weight: 500;
}
.sl-shop__content .page-numbers .current {
  background: var(--grad);
  border-color: transparent;
  color: #fff;
}
.sl-shop__content .page-numbers a:hover {
  border-color: var(--brand-pink);
  color: var(--brand-pink);
}


/* ════════════════════════════════════════════════════════════
   v6 — Стили WC виджетов фильтров каталога
   ════════════════════════════════════════════════════════════ */

/* Виджет фильтра цены */
.sl-shop__sidebar .widget_price_filter .price_slider_wrapper {
  margin-top: 8px;
}
.sl-shop__sidebar .widget_price_filter .price_slider {
  background: var(--bg-elev-2);
  height: 4px;
  border-radius: 2px;
  margin-bottom: 18px;
  position: relative;
}
.sl-shop__sidebar .widget_price_filter .ui-slider-range {
  background: var(--grad);
  position: absolute;
  height: 100%;
  border-radius: 2px;
}
.sl-shop__sidebar .widget_price_filter .ui-slider-handle {
  width: 16px !important;
  height: 16px !important;
  background: #fff !important;
  border: 2px solid var(--brand-pink) !important;
  border-radius: 50% !important;
  margin-left: -8px !important;
  top: -6px !important;
  cursor: grab;
  outline: none;
}
.sl-shop__sidebar .widget_price_filter .price_slider_amount {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  color: var(--text);
  flex-wrap: wrap;
  gap: 8px;
}
.sl-shop__sidebar .widget_price_filter .price_slider_amount .button {
  background: var(--grad);
  color: #fff;
  border: none;
  padding: 6px 14px;
  border-radius: var(--r-md);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}
.sl-shop__sidebar .widget_price_filter .price_label {
  color: var(--text);
}

/* Виджет навигации по атрибутам */
.sl-shop__sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-list li,
.sl-shop__sidebar ul.product-categories li {
  margin: 0;
  padding: 6px 0;
  border: none;
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-list li a,
.sl-shop__sidebar ul.product-categories li a {
  color: var(--text);
  text-decoration: none;
  font-size: 13px;
  transition: color .15s;
  display: inline-block;
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-list li a:hover {
  color: var(--brand-pink);
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-list li.chosen a {
  color: var(--brand-pink);
  font-weight: 600;
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-list li.chosen a::before {
  content: '✕ ';
  color: var(--brand-pink);
  margin-right: 4px;
}
.sl-shop__sidebar .count {
  color: var(--text-mute);
  font-size: 11px;
  margin-left: 4px;
}

/* Активные фильтры */
.sl-shop__sidebar .woocommerce-widget-layered-nav-filters ul li a {
  background: rgba(215, 108, 157, 0.15);
  color: var(--brand-pink);
  padding: 4px 10px;
  border-radius: var(--r-md);
  margin: 0 4px 4px 0;
  display: inline-block;
  font-size: 12px;
}
.sl-shop__sidebar .woocommerce-widget-layered-nav-filters ul li a:hover {
  background: rgba(215, 108, 157, 0.25);
}


/* Smart Search плагин — обёртка чтобы он попадал в наш layout шапки */
.search--smart {
  flex: 1;
  max-width: 720px;
  margin: 0 24px;
  position: relative;
}
.search--smart .sws-wrapper {
  width: 100%;
}
.search--smart .sws-input,
.search.search--smart .sws-wrapper .sws-input {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--border-soft) !important;
  color: var(--text) !important;
  font-family: inherit !important;
  border-radius: 999px !important;
  /* Высота диктуется padding + font-size, не height — поэтому фиксируем оба */
  padding: 12px 48px 12px 20px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  height: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.search--smart .sws-input::placeholder {
  color: var(--text-mute) !important;
}


/* ════════════════════════════════════════════════════════════
   v7 — Flash-состояния кнопки "+" (вместо toast)
   ════════════════════════════════════════════════════════════ */

.sl-card__buy {
  transition: background .3s, box-shadow .3s, transform .15s !important;
  position: relative;
}

/* Успех — зелёный + пульс */
.sl-card__buy.sl-flash-success {
  background: linear-gradient(135deg, #34c759 0%, #22a043 100%) !important;
  box-shadow: 0 0 0 4px rgba(52, 199, 89, 0.25) !important;
  animation: sl-flash-pulse .5s ease;
}
.sl-card__buy.sl-flash-success svg {
  color: #fff !important;
  stroke: #fff !important;
}

/* Ошибка — красный + тряска */
.sl-card__buy.sl-flash-error {
  background: linear-gradient(135deg, #ff3b30 0%, #d92e1f 100%) !important;
  box-shadow: 0 0 0 4px rgba(255, 59, 48, 0.25) !important;
  animation: sl-flash-shake .4s ease;
}
.sl-card__buy.sl-flash-error svg {
  color: #fff !important;
  stroke: #fff !important;
}

@keyframes sl-flash-pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.15); }
  100% { transform: scale(1); }
}
@keyframes sl-flash-shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  50% { transform: translateX(4px); }
  75% { transform: translateX(-2px); }
}

/* Бейдж корзины — анимация появления */
.sl-cart-count {
  transition: transform .2s, opacity .2s;
}
.sl-cart-count[hidden] {
  display: none !important;
}


/* Пустой div уведомлений WC — убираем пустое место над товарами */
.sl-shop__content .woocommerce-notices-wrapper:empty,
.sl-shop__content .woocommerce-notices-wrapper {
  display: none !important;
}


/* ════════════════════════════════════════════════════════════
   WooCommerce — тёмная тема для форм и страниц аккаунта
   Astra ставит классы: woocommerce-page, woocommerce-account,
   woocommerce-checkout, woocommerce-cart на body.
   Контент обёрнут в div.woocommerce.
   ════════════════════════════════════════════════════════════ */

/* ── Инпуты — как поле "Поиск" в FDP ── */
.woocommerce input.input-text,
.woocommerce input.woocommerce-Input,
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="password"],
.woocommerce input[type="tel"],
.woocommerce input[type="number"],
.woocommerce input[type="url"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select:not(.fdp-sort),
.woocommerce-account .woocommerce input.input-text,
.woocommerce-account .woocommerce input[type="text"],
.woocommerce-account .woocommerce input[type="email"],
.woocommerce-account .woocommerce input[type="password"],
.woocommerce-account .woocommerce textarea,
.woocommerce-account .woocommerce select,
.woocommerce-EditAccountForm input.woocommerce-Input,
.woocommerce-EditAccountForm input[type="text"],
.woocommerce-EditAccountForm input[type="email"],
.woocommerce-EditAccountForm input[type="password"],
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout textarea,
.woocommerce-checkout select {
  background: rgba(255,255,255,.07) !important;
  background-color: rgba(255,255,255,.07) !important;
  border: 1.5px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  color: #f0eeff !important;
  font-family: 'Onest', 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  padding: 10px 14px !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  transition: border-color .2s !important;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce-account input:focus,
.woocommerce-account textarea:focus {
  border-color: #7c3aed !important;
  box-shadow: 0 0 0 3px rgba(124,58,237,.15) !important;
}
.woocommerce input::placeholder,
.woocommerce textarea::placeholder {
  color: rgba(240,238,255,.4) !important;
}

/* ── Белые блоки ── */
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-Message,
.woocommerce-MyAccount-content table.shop_table,
.woocommerce-MyAccount-content .woocommerce-Addresses address,
.woocommerce-MyAccount-content .col-1,
.woocommerce-MyAccount-content .col-2,
.woocommerce-MyAccount-content .woocommerce-order-details,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-notices-wrapper + div {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 16px !important;
  color: #f0eeff !important;
  padding: 20px !important;
}
.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.shop_table td {
  background: transparent !important;
  border-color: rgba(255,255,255,.08) !important;
  color: #f0eeff !important;
}

/* ── Labels и текст ── */
.woocommerce label,
.woocommerce-account label,
.woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend {
  color: #f0eeff !important;
}

/* ── Навигация аккаунта ── */
.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
}
.woocommerce-MyAccount-navigation ul li a {
  color: rgba(240,238,255,.5) !important;
  text-decoration: none !important;
  border: none !important;
}
.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
  color: #f0eeff !important;
}
/* Убираем линии/бордеры в навигации */
.woocommerce-MyAccount-navigation ul li {
  border: none !important;
  outline: none !important;
}

/* ── Кнопки WC ── */
.woocommerce button[type="submit"],
.woocommerce input[type="submit"],
.woocommerce .button:not(.fdp-apply-btn),
.woocommerce-Button,
.woocommerce a.button {
  background: linear-gradient(135deg, #7c3aed, #db2777) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  cursor: pointer !important;
  text-decoration: none !important;
  display: inline-block !important;
}
.woocommerce button[type="submit"]:hover,
.woocommerce .button:hover,
.woocommerce a.button:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(124,58,237,.35) !important;
}

/* ── Fieldset/legend ── */
.woocommerce fieldset {
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 12px !important;
  padding: 16px !important;
}

/* ══════════════════════════════════════════════════════
   SL WISHLIST — кнопка на фото (карточки каталога)
   Позиционируется в sl-card__inner (position:relative, БЕЗ overflow:hidden)
   ══════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════
   Сердечко избранного на карточке — ВСЕГДА ВИДИМО
   Белое сердечко на тёмном полупрозрачном фоне с тенью
   ═══════════════════════════════════════════════════════ */
.sl-card-wl {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 20;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  /* Тёмный фон + сильная тень + белая обводка */
  background: rgba(10, 5, 25, 0.85);
  box-shadow:
    0 3px 14px rgba(0, 0, 0, 0.8),
    0 0 0 2.5px rgba(255, 255, 255, 0.4);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  /* ВСЕГДА ВИДИМО — без opacity:0 */
  opacity: 1;
  pointer-events: auto;
  transition: background .2s, transform .15s, box-shadow .2s;
}
.sl-card-wl:hover {
  background: rgba(220, 38, 127, 0.25);
  box-shadow: 0 2px 12px rgba(220, 38, 127, 0.4), 0 0 0 2px rgba(220, 38, 127, 0.5);
  transform: scale(1.12);
}
.sl-card-wl.slwl-active {
  background: rgba(220, 38, 127, 0.2);
  box-shadow: 0 2px 12px rgba(220, 38, 127, 0.5), 0 0 0 2px #e8185e;
}
.sl-card-wl.slwl-active svg {
  fill: #e8185e !important;
  stroke: #e8185e !important;
}
.sl-card-wl svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: #ffffff;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.5));
  transition: fill .2s, stroke .2s;
  flex-shrink: 0;
  display: block;
}


/* ── Кнопка-сердечко на странице товара ── */
a.sl-wl-btn, button.sl-wl-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.06) !important;
  cursor: pointer !important;
  transition: background .2s, border-color .2s, transform .15s !important;
  flex-shrink: 0 !important;
  /* Выравниваем по центру relative к форме корзины */
  vertical-align: middle !important;
  margin-left: 8px !important;
  /* Убираем отступы которые сдвигают вверх */
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}
a.sl-wl-btn:hover, button.sl-wl-btn:hover {
  background: rgba(220,38,127,.15) !important;
  border-color: rgba(220,38,127,.5) !important;
  transform: scale(1.08) !important;
}
a.sl-wl-btn.slwl-active, button.sl-wl-btn.slwl-active {
  background: rgba(220,38,127,.18) !important;
  border-color: rgba(220,38,127,.6) !important;
}
a.sl-wl-btn.slwl-active svg, button.sl-wl-btn.slwl-active svg {
  fill: #e8185e !important;
  stroke: #e8185e !important;
}
a.sl-wl-btn svg, button.sl-wl-btn svg {
  display: block;
  transition: fill .2s, stroke .2s !important;
}

/* ── Скрываем всё от YITH Wishlist если он ещё установлен ── */
.yith-wcwl-add-to-wishlist,
.yith-wcwl-add-button,
.yith-wcwl-wishlistexistsbrowse,
.yith-wcwl-wishlistaddedbrowse,
p.yith-wcwl-add-to-wishlist,
div.yith-wcwl-add-to-wishlist {
  display: none !important;
}


/* ══════════════════════════════════════════════════════════
   CHECKOUT — дополнительные исправления
   ══════════════════════════════════════════════════════════ */

/* ── Select2 (поле Населённый пункт и другие enhanced select) ── */
.select2-container--default .select2-selection--single,
.select2-container .select2-selection--single {
  background: rgba(255,255,255,.07) !important;
  border: 1.5px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  height: 42px !important;
  line-height: 42px !important;
  color: #f0eeff !important;
  outline: none !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #f0eeff !important;
  line-height: 42px !important;
  padding-left: 14px !important;
  padding-right: 30px !important;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: rgba(240,238,255,.4) !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 42px !important;
  right: 10px !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: rgba(240,238,255,.5) transparent transparent !important;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent rgba(240,238,255,.5) !important;
}
.select2-container--open .select2-dropdown {
  background: #1a1330 !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  color: #f0eeff !important;
}
.select2-container--default .select2-results__option {
  color: #f0eeff !important;
  padding: 8px 14px !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background: rgba(124,58,237,.35) !important;
  color: #fff !important;
}
.select2-container--default .select2-results__option[aria-selected=true] {
  background: rgba(124,58,237,.2) !important;
}
.select2-search--dropdown .select2-search__field {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 8px !important;
  color: #f0eeff !important;
  outline: none !important;
}
.select2-container--default.select2-container--focus .select2-selection--single {
  border-color: #7c3aed !important;
  box-shadow: 0 0 0 3px rgba(124,58,237,.15) !important;
}

/* ── Блок «Ваш заказ» — скругление и тёмный фон ── */
#order_review,
.woocommerce-checkout #order_review,
.woocommerce-checkout-review-order {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  color: #f0eeff !important;
}
#order_review table.shop_table,
.woocommerce-checkout-review-order-table {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: #f0eeff !important;
}
#order_review table.shop_table th,
#order_review table.shop_table td {
  background: transparent !important;
  color: #f0eeff !important;
  border-color: rgba(255,255,255,.1) !important;
}
#order_review h3 {
  color: #f0eeff !important;
}

/* ── Описание метода оплаты (белый блок) ── */
#payment .payment_box,
.woocommerce-checkout #payment .payment_box {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 10px !important;
  color: rgba(240,238,255,.75) !important;
  padding: 12px 16px !important;
  margin-top: 6px !important;
}
#payment .payment_box p,
.woocommerce-checkout #payment .payment_box p {
  color: rgba(240,238,255,.75) !important;
  margin: 0 !important;
}
#payment .payment_box::before {
  border-bottom-color: rgba(255,255,255,.06) !important;
}

/* ── Радио-кнопки методов оплаты ── */
#payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li {
  color: #f0eeff !important;
}
#payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
}



/* ══════════════════════════════════════════════════════
   SL WISHLIST — Single product
   ══════════════════════════════════════════════════════ */

/* form.cart — flex, всё в одну строку */
.single-product form.cart {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}
/* Сердечко — без негативных margin'ов, расстояние диктует gap родителя.
   Дополнительный margin-left добавляет визуальный воздух между В корзину и сердечком. */
.single-product form.cart button.sl-wl-btn,
.single-product form.cart .sl-wl-btn,
.single-product .woocommerce-variation-add-to-cart button.sl-wl-btn,
.single-product .variations_button button.sl-wl-btn {
  margin-left: 8px !important;
  flex-shrink: 0 !important;
}
.single-product form.cart .quantity { margin: 0 !important; flex-shrink: 0; }
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart button[type="submit"] { margin: 0 !important; flex-shrink: 0; }

/* На мобиле — больший gap для удобства тапа */
@media (max-width: 767px) {
  .single-product form.cart {
    gap: 16px !important;
    width: 100% !important;
  }
  /* div-обёртка вариаций (когда товар вариативный) — содержит quantity +
     В корзину + сердечко (сердечко рендерится через
     woocommerce_after_add_to_cart_button хук внутри этого div). */
  .single-product form.cart .woocommerce-variation-add-to-cart,
  .single-product form.cart .variations_button {
    display: flex !important;
    gap: 16px !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Сердечко справа после В корзину — заметный отступ.
     Высокая специфичность через body перебивает общий button.sl-wl-btn { margin:0 !important }.
     Селектор без `>` чтобы покрыть и случай когда сердечко находится
     внутри .woocommerce-variation-add-to-cart обёртки (для variation products). */
  body .single-product form.cart button.sl-wl-btn,
  body .single-product form.cart .sl-wl-btn,
  body .single-product .woocommerce-variation-add-to-cart button.sl-wl-btn,
  body .single-product .variations_button button.sl-wl-btn {
    margin-left: 8px !important;
  }
}

/* Кнопка-сердечко.
   margin не задаём здесь, чтобы контекстные правила (внутри form.cart,
   variation-add-to-cart) могли применить свой margin-left для отступа от
   соседних кнопок. */
button.sl-wl-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, rgba(124,58,237,.22), rgba(109,40,217,.22)) !important;
  border: 1.5px solid rgba(196,168,255,.3) !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
  transition: background .2s, border-color .2s, transform .15s !important;
}
button.sl-wl-btn:hover {
  background: rgba(220,38,127,.2) !important;
  border-color: rgba(220,38,127,.55) !important;
  transform: scale(1.06) !important;
}
button.sl-wl-btn.slwl-active {
  background: rgba(220,38,127,.25) !important;
  border-color: #e8185e !important;
}
button.sl-wl-btn.slwl-active svg {
  fill: #e8185e !important;
  stroke: #e8185e !important;
}
button.sl-wl-btn svg {
  pointer-events: none !important;
  display: block !important;
  transition: fill .2s, stroke .2s !important;
}


/* ══════════════════════════════════════════════════════
   WooCommerce уведомления — тёмный дизайн + крестик
   ══════════════════════════════════════════════════════ */
.woocommerce-error li,
.woocommerce .woocommerce-error,
.woocommerce-error,
ul.woocommerce-error {
  background: rgba(40, 10, 20, 0.95) !important;
  border: 1.5px solid rgba(255, 80, 80, 0.5) !important;
  border-radius: 14px !important;
  color: #f0eeff !important;
  padding: 14px 48px 14px 44px !important;
  margin: 0 0 16px !important;
  list-style: none !important;
  box-shadow: 0 4px 20px rgba(255,60,60,.15) !important;
  position: relative !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
.woocommerce-error::before,
ul.woocommerce-error::before {
  content: "⚠" !important;
  position: absolute !important;
  left: 16px !important;
  top: 15px !important;
  font-size: 16px !important;
  color: #ff8080 !important;
}
/* Кнопки внутри уведомления */
.woocommerce-error .button,
.woocommerce-error a.button {
  background: linear-gradient(135deg, #7c3aed, #6d28d9) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 30px !important;
  padding: 7px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  cursor: pointer !important;
  transition: opacity .2s !important;
  margin-left: 10px !important;
}
.woocommerce-error .button:hover { opacity: .82 !important; }

/* Кнопка закрытия (добавляется через JS) */
.sl-notice-close {
  position: absolute !important;
  top: 10px !important;
  right: 12px !important;
  background: none !important;
  border: none !important;
  color: rgba(240,238,255,.5) !important;
  font-size: 22px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  padding: 2px 4px !important;
  transition: color .15s !important;
}
.sl-notice-close:hover { color: #fff !important; }


/* ══════════════════════════════════════════════════════
   Поле поиска — единый дизайн на всех страницах
   ══════════════════════════════════════════════════════ */
.ast-search-box input[type="search"],
.search-field,
.ast-search-menu-icon .search-field,
#ast-search-form input.search-field,
.ast-header-search input[type="search"] {
  background: rgba(255,255,255,.07) !important;
  border: 1.5px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  color: #f0eeff !important;
  padding: 10px 16px !important;
}
.ast-search-box input[type="search"]::placeholder,
.search-field::placeholder {
  color: rgba(240,238,255,.4) !important;
}

/* ══════════════════════════════════════════════════════
   Корзина + Избранное — контейнер как в ЛК
   ══════════════════════════════════════════════════════ */
body.woocommerce-cart .site-content > .ast-container,
body.woocommerce-cart #primary,
body.woocommerce-cart .entry-content {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}
/* Страница избранного */
body:has(.slwl-page) .site-content > .ast-container,
body:has(.slwl-page) #primary {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* ── SWS Smart Search — force consistent dark theme on ALL pages ── */
.sws-wrapper,
.search--smart .sws-wrapper {
  position: relative !important;
}
input.sws-input,
.sws-input-wrap input,
.search--smart input.sws-input,
.search--smart .sws-input-wrap input {
  width: 100% !important;
  height: 48px !important;
  padding: 0 48px 0 20px !important;
  background: var(--bg-elev, rgba(255,255,255,.04)) !important;
  border: 1px solid var(--border, rgba(255,255,255,.08)) !important;
  border-radius: 999px !important;
  color: var(--text, #f0eeff) !important;
  font-size: 14px !important;
  outline: none !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  transition: border-color .15s, background .15s !important;
}
input.sws-input:focus,
.search--smart input.sws-input:focus {
  border-color: var(--accent, #7c3aed) !important;
  background: var(--bg-elev-2, rgba(255,255,255,.06)) !important;
}
input.sws-input::placeholder,
.search--smart input.sws-input::placeholder {
  color: var(--text-mute, rgba(240,238,255,.35)) !important;
}
/* SWS icon and clear button */
.sws-icon,
.sws-clear {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: none !important;
  border: none !important;
  color: var(--text-mute, rgba(240,238,255,.35)) !important;
  cursor: pointer !important;
}
.sws-icon {
  right: 14px !important;
  left: auto !important;
  width: 20px !important;
  height: 20px !important;
}
.sws-clear {
  right: 40px !important;
  font-size: 14px !important;
}
/* SWS dropdown */
.sws-dropdown {
  background: var(--bg-elev, #1a1525) !important;
  border: 1px solid var(--border, rgba(255,255,255,.08)) !important;
  border-radius: 0 0 12px 12px !important;
  color: var(--text, #f0eeff) !important;
}
.sws-dropdown a,
.sws-dropdown .sws-item {
  color: var(--text, #f0eeff) !important;
}
.sws-dropdown a:hover,
.sws-dropdown .sws-item:hover {
  background: rgba(124,58,237,.15) !important;
}

/* ── Wishlist button on product card ── */
.sl-card-wl--btn {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 20;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(10, 5, 25, .85);
  box-shadow: 0 3px 14px rgba(0,0,0,.8), 0 0 0 2.5px rgba(255,255,255,.4);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s, transform .15s;
}
.sl-card-wl--btn:hover {
  transform: scale(1.1);
}
.sl-card-wl__icon {
  pointer-events: none;
  display: block;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.5));
}
