/* ==========================================================================
   app.css — PetMania
   Só o mínimo para o conteúdo gerado por JS (carrinho/checkout/catálogo).
   Todo o layout/estrutura/tipografia vem do CSS do próprio tema.
   ========================================================================== */

/* carrosséis: estado antes do slick inicializar (evita empilhamento).
   As miniaturas do produto usam o CSS do próprio tema (strip horizontal
   no mobile / coluna com max-height no desktop) — não sobrescrever. */
.carousel.slide-lista:not(.slick-initialized) > .carousel-item:not(:first-child),
.carrosel-produto:not(.slick-initialized) > .carousel-item:not(:first-child){ display:none; }
.carrosel-produto-thumbs .carousel-item{ cursor:pointer; }
.zoomImg{ pointer-events:none; }

body.side-open, body.scroll-disabled{ overflow:hidden; }

/* carrinho lateral: alerta "produto adicionado" só depois da ação */
#cart-side .cart-side-alert{ display:none; }
#cart-side.just-added .cart-side-alert{ display:flex; }

/* cálculo de frete na página de produto (lista gerada pelo app.js) */
.cart-ship-res{ display:none; }
.cart-ship-res.show{ display:block;margin-top:14px; }
.cart-ship-opt{ display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--grey-color,#e6e6e6);font-size:14px; }
.cart-ship-opt:first-child{ border-top:none; }
.cart-ship-opt b{ color:var(--primary-color,#4d2981); }

/* checkout: visibilidade dos passos controlada pelo app.js (goStep) */
.checkout .sec-step-infos{ display:none; }
.checkout .co-shipping-ways-wrp:not(.current) .co-shipping-ways{ display:none; }
.checkout .co-shipping-ways-wrp.current .co-shipping-ways{ display:block; }
.checkout .shipping_ways{ display:flex;flex-direction:column;gap:8px; }
.ship-opt{ display:flex;align-items:center;gap:10px;border:1px solid #ddd;border-radius:8px;padding:10px 12px;cursor:pointer;font-size:13px; }
.ship-opt.active{ border-color:var(--primary-color,#4d2981);box-shadow:inset 0 0 0 1px var(--primary-color,#4d2981); }
.ship-opt-label{ flex:1 1 auto; }
.ship-opt-label small{ display:block;color:#888;font-weight:400; }
.ship-opt-price{ font-weight:700;color:var(--primary-color,#4d2981);white-space:nowrap; }

/* aviso de cookies fixo no rodapé (não empurra o conteúdo) */
.popup-cookies.active{
  position:fixed!important;left:0!important;right:0!important;bottom:0!important;
  top:auto!important;z-index:9999!important;margin:0!important;width:100%!important;
}
.popup-cookies:not(.active){ display:none; }

/* rótulo das opções de variante (tema estiliza .form-check-img / select) */
.produto-det-atributo-tit{ font-weight:700;font-size:13px;margin-bottom:8px; }

/* categoria: botão "ver mais" + estado vazio */
.cat-load-wrp{ text-align:center;margin:26px 0 6px; }
.cat-empty{ padding:50px 0;text-align:center;color:#8a8a8a; }
/* alça do slider de preço não cortada pelo overflow do tema */
.catalogo-filtros-price .filtro-item-content{ overflow:visible; }
.catalogo-filtros .filtro-item-link.active{ color:var(--primary-color,#4d2981);font-weight:700; }

/* autocomplete: o container tem estilo do tema; só os itens do nosso layout */
.autocomplete-suggestion{ display:flex;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;color:#333;border-top:1px solid #f0eef5;font-size:13px; }
.autocomplete-suggestion:first-child{ border-top:none; }
.autocomplete-suggestion:hover{ background:#f7f5fb; }
.autocomplete-suggestion img{ width:38px;height:38px;object-fit:contain;flex:0 0 38px;background:#fafafa;border-radius:4px; }
.autocomplete-suggestion .acs-name{ flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.autocomplete-suggestion .acs-price{ font-weight:700;color:var(--primary-color,#4d2981);white-space:nowrap; }
.autocomplete-all{ display:block;text-align:center;padding:10px;font-size:12.5px;font-weight:600;color:var(--primary-color,#4d2981);text-decoration:none;border-top:1px solid #eee;background:#faf8ff; }

.app-hidden{ display:none!important; }

/* carrinho lateral: banner de frete grátis (injetado por app.js, como no site ao vivo) */
.cart-side-freeship{ padding:16px 0 18px;border-bottom:3px solid #29c26e;margin-bottom:18px; }
.cart-side-freeship-msg{ text-align:center;font-size:14px;line-height:1.35;color:#222;margin-bottom:12px; }
.cart-side-freeship-msg b{ font-weight:700; }
.cart-side-freeship-bar{ position:relative;height:12px;border-radius:8px;background:#ece9f3; }
.cart-side-freeship-bar > span{ position:absolute;left:0;top:0;bottom:0;border-radius:8px;background:var(--primary-color,#4d2981);transition:width .3s ease; }
.cart-side-freeship-truck{
  position:absolute;right:-6px;top:50%;transform:translateY(-50%);
  width:38px;height:38px;border-radius:50%;background:#fff;border:2px solid var(--primary-color,#4d2981);
  display:flex;align-items:center;justify-content:center;color:var(--primary-color,#4d2981);
}
.cart-side-freeship-truck svg{ width:20px;height:20px; }

/* preço/badge da linha do item no carrinho lateral */
.cart-side-i-price .old-price{ text-decoration:line-through;color:#9a9a9a;font-size:12px; }
.cart-side-i-price .cart-side-i-sale-price{ font-weight:700; }
.cart-side-i-price .badge{
  display:inline-block;background:var(--primary-color,#4d2981);color:#fff;font-size:11px;font-weight:700;
  padding:2px 7px;border-radius:10px;margin-left:4px;text-transform:uppercase;
}
.btn-rem-cart{
  position:absolute;top:0;right:0;width:22px;height:22px;padding:0;border:none;background:none;
  color:#c0392b;cursor:pointer;
}
.btn-rem-cart svg{ width:14px;height:14px; }

/* logo nova (PetMania) é mais larga (~3:1) que a original — aumenta o tamanho
   base do tema (--logo-size / --logo-size-mb são definidos em :root no <style>
   inline da página; este arquivo carrega depois e vence) */
:root{ --logo-size: 158px; --logo-size-mb: 132px; }
