/* Tienda: product thumbnails */
.product-thumb{width:120px;height:120px;object-fit:cover;border-radius:6px;flex-shrink:0}
.product .price{margin-top:6px}

/* Shop cards (enhanced) */
.shop-card{background:var(--card-bg);border:1px solid rgba(13,48,55,0.06);border-radius:12px;box-shadow:0 12px 26px rgba(13,48,55,0.06);overflow:hidden;display:flex;flex-direction:column}
.shop-card-img-wrap{position:relative;background:#fff}
.shop-card-img{display:block;width:100%;height:300px;object-fit:scale-down;object-position:center}
@media (min-width: 992px){
  .shop-card-img{height:360px}
}
.shop-card-img-wrap .quick-view{position:absolute;right:10px;bottom:10px;opacity:.0;transition:opacity .2s}
.shop-card-img-wrap:hover .quick-view{opacity:1}
.shop-card-badge{position:absolute;left:10px;top:10px;background:var(--lima);color:#111;padding:4px 10px;border-radius:999px;font-weight:700;font-size:.8rem;box-shadow:0 6px 16px rgba(0,0,0,0.12)}
.shop-card-badge.is-offer{background:var(--coral);color:#fff}
.shop-card-body{padding:14px}
.shop-card-title{margin:0 0 6px 0;font-weight:700;color:var(--azul)}
.shop-card-desc{color:var(--muted);min-height:2.6em}
.shop-card .price{font-size:1.1rem}

/* Responsive controls layout */
.shop-controls{align-items:center;gap:.5rem}
.shop-controls .input-group{flex:0 0 auto}
.shop-controls .price{white-space:nowrap}
.shop-controls .form-floating{min-width:140px}
.shop-controls .qty-dec,.shop-controls .qty-inc{line-height:1}
/* Stacked rows */
.shop-price-row{display:flex;justify-content:flex-end}
.shop-size-row .form-floating{width:100%;max-width:260px}
.shop-qty-row .input-group{width:140px}
@media (max-width: 420px){
  .shop-controls{gap:.4rem}
  .shop-controls .form-floating{min-width:130px}
  .shop-card .price{font-size:1rem}
  .shop-size-row .form-floating{max-width:100%}
  .shop-qty-row .input-group{width:120px}
}

/* Quick View modal image uses scale-down */
.product-modal-img{width:100%;height:60vh;object-fit:scale-down;object-position:center;background:#fff;border-radius:8px}
@media (max-width: 575.98px){
  .product-modal-img{height:50vh}
}

/* Cart list alignment */
.cart-item{gap:.5rem}
.cart-qty{gap:.25rem}
.cart-qty .btn{min-width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.cart-qty .qty-val{min-width:1.25rem;text-align:center;display:inline-block}
