/* WoodMart Product Showcase Slider — v1.3.2 */
.wm-ps-wrap{
  --wm-ps-accent:#14854E;
  --wm-ps-accent-dark:#0f6b3e;
  --wm-ps-buy:#1f2937;
  --wm-ps-buy-dark:#0b1220;
  --wm-ps-text:#1f2937;
  --wm-ps-muted:#9ca3af;
  --wm-ps-border:#e5e7eb;
  --wm-ps-radius:12px;
  --wm-ps-title-lines:1; /* change to 2 to allow two title lines */
  --wm-ps-cols:var(--wm-ps-mobile,2);
  --wm-ps-gap:12px;
  position:relative;width:100%;box-sizing:border-box
}
@media(min-width:768px){.wm-ps-wrap{--wm-ps-cols:var(--wm-ps-tablet,3);--wm-ps-gap:16px}}
@media(min-width:1024px){.wm-ps-wrap{--wm-ps-cols:var(--wm-ps-desktop,4);--wm-ps-gap:20px}}
.wm-ps-wrap *{box-sizing:border-box}

/* Slider (native scroll-snap: no external library needed) */
.wm-ps-viewport{
  width:100%;overflow-x:auto;overflow-y:hidden;padding:8px 4px 20px;
  scroll-snap-type:x mandatory;scroll-padding-left:4px;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain
}
.wm-ps-viewport::-webkit-scrollbar{display:none}
.wm-ps-track{display:flex;gap:var(--wm-ps-gap)}
.wm-ps-slide{
  flex:0 0 calc((100% - (var(--wm-ps-cols) - 1) * var(--wm-ps-gap)) / var(--wm-ps-cols));
  min-width:0;display:flex;scroll-snap-align:start
}

/* Card */
.wm-ps-card{
  width:100%;height:100%;background:#fff;border:1px solid var(--wm-ps-border);
  border-radius:var(--wm-ps-radius);overflow:hidden;display:flex;flex-direction:column;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease
}
.wm-ps-card:hover{transform:translateY(-4px);border-color:transparent;box-shadow:0 12px 30px rgba(17,24,39,.12)}

/* Image */
.wm-ps-image{position:relative;display:block;width:100%;aspect-ratio:1/1;overflow:hidden;background:#f5f6f7}
.wm-ps-image img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;display:block;margin:0!important;transition:transform .5s ease}
.wm-ps-card:hover .wm-ps-image img{transform:scale(1.06)}

/* Sale badge */
.wm-ps-sale{
  position:absolute;top:12px;left:12px;z-index:2;background:#e63946;color:#fff;
  padding:5px 10px;border-radius:999px;font-size:11px;line-height:1;font-weight:700;
  letter-spacing:.4px;text-transform:uppercase;box-shadow:0 2px 6px rgba(230,57,70,.35)
}

/* Info */
.wm-ps-info{padding:16px;display:flex;flex-direction:column;flex:1}
.wm-ps-title{
  font-size:15px;line-height:1.45;margin:0 0 8px;font-weight:600;
  display:-webkit-box;-webkit-line-clamp:var(--wm-ps-title-lines);-webkit-box-orient:vertical;overflow:hidden;
  height:calc(1.45em * var(--wm-ps-title-lines));
  word-break:break-word
}
.wm-ps-title a{color:var(--wm-ps-text)!important;text-decoration:none!important;transition:color .2s ease}
.wm-ps-title a:hover{color:var(--wm-ps-accent)!important}

.wm-ps-rating{min-height:18px;margin-bottom:6px}
.wm-ps-rating .star-rating{float:none;margin:0;font-size:13px}

/* Price */
.wm-ps-price{font-size:16px;font-weight:700;margin-bottom:14px;color:var(--wm-ps-text);line-height:1.3}
.wm-ps-price del{color:var(--wm-ps-muted);font-weight:400;font-size:.85em;margin-right:6px;opacity:1}
.wm-ps-price ins{text-decoration:none;background:none;color:var(--wm-ps-accent)}
.wm-ps-price .amount{font-weight:inherit}

/* Buttons (Add to Cart + Buy Now) */
.wm-ps-actions{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.wm-ps-wrap .wm-ps-cart-btn.button,
.wm-ps-wrap .wm-ps-buy-btn.button{
  position:relative;width:100%;display:block;text-align:center;cursor:pointer;margin:0!important;
  color:#fff!important;border-width:1px!important;border-style:solid!important;
  border-radius:8px!important;padding:11px 16px!important;
  font-size:14px!important;font-weight:600!important;line-height:1.2!important;
  letter-spacing:.2px;text-transform:none!important;text-decoration:none!important;
  box-shadow:none!important;
  transition:background-color .25s ease,border-color .25s ease,transform .15s ease,box-shadow .25s ease
}
.wm-ps-wrap .wm-ps-cart-btn.button{
  background:var(--wm-ps-accent)!important;background-color:var(--wm-ps-accent)!important;
  border-color:var(--wm-ps-accent)!important
}
.wm-ps-wrap .wm-ps-cart-btn.button:hover,
.wm-ps-wrap .wm-ps-cart-btn.button:focus{
  background:var(--wm-ps-accent-dark)!important;background-color:var(--wm-ps-accent-dark)!important;
  border-color:var(--wm-ps-accent-dark)!important;color:#fff!important;
  box-shadow:0 6px 14px rgba(20,133,78,.28)!important
}
.wm-ps-wrap .wm-ps-buy-btn.button{
  background:var(--wm-ps-buy)!important;background-color:var(--wm-ps-buy)!important;
  border-color:var(--wm-ps-buy)!important
}
.wm-ps-wrap .wm-ps-buy-btn.button:hover,
.wm-ps-wrap .wm-ps-buy-btn.button:focus{
  background:var(--wm-ps-buy-dark)!important;background-color:var(--wm-ps-buy-dark)!important;
  border-color:var(--wm-ps-buy-dark)!important;color:#fff!important;
  box-shadow:0 6px 14px rgba(17,24,39,.25)!important
}
.wm-ps-wrap .wm-ps-cart-btn.button:active,
.wm-ps-wrap .wm-ps-buy-btn.button:active{transform:scale(.98)}
.wm-ps-wrap .wm-ps-cart-btn.button:focus-visible,
.wm-ps-wrap .wm-ps-buy-btn.button:focus-visible{outline:2px solid var(--wm-ps-accent);outline-offset:2px}
.wm-ps-wrap .wm-ps-cart-btn.button.loading{opacity:.8;pointer-events:none}
.wm-ps-wrap .wm-ps-cart-btn.button.disabled,
.wm-ps-wrap .wm-ps-buy-btn.button.disabled{
  background:#d1d5db!important;border-color:#d1d5db!important;color:#6b7280!important;
  cursor:not-allowed;pointer-events:none;box-shadow:none!important
}

/* WooCommerce "View cart" link shown after AJAX add */
.wm-ps-wrap .added_to_cart{
  display:block;text-align:center;margin-top:2px;font-size:13px;font-weight:600;
  color:var(--wm-ps-accent)!important;text-decoration:none!important
}
.wm-ps-wrap .added_to_cart:hover{text-decoration:underline!important}

/* Arrows (high specificity + !important so theme button styles can't break them) */
.wm-ps-wrap .wm-ps-prev,
.wm-ps-wrap .wm-ps-next{
  position:absolute!important;z-index:5!important;top:var(--wm-ps-arrow-top,46%)!important;
  transform:translateY(-50%)!important;margin:0!important;padding:0!important;
  width:40px!important;height:40px!important;min-width:0!important;min-height:0!important;
  border:1px solid var(--wm-ps-border)!important;border-radius:50%!important;
  background:#fff!important;background-color:#fff!important;color:var(--wm-ps-text)!important;
  box-shadow:0 4px 14px rgba(17,24,39,.18)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  line-height:1!important;font-size:0!important;cursor:pointer;
  transition:background-color .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease
}
.wm-ps-wrap .wm-ps-prev{left:8px!important;right:auto!important}
.wm-ps-wrap .wm-ps-next{right:8px!important;left:auto!important}
.wm-ps-wrap .wm-ps-prev svg,
.wm-ps-wrap .wm-ps-next svg{width:18px!important;height:18px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;margin:0!important}
.wm-ps-wrap .wm-ps-prev:hover,
.wm-ps-wrap .wm-ps-next:hover{background:var(--wm-ps-accent)!important;background-color:var(--wm-ps-accent)!important;border-color:var(--wm-ps-accent)!important;color:#fff!important}
.wm-ps-wrap .wm-ps-prev:focus-visible,
.wm-ps-wrap .wm-ps-next:focus-visible{outline:2px solid var(--wm-ps-accent);outline-offset:2px}
.wm-ps-wrap .wm-ps-prev.is-disabled,
.wm-ps-wrap .wm-ps-next.is-disabled{opacity:.35;pointer-events:none}

/* Pagination */
.wm-ps-dots{display:flex;justify-content:center;gap:6px;margin-top:2px}
.wm-ps-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer;transition:width .25s ease,background-color .25s ease}
.wm-ps-dot.is-active{background:var(--wm-ps-accent);width:22px}

.wm-ps-empty{padding:24px;text-align:center;color:var(--wm-ps-muted)}

@media(max-width:767px){
  .wm-ps-wrap .wm-ps-prev,.wm-ps-wrap .wm-ps-next{width:32px!important;height:32px!important}
  .wm-ps-wrap .wm-ps-prev svg,.wm-ps-wrap .wm-ps-next svg{width:15px!important;height:15px!important}
  .wm-ps-wrap .wm-ps-prev{left:4px!important}.wm-ps-wrap .wm-ps-next{right:4px!important}
  .wm-ps-info{padding:12px}
  .wm-ps-title{font-size:13.5px}
  .wm-ps-price{font-size:14px;margin-bottom:10px}
  .wm-ps-wrap .wm-ps-cart-btn.button,
  .wm-ps-wrap .wm-ps-buy-btn.button{padding:10px 8px!important;font-size:13px!important}
  .wm-ps-sale{top:8px;left:8px;padding:4px 8px;font-size:10px}
}

@media(prefers-reduced-motion:reduce){
  .wm-ps-card,.wm-ps-image img,.wm-ps-cart-btn,.wm-ps-buy-btn{transition:none!important}
  .wm-ps-viewport{scroll-behavior:auto}
  .wm-ps-card:hover{transform:none}
  .wm-ps-card:hover .wm-ps-image img{transform:none}
}
