/* ApoloCloud v1.9.3 - fixes imagenes y mobile categorias */
:root{
  --apolo-bg:#05070d;
  --apolo-panel:#0b111d;
  --apolo-panel-2:#0f172a;
  --apolo-line:rgba(148,163,184,.16);
  --apolo-accent:#38bdf8;
  --apolo-accent-2:#7dd3fc;
}

/* Caja blanca real para PNG transparentes */
.product-card .product-img,
.product-img{
  background:#ffffff !important;
  background-color:#ffffff !important;
  height:260px !important;
  min-height:260px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px !important;
  margin:0 !important;
  position:relative !important;
  overflow:hidden !important;
  border-bottom:1px solid rgba(226,232,240,.95) !important;
  isolation:isolate;
}
.product-card .product-img::before{
  content:'';
  position:absolute;
  inset:0;
  background:#fff;
  z-index:0;
}
.product-card .product-img img,
.product-img img{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:92% !important;
  max-height:92% !important;
  object-fit:contain !important;
  background:transparent !important;
  mix-blend-mode:normal !important;
  filter:none !important;
  border:0 !important;
  box-shadow:none !important;
  transition:transform .25s ease;
}
.product-card:hover .product-img img{transform:scale(1.045);}

/* Banderita de descuento diagonal sobre la imagen */
.product-card .discount-ribbon,
.discount-ribbon{
  position:absolute !important;
  top:18px !important;
  left:-44px !important;
  z-index:5 !important;
  width:178px !important;
  transform:rotate(-38deg) !important;
  background:linear-gradient(135deg,#22c55e,#16a34a 58%,#047857) !important;
  color:#fff !important;
  text-align:center !important;
  font-weight:1000 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  font-size:12px !important;
  line-height:1.05 !important;
  padding:8px 8px !important;
  box-shadow:0 12px 24px rgba(0,0,0,.26) !important;
  border-top:1px solid rgba(255,255,255,.36) !important;
  border-bottom:1px solid rgba(0,0,0,.18) !important;
  pointer-events:none;
}
.discount-ribbon strong{font-size:16px !important;}

/* Sidebar desktop estable */
.shop-sidebar{
  top:96px !important;
  max-height:calc(100vh - 112px);
}
.tabs-scroll a{
  min-height:60px !important;
}

.mobile-category-toggle{display:none;}

@media (max-width:991px){
  .shop-layout{
    display:block !important;
  }
  .shop-sidebar{
    position:relative !important;
    top:auto !important;
    z-index:4 !important;
    max-height:none !important;
    margin:12px 0 18px !important;
    padding:12px !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,rgba(11,17,29,.98),rgba(7,11,19,.98)) !important;
    border:1px solid rgba(56,189,248,.20) !important;
    box-shadow:0 18px 45px rgba(0,0,0,.30) !important;
  }
  .mobile-category-toggle{
    display:flex !important;
    width:100%;
    min-height:52px;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border:1px solid rgba(56,189,248,.25);
    background:linear-gradient(135deg,#0f172a,#082f49);
    color:#fff;
    border-radius:16px;
    padding:0 16px;
    font-weight:1000;
    letter-spacing:.02em;
    box-shadow:0 14px 30px rgba(14,165,233,.10);
  }
  .mobile-category-toggle::after{
    content:'⌄';
    font-size:22px;
    line-height:1;
    transition:transform .2s ease;
  }
  .shop-sidebar.mobile-open .mobile-category-toggle::after{transform:rotate(180deg);}
  .shop-sidebar .search-box{
    margin:12px 0 0 !important;
  }
  .shop-sidebar .tabs-scroll{
    display:none !important;
    flex-direction:column !important;
    max-height:310px !important;
    overflow:auto !important;
    margin-top:12px !important;
    border-radius:16px !important;
    border:1px solid rgba(148,163,184,.16) !important;
    background:#050914 !important;
    padding:0 !important;
  }
  .shop-sidebar.mobile-open .tabs-scroll{
    display:flex !important;
  }
  .tabs-scroll a{
    border-radius:0 !important;
    min-height:54px !important;
    white-space:normal !important;
    width:100% !important;
    justify-content:space-between !important;
    padding:13px 15px !important;
  }
  .tabs-scroll a::after{display:block !important;content:'›' !important;}
  .tabs-scroll a.active,
  .tabs-scroll a[aria-selected="true"]{
    background:linear-gradient(135deg,#0f172a,#075985) !important;
    box-shadow:inset 5px 0 0 #7dd3fc,0 0 24px rgba(14,165,233,.16) !important;
  }
  .shop-content{
    position:relative;
    z-index:1;
  }
  .product-img{height:220px !important;min-height:220px !important;}
}

@media (max-width:575px){
  .shop-sidebar{margin-top:10px !important;padding:10px !important;border-radius:18px !important;}
  .mobile-category-toggle{min-height:50px;border-radius:14px;font-size:14px;}
  .search-box input{height:48px !important;border-radius:14px !important;}
  .product-img{height:205px !important;min-height:205px !important;padding:12px !important;}
  .discount-ribbon{top:16px !important;left:-48px !important;width:168px !important;font-size:11px !important;padding:7px 8px !important;}
}
