/* ===== Base qty UI ===== */
.loop-qty-wrap{display:flex;align-items:center;gap:.35rem;margin-bottom:.45rem}
.loop-qty{
  width:48px;height:28px;font-size:15px;line-height:28px;
  text-align:center;padding:0;margin:0;border:1px solid #000;
  background:#fff !important;color:#000 !important;-webkit-text-fill-color:#000 !important;
  caret-color:#000;
}
.loop-qty-btn{
  border:none;background:transparent;color:#000;font-size:17px;
  padding:0 .3rem;cursor:pointer;height:28px;display:flex;align-items:center;justify-content:center
}
.loop-qty-view{display:none}

/* Когда товара нет (или лимит = 0): блокируем ТОЛЬКО qty и +/- */
.loop-qty-wrap.is-disabled .loop-qty,
.loop-qty-wrap.is-disabled .loop-qty-btn{
  opacity:.45; pointer-events:none;
}

/* Кнопка (рамка/фон темы оставляем, но центруем содержимое) */
.products .add_to_cart_button,
.products .added_to_cart{border:1px solid #8B4513 !important;box-sizing:border-box;background:#ede9ef}
.products .add_to_cart_button.added:after{content:none !important}
.added_to_cart.wc-forward{display:none!important}

/* Цвета */
.products .woocommerce-loop-product__title{color:#8B4513!important}
.products .price,.products .woocommerce-Price-amount{color:#000!important}

/* Остаток рядом с ценой */
.loop-stock-top{
  display:inline-block;margin-left:8px;font-size:12px;vertical-align:baseline;white-space:nowrap
}
.loop-stock-top.in{color:#2e7d32}
.loop-stock-top.pre{color:#8B4513}
.loop-stock-top.out{color:#c62828}
@media (max-width:430px){
  .loop-stock-top{display:block;margin-left:0;margin-top:2px}
}

/* Планшеты */
@media (max-width:768px){
  .loop-qty-wrap{gap:.25rem;margin-bottom:.35rem}
  .loop-qty{width:40px;height:24px;font-size:13px;line-height:24px}
  .loop-qty-btn{font-size:15px;height:24px;padding:0 .25rem}
}

/* Мобилки: показываем span, скрываем input */
@media (max-width:430px){
  .loop-qty-wrap{gap:.10rem;align-items:center}
  .loop-qty{display:none !important}
  .loop-qty-view{
    display:inline-block;width:auto;min-width:14px;text-align:center;
    font-size:12px;line-height:20px;color:#000;border:1px solid #000;background:#fff;
    height:20px;margin:0;padding:0 1px
  }
  .loop-qty-btn{font-size:12px;height:20px;padding:0 .1rem}
}
@media (max-width:360px){
  .loop-qty-view{font-size:11px;line-height:18px;height:18px;min-width:12px}
  .loop-qty-btn{font-size:11px;height:18px}
}

/* Заблокированная кнопка */
.products .add_to_cart_button.disabled,
.products .add_to_cart_button:disabled{opacity:.55;cursor:not-allowed}

/* ===== Ряд покупки: qty + кнопка ===== */
.loop-buy-row{display:flex;align-items:center;gap:.5rem;margin-top:.35rem}
.loop-buy-row .loop-qty-wrap{margin-bottom:0}

/* Кнопка в ряду: центровка + зазор под знак (N) */
.loop-buy-row .add_to_cart_button,
.loop-qty-wrap + .add_to_cart_button,
.loop-buy-row [data-product_id].button,
.loop-qty-wrap + [data-product_id].button,
.loop-buy-row [data-product_id].ajax_add_to_cart,
.loop-qty-wrap + [data-product_id].ajax_add_to_cart,
.loop-buy-row a.button,
.loop-qty-wrap + a.button,
.loop-buy-row button.button,
.loop-qty-wrap + button.button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:28px !important;
  line-height:1 !important;
  padding:0 .75rem !important;
  white-space:nowrap;
  gap:.40rem;
}

/* SVG‑иконка тележки через ::before (берёт цвет из currentColor) */
.loop-buy-row .add_to_cart_button::before,
.loop-qty-wrap + .add_to_cart_button::before,
.loop-buy-row [data-product_id].button::before,
.loop-qty-wrap + [data-product_id].button::before,
.loop-buy-row [data-product_id].ajax_add_to_cart::before,
.loop-qty-wrap + [data-product_id].ajax_add_to_cart::before,
.loop-buy-row a.button::before,
.loop-qty-wrap + a.button::before,
.loop-buy-row button.button::before,
.loop-qty-wrap + button.button::before{
  content:"";
  display:inline-block;
  width:1.1em;height:1.1em;
  background:no-repeat center/contain url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'>\
<circle cx='9' cy='20' r='1.5'/>\
<circle cx='19' cy='20' r='1.5'/>\
<path d='M2 3h3l2.5 12h11l2-9H6'/>\
</svg>");
}

.add_to_cart_button.disabled::before,
.add_to_cart_button:disabled::before{opacity:.6}

@media (max-width:430px){
  .loop-buy-row{gap:.35rem}
  .loop-buy-row .add_to_cart_button,
  .loop-qty-wrap + .add_to_cart_button,
  .loop-buy-row [data-product_id].button,
  .loop-qty-wrap + [data-product_id].button,
  .loop-buy-row [data-product_id].ajax_add_to_cart,
  .loop-qty-wrap + [data-product_id].ajax_add_to_cart,
  .loop-buy-row a.button,
  .loop-qty-wrap + a.button,
  .loop-buy-row button.button,
  .loop-qty-wrap + button.button{
    height:20px !important;line-height:1 !important;padding:0 .55rem !important;font-size:14px;gap:.35rem
  }
  .loop-buy-row .add_to_cart_button::before,
  .loop-qty-wrap + .add_to_cart_button::before,
  .loop-buy-row [data-product_id].button::before,
  .loop-qty-wrap + [data-product_id].button::before,
  .loop-buy-row [data-product_id].ajax_add_to_cart::before,
  .loop-qty-wrap + [data-product_id].ajax_add_to_cart::before,
  .loop-buy-row a.button::before,
  .loop-qty-wrap + a.button::before,
  .loop-buy-row button.button::before,
  .loop-qty-wrap + button.button::before{
    width:1em;height:1em
  }
}
/* --- выравниваем qty + кнопку в один ряд в каталоге --- */

/* когда JS-обёртка есть */
.loop-buy-row{display:flex;align-items:center;gap:.5rem;margin-top:.35rem}
.loop-buy-row .add_to_cart_button{display:inline-flex !important; width:auto !important;}
.loop-buy-row .button{display:inline-flex !important; width:auto !important;}

/* страховка: если обёртки нет, держим рядом по "соседству" */
.products .product .loop-qty-wrap,
.products li.product .loop-qty-wrap{display:inline-flex; vertical-align:middle; margin-right:.5rem;}
.products .product .loop-qty-wrap + .add_to_cart_button,
.products li.product .loop-qty-wrap + .add_to_cart_button,
.products .product .loop-qty-wrap + .button,
.products li.product .loop-qty-wrap + .button{
  display:inline-flex !important;
  width:auto !important;
  vertical-align:middle;
}

/* чтобы тема не растягивала кнопку на всю ширину */
.products .add_to_cart_button,
.products .button{width:auto !important;}

/* PDP — как сейчас: аккуратный блок */
.single-product .slu-stock-box{
  border:1px dashed #e0e0e0;
  padding:8px 10px;
  border-radius:6px;
  background:#fafafa;
  font-size:14px;
  color:#333;
  margin:10px 0 6px;
}

/* Каталог — компактно и без рамок */
.products .slu-stock-mini{
  border:0;
  padding:0;
  margin-top:6px;
  background:transparent;
  font-size:12px;
  line-height:1.25;
  color:#2e7d32;              /* зелёная строка */
}
.products .slu-stock-mini div{margin:0 0 2px}
.products .slu-stock-mini strong{color:#333; font-weight:600}

/* На маленьких экранах ещё компактнее */
@media (max-width:480px){
  .products .slu-stock-mini{font-size:11px;margin-top:4px}
}

/* ===== Шапка: селекторы списания/склада рядом с логотипом ===== */
.site-branding{
  display:flex;
  align-items:center;
  gap:12px;
}

/* Контейнер с подписью "Списание:" и двумя select */
.pc-alloc{
  display:flex;
  align-items:center;
  gap:8px;
  font:14px/1.2 system-ui;
}
.pc-alloc small{ color:#666; }

.pc-alloc select{
  max-height:34px;
  padding:4px 8px;
  line-height:1.2;
  min-width:0;            /* не распираем контейнер */
}

/* телефоны */
@media (max-width:480px){
  .site-branding{ gap:8px; }

  .pc-alloc{ gap:6px; }
  .pc-alloc small{ font-size:12px; }

  .pc-alloc select{
    font-size:12px;
    height:32px;
    padding:0 22px 0 8px; /* ужимаем внутренние отступы */
  }

  /* чуть уменьшим сам заголовок/логотип "paint" */
  .site-header .site-title a,
  .site-header .main-title a,
  .site-header .site-branding .site-title{
    font-size:16px !important;
    line-height:1.2;
  }
}

/* очень узкие экраны — селекты друг под другом */
@media (max-width:360px){
  .pc-alloc{
    flex-direction:column;
    align-items:stretch;
    gap:6px;
  }
  .pc-alloc > *{ width:100%; }
  .pc-alloc small{ display:none; } /* по желанию: скрыть слово "Списание:" */
}

/* экстремально узкие (если нужно ещё меньше шрифт названия) */
@media (max-width:320px){
  .site-header .site-title a,
  .site-header .main-title a,
  .site-header .site-branding .site-title{
    font-size:14px !important;
  }
}

/* страховка: позволяем перенос в очень тесных шапках */
@media (max-width:400px){
  .site-branding{ flex-wrap: wrap; }
  .pc-alloc{ flex-wrap: wrap; }
  .pc-alloc select{ max-width: 100%; }
}

/* косметика для мобильных Safari/Chrome */
.pc-alloc select{
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff; /* избегаем серого iOS */
}