/* Venergy listing v7 (26.10.2026): flex grid, equal cards, stepper, filters, tablet sidebar-stack, tight mobile gutters. Reversible: delete file + enqueue block. */
ul.products:not(.owl-carousel) { display:flex; flex-wrap:wrap; }
ul.products:not(.owl-carousel) > li.product { display:flex; }
ul.products:not(.owl-carousel) > li.product .product-item { flex:1; display:flex; flex-direction:column; width:100%; }
ul.products:not(.owl-carousel) > li.product .product-inner { flex:1; display:flex; flex-direction:column; }
ul.products:not(.owl-carousel) > li.product .product-info { flex:1; display:flex; flex-direction:column; }
body:not(.page-id-4366) .product-item .product-inner { background:#fff; border:1px solid #e5e5e5; border-radius:4px; padding-bottom:12px; }
body:not(.page-id-4366) .product-item:hover .product-inner { border-color:#ff2832; }
.product-item .product-info .price ins .amount,
.product-item .product-info .price > .amount { color:#ff2832; font-weight:700; }
.product-item .product-info .price del .amount { color:#999; font-weight:400; }
.product-item .product-info .price del,
.product-item .product-info .price ins { display:inline-block; white-space:nowrap; }
.flash-item.onsale.venergy-percent { background:#ff2832; color:#fff; font-weight:700; font-size:13px; line-height:1; padding:5px 9px; border-radius:3px; }
.venergy-buy-row { display:flex; gap:8px; margin-top:auto; align-items:stretch; }
.venergy-buy-row .add_to_cart_button { flex:1; margin-top:0 !important; display:flex; align-items:center; justify-content:center; }
.venergy-qty { display:inline-flex; border:1px solid #ddd; border-radius:3px; overflow:hidden; flex:0 0 auto; align-self:stretch; }
.venergy-qty button { width:26px; border:none; background:#f5f5f5; font-size:15px; cursor:pointer; color:#333; }
.venergy-qty input { width:32px; border:none; text-align:center; font-size:13px; padding:6px 0; }
.venergy-ftoggle { display:none; width:100%; margin:0 0 12px; padding:10px; border:1px solid #ff2832; border-radius:4px; background:#fff; color:#ff2832; font-size:14px; font-weight:700; }
@media (max-width:991px) {
  body.post-type-archive-product .content-area,
  body.tax-product_cat .content-area,
  body.tax-product_tag .content-area,
  body.post-type-archive-product .main-content,
  body.tax-product_cat .main-content,
  body.tax-product_tag .main-content { width:100% !important; max-width:none !important; left:0 !important; right:0 !important; float:none !important; margin-left:0 !important; margin-right:0 !important; }
  body.post-type-archive-product .sidebar.col-sidebar,
  body.tax-product_cat .sidebar.col-sidebar,
  body.tax-product_tag .sidebar.col-sidebar { width:100% !important; left:0 !important; right:0 !important; float:none !important; clear:both !important; }
  ul.products:not(.owl-carousel) { margin-left:-10px !important; margin-right:-10px !important; }
  ul.products:not(.owl-carousel) > li.product { width:50%; padding-left:10px !important; padding-right:10px !important; }
  .venergy-buy-row { flex-direction:column; }
  .venergy-qty { justify-content:center; }
}
@media (max-width:767px) {
  .venergy-ftoggle { display:block; }
  body.venergy-fopen .sidebar.col-sidebar { display:block !important; }
  body.venergy-fopen .venergy-ftoggle { background:#ff2832; color:#fff; }
}
@media (max-width:480px) {
  ul.products:not(.owl-carousel) > li.product.col-ts-12 { width:50%; }
  ul.products:not(.owl-carousel) { margin-left:-6px !important; margin-right:-6px !important; }
  ul.products:not(.owl-carousel) > li.product { padding-left:6px !important; padding-right:6px !important; }
  .product-item .product-info { max-width:none; }
  .product-item .product-info .product-name { font-size:12.5px; }
  .product-item .product-info .price .amount { font-size:14px; }
}
@media (max-width:360px) {
  ul.products:not(.owl-carousel) { margin-left:-4px !important; margin-right:-4px !important; }
  ul.products:not(.owl-carousel) > li.product { padding-left:4px !important; padding-right:4px !important; }
  .product-item .product-info .price .amount { font-size:13px; }
}
/* filter widget */
.widget_venergy_filter .vf-gtitle { font-weight:700; font-size:14px; margin:0 0 8px; }
.widget_venergy_filter form.vf-price { padding:0 0 14px; border-bottom:1px solid #eee; margin-bottom:12px; }
.widget_venergy_filter .vf-price input { width:60px; border:1px solid #ddd; border-radius:3px; padding:6px; font-size:13px; }
.vf-apply { background:#ff2832; color:#fff; border:none; border-radius:3px; padding:7px 12px; font-size:12.5px; font-weight:600; cursor:pointer; }
.vf-cur { color:#888; font-size:13px; }
.vf-list { list-style:none; margin:0 0 12px; padding:0 0 12px; border-bottom:1px solid #eee; }
.vf-list li { display:flex; justify-content:space-between; padding:3px 0; font-size:13.5px; }
.vf-list li a { color:#333; }
.vf-list li a:hover { color:#ff2832; }
.vf-cnt { color:#aaa; font-size:12px; }

/* Venergy listing v8 (26.10.2026, user-approved polish): pill badges, hover only on mouse devices, filter panel tidy, compact buy-row with content-sized Купи, card inner padding. Reversible: point the enqueue back to v7. */
.flash-item.onsale.venergy-percent { border-radius:999px; padding:5px 10px; box-shadow:0 1px 3px rgba(0,0,0,.18); }
@media (hover:hover) and (pointer:fine) {
  body:not(.page-id-4366) .product-item .product-inner { transition:border-color .2s, box-shadow .2s, transform .2s; }
  body:not(.page-id-4366) .product-item:hover .product-inner { box-shadow:0 6px 18px rgba(0,0,0,.09); transform:translateY(-2px); }
}
.product-item .product-inner { padding:10px 10px 12px; }
.widget_venergy_filter .vf-gtitle { text-transform:uppercase; letter-spacing:.4px; font-size:11.5px; color:#777; }
.widget_venergy_filter form.vf-price { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.widget_venergy_filter .vf-price input { flex:1; min-width:0; width:auto; }
.widget_venergy_filter .vf-apply { width:100%; padding:9px 12px; margin-top:6px; }
.vf-cnt { background:#f3f3f3; border-radius:999px; padding:1px 8px; font-size:11.5px; color:#777; }
.venergy-buy-row .add_to_cart_button { flex:0 0 auto; width:auto; padding:5px 16px; font-size:13px; min-height:0; height:32px; }
.venergy-qty { height:32px; }
.venergy-qty button { width:22px; font-size:13px; }
.venergy-qty input { width:24px; padding:2px 0; font-size:12px; }
@media (max-width:991px) {
  .venergy-buy-row { flex-direction:row; align-items:center; gap:6px; }
  .venergy-qty { align-self:center; flex:0 0 auto; }
}
@media (max-width:767px) {
  .product-item .product-inner { padding:8px 8px 10px; }
  .product-item .product-info .price { margin-bottom:6px; }
  .product-item .product-info .product-name { margin-bottom:2px; }
}

/* v9 (26.10.2026): cascade fix - the theme rule ".product-item .product-info .button" (0,3,0) beats the v8 button rule on fresh page load, so the short button lost its inner padding. Raised selector above it. Rollback: point the enqueue back to v7. */
.product-item .product-info .venergy-buy-row .add_to_cart_button { display:flex; align-items:center; justify-content:center; flex:0 0 auto; width:auto; padding:5px 16px !important; font-size:13px !important; min-height:0; height:32px; }

/* v11 (26.10.2026): also pin .product-info to the content box (width:100%, min-width:0) + break-word names, so wide nowrap price spans cannot stretch it past the padding. v10: <=389px - the buy row wraps to two centered lines instead of overflowing the card frame (flex min-content 142px > ~125px content box at 360px). Short button and its padding stay unchanged. Rollback: point the enqueue back to v7. */
@media (max-width:389px) {
  .product-item .product-info { width:100%; min-width:0; }
  .product-item .product-info .product-name { overflow-wrap:break-word; }
  .product-item .product-info .venergy-buy-row { flex-wrap:wrap; justify-content:center; row-gap:6px; }
}
