:root { --wal-yellow: #F5E400; --wal-red: #D61B1B; --wal-blue: #1F2F86; }
body { background: #f7f7f9; }
.navbar-wal { background: #fff; border-bottom: 1px solid rgba(0,0,0,.06); }
.brand-logo { height: 46px; width: auto; object-fit: contain; }
.card-product { transition: transform .08s ease, box-shadow .08s ease; }
.card-product:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(0,0,0,.06); }
.price { font-weight: 700; }
.badge-stock { font-weight: 600; }
.cart-fab {
  position: fixed; right: 18px; bottom: 18px; z-index: 1040;
  border-radius: 999px; padding: 12px 16px;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.small-muted { color: rgba(0,0,0,.55); font-size: .92rem; }
.form-required::after { content:" *"; color: var(--wal-red); }
.qty-btn { width: 34px; height: 34px; display:inline-flex; align-items:center; justify-content:center; }
.cart-item-name { font-weight: 600; line-height: 1.1; }
.cart-item-sub { font-size: .88rem; color: rgba(0,0,0,.6); }
.placeholder-img {
  background: linear-gradient(135deg, rgba(0,0,0,.03), rgba(0,0,0,.08));
  height: 160px; display:flex; align-items:center; justify-content:center; color: rgba(0,0,0,.55);
}



/* Hover do carrinho: força fundo azul mais claro e ícone branco */
#cartBtn.btn.btn-outline-primary:hover{
  color: #fff !important;                      /* emoji/texto branco */
  background-color: rgba(13,110,253,0.40) !important; /* azul com 0.7 */
  border-color: rgba(13,110,253,0.40) !important;
}

/* também aplica no clique (active) e no foco */
#cartBtn.btn.btn-outline-primary:active,
#cartBtn.btn.btn-outline-primary:focus{
  color: #fff !important;
  background-color: rgba(13,110,253,0.40) !important;
  border-color: rgba(13,110,253,0.40) !important;
}

/* foco mais limpo */
#cartBtn.btn.btn-outline-primary:focus{
  box-shadow: 0 0 0 .25rem rgba(13,110,253,.25) !important;
}


.card-product .card-img-top{
  cursor: zoom-in;
}

.card-product .placeholder-img{
  cursor: zoom-in;
}

