/* CERO47 — FAVORITOS. Monocromático, sin colores de acento. */
/* The homepage uses its own editorial product cards rather than WooCommerce li.product. */
.c47-home .c47-products > .c47-product-shell{position:relative!important;min-width:0!important}
.c47-home .c47-product-shell > a.c47-product{display:block!important;min-width:0!important}
.c47-home .c47-product-shell > .c47-fav-button--card{
 position:absolute!important;top:10px!important;right:10px!important;z-index:9!important;
 display:grid!important;place-items:center!important;width:38px!important;height:38px!important;
 min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;
 background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;
 border:1px solid #d7d7d7!important;border-radius:50%!important;
 box-shadow:0 1px 5px rgba(0,0,0,.09)!important;cursor:pointer!important;
 opacity:1!important;visibility:visible!important;line-height:1!important;
 -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important
}
.c47-home .c47-product-shell > .c47-fav-button--card:hover,
.c47-home .c47-product-shell > .c47-fav-button--card:focus-visible{
 border-color:#000!important;box-shadow:0 0 0 2px rgba(0,0,0,.15)!important
}
@media(max-width:767px){.c47-home .c47-product-shell > .c47-fav-button--card{top:8px!important;right:8px!important}}

li.product{position:relative}
li.product > .c47-fav-button--card{
  position:absolute!important;z-index:9!important;top:10px!important;right:10px!important;
  display:grid!important;place-items:center!important;
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;
  padding:0!important;margin:0!important;
  border:1px solid #d7d7d7!important;border-radius:50%!important;
  background:#fff!important;color:#111!important;
  -webkit-text-fill-color:#111!important;
  box-shadow:0 1px 5px rgba(0,0,0,.09)!important;line-height:1!important;
  opacity:1!important;visibility:visible!important;cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
}
li.product > .c47-fav-button--card:hover,
li.product > .c47-fav-button--card:focus-visible{border-color:#000!important;box-shadow:0 0 0 2px rgba(0,0,0,.15)!important}
.c47-fav-button svg{display:block!important;flex:none!important;pointer-events:none!important;
  width:21px!important;height:21px!important}
.c47-fav-button.is-favorite svg path{fill:currentColor!important;stroke:currentColor!important}
.c47-fav-button:disabled{opacity:.65!important;cursor:wait!important}
/* Single purchase row: Botiga wraps quantity and native cart button
   inside .botiga-single-addtocart-wrapper. JS inserts our heart there. */
.c47-pdp__buy form.cart .botiga-single-addtocart-wrapper{
  display:flex!important;flex-direction:row!important;align-items:stretch!important;
  flex-wrap:nowrap!important;gap:9px!important;width:100%!important;
  min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
}
.c47-pdp__buy form.cart .botiga-single-addtocart-wrapper>.quantity{
  flex:0 0 auto!important;width:auto!important;max-width:34%!important;
  margin:0!important;min-width:0!important;
}
.c47-pdp__buy form.cart .botiga-single-addtocart-wrapper>.single_add_to_cart_button{
  display:flex!important;align-items:center!important;justify-content:center!important;
  flex:1 1 0!important;width:auto!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:8px 12px!important;white-space:normal!important;
}
.c47-pdp__buy form.cart .c47-fav-button--pdp{
  display:grid!important;place-items:center!important;align-self:stretch!important;
  flex:0 0 54px!important;box-sizing:border-box!important;
  width:54px!important;min-width:54px!important;max-width:54px!important;
  min-height:54px!important;height:auto!important;
  margin:0!important;padding:0!important;border:1px solid #111!important;
  border-radius:0!important;background:#fff!important;color:#111!important;
  -webkit-text-fill-color:#111!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;touch-action:manipulation!important;
}
.c47-pdp__buy form.cart .c47-fav-button--pdp svg{
  display:block!important;width:23px!important;height:23px!important;pointer-events:none!important;
}
.c47-pdp__buy form.cart .c47-fav-button--pdp.is-favorite,
.c47-pdp__buy form.cart .c47-fav-button--pdp:is(:hover,:focus-visible){
  background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
.c47-pdp__buy form.cart .c47-fav-button--pdp:focus-visible{
  outline:2px solid #555!important;outline-offset:2px!important;
}
.c47-pdp__buy form.cart .woocommerce-variation-add-to-cart{
  display:block!important;width:100%!important;min-width:0!important;
}
/* On narrow devices keep the heart beside the purchase button; if the
   quantity needs more width, only quantity moves to the row above. */
@media(max-width:390px){
 .c47-pdp__buy form.cart .botiga-single-addtocart-wrapper{flex-wrap:wrap!important;gap:8px!important}
 .c47-pdp__buy form.cart .botiga-single-addtocart-wrapper>.quantity{
   flex:0 0 100%!important;max-width:100%!important;width:100%!important;
 }
 .c47-pdp__buy form.cart .botiga-single-addtocart-wrapper>.single_add_to_cart_button{
   flex:1 1 0!important;min-height:52px!important;
 }
 .c47-pdp__buy form.cart .c47-fav-button--pdp{
   flex:0 0 50px!important;width:50px!important;min-width:50px!important;
   max-width:50px!important;min-height:52px!important;
 }
}
.c47-fav-notice{
  position:fixed!important;bottom:20px!important;left:50%!important;transform:translateX(-50%)!important;
  z-index:99999!important;max-width:min(430px,calc(100vw - 30px))!important;
  padding:13px 18px!important;background:#111!important;color:#fff!important;
  border:1px solid #777!important;border-radius:0!important;
  box-shadow:0 6px 28px rgba(0,0,0,.25)!important;
  font:700 12px/1.4 Arial,Helvetica,sans-serif!important;text-align:center!important;
  display:none!important
}
.c47-fav-notice.is-visible{display:block!important}
.c47-fav-notice__login{display:inline-block!important;margin-left:8px!important;color:#fff!important;
  -webkit-text-fill-color:#fff!important;font-weight:900!important;text-decoration:underline!important}
.c47-fav-button{pointer-events:auto!important}
.c47-home .c47-product-shell>.c47-fav-button--card{pointer-events:auto!important}
/* Exact Botiga selector wins over the legacy two-column, !important
   c47-enhanced purchase grid in c47-product.css. Three true grid columns
   prevent the heart from creating a second row. */
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp){
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr) 54px!important;
  grid-template-rows:minmax(54px,auto)!important;
  gap:10px!important;align-items:stretch!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin:0!important;box-sizing:border-box!important;
}
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper > .single_add_to_cart_button{
  grid-column:2!important;grid-row:1!important;min-width:0!important;
  width:100%!important;max-width:100%!important;
  white-space:normal!important;
}
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper > .quantity{
  grid-column:1!important;grid-row:1!important;margin:0!important;max-width:132px!important;
}
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper > .c47-fav-button--pdp{
  grid-column:3!important;grid-row:1!important;
  width:54px!important;min-width:54px!important;max-width:54px!important;
  height:100%!important;min-height:54px!important;align-self:stretch!important;
}
@media(max-width:620px){
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp){
    grid-template-columns:max-content minmax(0,1fr) 48px!important;
    gap:8px!important;
  }
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced .botiga-single-addtocart-wrapper > .c47-fav-button--pdp{
    width:48px!important;min-width:48px!important;max-width:48px!important;
  }
}
/* CERO47 2026-10-19 — stable cart/quantity/zoom controls. */
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
.botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp) > .single_add_to_cart_button,
body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
.botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp) > .single_add_to_cart_button:is(:hover,:focus,:focus-visible,:active){
  grid-column:2!important;grid-row:1!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  height:100%!important;min-height:54px!important;
  padding:0 12px!important;margin:0!important;
  box-sizing:border-box!important;transform:none!important;scale:1!important;
  align-self:stretch!important;justify-self:stretch!important;
  opacity:1!important;background-color:#000!important;color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
@media(max-width:640px){
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp) > .quantity{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;justify-items:stretch!important;
    width:96px!important;min-width:96px!important;max-width:96px!important;
    min-height:54px!important;height:54px!important;
    padding:0!important;margin:0!important;
    box-sizing:border-box!important;position:relative!important;
  }
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper > .quantity > :is(.botiga-quantity-minus,.botiga-quantity-plus){
    display:grid!important;place-items:center!important;
    position:static!important;inset:auto!important;
    transform:none!important;float:none!important;
    width:100%!important;min-width:0!important;height:100%!important;
    min-height:0!important;max-width:100%!important;
    padding:0!important;margin:0!important;
    box-sizing:border-box!important;text-align:center!important;
    line-height:1!important;
  }
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper > .quantity > input.qty{
    display:block!important;position:static!important;float:none!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    height:100%!important;min-height:0!important;
    padding:0!important;margin:0!important;
    box-sizing:border-box!important;text-align:center!important;
    line-height:1.25!important;align-self:center!important;
    -moz-appearance:textfield!important;appearance:textfield!important;
  }
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper > .quantity > input.qty::-webkit-inner-spin-button,
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper > .quantity > input.qty::-webkit-outer-spin-button{
    -webkit-appearance:none!important;margin:0!important;
  }
  body.single-product .c47-pdp__buy form.variations_form.c47-enhanced
  .botiga-single-addtocart-wrapper:has(> .c47-fav-button--pdp) > .single_add_to_cart_button{
    min-height:54px!important;
  }
}
/* The image viewer closes through this one button. Keep its glyph and
   square centered within viewport and phone safe areas. */
html body.single-product .c47-product-lightbox > .c47-product-lightbox__close{
  position:fixed!important;top:max(14px,env(safe-area-inset-top))!important;
  right:max(14px,env(safe-area-inset-right))!important;
  left:auto!important;bottom:auto!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:48px!important;height:48px!important;
  min-width:48px!important;min-height:48px!important;
  padding:0!important;margin:0!important;
  border:1px solid #ddd!important;border-radius:0!important;
  box-sizing:border-box!important;transform:none!important;
  text-align:center!important;text-indent:0!important;
  font:400 30px/1 Arial,Helvetica,sans-serif!important;
  background:#fff!important;color:#111!important;-webkit-text-fill-color:#111!important;
  opacity:1!important;visibility:visible!important;z-index:2147483647!important;
}
html body.single-product .c47-product-lightbox > .c47-product-lightbox__close::before,
html body.single-product .c47-product-lightbox > .c47-product-lightbox__close::after{
  content:none!important;display:none!important;
}
/* Hide stale server-rendered cards until the browser applies preview removals.
   This flag is set in <head> before cards paint and lifted on DOM initialization. */
html.c47-favorites-hydrating body.page-id-147 .c47-favorites-grid,
html.c47-favorites-hydrating body.page-id-147 .c47-favorites-empty{
  visibility:hidden!important;
}
/* Keep the scrollbar width fixed while the number of favorites changes,
   so the entire account page does not jump left/right. */
html:has(body.page-id-147){scrollbar-gutter:stable!important}
html body.page-id-147 .c47-favorites-account{overflow-anchor:none}
/* Customer account grid */
/* Keep titles, prices and action rows aligned across cards even when
   one product has a two-line name. */
html body.page-id-147 .c47-favorites-grid .c47-favorites-card{
  display:flex!important;flex-direction:column!important;height:100%!important;
  min-width:0!important;align-self:stretch!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__info{
  display:flex!important;flex-direction:column!important;flex:1 1 auto!important;
  min-height:0!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__info > a{
  display:block!important;min-height:2.8em!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__info h3{
  margin:0 0 8px!important;min-height:2.7em!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__price{
  margin:0 0 14px!important;min-height:1.4em!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__actions{
  margin-top:auto!important;align-items:stretch!important;
}
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__actions > a,
html body.page-id-147 .c47-favorites-grid .c47-favorites-card__actions > button{
  white-space:nowrap!important;
}

/* Stable columns: removing favorites does not recenter/resize every card.
   The same grid tracks remain until the next navigation. */
html body.page-id-147 .c47-favorites-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  justify-content:start!important;
  align-items:start!important;
  min-height:0!important;
  transition:none!important;
}
html body.page-id-147 .c47-favorites-card{
  transition:none!important;animation:none!important;
}
@media(max-width:900px){
  html body.page-id-147 .c47-favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:580px){
  html body.page-id-147 .c47-favorites-grid{grid-template-columns:minmax(0,1fr)!important}
}
/* Stronger than the legacy general links rule on /mi-cuenta/.
   A black button must never have black text. */
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-empty > a,
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__view,
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-empty > a:is(:hover,:focus,:focus-visible,:active),
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__view:is(:hover,:focus,:focus-visible,:active) {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:#000!important;background-color:#000!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  text-decoration:none!important;border:1px solid #000!important;
  opacity:1!important;visibility:visible!important;
}
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__remove,
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__remove:not(:hover){
  background:#fff!important;color:#000!important;-webkit-text-fill-color:#000!important;
}
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__remove:hover,
html body.page-id-147 .c47-account .woocommerce-MyAccount-content .c47-favorites-card__remove:focus-visible{
  background:#000!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}
html body.page-id-147 .c47-account .woocommerce-MyAccount-navigation-link--dashboard:not(.is-active) a {
  background:transparent!important;color:#111!important;-webkit-text-fill-color:#111!important;
}
html body.page-id-147 .c47-account .woocommerce-MyAccount-navigation-link--c47-favoritos.is-active a {
  background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
}

.woocommerce-account .c47-favorites-account{width:100%;max-width:100%;color:#111;background:#fff}
.woocommerce-account .c47-favorites-account__header{
  border-bottom:2px solid #111!important;padding:0 0 23px!important;margin:0 0 28px!important;
  background:#fff!important;color:#111!important
}
.woocommerce-account .c47-favorites-account__header p{
  margin:0 0 9px!important;color:#666!important;
  font:800 10px/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:.15em!important
}
.woocommerce-account .c47-favorites-account__header h2{
  margin:0 0 8px!important;color:#111!important;
  font:900 clamp(28px,3vw,44px)/1.05 Arial,Helvetica,sans-serif!important;letter-spacing:-.035em!important
}
.woocommerce-account .c47-favorites-account__header span{
  color:#555!important;font:400 13px/1.6 Arial,Helvetica,sans-serif!important
}
.woocommerce-account .c47-favorites-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:24px 16px!important;margin:0!important;padding:0!important}
.woocommerce-account .c47-favorites-card{margin:0!important;padding:0!important;border:1px solid #ddd!important;
  min-width:0!important;background:#fff!important;color:#111!important}
.woocommerce-account .c47-favorites-card__image{display:block!important;aspect-ratio:1/1!important;overflow:hidden!important;background:#f5f5f5!important}
.woocommerce-account .c47-favorites-card__image img{
  display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important
}
.woocommerce-account .c47-favorites-card__info{padding:15px!important}
.woocommerce-account .c47-favorites-card__info>a{text-decoration:none!important;color:#111!important}
.woocommerce-account .c47-favorites-card__info h3{font:850 13px/1.3 Arial,Helvetica,sans-serif!important;
  letter-spacing:.02em!important;color:#111!important;margin:0 0 9px!important;overflow-wrap:anywhere}
.woocommerce-account .c47-favorites-card__price{font:800 13px/1.3 Arial,Helvetica,sans-serif!important;margin:0 0 14px!important;color:#111!important}
.woocommerce-account .c47-favorites-card__price *{color:#111!important}
.woocommerce-account .c47-favorites-card__actions{display:flex!important;gap:6px!important;flex-wrap:wrap!important;align-items:center!important}
.woocommerce-account .c47-favorites-card__view,
.woocommerce-account .c47-favorites-card__remove{
  display:inline-flex!important;justify-content:center!important;align-items:center!important;
  flex:1 1 auto!important;min-height:39px!important;width:auto!important;min-width:0!important;
  margin:0!important;padding:10px!important;border:1px solid #111!important;border-radius:0!important;
  font:800 10px/1.1 Arial,Helvetica,sans-serif!important;letter-spacing:.05em!important;
  text-decoration:none!important;cursor:pointer!important;box-shadow:none!important
}
.woocommerce-account .c47-favorites-card__view{color:#fff!important;background:#000!important;-webkit-text-fill-color:#fff!important}
.woocommerce-account .c47-favorites-card__remove{color:#000!important;background:#fff!important;-webkit-text-fill-color:#000!important}
.woocommerce-account .c47-favorites-card__remove:hover{background:#111!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.woocommerce-account .c47-favorites-empty{padding:44px 20px!important;margin:0!important;
  text-align:center!important;border:1px solid #ddd!important;background:#fff!important}
.woocommerce-account .c47-favorites-empty p{font:900 17px/1.2 Arial,Helvetica,sans-serif!important;margin:0 0 9px!important;color:#111!important}
.woocommerce-account .c47-favorites-empty span{display:block!important;color:#666!important;font-size:12px!important;margin:0 0 22px!important}
.woocommerce-account .c47-favorites-empty a{display:inline-flex!important;background:#000!important;color:#fff!important;
  padding:14px 22px!important;font:800 11px/1.1 Arial,Helvetica,sans-serif!important;text-decoration:none!important}
@media(max-width:900px){
  .woocommerce-account .c47-favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 12px!important}
  li.product > .c47-fav-button--card{top:8px!important;right:8px!important;width:38px!important;height:38px!important}
}
@media(max-width:390px){
  .woocommerce-account .c47-favorites-card__actions{flex-direction:column!important}
  .woocommerce-account .c47-favorites-card__view,
  .woocommerce-account .c47-favorites-card__remove{width:100%!important}
  .woocommerce-account .c47-favorites-card__info{padding:11px!important}
}
